CN102880494B - A kind of local code update method for microsatellite system and system thereof - Google Patents
A kind of local code update method for microsatellite system and system thereof Download PDFInfo
- Publication number
- CN102880494B CN102880494B CN201210362798.5A CN201210362798A CN102880494B CN 102880494 B CN102880494 B CN 102880494B CN 201210362798 A CN201210362798 A CN 201210362798A CN 102880494 B CN102880494 B CN 102880494B
- Authority
- CN
- China
- Prior art keywords
- module
- call list
- executable file
- microsatellite
- ram
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
- 108091092878 Microsatellite Proteins 0.000 title claims abstract description 40
- 238000000034 method Methods 0.000 title claims abstract description 23
- 238000010276 construction Methods 0.000 claims description 6
- 238000013507 mapping Methods 0.000 description 6
- 238000010586 diagram Methods 0.000 description 3
- 238000004891 communication Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 239000002131 composite material Substances 0.000 description 1
- 230000008878 coupling Effects 0.000 description 1
- 238000010168 coupling process Methods 0.000 description 1
- 238000005859 coupling reaction Methods 0.000 description 1
- 230000007812 deficiency Effects 0.000 description 1
- 238000009432 framing Methods 0.000 description 1
- 230000000246 remedial effect Effects 0.000 description 1
- 239000002699 waste material Substances 0.000 description 1
Landscapes
- Stored Programmes (AREA)
Abstract
The invention discloses a kind of local code update method for microsatellite system, comprising: (1) builds module call list; (2) malfunctioning module ID is obtained; (3) corresponding module is found out according to ID from this locality, and to its compiling; (4) executable file compiling and obtain is uploaded; (5) executable file is loaded in RAM; (6) update module call list; The invention also discloses the renewal system realizing said method.The present invention adopts the mode of local updating by building module call list, effectively solve the problem that prior art renewal speed is slow, owing to greatly reducing the size of upload file, therefore greatly improve the utilization factor of link circuit resource between star ground, all the other normal program operation can be ensured simultaneously.
Description
Technical field
The invention belongs to field of computer technology, be specifically related to a kind of local code update method for microsatellite system and system thereof.
Background technology
Due to the rugged surroundings of the outer space, memory device in microsatellite system likely can be damaged, thus subprogram can be caused normally to run, in this case, just likely cause whole satellite normally to run if do not upgrade these programs, serious whole the satellite that may cause is scrapped.
It is satellite in orbit in process that software upgrades in-orbit, after finding task software error or leak, replaces the remedial measures of prototype version with the software redaction of evading it.Therefore software upgrades one of objective requirement being not only satellite system in-orbit, it is also the inevitable evolution tendency of microsatellite composite elctronics technical.
At present, the object granularity that the spaceborne computer software of lot of domestic and international satellite model upgrades in-orbit is comparatively thick, as overall in software or subsystem software configuration item.In the renewal of current satellite system code, need the bootloader program system image that programming is whole again by means of system, power on restart routine, thus complete the renewal of a code.The advantage of this way is: first, and renewal rewards theory is simple.This way does not need on the basis of original task software, introduce the complicated program that dynamically updates support and upgrades in-orbit; Secondly, the overhead of the process for system of renewal is little.
Although this method realizes simple, be easy to operation, this method has following shortcoming:
First, renewal speed is slow, and success ratio is low; Carry out software to upgrade in-orbit must inject the overall or whole configuration item of software on star at every turn.Especially when the code effectively upgraded only accounts for the sub-fraction of update software or configuration item, but still need to upgrade whole application programs or configuration item, low in satellite-ground link communication speed, when the bit error rate is higher, the speed of renewal is slow, and success ratio is low.
Secondly, the resource of link between star ground is wasted; Because the effective velocity communicated between star ground is lower, the limited communications resources between star ground, when the ratio that effectively more fresh code accounts for update software or configuration item is minimum, serious waste and take star ground resource, has influence on other modules to the use that communicates of star ground.
Again, the interruption causing program to be run is upgraded; Because code update is by means of bootloader program, need by programming again and again power on to restart system, system cloud gray model inevitably needs to interrupt.
Summary of the invention
For the above-mentioned technological deficiency existing for prior art, the invention provides a kind of local code update method for microsatellite system, all the other normal program operation can be ensured at no point in the update process, and renewal speed is fast.
For a local code update method for microsatellite system, comprise following process:
(1) in microsatellite system, build module call list, described module call list stores the regional address of each module in Installed System Memory;
(2) obtain the ID of malfunctioning module in microsatellite system, find out the module corresponding with this ID from this locality, and the code compilation of this module is become executable file;
(3) described executable file is uploaded in microsatellite system; According to the load address information in executable file, executable file is loaded on corresponding clear area in Installed System Memory;
(4) according to the regional address of executable file in internal memory, the regional address of malfunctioning module in update module call list.
In described step (2), the process of executable file is become by the code compilation of module to be: first, new definition one piece of region of memory in the CMD file in the system source code engineering catalogue of this locality; Then, according to the address of new definition region of memory, the load address information of update module; Finally, the module compiles after renewal is become executable file.
Preferably, in described step (4), after module call list has upgraded, described module call list and executable file have been saved in the flash storage of system; Under can ensureing that microsatellite system surprisingly restarts situation, still can perform the module after renewal.
Local code for microsatellite system upgrades a system, comprising:
Call list construction unit, for according to the regional address of each module in microsatellite Installed System Memory, builds module call list;
Receiving element, for receiving the ID obtaining malfunctioning module in microsatellite system;
Searching compilation unit, for finding out the module corresponding with described ID from this locality, and the code compilation of this module being become executable file;
Uploading unit, for being uploaded in microsatellite system by described executable file;
Loading unit, for being loaded on corresponding clear area in microsatellite Installed System Memory according to the load address information in executable file by executable file;
Updating block, for according to the regional address of executable file in internal memory, the regional address of malfunctioning module in the module call list described in renewal.
The present invention adopts the mode of local updating by building module call list, effectively solve the problem that prior art renewal speed is slow, owing to greatly reducing the size of upload file, therefore greatly improve the utilization factor of link circuit resource between star ground, all the other normal program operation can be ensured simultaneously.
Accompanying drawing explanation
Fig. 1 is the structural representation of microsatellite system.
Fig. 2 is the mapping schematic diagram in module call list and Installed System Memory district.
Fig. 3 is the mapping schematic diagram of module stores table and memory field and memory block.
Fig. 4 is the flow chart of steps of update method of the present invention.
Embodiment
In order to more specifically describe the present invention, below in conjunction with the drawings and the specific embodiments, technical scheme of the present invention is described in detail.
The present embodiment introduces the application of the inventive method by introducing a general microsatellite system example, Fig. 1 is a structural framing schematic diagram based on the microsatellite system of processor, processor by bus coupling to random access memory ram, nonvolatile memory NANDFLASH.Input and output I/O equipment also can be coupled to bus, and I/O equipment comprises keyboard, mouse, universal serial bus, display etc.
In whole microsatellite system, RAM is used for the code command that storage of processor run duration performs; NANDFLASH is used for code and the user data of storage system.In present embodiment, in NANDFLASH, comprise module call list, system run time version, the code of malfunctioning module, module stores table and other more fresh codes.
For whole system, the loading of malfunctioning module upgrades, and is by upgrading corresponding module call list, module stores table, load-on module codes implement.Module call list, module stores table and random access memory, the mapping relations of nonvolatile memory are the bases realizing upgrading.
The mapping relations in NANDFLASH are as shown in Figure 3 at RAM and module for module, module.The start address that module stores table contains module I D, module need be loaded on RAM, the address of module stores at NANDFLASH and the size of module.
In present embodiment, microsatellite system will realize local code renewal need apply a kind of local code renewal system, and it comprises call list construction unit, receiving element, searches compilation unit, uploading unit, loading unit and updating block; Wherein, call list construction unit, loading unit and updating block all pass through programming realization in microsatellite system, and receiving element and uploading unit can be realized by general wireless telecommunications system.
As shown in Figure 4, the mapping relations of foundation module and RAM, first present embodiment utilizes call list construction unit in microsatellite system, construct a kind of module call list, the mapping relations in module call list and Installed System Memory district as shown in Figure 2, it comprises the entry address, memory field that module is called, and system performs corresponding block code by module call list.Module call list after being built, needs to be stored in NANDFLASH, and before system performs update module code, load-on module call list in RAM, and after module call list is modified, upgrades the module call list of system and is stored in NANDFLASH.
After having built module call list, cause the block code in this region to be lost if the RAM block region of microsatellite system suffers damage suddenly, then ground can utilize the ID obtaining malfunctioning module in receiving element microsatellite system; Then, utilization is searched compilation unit and is found out the module corresponding with this ID from this locality, new definition one piece of region of memory in the CMD file in the system source code engineering catalogue of this locality, according to the address of new definition region of memory, and the load address information of update module; Finally, executable file is become to be uploaded in microsatellite system by uploading unit the module compiles after renewal.
After microsatellite system acceptance to executable file, first, according to the load address Information Pull loading unit in executable file, executable file is loaded on corresponding clear area in system RAM; Then, according to the regional address of executable file in RAM, utilize the regional address of malfunctioning module in updating block update module call list; Specific operation process is as follows:
(1) from NANDFLASH load-on module call list, module stores table and block code and other system run time version to RAM;
(2) start-up loading unit, is loaded into corresponding clear area in RAM according to the load address information in executable file by the executable file received.
(3) start updating block, according to the regional address amendment malfunctioning module module inlet address in module call list of executable file in RAM, make the executable file in the module call entry sensing RAM of the module call list of renewal.
(4) be saved in NANDFLASH by executable file, so that system is after power-down rebooting, the block code after renewal can load automatically, upgrades the module stores table in RAM simultaneously.
(5) preserve the module call list after upgrading in NANDFLASH, make system after power-down rebooting or module call list damage, module call list can be reloaded.
(6) preserve amended module stores table in NANDFLASH, make system after power-down rebooting or module stores table damage, module stores table can be reloaded.
(7) upgraded.
Effectively transmit under data are about the condition of 70Kbyte/min at satellite-ground link, adopt present embodiment module local update method and traditional integral update method, upgrade system software size and be all about 700Kb, the size of one of them malfunctioning module is 10Kb, and the more new data of two kinds of methods is as shown in table 1:
Table 1
As can be seen from the correlation data of table 1, adopt local updating method for the renewal of local module being less than overall software, relative to traditional update method, there is the lifting of significant speed and efficiency.
Above example is to object of the present invention; technical scheme has carried out further detailed description; be understood that; the above is not in order to limit the present invention; within the spirit and principles in the present invention every, any amendment made, equivalent replacement; improve, all should be included within protection scope of the present invention.
Claims (1)
1. the local code for microsatellite system upgrades a system, it is characterized in that, comprising:
Call list construction unit, for according to the regional address of each module in microsatellite Installed System Memory, builds module call list;
Receiving element, for receiving the ID obtaining malfunctioning module in microsatellite system;
Searching compilation unit, for finding out the module corresponding with described ID from this locality, and the code compilation of this module being become executable file;
Uploading unit, for being uploaded in microsatellite system by described executable file;
Loading unit, for being loaded on corresponding clear area in microsatellite Installed System Memory according to the load address information in executable file by executable file;
Updating block, for according to the regional address of executable file in internal memory, the regional address of malfunctioning module in the module call list described in renewal;
Described call list construction unit constructs described module call list in microsatellite system, and module call list comprises the entry address, memory field that module is called, and microsatellite system performs corresponding block code by module call list; Module call list after being built, need to be stored in NANDFLASH, before microsatellite system performs update module code, load-on module call list is in RAM, and after module call list is modified, update module call list is also stored in NANDFLASH;
After having built module call list, cause the block code in this region to be lost if the RAM block region of microsatellite system suffers damage suddenly, then ground utilizes the ID obtaining malfunctioning module in receiving element microsatellite system; Then, utilization is searched compilation unit and is found out the module corresponding with this ID from this locality, new definition one piece of region of memory in the CMD file in the system source code engineering catalogue of this locality, according to the address of new definition region of memory, and the load address information of update module; Finally, executable file is become to be uploaded in microsatellite system by uploading unit the module compiles after renewal;
After microsatellite system acceptance to executable file, first, according to the load address Information Pull loading unit in executable file, executable file is loaded on corresponding clear area in system RAM; Then, according to the regional address of executable file in RAM, utilize the regional address of malfunctioning module in updating block update module call list, specific operation process is as follows:
(1) from NANDFLASH load-on module call list, module stores table and block code and other system run time version to RAM;
(2) start-up loading unit, is loaded into corresponding clear area in RAM according to the load address information in executable file by the executable file received;
(3) start updating block, according to the regional address amendment malfunctioning module module inlet address in module call list of executable file in RAM, make the executable file in the module call entry sensing RAM of the module call list of renewal;
(4) be saved in NANDFLASH by executable file, so that system is after power-down rebooting, the block code after renewal can load automatically, upgrades the module stores table in RAM simultaneously;
(5) preserve the module call list after upgrading in NANDFLASH, make system after power-down rebooting or module call list damage, module call list can be reloaded;
(6) preserve amended module stores table in NANDFLASH, make system after power-down rebooting or module stores table damage, module stores table can be reloaded;
(7) upgraded.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210362798.5A CN102880494B (en) | 2012-09-26 | 2012-09-26 | A kind of local code update method for microsatellite system and system thereof |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210362798.5A CN102880494B (en) | 2012-09-26 | 2012-09-26 | A kind of local code update method for microsatellite system and system thereof |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102880494A CN102880494A (en) | 2013-01-16 |
CN102880494B true CN102880494B (en) | 2016-02-10 |
Family
ID=47481833
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201210362798.5A Expired - Fee Related CN102880494B (en) | 2012-09-26 | 2012-09-26 | A kind of local code update method for microsatellite system and system thereof |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102880494B (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107562504A (en) * | 2017-09-11 | 2018-01-09 | 哈尔滨工程大学 | A kind of serial port implementing method of DSP program segmentings loading |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104536727B (en) * | 2014-11-26 | 2018-08-10 | 上海新跃仪表厂 | The in-orbit maintaining method of star sensor software |
CN104820586B (en) * | 2015-04-09 | 2018-05-22 | 北京空间机电研究所 | A kind of in-orbit maintaining method of spacecraft embedded software |
CN106293784A (en) * | 2015-05-19 | 2017-01-04 | 深圳市阿乐卡科技有限公司 | A kind of method of BIN file block upgrading |
CN107273115A (en) * | 2017-05-17 | 2017-10-20 | 哈尔滨工业大学 | Satellite rapid build system and method based on standardized module |
CN108549784B (en) * | 2018-04-27 | 2021-10-08 | 北京航空航天大学 | Artificial intelligent writing satellite measurement and control and force-thermal-electric coupling simulation program method and device |
CN111290773B (en) * | 2020-03-12 | 2024-01-19 | 深圳Tcl新技术有限公司 | System upgrade method, device and readable storage medium |
CN113110853B (en) * | 2021-03-15 | 2023-05-30 | 杭州康吉森自动化科技有限公司 | Configuration data online downloading method and device and electronic equipment |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1529847A (en) * | 2001-07-16 | 2004-09-15 | 任宇清 | Embedded software update system |
CN102508657A (en) * | 2011-10-18 | 2012-06-20 | 北京空间飞行器总体设计部 | Method for maintaining embedded software module of spacecraft |
-
2012
- 2012-09-26 CN CN201210362798.5A patent/CN102880494B/en not_active Expired - Fee Related
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1529847A (en) * | 2001-07-16 | 2004-09-15 | 任宇清 | Embedded software update system |
CN102508657A (en) * | 2011-10-18 | 2012-06-20 | 北京空间飞行器总体设计部 | Method for maintaining embedded software module of spacecraft |
Non-Patent Citations (2)
Title |
---|
cient Code Update Scheme for DSP Applications in Mobile Embedded Systems".《ACM》.2010,全文. * |
Weijia Li,Youtao Zhang."An Effi * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107562504A (en) * | 2017-09-11 | 2018-01-09 | 哈尔滨工程大学 | A kind of serial port implementing method of DSP program segmentings loading |
Also Published As
Publication number | Publication date |
---|---|
CN102880494A (en) | 2013-01-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102880494B (en) | A kind of local code update method for microsatellite system and system thereof | |
CN103761088A (en) | Multiple operation system switching method applicable to ARM (advanced risc machine) framework mobile equipment | |
CN106293848A (en) | A kind of method and device of system upgrade | |
CN102779056B (en) | Remote hardware method for updating program and system | |
CN101950254B (en) | Software updating method and system thereof | |
CN104102506A (en) | ARM (Advanced RISC Machine) platform based Android startup acceleration method | |
CN103425548A (en) | Method and system for operating system cloud backup and restore | |
CN104732151A (en) | Remote safety batch BIOS updating method under Linux system | |
CN102567054B (en) | Control method of two-tower amplifier and corresponding device | |
CN104503796A (en) | IAP (Internet Access Provider) based configurable full-network remote node firmware upgrading method | |
CN104991806A (en) | Remote firmware upgrading system and method for single-chip microcomputer program | |
CN113407208A (en) | Edge device function online configuration method based on remote deployment | |
CN103777979A (en) | Method and device for recovering BIOD through cloud end | |
CN103984574A (en) | Method and system for updating website | |
CN101656975B (en) | On-site wireless program updating device and method for wireless sensor network node | |
CN104503922A (en) | Method for loading Windows CE system based on uboot guidance | |
CN103853557A (en) | Method for starting WinCE by utilizing Uboot network | |
CN104318091A (en) | Moonlet ground testing method based on virtualization computer system | |
CN109710297B (en) | Method for upgrading and backing equipment wholly or in modules | |
CN102880479B (en) | A kind of method of remotely modifying BIOS property parameters and device | |
CN103729219A (en) | Method and system for framing UEFI BIOS (unified extensible firmware interface basic input/output system) | |
CN101504613B (en) | Distributed dynamic binary translation method used for limited system | |
CN102446102A (en) | System and method for remotely updating ACPI table | |
CN104423997A (en) | Remote base station version installing method and remote base station version installing device | |
CN202870806U (en) | Remote update control system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20160210 |
|
CF01 | Termination of patent right due to non-payment of annual fee |