Abstract: Low power consumption has become an important indicator for evaluating electronic systems. Considering the characteristics of embedded GIS systems, a fully dynamic switching processing mode is adopted. Through specific measures such as data scheduling, coordinate data processing, map symbol drawing, and optimization of key algorithms, processor runtime is reduced, achieving low-power design of the embedded GIS system software. Introduction The rapid development of embedded computer technology and the driving force of social needs have led to the gradual application of GIS technology in embedded systems, forming embedded GIS. Embedded GIS has become a hot and important research direction in the current development of GIS. It has functions such as data acquisition, map browsing, information retrieval, path analysis, and terrain analysis, and is currently widely used in systems such as intelligent transportation systems (ITS), logistics and distribution systems, vehicle navigation and monitoring systems, and digital weaponry. In addition to small size, light weight, and good performance, low power consumption has become an important indicator for embedded GIS system design, especially for portable products using battery-powered systems, where low power consumption design also plays a role in energy saving and environmental protection. Low power consumption design generally includes two main aspects: hardware low power consumption design and software low power consumption design. Hardware low power consumption design generally selects low-power chips and their circuit modules that meet performance requirements and supports single-source, low-voltage, and partitioned power supply schemes. Besides low-power hardware design, software operation control plays a crucial role in system power consumption. Based on the characteristics of embedded GIS systems, this paper describes how to reduce the power consumption of embedded GIS systems by employing software methods such as fully dynamic switching of processing modes, data scheduling, coordinate data processing, map symbol drawing, and optimization of key algorithms, to guide the low-power design of similar systems. 1. Software Low-Power Measures 1.1 Fully Dynamic Switching of Processor Operating Modes The embedded processor is the core of the hardware system, and its operating power accounts for a large portion of the system's total power consumption. Currently, embedded processors generally adopt a RISC architecture, improving operating efficiency through simplified instruction design, pipeline technology, instruction prefetching, extensive register operations, and high-speed caching, and employing low-voltage operating modes to reduce power consumption. Embedded processors generally provide three operating modes for application development: Run, Idle, and Standby. Run mode is the normal operating mode, where the CPU runs at full speed; in Idle mode, the CPU is static, but the LCD refresh circuit and crystal oscillator are active; in Standby mode, the CPU's I/O ports are disabled, but the external crystal oscillator is active. The power consumption of the processor varies significantly between different operating modes. Taking the Citrix EP721l (ARM7 core) embedded processor as an example, the development manual states that at an 18 MHz operating frequency, it consumes 20 mA during operation, 6 mA when idle, and 300 μA when hibernating. The purpose of dynamically switching the processor's operating mode is to minimize system power consumption by using software control strategies to keep the embedded processor in idle or hibernation mode as much as possible without affecting normal system operation. During product use, human-machine interaction time is short, and the CPU needs to run at full speed for a limited time; most of the time, it is not required to operate. Based on the product's usage pattern, the embedded processor is controlled to be in running mode when there is human-machine interaction or when external interrupt events need to be handled; under other circumstances, the embedded processor is controlled to be in idle or hibernation mode. Embedded GIS systems employ a message-driven mechanism: when a message is dispatched, it indicates that a task needs to be completed by the processor, and the embedded processor operates in run mode; if the system fails to receive any new messages within a certain time interval (e.g., 2 seconds) and other tasks have been completed, the processor is switched from run mode to idle mode via software programming; if the time is longer (e.g., 5 seconds), it can further switch to sleep mode; in idle or sleep mode, once the system is awakened by an external event, it returns to run mode. This process repeats, forming the processor operating mode switching diagram shown in Figure 1. 1.2 Rational Data Scheduling In embedded GIS systems, program code and data are stored in memory, and memory access is a significant portion of the embedded system's power consumption. Statistics show that memory transfer is the most expensive operation performed by the CPU to date—the energy consumed by a single memory transfer is 33 times that of an addition operation. Therefore, the most important task in reducing system energy consumption is to rationally organize the data and instruction code in memory, minimizing register and cache access and reducing CPU access to external memory. With the development of storage technology theory and the improvement of manufacturing processes, current memory architectures are generally three-level and support virtual memory technology, as shown in Figure 2. As shown in Figure 2, when the processor accesses data, the closer the data is to the CPU, the faster the data access speed and the lower the power consumption. Based on this characteristic, a high-speed cache should be enabled, and frequently accessed code and data in the embedded GIS system should be read into memory and kept resident after system startup. The specific arrangements are as follows: ① The embedded processor supports the MMU (Memory Management Unit) function. When setting the startup code, the corresponding register switch C should be turned on to make the system cache effective; ② After system initialization, the critical data frequently accessed by the system should be read from external storage into memory at once and kept resident in memory, such as interrupt service routines, map symbol library resources, and dot matrix font resources. Subsequent related operations can directly retrieve them from memory; ③ When reading and writing to Flash storage media, the characteristics of long Flash write operation time and high power consumption should be taken into account, and the number of direct Flash writes should be minimized. If it is necessary to save the running trajectory, a buffer area can be allocated in memory in advance, and the Flash can be written periodically (e.g., every 30 seconds), instead of performing a Flash write operation every time new location data is added. 1.3 Coordinate Data Processing Spatial coordinate data is a fundamental component of GIS data, characterized by its large volume and heavy computational load. Effectively reducing the number of coordinate records is a crucial measure to improve system efficiency. Therefore, embedded GIS systems require compression processing of the collected curve and surface boundary coordinate sets, i.e., reducing the number of coordinates stored within a certain accuracy range using coordinate compression algorithms. Currently, the Douglas-Puck algorithm and the "filter point compression" method are effective methods for reducing curve coordinate data and have a wide range of applications. Coordinate data compression can be implemented on a desktop PC during the generation of embedded GIS system data. Floating-point numbers in computer systems are represented using the exponent plus mantissa, requiring exponent and normalization during calculation, resulting in significantly longer calculation times for floating-point numbers compared to integers. Furthermore, embedded processors generally lack floating-point coprocessors, resulting in poor floating-point computation capabilities and long processing times. Therefore, embedded GIS systems should avoid floating-point calculations as much as possible. However, directly collected spatial coordinate data is in latitude and longitude format as a floating-point data type, unsuitable for direct use on embedded platforms. Spatial coordinates can be calculated using fixed-point data instead of floating-point data. The basic approach is to convert the geographic coordinates within the map sheet from floating-point coordinates (fx, fy) to integer coordinates (ix, iy) based on the latitude and longitude coordinates of the map sheet vertices. Embedded GIS spatial coordinate data is processed by coordinate compression and the adoption of fixed-point arithmetic rules to improve system efficiency and reduce power consumption. 1.4 Fast Map Symbol Drawing Algorithm Map symbols are the language of maps and the basic means of expressing map content. Based on geometric characteristics, they can be divided into point symbols, line symbols, and area symbols, as shown in Figure 3. According to intuitive analysis and experimental data statistics, drawing map symbols is the most time-consuming task in map display, with high power consumption. Currently, most embedded GIS systems directly use the drawing programs provided by embedded operating systems such as WinCE and Vx-works. Their advantages are good versatility and convenient programming, but they involve multiple system call layers and high resource consumption. The following proposes a method for quickly drawing map symbols using a resource template method, considering the limited hardware resources of embedded systems and the characteristics of map symbols. The resource template algorithm is based on in-depth analysis of map symbol primitives and is grounded in the fact that "almost all map elements continuously replicate themselves in a certain period." It stores repeatedly copied segments as samples in a resource library list. When a primitive needs to be drawn, the sample is retrieved from the resource library and copied according to its characteristics, ultimately achieving rapid primitive drawing. The resource template method supports direct access to the underlying drawing driver unit, integrating map symbol drawing with the underlying graphics implementation. In its implementation, the algorithm transforms complex trigonometric operations into table lookup operations and significantly improves the drawing speed of map symbols through image mapping and recursive processing. The resource template method can also quickly implement polygon pattern filling algorithms. Using the resource template method enables rapid map symbol drawing, improves map display speed, and reduces system power consumption. 1.5 Optimizing Key Algorithms Many different algorithms exist for solving the same problem in software programming. Searching a linear list includes sequential search, binary search, and block search algorithms. Common parameters for evaluating the quality of an algorithm include time complexity and space complexity. Algorithm time complexity is defined as the time cost of the algorithm, i.e., a function of the size of the problem being solved (the input quantity of the problem). When discussing system power consumption within the constraints of space complexity, more attention is paid to algorithm time complexity, because lower time complexity means higher execution efficiency, shorter execution time, and lower software power consumption. Key algorithms in embedded GIS systems are related to specific function implementations, such as path analysis algorithms, information retrieval algorithms, and navigation filtering algorithms. Path analysis involves finding the optimal (shortest time, lowest cost, shortest distance) path from the starting point to the destination on an electronic map. The basic algorithm is Dijkstra's algorithm in graph theory, with a time complexity of T(n²), resulting in high computational cost. Some scholars have conducted algorithm research and improvements targeting the topological characteristics of embedded GIS road networks. One paper proposes using a prior knowledge base to subtract impossible search paths to improve path optimization efficiency. Information retrieval algorithms generally require the prior establishment of a keyword index table, such as searching for unit names based on alphabetical order or searching for service organizations based on telephone numbers. Establishing a keyword index table and using... Binary search algorithms can quickly locate geographic entity ontology data. Navigation filtering algorithms typically use Kalman filtering to solve for information such as position, time, heading, and attitude. In Kalman optimal estimation theory, let m be the measurement dimension and n be the state dimension; then the order of the inverse of the filtering algorithm matrix is proportional to n² + n². When using a centralized Kalman filtering algorithm, the value of n is generally large, leading to high computational load, long computation time, and high power consumption. In this case, the centralized Kalman filter can be decomposed to reduce coupling, resulting in decoupled clock plane filtering equations and elevation filtering equations. This reduces the state dimension, improves the real-time performance of filtering, and reduces power consumption. 2. Summary Embedded GIS systems are widely used in various industries, and low power consumption is one of their performance indicators. After designing the hardware platform based on functional implementation, low power consumption is mainly addressed from the software perspective. This paper, based on the characteristics and functional implementation of embedded GIS systems, adopts two methods to achieve low power consumption in software: fully dynamic switching of processor operating modes and reducing processor runtime. Generally speaking, low power design for embedded systems is a system concept and should be fully considered during system planning; if possible, a model should be established for low power evaluation to ensure that the designed electronic system meets power consumption requirements.