CN102799502A - On-orbit maintenance method of satellite-borne embedded software - Google Patents

On-orbit maintenance method of satellite-borne embedded software Download PDF

Info

Publication number
CN102799502A
CN102799502A CN2012102228738A CN201210222873A CN102799502A CN 102799502 A CN102799502 A CN 102799502A CN 2012102228738 A CN2012102228738 A CN 2012102228738A CN 201210222873 A CN201210222873 A CN 201210222873A CN 102799502 A CN102799502 A CN 102799502A
Authority
CN
China
Prior art keywords
file
program
binary file
data
piece
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.)
Granted
Application number
CN2012102228738A
Other languages
Chinese (zh)
Other versions
CN102799502B (en
Inventor
李璐
李东俊
张建伟
王刚
万祥
钟海波
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Space Star Technology Co Ltd
Original Assignee
Space Star Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Space Star Technology Co Ltd filed Critical Space Star Technology Co Ltd
Priority to CN201210222873.8A priority Critical patent/CN102799502B/en
Publication of CN102799502A publication Critical patent/CN102799502A/en
Application granted granted Critical
Publication of CN102799502B publication Critical patent/CN102799502B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

The invention relates to an on-orbit maintenance method of satellite-borne embedded software for carrying out on-orbit maintenance on embedded software on a spacecraft through an increment uploading manner. The method comprises the following steps: (1) generation of increment uploading data: after determining that the on-orbit maintenance is carried out to the satellite-borne software, encoding and linking the updated satellite-borne embedded software to generate a binary file, comparing the updated binary file with the binary file corresponding to a program running on the orbit, and generating an increment file; (2) uplink loading of the increment uploading data: loading the increment file sub-package from the ground into a satellite-borne storage area, receiving a pack of uploading pack, and extracting the effective data from the uploading pack and writing the effective data into a preset increment file storage area until all the uploading packs are received; and (3) recombination running of increment uploading data: carrying out comparing and recombination on the uploaded increment file with the binary file primarily stored in the program storage, generating a new program, loading the new grogram into a memory, executing the new program, and finishing the on-orbit maintenance of the embedded software.

Description

A kind of spaceborne embedded software is at the rail maintaining method
Technical field
The present invention relates to a kind of spaceborne embedded software at the rail maintaining method, be used for that the embedded software on the spacecraft is implemented in rail and safeguard.
Background technology
When spaceborne embedded software goes wrong maybe need increase new function the time, need carry out fault restoration or function upgrading to this software in flight course.At present, spaceborne software safeguarded that at rail domestic main method is that amended software directly is injected in the embedded system by ground; Through starting amended embedded software at the rail maintenance program, the file that this method need be injected is bigger then, and the transmission time is long; Need bigger internal memory to store explanatory notes spare; And there is greater risk, breaks down, may cause total system operation actual effect in case go up the notes process.And present great majority all can only carry out the local function of software safeguarding at rail at the rail maintaining method.
Summary of the invention
Technology of the present invention is dealt with problems: the deficiency that overcomes prior art; Provide a kind of and can effectively and all sidedly carry out method in the rail maintenance to spaceborne embedded software; This method resource cost is few, and algorithm is simple, and comparison algorithm is applicable to any chip type; Portability is good, effectively raises reliability, security and the maintainability of software.
Technical solution of the present invention: spaceborne embedded software is characterized in that realizing through following steps at the rail maintaining method:
(1) annotating data on the increment generates: need carry out spaceborne software after rail is safeguarded definite; Spaceborne embedded software after upgrading is compiled, links; Generate binary file; Binary file after upgrading and the corresponding binary file of program are in orbit done comparison, generate delta file;
(2) annotating data uplink on the increment injects: ground is injected into memory block on the star with the delta file subpackage, receives that one wraps the notes bag, just will go up the memory block that the valid data of annotating in the bag extracted and write preset delta file, on all, annotates to wrap to harvest;
(3) annotate the data recombination operation on the increment: will go up the delta file of notes and make comparisons and reconfigure with there being binary file in the program storage originally; After generating new program new procedures is written into internal memory; And carry out new program, accomplish safeguarding to embedded software at rail.
The step that generates delta file in the said step (1) is following:
(1.1) judge that whether the binary file after upgrading runs through, and is then to jump to step (1.6), otherwise gets into next step;
(1.2) read a byte successively the binary file of binary file after upgrading and program correspondence in orbit; Judge whether two bytes of reading are identical, the identical step (1.1) of then returning, difference gets into next step;
(1.3) judge whether the corresponding binary file of program runs through in orbit; Be that binary file after then representing to upgrade has increased one piece of data; The data that increase read all the elements that the address begins the binary file tail after upgrade for the binary file after upgrading is current; Form the alter the procedure piece of a pattern, and get back to step (1.1), otherwise get into next step for " increase ";
(1.4) search for the corresponding binary file of program in orbit based on beginning one piece of data from the current byte of reading in the binary file after upgrading; See and whether deleted one piece of data; Be then to form the alter the procedure piece of a pattern for " deletion "; And get back to step (1.1), otherwise get into next step;
(1.5) according to beginning the binary file after the one piece of data search is upgraded from the current byte of reading in the corresponding binary file of program in orbit; See and whether increased one piece of data; Be then to form the alter the procedure piece of a pattern, and get back to step (1.1) for " increase "; Otherwise form the alter the procedure piece of a pattern, and get back to step (1.1) for " replacement ";
(1.6) judge whether the corresponding binary file of program runs through in orbit; Be then to finish comparison; Otherwise one piece of data has been deleted in expression; The content of deletion reads the address and begins to form the alter the procedure piece of a pattern for " deletion " to all the elements of the corresponding binary file tail of program in orbit for the corresponding binary file of program in orbit is current, end is compared;
The forming process of the piece that alters the procedure of above-mentioned " increase " is: the current address of reading of the binary file of program correspondence writes delta file in orbit; And in delta file, adopt fixing label to describe the programing change pattern, and the data length and the content that increase are write delta file;
The forming process of the piece that alters the procedure of above-mentioned " deletion " is: the current address of reading of the binary file of program correspondence writes delta file in orbit; And in delta file, adopt fixing label to describe the programing change pattern, and the data length of deletion is write delta file;
The forming process of the piece that alters the procedure of above-mentioned " replacement " is following: the current address of reading of the binary file of program correspondence writes delta file in orbit; And in delta file, adopt fixing label to describe the programing change pattern, and will replace the current byte of reading in length and the binary file after the renewal of byte and write delta file.
Nonvolatile memory FLASH or EEPROM are adopted in the memory block on the star in the said step (2).
The present invention's beneficial effect compared with prior art is:
(1). the present invention adopts notes mode on the increment: this method does not need to upgrade the whole uplink of software object file after upgrading, and a part that only needs change will take place transmits upstream in the embedded system, supports the part or the complete upgrading of embedded software;
(2). adopt and annotate data general-purpose robotization generation design on the increment: annotate data on the increment and generate automatically through the delta file generation technique; The file of delta file generation technique comparison is the binary file of final write-in program storer; Comparison algorithm and file layout are irrelevant, are applicable to any embedded chip;
(3). adopt the power-off protection design: annotate nonvolatile memory stores such as The data FLASH, EEPOM on the increment, even the outage of running software platform, it is still effective to have gone up the delta file of annotating after powering up once more;
(4). adopt the breakpoint transmission design: on increment, annotate data through the remote-control romote-sensing interface by terrestrial transmission in the process of aircraft; Annotate the packet sequence number through in minute packet procedures, being provided with; Can support data repeatedly to pass by and continue biography; Do not require continuous injection, the restriction of do not passed by time and remote control segmental arc.
(5). adopt the safety startup of system design: annotate data storage on the increment in nonvolatile memories such as FLASH, EEPOM; After recombinating, directly be written into the internal memory operation, do not revise the routine data in the original program storage with the original program file of embedded system.Inject and break down if annotate data on the increment, equipment adds outage or software reset again restart after, still move original program, inject and break down even guaranteed to annotate on the increment data, can not cause embedded system thoroughly to lose efficacy yet.
(6). support repeatedly to go up to annotate design: do not receive software to go up the restriction of annotating, in operation, annotate in the process of program, can go up once more to annotate and upgrade, supreme notes number of times restriction.
(7). adopt the portable design of general recombinant technique: designed reassembly algorithm to DSP and two types of main flow embedded chips of ARM at present, can be transplanted to easily on the chip of DSP and any model of ARM.
Description of drawings
Fig. 1 is a system chart of the present invention;
Fig. 2 for ancient deed of the present invention with respect to new file delete the one piece of data synoptic diagram;
Fig. 3 has increased the one piece of data synoptic diagram for the new file of the present invention with respect to ancient deed;
Fig. 4 is the embedded program reorganization synoptic diagram that the present invention is based on ARM;
Fig. 5 is the embedded program reorganization process flow diagram that the present invention is based on ARM;
Fig. 6 is the embedded program reorganization synoptic diagram that the present invention is based on DSP;
Fig. 7 is that the embedded program address that the present invention is based on DSP remaps process flow diagram;
Fig. 8 is the embedded program reorganization process flow diagram that the present invention is based on DSP.
Embodiment
Below in conjunction with accompanying drawing the present invention is explained further details.Mainly comprise delta file generation technique and two parts of embedded software recombinant technique at the rail maintaining method.The delta file generation technique is used to generate delta file; The embedded software recombinant technique is used for the program reorganization and loads.
As shown in Figure 1, step of the present invention is following:
(1) annotating data on the increment generates: need carry out spaceborne software after rail is safeguarded definite; Spaceborne embedded software after upgrading is compiled, links; Generate binary file; Binary file after upgrading and the corresponding binary file of program are in orbit done comparison, generate delta file;
The alignment algorithm that is based on file of the generation utilization of delta file.The file that is used to the compare binary file after for compiling, alignment algorithm is based on file, and is irrelevant with file layout.
The basic thought of file comparison is: think that at first the binary file that program generated in orbit is an ancient deed, the binary file after being upgraded by ground is new file.Read a byte successively since two file headers then and do comparison.If two bytes are identical, then be left intact, then the read next byte.If two bytes are inequality, then need judge the reason that byte is inequality.
Byte is inequality to have 3 kinds of situation.
A kind of situation be ancient deed with respect to new file delete one piece of data, so the byte of current comparison is inequality.As shown in Figure 2, the current byte that reads of ancient deed is a, and the new current byte that reads of file is b.If pass through search file; The content of finding ancient deed k m1 to the address from the address is identical with the content of new file n2 m2 to the address from the address; Then think ancient deed with respect to new file delete one piece of data, the content of deletion is the data of address n1 to address k-1.N2 can be provided with to the length of m2 as the case may be.Rule of thumb, can be set to 32 or 64 bytes.
Second kind of situation is that new file has increased one piece of data with respect to ancient deed, so the byte of current comparison is inequality.As shown in Figure 3, the current byte that reads of ancient deed is a, and the new current byte that reads of file is b.If pass through search file; The content of finding ancient deed n1 m1 to the address from the address is identical with the content of new file k m2 to the address from the address; Think that then new file has increased one piece of data with respect to ancient deed, the content of increase is the data of address n2 to address k-1.
The third situation exactly when byte inequality neither when increasing, just think that the byte in the ancient deed is replaced by the byte in the new file because deletion is not again.
What delta file comprised is exactly above three kinds of information that situation reflected.The piece that alters the procedure in the delta file is divided according to " increase ", " deletion " and " replacement " three kinds of situation.
In the file comparison process; When finding that new file has increased one piece of data than ancient deed; At first the current address n1 that reads of ancient deed shown in Figure 3 is write delta file, then 0xaa is write delta file, expression change pattern is " increase "; At last data length (k-n2) that increases and content (content of new file address n2 k-1 to the address) are write delta file, this has just formed a piece that alters the procedure that pattern is " increase ";
In the file comparison process; When find ancient deed than new file delete during one piece of data; At first the current address n1 that reads of ancient deed shown in Figure 2 is write delta file, then 0xbb is write delta file, expression change pattern is " deletion "; Data length (k-n1) with deletion writes delta file at last, and this has just formed a piece that alters the procedure that pattern is " deletion ";
In the file comparison process; When the byte of finding ancient deed is replaced by the byte of new file; If the address of the address of current replacement byte and previous replacement byte is continuous; The byte that then directly will replace writes in the piece that alters the procedure at previous replacement byte place, and the length of the piece that will alter the procedure writes delta file after adding 1 again; If the address of the address of current replacement byte and previous replacement byte is discontinuous, then form the piece that alters the procedure again, at first the start address that is replaced byte in the ancient deed is write delta file; Then 0xcc is write delta file; Expression change pattern is " replacement ", then writes delta file with 1, and expression replacement length is 1; At last the replacement byte in the new file is write delta file, this has just formed a piece that alters the procedure that pattern is " replacement ".The piece that alters the procedure comprises one section continuous replacement byte, therefore, if the address of the address of current replacement byte and previous replacement byte is continuous, then current replacement byte and previous replacement byte is merged in the piece that alters the procedure; If the address of the address of current replacement byte and previous replacement byte is discontinuous, then regenerate the piece that alters the procedure.
Comparison step is following:
(1.1) judge that whether the binary file after upgrading runs through, and is then to jump to step (1.6), otherwise gets into next step;
(1.2) read a byte successively the binary file of binary file after upgrading and program correspondence in orbit; Judge whether two bytes of reading are identical, the identical step (1.1) of then returning, difference gets into next step;
(1.3) judge whether the corresponding binary file of program runs through in orbit; Be that binary file after then representing to upgrade has increased one piece of data; The data that increase read all the elements that the address begins the binary file tail after upgrade for the binary file after upgrading is current; Form the alter the procedure piece of a pattern, and get back to step (1.1), otherwise get into next step for " increase ";
(1.4) according to the binary file after upgrading; The one piece of data that begins from the current byte of reading (32 bytes for example; This value can be adjusted according to actual conditions when concrete the realization) search for the corresponding binary file of program in orbit; Whether with the corresponding binary file of program in orbit in one piece of data after the current sense byte identical, judge whether to have deleted one piece of data, deletion then forms the alter the procedure piece of a pattern for " deletion "; And get back to step (1.1), otherwise get into next step;
(1.5) according to beginning the binary file after the one piece of data search is upgraded from the current byte of reading in the corresponding binary file of program in orbit; See and whether increased one piece of data; Be then to form the alter the procedure piece of a pattern, and get back to step (1.1) for " increase "; Otherwise form the alter the procedure piece of a pattern, and get back to step (1.1) for " replacement ";
(1.6) judge whether the corresponding binary file of program runs through in orbit; Be then to finish comparison; Otherwise one piece of data has been deleted in expression; The content of deletion reads the address and begins to form the alter the procedure piece of a pattern for " deletion " to all the elements of the corresponding binary file tail of program in orbit for the corresponding binary file of program in orbit is current, end is compared.
The delta file form is as shown in table 1:
Table 1 delta file form
Figure BSA00000742172700071
(2) annotating data uplink on the increment injects: ground is injected into memory block on the star with the delta file subpackage, harvests after all going up annotate bag, the valid data in the last notes bag is extracted and write the memory block of preset delta file;
Delta file packages according to last notes data transmission format in land station's subpackage then, and the size of each packet is not limit, and depends on the remote measuring and controlling Interface design, on to annotate data transmission format as shown in the table:
Annotate data transmission format on the table 2
The byte sequence number Definition Remarks
1-4 Last notes data packet head FE6B2840H
5 Last notes packet classification Be used to distinguish going up of different software and annotate bag
6 Last notes packet sequence number Last notes packet sequence number
7 Last notes data length Effective upward notes data length N in the bag (N<=M-8)
8-M-1 Last notes data Data length is that (N<=M-8), slack byte is filled out 0xAA to N
M Verification with 1 byte total check and (not containing data head and check bit)
Ground will be gone up and annotated packet and be injected on the star in the memory block; After receiving the notes packet on the star; (whether head and verification like the judgment data bag be correct for judgment data validity; Whether the bag sequence number is continuous etc.), will go up the memory block that the valid data of annotating in the packet extracted and write delta file after the judgement effectively.After last notes packet all go up to annotate was accomplished, writing in the memory block was a complete delta file as shown in table 1.Delta file adopts 3 back-up storage in storer, adopt 3 to get 2 strategy when reading, and before reorganization, can and carry out correctness and detect delta file data head and data check, guarantees reliability and correctness that delta file uses.
(3) annotate the data recombination operation on the increment: will go up the delta file of notes and make comparisons and reconfigure with there being binary file in the program storage originally; After generating new program new procedures is written into internal memory; And carry out new program, accomplish safeguarding to embedded software at rail.
Embedded system is annotated enabled instruction on receiving that ground sends after; The embedded software recombination module is with delta file and existed the binary file in the program storage to make comparisons originally; And utilize reassembly algorithm that delta file and the preceding file of modification are recombinated, generate amended file, and be written into internal memory; Then program pointer is jumped to amended program entry address, carry out amended program.
For the ARM chip, the binary file in the program storage is pure binary file (Plain Binary).The program start process of ARM chip is: earlier with the binary file whole loading in the program storage in internal memory, the operation that remaps by the start-up code executive address in the program then.Therefore, based on the embedded program reorganization of ARM, whole being loaded in the internal memory of file after only needing to recombinate need not be carried out the operation that the address remaps., specific as follows based on the embedded software regrouping process of ARM like Fig. 4, shown in 5:
1. judged whether the piece that alters the procedure, be then to jump to for the 2nd step, otherwise withdraw from the reorganization program;
2. whether the content in the determining program storer runs through, otherwise jumps to step 3, is then to jump to step 8;
3. judging whether delta file runs through, otherwise jump to step 4, is then to jump to step 9;
4. the piece first address that will alter the procedure load content before jumps to step 5 to internal memory;
5. judge whether the change pattern is " increase ", be then the load content that increases in the delta file to be arrived internal memory, and return step 2, otherwise jump to step 6;
6. judge that whether the change pattern is " deletion ", is then to skip the content that will delete in the program storage, and returns step 2, otherwise jump to step 7;
7. judge whether the change pattern is " replacement ", be then with the load content of replacing in the delta file to internal memory, and return step 2, otherwise think the incorrect and software that resets of pattern;
8. judge whether delta file runs through, be the program that then directly starts after recombinating, otherwise the load content that increases in the delta file is arrived internal memory, and start the program after the reorganization;
9. remaining load content in the program storage is arrived internal memory, and return step 2.
For dsp chip, the binary file in the program storage is the ASCII-hex form, has comprised the address and the length of program segment in the data layout.Therefore, the program of dsp chip is loaded into section in the internal memory according to sector address in start-up course, in the process that loads, has just accomplished the operation that the address remaps.Therefore, based on the embedded program reorganization of DSP, the file after needing to recombinate is loaded in the internal memory by section.For embedded software, after the program compilation, a lot of sections generally have been divided into, so-called section, the panel region that the program that just is meant is deposited continuously in internal memory.For example, the size of a program is 1000 bytes, is divided into two sections, one be written into internal memory from the address 0 to 500 place, another be written into internal memory from the address 1000 to 1500 place.Because program has been divided into two sections, so in binary file, will write down the start address and the length of two sections respectively.A program is divided into several sections, can arbitrarily be provided with, and it doesn't matter with last notes for this.
Start based on annotating on the embedded software of DSP, comprised that program reorganization and address remap two steps, therefore, also have been divided into two parts on algorithm.An algorithm is used for the address and remaps, and another algorithm is used for the program reorganization.Wherein, the address remaps the result who has used the program reassembly algorithm to return in the algorithm.The program reassembly algorithm byte of at every turn only recombinating, the address remaps and whenever reads a byte in the algorithm, all can call a secondary program reassembly algorithm.
The embedded software address process of remapping based on DSP is:
1. judge whether to have the piece that effectively alters the procedure, be then to jump to for the 2nd step, otherwise withdraw from the reorganization program;
2. read the segment length in the binary file of reorganization back, judge whether segment length is 0, be the program that then starts after the reorganization, otherwise jump to step 3;
3. read the sector address in the binary file of reorganization back, judge whether sector address is in rail maintenance program section itself, is then to skip this section, returns step 2, otherwise jumps to step 4;
4. judge that whether present segment is first section, be then with the present segment address as the program entry dot address, jump to step 5, otherwise leap to step 5;
5. read the content of present segment in the binary file of reorganization back, and the load content of present segment is arrived internal memory, return step 2.
Embedded software program regrouping process based on DSP is:
1. according to block address and the length of altering the procedure, obtain the change situation of current byte in the program storage;
2., withdraw from the reorganization of this secondary program, otherwise jump to step 3 if change situation then reads a byte, and returns this byte for not change in program storage;
3., withdraw from the reorganization of this secondary program, otherwise jump to step 4 if change situation then reads a byte, and returns this byte for increasing in delta file;
4., withdraw from the reorganization of this secondary program, otherwise jump to step 5 if change situation is then skipped the current byte in the program storage for deletion;
5. if change situation is then skipped the current byte in the program storage for replacement, in delta file, read a byte, and return this byte, withdraw from this secondary program reorganization, otherwise think the incorrect and software that resets of pattern.
Embedded program reorganization synoptic diagram based on DSP is as shown in Figure 6, and it is as shown in Figure 7 that the address remaps process flow diagram, and program reorganization process flow diagram is as shown in Figure 8.
The unspecified part of the present invention belongs to general knowledge as well known to those skilled in the art.

Claims (3)

1. spaceborne embedded software is characterized in that realizing through following steps at the rail maintaining method:
(1) annotating data on the increment generates: need carry out spaceborne software after rail is safeguarded definite; Spaceborne embedded software after upgrading is compiled, links; Generate binary file; Binary file after upgrading and the corresponding binary file of program are in orbit done comparison, generate delta file;
(2) annotating data uplink on the increment injects: ground is injected into memory block on the star with the delta file subpackage, receives that one wraps the notes bag, just will go up the memory block that the valid data of annotating in the bag extracted and write preset delta file, on all, annotates to wrap to harvest;
(3) annotate the data recombination operation on the increment: will go up the delta file of notes and make comparisons and reconfigure with there being binary file in the program storage originally; After generating new program new procedures is written into internal memory; And carry out new program, accomplish safeguarding to embedded software at rail.
2. spaceborne embedded software according to claim 1 is characterized in that at the rail maintaining method: the step that generates delta file in the said step (1) is following:
(1.1) judge that whether the binary file after upgrading runs through, and is then to jump to step (1.6), otherwise gets into next step;
(1.2) read a byte successively the binary file of binary file after upgrading and program correspondence in orbit; Judge whether two bytes of reading are identical, the identical step (1.1) of then returning, difference gets into next step;
(1.3) judge whether the corresponding binary file of program runs through in orbit; Be that binary file after then representing to upgrade has increased one piece of data; The data that increase read all the elements that the address begins the binary file tail after upgrade for the binary file after upgrading is current; Form the alter the procedure piece of a pattern, and get back to step (1.1), otherwise get into next step for " increase ";
(1.4) search for the corresponding binary file of program in orbit based on beginning one piece of data from the current byte of reading in the binary file after upgrading; See and whether deleted one piece of data; Be then to form the alter the procedure piece of a pattern for " deletion "; And get back to step (1.1), otherwise get into next step;
(1.5) according to beginning the binary file after the one piece of data search is upgraded from the current byte of reading in the corresponding binary file of program in orbit; See and whether increased one piece of data; Be then to form the alter the procedure piece of a pattern, and get back to step (1.1) for " increase "; Otherwise form the alter the procedure piece of a pattern, and get back to step (1.1) for " replacement ";
(1.6) judge whether the corresponding binary file of program runs through in orbit; Be then to finish comparison; Otherwise one piece of data has been deleted in expression; The content of deletion reads the address and begins to form the alter the procedure piece of a pattern for " deletion " to all the elements of the corresponding binary file tail of program in orbit for the corresponding binary file of program in orbit is current, end is compared;
The forming process of the piece that alters the procedure of above-mentioned " increase " is: the current address of reading of the binary file of program correspondence writes delta file in orbit; And in delta file, adopt fixing label to describe the programing change pattern, and the data length and the content that increase are write delta file;
The forming process of the piece that alters the procedure of above-mentioned " deletion " is: the current address of reading of the binary file of program correspondence writes delta file in orbit; And in delta file, adopt fixing label to describe the programing change pattern, and the data length of deletion is write delta file;
The forming process of the piece that alters the procedure of above-mentioned " replacement " is following: the current address of reading of the binary file of program correspondence writes delta file in orbit; And in delta file, adopt fixing label to describe the programing change pattern, and will replace the current byte of reading in length and the binary file after the renewal of byte and write delta file.
3. spaceborne embedded software according to claim 1 is characterized in that at the rail maintaining method: nonvolatile memory FLASH or EEPROM are adopted in the memory block on the star in the said step (2).
CN201210222873.8A 2012-06-28 2012-06-28 A kind of spaceborne embedded software maintaining method in-orbit Active CN102799502B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201210222873.8A CN102799502B (en) 2012-06-28 2012-06-28 A kind of spaceborne embedded software maintaining method in-orbit

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201210222873.8A CN102799502B (en) 2012-06-28 2012-06-28 A kind of spaceborne embedded software maintaining method in-orbit

Publications (2)

Publication Number Publication Date
CN102799502A true CN102799502A (en) 2012-11-28
CN102799502B CN102799502B (en) 2016-03-30

Family

ID=47198616

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201210222873.8A Active CN102799502B (en) 2012-06-28 2012-06-28 A kind of spaceborne embedded software maintaining method in-orbit

Country Status (1)

Country Link
CN (1) CN102799502B (en)

Cited By (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103164242A (en) * 2013-02-01 2013-06-19 中国人民解放军国防科学技术大学 TTUNHSSMCLNHSROHS method of satellite housekeeping software
CN103777983A (en) * 2014-01-24 2014-05-07 航天东方红卫星有限公司 Satellite-borne software in-orbit maintaining and upgrading method
CN103793245A (en) * 2014-01-21 2014-05-14 浙江大学 Method for generating incremental files in updating process of embedded system
CN103942066A (en) * 2014-03-25 2014-07-23 中国科学院长春光学精密机械与物理研究所 Satellite-borne embedded software module on-orbit updating method
CN103984566A (en) * 2014-02-21 2014-08-13 北京神舟航天软件技术有限公司 In-orbit fine-grained performance function addition method
CN104331279A (en) * 2014-10-21 2015-02-04 上海微小卫星工程中心 Method and device for processing condition statistic type requirements in satellite-borne software
CN104484202A (en) * 2014-12-15 2015-04-01 中国科学院长春光学精密机械与物理研究所 Aerospace embedded software on-orbit reloading method applicable to 8051 microcontroller
CN104536727A (en) * 2014-11-26 2015-04-22 上海新跃仪表厂 On-orbit maintenance method for star sensor software
CN104820586A (en) * 2015-04-09 2015-08-05 北京空间机电研究所 On-orbit maintenance method for spacecraft embedded software
CN105094792A (en) * 2014-09-25 2015-11-25 航天恒星科技有限公司 Computer program injection method and system
CN105511311A (en) * 2015-11-30 2016-04-20 上海卫星工程研究所 High-efficiency remote-sensing satellite multi-system cooperation integration control method
CN106020812A (en) * 2016-05-16 2016-10-12 北京控制工程研究所 DSP platform spacecraft software-oriented dynamic on-orbit maintenance method
CN106067840A (en) * 2016-05-25 2016-11-02 郭毅 The remote debugging method of a kind of satellite in orbit and system
CN107315587A (en) * 2017-06-21 2017-11-03 北京控制工程研究所 A kind of spacecraft based on secondary link is in-orbit to safeguard injection code generating method
CN107368290A (en) * 2016-05-12 2017-11-21 阿里巴巴集团控股有限公司 Determine incremental data method and device, updated data package method, apparatus and system
CN107479999A (en) * 2017-07-28 2017-12-15 北京宇航***工程研究所 A kind of mixing control method of task management in orbit aerocraft
CN107783775A (en) * 2016-08-25 2018-03-09 南京理工大学 Based on RTOS embedded remote online upgrading functional based methods
CN108021530A (en) * 2017-12-22 2018-05-11 北京卫星信息工程研究所 The in-orbit reconstructing method of general signal processing platform based on SOC
CN108089876A (en) * 2017-12-29 2018-05-29 中国科学院国家空间科学中心 A kind of in-orbit update method of spaceborne dsp software
CN110113530A (en) * 2019-05-07 2019-08-09 中国科学院上海技术物理研究所 A kind of space infrared camera command chain method for reconfiguration and device
CN110289902A (en) * 2018-12-29 2019-09-27 中国科学院软件研究所 The more new system of software on a kind of star
CN111309668A (en) * 2020-01-23 2020-06-19 中国科学院微电子研究所 On-track reconstruction implementation method of differentially injected erasing-free FPGA (field programmable Gate array)
CN111580844A (en) * 2020-05-09 2020-08-25 上海航天电子通讯设备研究所 Software and hardware cooperative application program maintenance method supporting on-orbit dynamic update
CN112527372A (en) * 2020-12-22 2021-03-19 中国科学院微小卫星创新研究院 Method for updating satellite on-orbit software
CN113271139A (en) * 2021-04-30 2021-08-17 航天恒星科技有限公司 On-orbit reconstruction method for satellite-borne FPGA software
CN113934624A (en) * 2021-09-16 2022-01-14 北京控制工程研究所 System and method for on-orbit maintenance and verification of satellite-borne program of deep space exploration system

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070226797A1 (en) * 2006-03-24 2007-09-27 Exploit Prevention Labs, Inc. Software vulnerability exploitation shield
CN101266548A (en) * 2007-03-14 2008-09-17 中兴通讯股份有限公司 Device and method for in-system programming for programmable logic device
CN101587634A (en) * 2009-06-15 2009-11-25 北京交通大学 On-line real-time updating method for wireless cab signal vehicular equipment control program and parameter
CN101621792A (en) * 2009-07-15 2010-01-06 厦门敏讯信息技术股份有限公司 Method for upgrading telesoftware of wireless fixed phone terminal

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070226797A1 (en) * 2006-03-24 2007-09-27 Exploit Prevention Labs, Inc. Software vulnerability exploitation shield
CN101266548A (en) * 2007-03-14 2008-09-17 中兴通讯股份有限公司 Device and method for in-system programming for programmable logic device
CN101587634A (en) * 2009-06-15 2009-11-25 北京交通大学 On-line real-time updating method for wireless cab signal vehicular equipment control program and parameter
CN101621792A (en) * 2009-07-15 2010-01-06 厦门敏讯信息技术股份有限公司 Method for upgrading telesoftware of wireless fixed phone terminal

Cited By (43)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103164242A (en) * 2013-02-01 2013-06-19 中国人民解放军国防科学技术大学 TTUNHSSMCLNHSROHS method of satellite housekeeping software
CN103793245A (en) * 2014-01-21 2014-05-14 浙江大学 Method for generating incremental files in updating process of embedded system
CN103793245B (en) * 2014-01-21 2016-08-17 浙江大学 The generation method of delta file in the renewal of a kind of embedded system
CN103777983A (en) * 2014-01-24 2014-05-07 航天东方红卫星有限公司 Satellite-borne software in-orbit maintaining and upgrading method
CN103777983B (en) * 2014-01-24 2016-09-21 航天东方红卫星有限公司 A kind of On-board software is safeguarded and upgrade method in-orbit
CN103984566A (en) * 2014-02-21 2014-08-13 北京神舟航天软件技术有限公司 In-orbit fine-grained performance function addition method
CN103984566B (en) * 2014-02-21 2017-01-18 北京神舟航天软件技术有限公司 In-orbit fine-grained performance function addition method
CN103942066A (en) * 2014-03-25 2014-07-23 中国科学院长春光学精密机械与物理研究所 Satellite-borne embedded software module on-orbit updating method
CN105094792A (en) * 2014-09-25 2015-11-25 航天恒星科技有限公司 Computer program injection method and system
CN104331279B (en) * 2014-10-21 2017-06-30 上海微小卫星工程中心 Method and device for processing condition statistic type requirements in satellite-borne software
CN104331279A (en) * 2014-10-21 2015-02-04 上海微小卫星工程中心 Method and device for processing condition statistic type requirements in satellite-borne software
CN104536727A (en) * 2014-11-26 2015-04-22 上海新跃仪表厂 On-orbit maintenance method for star sensor software
CN104536727B (en) * 2014-11-26 2018-08-10 上海新跃仪表厂 The in-orbit maintaining method of star sensor software
CN104484202A (en) * 2014-12-15 2015-04-01 中国科学院长春光学精密机械与物理研究所 Aerospace embedded software on-orbit reloading method applicable to 8051 microcontroller
CN104484202B (en) * 2014-12-15 2017-07-25 中国科学院长春光学精密机械与物理研究所 Suitable for the in-orbit re-injection method of space flight embedded software of 8051 microcontrollers
CN104820586A (en) * 2015-04-09 2015-08-05 北京空间机电研究所 On-orbit maintenance method for spacecraft embedded software
CN104820586B (en) * 2015-04-09 2018-05-22 北京空间机电研究所 A kind of in-orbit maintaining method of spacecraft embedded software
CN105511311A (en) * 2015-11-30 2016-04-20 上海卫星工程研究所 High-efficiency remote-sensing satellite multi-system cooperation integration control method
CN105511311B (en) * 2015-11-30 2018-05-18 上海卫星工程研究所 Efficient remote sensing satellite multisystem coordination with the synthesis control method
CN107368290A (en) * 2016-05-12 2017-11-21 阿里巴巴集团控股有限公司 Determine incremental data method and device, updated data package method, apparatus and system
CN106020812A (en) * 2016-05-16 2016-10-12 北京控制工程研究所 DSP platform spacecraft software-oriented dynamic on-orbit maintenance method
CN106020812B (en) * 2016-05-16 2019-01-11 北京控制工程研究所 A kind of in-orbit maintaining method of dynamic for DSP platform spacecraft software
CN106067840A (en) * 2016-05-25 2016-11-02 郭毅 The remote debugging method of a kind of satellite in orbit and system
CN106067840B (en) * 2016-05-25 2020-10-30 郭毅 Remote debugging method and system for on-orbit satellite
CN107783775A (en) * 2016-08-25 2018-03-09 南京理工大学 Based on RTOS embedded remote online upgrading functional based methods
CN107315587A (en) * 2017-06-21 2017-11-03 北京控制工程研究所 A kind of spacecraft based on secondary link is in-orbit to safeguard injection code generating method
CN107315587B (en) * 2017-06-21 2020-08-14 北京控制工程研究所 Spacecraft on-orbit maintenance injection code generation method based on secondary link
CN107479999A (en) * 2017-07-28 2017-12-15 北京宇航***工程研究所 A kind of mixing control method of task management in orbit aerocraft
CN107479999B (en) * 2017-07-28 2020-09-18 北京宇航***工程研究所 Hybrid control method for task management of on-orbit aircraft
CN108021530B (en) * 2017-12-22 2021-09-14 北京卫星信息工程研究所 SOC-based universal signal processing platform on-orbit reconstruction method
CN108021530A (en) * 2017-12-22 2018-05-11 北京卫星信息工程研究所 The in-orbit reconstructing method of general signal processing platform based on SOC
CN108089876A (en) * 2017-12-29 2018-05-29 中国科学院国家空间科学中心 A kind of in-orbit update method of spaceborne dsp software
CN108089876B (en) * 2017-12-29 2020-09-18 中国科学院国家空间科学中心 On-orbit updating method for satellite-borne DSP software
CN110289902A (en) * 2018-12-29 2019-09-27 中国科学院软件研究所 The more new system of software on a kind of star
CN110113530A (en) * 2019-05-07 2019-08-09 中国科学院上海技术物理研究所 A kind of space infrared camera command chain method for reconfiguration and device
CN110113530B (en) * 2019-05-07 2021-02-09 中国科学院上海技术物理研究所 Method and device for reconfiguring instruction chain of space infrared camera
CN111309668A (en) * 2020-01-23 2020-06-19 中国科学院微电子研究所 On-track reconstruction implementation method of differentially injected erasing-free FPGA (field programmable Gate array)
CN111580844A (en) * 2020-05-09 2020-08-25 上海航天电子通讯设备研究所 Software and hardware cooperative application program maintenance method supporting on-orbit dynamic update
CN111580844B (en) * 2020-05-09 2024-02-02 上海航天电子通讯设备研究所 Software and hardware collaborative application program maintenance method supporting on-orbit dynamic update
CN112527372A (en) * 2020-12-22 2021-03-19 中国科学院微小卫星创新研究院 Method for updating satellite on-orbit software
CN113271139A (en) * 2021-04-30 2021-08-17 航天恒星科技有限公司 On-orbit reconstruction method for satellite-borne FPGA software
CN113271139B (en) * 2021-04-30 2022-07-29 航天恒星科技有限公司 On-orbit reconstruction method for satellite-borne FPGA software
CN113934624A (en) * 2021-09-16 2022-01-14 北京控制工程研究所 System and method for on-orbit maintenance and verification of satellite-borne program of deep space exploration system

Also Published As

Publication number Publication date
CN102799502B (en) 2016-03-30

Similar Documents

Publication Publication Date Title
CN102799502A (en) On-orbit maintenance method of satellite-borne embedded software
CN107391189B (en) On-orbit programming method of satellite-borne software
CN104820586B (en) A kind of in-orbit maintaining method of spacecraft embedded software
CN108089876B (en) On-orbit updating method for satellite-borne DSP software
CN103777983B (en) A kind of On-board software is safeguarded and upgrade method in-orbit
CN103473067B (en) Built-in Linux subregion and data restoration method, system and system development method
CN103268284B (en) On-orbit maintenance method for star sensor
CN104461657B (en) A kind of startup method and device of active and standby boot loader
CN101447911B (en) A device for extending the capacity of access queue by distribution control
CN102662715B (en) A kind of starting of embedded operation system method
CN107515800A (en) On-board software dependability design system and method based on software redundancy
CN103942066A (en) Satellite-borne embedded software module on-orbit updating method
CN102541608A (en) Data storage and injection module and method for star sensor
CN103226484A (en) On-orbit update method for satellite-borne integrated electronic system program
CN103677869A (en) Wireless sensor network node remote code updating system and method
CN102289395A (en) Method for using double-code mirror image operation on embedded equipment
CN104090788B (en) A kind of On-board software configuration and operation method and system based on load
CN102375744B (en) Network television upgrade method
CN102637461A (en) Start method supporting bad block flash memory scanning
CN102163155A (en) Upgrade controlling device and method for upgrading memory device
CN111258600A (en) Mirror image type embedded program firmware upgrading method
CN108182078B (en) Optimized missile-borne device non-dismantling software online upgrading method
CN108874582A (en) A kind of system recovery method, device and terminal
CN104809018A (en) Method and system for injecting hotfix into software of embedded system
CN102736932B (en) The method for making of image file, image file and the starting factor method of multisystem

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