CN106201765A - Task stack district data check restoration methods based on μ C/OS II operating system - Google Patents

Task stack district data check restoration methods based on μ C/OS II operating system Download PDF

Info

Publication number
CN106201765A
CN106201765A CN201610580590.9A CN201610580590A CN106201765A CN 106201765 A CN106201765 A CN 106201765A CN 201610580590 A CN201610580590 A CN 201610580590A CN 106201765 A CN106201765 A CN 106201765A
Authority
CN
China
Prior art keywords
data
block
task
verification
recovery
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
CN201610580590.9A
Other languages
Chinese (zh)
Other versions
CN106201765B (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.)
National University of Defense Technology
Original Assignee
National University of Defense Technology
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 National University of Defense Technology filed Critical National University of Defense Technology
Priority to CN201610580590.9A priority Critical patent/CN106201765B/en
Publication of CN106201765A publication Critical patent/CN106201765A/en
Application granted granted Critical
Publication of CN106201765B publication Critical patent/CN106201765B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • G06F11/1008Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices
    • G06F11/1048Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices using arrangements adapted for a specific error detection or correction feature
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1415Saving, restoring, recovering or retrying at system level
    • G06F11/142Reconfiguring to eliminate the error

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Detection And Correction Of Errors (AREA)

Abstract

A kind of task stack district data check restoration methods based on μ C/OS II operating system, it is therefore an objective to the task stack data in memorizer are verified and recovers.Technical scheme is: verifies for the task creation in operating system and controls block;The code updating verification control block is inserted in operating system nucleus code;Set up verification recovery tasks in an operating system so that operating system has task stack data error detection recovery capability;Start amended operating system; activate verification recovery tasks; this task controls block to needing user task stacked data to be protected to use the coding of (71,63) code based on the improvement of Hamming code principle and verification recovery algorithms to carry out encoding and verifying recovery according to verification.Task stack data in memorizer can be verified with relatively low performance cost and recover by the present invention, improve system survivability, it is possible to effectively detect and recover the stacked data mistake of the overwhelming majority.

Description

Task stack district based on μ C/OS-II operating system data check restoration methods
Technical field
The present invention relates to a kind of stacked data based on μ C/OS-II operating system verification restoration methods, mainly at sky Between the error in data in task stack district in the internal memory that caused by hardware transient fault under radiation environment.
Background technology
Space exploration activity puts into big, risk height, has high requirement to calculating reliability.Space affects space visit The principal element surveying device safety is the radiation of cosmic ray because space environment exists include in a large number electronics, proton, particle and Heavy ion is at interior high energy particle, when the semiconductor circuit of the cosmic-ray bombardment aerospace computer being made up of these particles, This may result in the storing electricity generation transient changing in PN, this transient fault is also generally referred to as single particle effect SEE(Single Event Effect).Although hardware device typically will not be caused persistently injury by single particle effect, but The properly functioning of system can be affected by changing the transmission mode such as signal and storage unit values, time serious, even can cause system Collapse, so one of main threat that always aerospace computer is faced.After performance and power consumption, transient fault institute The memory element Dependability Problem caused has been increasingly becoming the focus that industry is paid close attention to.
μ C/OS-II operating system is typical case's embedded OS, μ C/OS-II operating system be one can be based on ROM runs, can reduce, preemptive type, real time multi task kernel, have highly portable, be particularly suitable for microprocessor And controller, it is the real time operating system suitable with a lot of commercial operating systems performances.μ C/OS-II operating system be exclusively for The Embedded Application design of computer, main code shows a C language, and has that execution efficiency is high, it is little to take up room, real Time function admirable and the feature such as extensibility is strong.Its kernel I compiles to 2KB, has been transplanted to many main flow processors On.Task under μ C/OS-II operating system is the unit that program is run, and the region of memory storing its data is referred to as task heap Stack, can be stored in ephemeral data in task stack during task run.Process is lost when being currently running of task is scheduled Before the device right to use, need to store to the task stack of this task the data in now depositor, and when task is scheduled Before obtaining the processor right to use, need to recover to depositor the data in task stack.Therefore task stack data pair Program is run and is played vital effect, it is ensured that the correctness of task stack data is to based on μ C/OS-II operating system Program stability tool be of great significance.
At present the verification of data in memorizer and restoration methods are mainly used redundant fashion, determine according to the difference of redundancy Verification and recovery capability and the space-time expense of method are determined.Such as triplication redundancy, by needing data to be protected to replicate two Part, thus three numbers evidences can be compared when single particle effect occurs, and using two parts of consistent data as just data The data of mistake are recovered.The redundancy of the method is 200%, and a data i.e. carries out protection needs extra two Redundant data, this is for the verification and recovery of mass data, and space expense is difficult to accept.
Recover the redundancy of data for reducing verification, designer often uses the mode of coding.Data encoding refers to, right Some data bit of designated length carry out certain computing, obtain some bit check bit data, check bit and former data bit group in the lump The code word of Cheng Xin, so that newly obtained code word has some special nature, and this special nature makes newly obtained code Discovery can be verified when word makes a mistake and recover.As a example by common Hamming code, through the encoded code word of Hamming code its Between the code word that any two is legal, at least 3 bit data are different, and this also allows for arbitrarily changing for a legal code word Wherein after one to two, obtain is an illegal code word.And according to the algorithm of Hamming code, when only one generation in code word During mistake, one dislocation can be recovered by being calculated the position of this mistake, and when code word occurs two dislocations Mistake, be can detect that by calculating and there occurs multi-bit error but can not recover.
But use coded system to carry out task stack data verifying and ask with recovering to presently, there are the following aspects Topic:
(1) impact on embedded system real-time: the data in task stack can be along with the scheduling of task and operation Change.Owing to embedded system real-time is relatively strong, require higher for Response time, and task switching be more frequent, Therefore stacked data changes the most always.For a code word finished, if former data bit is updated, need again Calculate its check bit.And this calculating process can cause regular hour expense, if carrying out frequently encoding, embedding certainly will be affected The real-time of formula system.(2) contradiction between error detection rate and systematic function expense: in order to improve the recall rate of mistake, need to the greatest extent Data may be verified and recover in many ground, thus the impact of performance on system own can be caused, if checkpoint is the most sparse Data cannot be effectively protected again.
Existing method is difficult in practical operation solve the problems referred to above, it is therefore necessary to study more suitably task stack district Data check restoration methods.
Summary of the invention
The problem to be solved in the present invention is: how for μ C/OS-II embedded OS, with relatively low performance cost Task stack data in memorizer verified and recovers, thus improving system survivability.
In order to solve above-mentioned technical problem, the technical scheme that the present invention proposes is: first, build for the task in operating system Vertical verification controls block;Then in operating system nucleus code, insert the code updating verification control block;Then in operating system Middle foundation verifies recovery tasks so that operating system has task stack data error detection recovery capability;Start amended operation System, activates verification recovery tasks, and this task controls block to needing user task stacked data to be protected to use base according to verification In Hamming code principle improve (71,63) code coding and verification recovery algorithms carry out encoding and verifying recovery.
Concrete technical scheme is:
The first step, the verification control that task creation for needing in μ C/OS-II operating system to carry out coding checkout recovery is corresponding Clamp dog also initializes, and then these verifications controls block and sets up into verification control block chained list, specific as follows:
1.1 set up verification controls block chained list gauge outfit.Creating a content is that the empty of full 0 verifies control block, as verification control The gauge outfit of clamp dog chained list, and control block as current verification.
1.2 control block for any one task creation one verification not setting up verification control block in operating system.Verification Controlling block is a combined data structure, and including 6 territories: task priority, type is shaping, represents the scheduling of each task Priority (is configured in an operating system by user), simultaneously as the mark of task;Task stack district initial address, type is whole Shape, represents initial address when encoding this task;Task stack end of extent address, type is shaping, represents and compiles this task End address during code;Check bit storage address, type is shaping array, and size is joined according to the size of coding region by user Put, the result obtained after depositing data encoding, be used for the verification to data and recovery;Actual schedule number of times, type is shaping, table Show the total degree that this task is dispatched by operating system, simultaneously as the timestamp of task to judge the change feelings of task stack data Condition;Scheduling times during coding, type is shaping, represents the actual schedule time when encoding this task stack district for the last time Number, simultaneously as the timestamp of the task stack district data corresponding to mark check bit.
1.3 pairs of newly-established verifications control block and initialize: task priority is initialized as this task in operating system The priority of middle setting;Task stack district initial address and task stack end of extent address initialization are that this task is in operating system The task stack district initial address of middle configuration and task stack end of extent address;Check bit storage address initialization is that user configures For depositing the region of memory initial address of this task check bit;Actual schedule number of times is initialized as 0;Scheduling times during coding It is initialized as-1.
Newly-established verification is controlled block chaining after current verification controls block, then as current verification by 1.4 Control block.If operating system also not setting up verification control the task of block, turning 1.1, otherwise will currently verify control block chaining First verification to linked list head controls block, to form circular linked list.
Second step, the kernel of amendment μ C/OS-II operating system, interpolation real-time update verification can control task tune in block Degree number of times and the code of task stack end of extent address.In μ C/OS-II operating system, regulation uses static array as task heap Stack district, if therefore the address in task stack district is it is known that carry out coding to complete stack area in an encoding process and can cause in a large number Computing cost, actually used stack area is only encoded by the present invention.During actual motion, task stack district initial address begins Keep constant eventually, it is therefore desirable to obtain actual task stack end of extent address.By positioning all execution task schedulings or cutting The code changing associative operation can safeguard that verification controls the task stack end of extent address in block.Above-mentioned code includes task scheduling letter Code in number and interrupt processing function, amending method is specifically divided into two steps:
2.1 add code in operating system nucleus so that it is have the more new task when task obtains the processor right to use Verification control block ability.Will obtain the usufructuary task of processor in operating system and be divided into two kinds of situations, one is straight The ready task of limit priority when connecing task scheduling, another kind be EOI when needing to carry out task scheduling the highest preferentially Level ready task.In operating system, the function of corresponding the two process is respectively at task scheduling function OSSched () and interruption Reason function OSIntExt ().In the two function code, in performing scheduling and stacked data being recovered before processor, add Adding one section of code, this section of code realization verifies, to obtaining the usufructuary task of processor, the actual schedule time controlled in block Number is carried out from increasing.
2.2 add code in operating system nucleus so that it is have the more new task when task loses the processor right to use Verification control block ability.Operating system will be scheduled and lose the usufructuary task of processor and be divided into two kinds of situations, one Planting is current task during immediate mission scheduling, and another kind is being currently running before interruption is arrived of task.Correspondence in operating system The function of the two process is also respectively task scheduling function OSSched () and interrupt processing function OSIntExt ().This two In individual function code, preserving in processor data and insert one section of code after the code in task stack district, this section of code realizes It is assigned to be scheduled by task control block top-of-stack pointer ptcb-> OSTCBStkPtr and loses the usufructuary task of processor Verification controls the task stack end of extent address in block.
3rd step, based on Hamming code principle, it is achieved the coding function of (71,63) code of improvement and verification reconstruction, tool Body is as follows:
3.1 realize coding function.The input parameter of coding function is coding initial address, end-of-encode address and check bit Storage address.Coding function realizes based on (71, the 63) code improved, and is an encoding block with 63 bit data, obtains 8 after coding Check bit C0To C7.For the processor of w position, w encoding block is encoded by this coding function simultaneously, i.e. from coding starting point Location starts, and every 7.875wByte data carry out first encoding, obtains wByte check bit and check bit is stored to check bit storage Region of memory pointed by address.W is the integral number power integer of 2.
3.2 realize verification reconstruction.The input parameter of verification reconstruction is verification initial address, verification end address Address is stored with check bit.Verification reconstruction realizes based on (71, the 63) code improved, with 63 bit data and 8 corresponding schools Testing position is a check block.For w bit processor, this verification reconstruction simultaneously w check block is carried out verification recover, i.e. from Verification initial address starts, and the wByte check bit of every 7.875wByte data and correspondence thereof is a check block.
4th step, creates a priority in an operating system and is 0 and is constantly in the verification recovery tasks of ready state (priority is that 0 expression priority is minimum).When verifying recovery tasks and being activated, this task travels through verification repeatedly and controls block chain Table, each verification controlled in block chained list for verification controls block, and this task checks information therein thus determines task heap Stack data carry out encoding or verifying recovery.
5th step, starts amended operating system, and amended operating system is to needing user task storehouse to be protected Data carry out encoding and verifying recovery, specific as follows:
5.1 operating system initialization.
5.2 operating systems carry out task scheduling, run the code of 2.1 steps interpolations to obtaining processor right to use task Verification control actual schedule number of times in block and be updated, run code that 2.2 steps add to losing the processor right to use The verification of task controls task stack end of extent address in block and is updated.If obtaining the usufructuary task of processor is that user appoints Business, turns 5.3, if obtaining the usufructuary task of processor is verification recovery tasks, turns 5.4.
5.3 user tasks activate, and user task performs until being interrupted by operating system, turn 5.2.
5.4 verification recovery tasks activate.
5.5 from the beginning of the gauge outfit that verification controls block chained list, and each verification in traversal chained list controls block, according to school repeatedly Test the information controlled in block to determine task stack is encoded or verifies recovery, until being interrupted by operating system, specific as follows:
5.5.1 initialize, take and control the next verification that block chained list gauge outfit is linked control block as current school with verifying Test control block piece.
When 5.5.2 taking the coding in current verification control block piece, scheduling times and actual schedule number of times compare, if During coding, scheduling times is less than actual schedule number of times, turns 5.5.3, if scheduling times is equal to actual schedule number of times during coding, turns 5.5.5。
5.5.3 data encoding.To currently verify the stack area initial address, the end address, stack area that control in block piece And check bit storage address performs coding function as parameter, for the processor of w position, specific as follows:
5.5.3.1 encoding block is divided.Data to be encoded be current verification control in block piece stack area initial address and Data between end address, stack area.It is a block to be encoded with 7.875wByte data, these data are divided into N number for the treatment of Encoding block,Represent and round on X.
5.5.3.2 initialize, make variable n=1, current block to be encoded initial address data=currently verify control block Stack area initial address in piece, current check bit storage address check=currently verifies the verification controlled in block piece Storage address, position.For convenience of describing, 63 w bit data between data to data+7.875w are write as from upper left to bottom right 8 × 8 square formations, supplement 0 number, be only used for description be not involved in calculate, making this 8 × 8 square formation is Adata
5.5.3.3 the data supervision position C of the n-th block to be encoded is calculated0To C5.Wherein C0For AdataIn the 2nd, 4,6,8 row XOR and, C1For AdataIn the 3rd, 4,7,8 row XORs and, C2For AdataIn the 5th, 6,7,8 row XORs and, C3For AdataIn 2,4,6,8 row XOR and, C4For AdataIn the 3rd, 4,7, the XOR of 8 row and, C5For AdataIn the 5th, 6,7,8 row XORs and.
5.5.3.4 the data parity check position C of the n-th block to be encoded is calculated6, C6For Adata63 middle w bit data XOR and.
5.5.3.5 the supervision parity check bit C of the n-th block to be encoded is calculated7, C7For C0To C5XOR and.
5.5.3.6 by C0To C7Deposit the internal memory pointed to check, n=n+1, data=data+7.875w, check= Check+w, if n is not more than N, forwards 5.5.3.3 to, otherwise turns 5.5.4.
5.5.4 the actual schedule number of times currently verified in control block piece is assigned to scheduling times during the coding of this block, Turn 5.5.6.
5.5.5 data check recovers.The stack area initial address currently verified in control block piece, stack area are terminated Address and check bit storage address perform verification reconstruction as parameter, for the processor of w position, specific as follows:
5.5.5.1 divide verification recovery block.The data of recovery to be verified control stack area in block piece for current verification and rise Data between beginning address and end address, stack area.It is a recovery block to be verified with 7.875wByte data, by these numbers According to being divided into N number of recovery block to be verified.
5.5.5.2 initialize, make variable n=1, current recovery block initial address data=to be verified currently verify control block Stack area initial address in piece, current check bit storage address check=currently verifies the verification controlled in block piece Storage address, position.For convenience of describing, write 63 w bit data as 8 × 8 square formations from upper left to bottom right, supplemented 0 count According to, it is only used for description and is not involved in calculating, making this 8 × 8 square formation is Bdata
5.5.5.3 from the internal memory that check points to, take out 8 w bit data, respectively C0To C7
5.5.5.4 syndrome S of the n-th recovery block to be verified is calculated0To S5.Wherein S0For BdataIn the 2nd, 4,6,8 row and C0XOR and, S1For BdataIn the 3rd, 4,7,8 row and C1XOR and, S2For BdataIn the 5th, 6,7,8 row and C2XOR and, S3For BdataIn the 2nd, 4,6,8 row and C3XOR and, S4For BdataIn the 3rd, 4,7,8 row and C4XOR and, S5For BdataIn 5,6,7,8 row and C5XOR and.
5.5.5.5 the sub-S of data parity check of the n-th recovery block to be verified is calculated6, S6For BdataIn whole 63 w figure places According to and C6XOR and.
5.5.5.6 the supervision sub-parity check S of the n-th recovery block to be verified is calculated7, S7For C0To C5And C7XOR and.
W the bit plane to the n-th recovery block to be verified carries out verification recovery the most respectively.One recovery to be verified Block is by 63 w bit data and 8 w bit check code C thereof0To C7Constituting, kth bit plane is by these 63 data and 8 verifications thereof Code C0To C7Kth position constitute.Making variable k=1, verification recovery process is specific as follows:
5.5.5.7.1 the errors present index of the kth bit plane of the n-th recovery block to be verified is calculated, i.e. by S5To S0 The binary numeral that constituted of kth position, the S of the such as n-th recovery block to be verified5To S0Kth position when being followed successively by 100110, Errors present is 38.
5.5.5.7.2 the verification that the supervision parity check bit of the kth bit plane of the n-th recovery block to be verified is corresponding is judged Sub-S7Whether it is 0, if 0, turn 5.5.5.7.3;If 1, turn 5.5.5.7.4.
5.5.5.7.3 judge that data parity check position is corresponding in the kth bit plane of the n-th recovery block to be verified Syndrome S6Whether it is 0, if S6It is 0 and errors present index is also that 0 explanation verifies successfully, turns 5.5.5.7.9;If index is not It is that 0 explanation there occurs many dislocations, turns 5.5.5.7.8;If S6It is 1 and index to be to make a mistake in 0 explanation data parity check position, Turn 5.5.5.7.6;There occurs that a data is wrong if index is not 0 explanation, turn 5.5.5.7.7.
5.5.5.7.4 the verification that the data parity check position of the kth bit plane of the n-th recovery block to be verified is corresponding is judged Sub-S6Whether it is 0, if S6It is that 0 explanation check bit includes that its parity check bit occurs a bit-errors, turns 5.5.5.7.5;If S6It is 1 Illustrate to there occurs many dislocations, it is impossible to recover, turn 5.5.5.7.8.
5.5.5.7.5 by the C of the n-th recovery block to be verified0To C5Kth position respectively with the S of the n-th recovery block to be verified0 To S5Kth position carry out XOR and then recalculate the C of the n-th recovery block to be verified7Kth position, thus mistake is carried out extensive Multiple, turn 5.5.5.7.9.
5.5.5.7.6 the data parity check position C to the n-th recovery block to be verified6Kth position negate, thus to mistake Recover, turn 5.5.5.7.9.
5.5.5.7.7 the data bit errors present index of the kth bit plane of the n-th recovery block to be verified indicated Negate, thus mistake is recovered, turn 5.5.5.7.9.
5.5.5.7.8 operating system carries out abnormality processing, turns 5.5.5.8.
5.5.5.7.9 the verification of the kth bit plane of the n-th recovery block to be verified completes, k=k+1, if k is not more than w, Turn 5.5.5.7.1, otherwise turn 5.5.5.8.
5.5.5.8 the n-th recovery block to be verified has verified, n=n+1, data=data+7.875w, check= Check+w, if n is no more than N, turns 5.5.5.3, otherwise turns 5.5.6.
5.5.6 the current control block piece that verifies is disposed, and takes the next verification being linked with piece and controls block work For new piece, operating system determines whether there is higher priority task ready, if not having higher priority task ready, turns 5.5.2;If there being higher priority task ready, operating system interrupts the execution of verification recovery tasks, turns 5.2.
Owing to task stack district data are ceaselessly carried out by verification recovery tasks when not having higher priority task ready Verification and recovery, therefore step 5.5.2 to step 5.5.6 defines one section of endless loop.And operating system has monitored whether higher Priority tasks is ready, if not having higher priority task ready, verification recovery tasks is run always;Only supervise when operating system Controlling to when having higher priority task ready, operating system carries out task scheduling (5.2 step) again, interrupts verification recovery tasks Performing, perform higher priority task, therefore step 5.2 is also endless loop to step 5.5.6.Only when power-off or operating system During collapse, step of the present invention just can stop.
Compared with current existing method for protecting EMS memory, use the present invention can reach techniques below effect:
(1) first step of the present invention design verification control block chained list preferably by task is carried out verification recover required for Information is extracted, and the code coordinating second step to embed in an operating system achieves the normal workflow in operating system Journey controls block chained list to verification in time update, reduce the extra number produced owing to verification recovers to greatest extent According to the maintenance costs of structure, and ensure that the structure of operating system is not destroyed, will not be to the stability of original system and safety Property produce impact.
(2) (71, the 63) coding of the improvement that the present invention the 3rd step realizes not only has the quick Wrong localization position of Hamming code The ability put, proposes check bit in true form word simultaneously, so that cataloged procedure more has rule, to reach to save sky Between the purpose of expense.Theory analysis and test result indicate that, (71,63) coding of improvement is saved in code space expense 46.2%, the exceptional space expense that check code causes is be encoded the space expense of data own 11.1%.Meanwhile, through theory Analyzing and experimental verification shows, (71,63) coded method of improvement is capable of detecting when whole a data mistakes, and to two Error in data has the good ability that reports an error.
(3) the verification task that the present invention the 4th step is created efficiently solves task in μ C/OS-II embedded OS The difficulty that scheduling and interruption the most frequently cause, verification strategy has taken into full account that coding at any time can be interruptible during calculating Situation, uses the strategy of " first encode and judge verification afterwards ", and coding can be carried out verification or updates check value every time, and verifies Correctness on this policy logic.
(4) present invention the 5th step is obvious to stacked data protected effect in μ C/OS-II, it is possible to effectively detects and recovers The stacked data mistake of the overwhelming majority.Such as when task is not run, stacked data makes a mistake, if dispatching this task by heap Stack data are recovered to processor depositor, then can cause task run mistake, use the present invention then can be at task inoperative Time detect the error in data of task stack, it is ensured that the correctness of task run.Fault injection experiment shows, the most perfect In task system, the average stacked data error detection rate of the present invention is 91.2%.
Accompanying drawing explanation
Fig. 1 is overall flow figure of the present invention;
Fig. 2 is the structure chart that the verification that the first step of the present invention builds controls block chained list;
Fig. 3 is the encoding block schematic diagram that the 3rd step improves (71,63) code.
Fig. 4 is that the present invention the 5th step starts amended operating system, and amended operating system is to needing use to be protected Family task stack data in time encode and verify the flow chart of recovery;
Detailed description of the invention
Fig. 1 is overall flow figure of the present invention.
The present invention is divided into five steps.The first step, for needing to carry out coding checkout recovery in μ C/OS-II operating system Verification corresponding to task creation control block and initialize, then these verifications are controlled blocks and set up into verification and control block chain Table;Second step, revises μ C/OS-II kernel, and interpolation real-time update verification can control task scheduling number of times and task stack in block The code of end of extent address;3rd step, based on Hamming code principle, it is achieved the coding function of (71,63) code of improvement and verification are extensive Complex function;4th step, creates a priority in an operating system and is 0 and is constantly in the verification recovery tasks of ready state; 5th step, starts amended operating system, and amended operating system is to carrying out by user task stacked data to be protected In time encode and verify recovery.
Fig. 2 is the structure chart that the verification that the first step of the present invention builds controls block chained list;It is a band that verification controls block chained list The circular linked list of gauge outfit.
Fig. 3 is the encoding block schematic diagram that the 3rd step improves (71,63) code.
One encoding block has 63 bit data, in the matrix of 8*8 shown in Fig. 2 in addition to No. 0 position, and remaining 63 position correspondence 63 bit data in encoding block, there are corresponding line number and row number in each position.
Fig. 4 is the flow chart after the os starting that the 5th step describes.Start amended operating system, amended Operating system is to needing user task stacked data to be protected to encode and verify recovery, specific as follows:
5.1 operating system initialization.
5.2 operating systems carry out task scheduling, run the code of 2.1 steps interpolations to obtaining processor right to use task Verification control actual schedule number of times in block and be updated, run code that 2.2 steps add to losing the processor right to use The verification of task controls task stack end of extent address in block and is updated.If obtaining the usufructuary task of processor is that user appoints Business, turns 5.3, if obtaining the usufructuary task of processor is verification recovery tasks, turns 5.4.
5.3 user tasks activate, and user task performs until being interrupted by operating system, turn 5.2.
5.4 verification recovery tasks activate.
5.5 from the beginning of the gauge outfit that verification controls block chained list, and each verification in traversal chained list controls block, according to school repeatedly Test the information controlled in block to determine task stack is encoded or verifies recovery, until being interrupted by operating system, specific as follows:
5.5.1 initialize, take and control the next verification that block chained list gauge outfit is linked control block as current school with verifying Test control block piece.
When 5.5.2 taking the coding in current verification control block piece, scheduling times and actual schedule number of times compare, if During coding, scheduling times is less than actual schedule number of times, turns 5.5.3, if scheduling times is equal to actual schedule number of times during coding, turns 5.5.5。
5.5.3 data encoding.To currently verify the stack area initial address, the end address, stack area that control in block piece And check bit storage address performs coding function as parameter, for the processor of w position, specific as follows:
5.5.3.1 encoding block is divided.Data to be encoded be current verification control in block piece stack area initial address and Data between end address, stack area.It is a block to be encoded with 7.875wByte data, these data are divided into N number for the treatment of Encoding block,Represent and round on X.
5.5.3.2 initialize, make variable n=1, current block to be encoded initial address data=currently verify control block Stack area initial address in piece, current check bit storage address check=currently verifies the verification controlled in block piece Storage address, position.For convenience of describing, 63 w bit data between data to data+7.875w are write as from upper left to bottom right 8 × 8 square formations, supplement 0 number, be only used for description be not involved in calculate, making this 8 × 8 square formation is Adata
5.5.3.3 the data supervision position C of the n-th block to be encoded is calculated0To C5.Wherein C0For AdataIn the 2nd, 4,6,8 row XOR and, C1For AdataIn the 3rd, 4,7,8 row XORs and, C2For AdataIn the 5th, 6,7,8 row XORs and, C3For AdataIn 2,4,6,8 row XOR and, C4For AdataIn the 3rd, 4,7, the XOR of 8 row and, C5For AdataIn the 5th, 6,7,8 row XORs and.
5.5.3.4 the data parity check position C of the n-th block to be encoded is calculated6, C6For Adata63 middle w bit data XOR and.
5.5.3.5 the supervision parity check bit C of the n-th block to be encoded is calculated7, C7For C0To C5XOR and.
5.5.3.6 by C0To C7Deposit the internal memory pointed to check, n=n+1, data=data+7.875w, check= Check+w, if n is not more than N, forwards 5.5.3.3 to, otherwise turns 5.5.4.
5.5.4 the actual schedule number of times currently verified in control block piece is assigned to scheduling times during the coding of this block, Turn 5.5.6.
5.5.5 data check recovers.The stack area initial address currently verified in control block piece, stack area are terminated Address and check bit storage address perform verification reconstruction as parameter, for the processor of w position, specific as follows:
5.5.5.1 divide verification recovery block.The data of recovery to be verified control stack area in block piece for current verification and rise Data between beginning address and end address, stack area.It is a recovery block to be verified with 7.875wByte data, by these numbers According to being divided into N number of recovery block to be verified.
5.5.5.2 initialize, make variable n=1, current recovery block initial address data=to be verified currently verify control block Stack area initial address in piece, current check bit storage address check=currently verifies the verification controlled in block piece Storage address, position.For convenience of describing, write 63 w bit data as 8 × 8 square formations from upper left to bottom right, supplemented 0 count According to, it is only used for description and is not involved in calculating, making this 8 × 8 square formation is Bdata
5.5.5.3 from the internal memory that check points to, take out 8 w bit data, respectively C0To C7
5.5.5.4 calculate syndrome S of the n-th recovery block to be verified0To S5.Wherein S0For BdataIn the 2nd, 4,6,8 row and C0XOR and, S1For BdataIn the 3rd, 4,7,8 row and C1XOR and, S2For BdataIn the 5th, 6,7,8 row and C2XOR and, S3For BdataIn the 2nd, 4,6,8 row and C3XOR and, S4For BdataIn the 3rd, 4,7,8 row and C4XOR and, S5For BdataIn 5,6,7,8 row and C5XOR and.
5.5.5.5 the sub-S of data parity check of the n-th recovery block to be verified is calculated6, S6For BdataIn whole 63 w figure places According to and C6XOR and.
5.5.5.6 the supervision sub-parity check S of the n-th recovery block to be verified is calculated7, S7For C0To C5And C7XOR and.
W the bit plane to the n-th recovery block to be verified carries out verification recovery the most respectively.One recovery to be verified Block is by 63 w bit data and 8 w bit check code C thereof0To C7Constituting, kth bit plane is by these 63 data and 8 verifications thereof Code C0To C7Kth position constitute.Making variable k=1, verification recovery process is specific as follows:
5.5.5.7.1 the errors present index of the kth bit plane of the n-th recovery block to be verified is calculated, i.e. by S5To S0 The binary numeral that constituted of kth position, the S of the such as n-th recovery block to be verified5To S0Kth position when being followed successively by 100110, Errors present is 38.
5.5.5.7.2 the verification that the supervision parity check bit of the kth bit plane of the n-th recovery block to be verified is corresponding is judged Sub-S7Whether it is 0, if 0, turn 5.5.5.7.3;If 1, turn 5.5.5.7.4.
5.5.5.7.3 judge that data parity check position is corresponding in the kth bit plane of the n-th recovery block to be verified Syndrome S6Whether it is 0, if S6It is 0 and errors present index is also that 0 explanation verifies successfully, turns 5.5.5.7.9;If index is not It is that 0 explanation there occurs many dislocations, turns 5.5.5.7.8;If S6It is 1 and index to be to make a mistake in 0 explanation data parity check position, Turn 5.5.5.7.6;There occurs that a data is wrong if index is not 0 explanation, turn 5.5.5.7.7.
5.5.5.7.4 the verification that the data parity check position of the kth bit plane of the n-th recovery block to be verified is corresponding is judged Sub-S6Whether it is 0, if S6It is that 0 explanation check bit includes that its parity check bit occurs a bit-errors, turns 5.5.5.7.5;If S6It is 1 Illustrate to there occurs many dislocations, it is impossible to recover, turn 5.5.5.7.8.
5.5.5.7.5 by the C of the n-th recovery block to be verified0To C5Kth position respectively with the S of the n-th recovery block to be verified0 To S5Kth position carry out XOR and then recalculate the C of the n-th recovery block to be verified7Kth position, thus mistake is carried out extensive Multiple, turn 5.5.5.7.9.
5.5.5.7.6 the data parity check position C to the n-th recovery block to be verified6Kth position negate, thus to mistake Recover, turn 5.5.5.7.9.
5.5.5.7.7 the data bit errors present index of the kth bit plane of the n-th recovery block to be verified indicated Negate, thus mistake is recovered, turn 5.5.5.7.9.
5.5.5.7.8 operating system carries out abnormality processing, turns 5.5.5.8.
5.5.5.7.9 the verification of the kth bit plane of the n-th recovery block to be verified completes, k=k+1, if k is not more than w, Turn 5.5.5.7.1, otherwise turn 5.5.5.8.
5.5.5.8 the n-th recovery block to be verified has verified, n=n+1, data=data+7.875w, check= Check+w, if n is no more than N, turns 5.5.5.3, otherwise turns 5.5.6.
5.5.6 the current control block piece that verifies is disposed, and takes the next verification being linked with piece and controls block work For new piece, operating system determines whether there is higher priority task ready, if not having higher priority task ready, turns 5.5.2;If there being higher priority task ready, operating system interrupts the execution of verification recovery tasks, turns 5.2.

Claims (4)

1. task stack district based on a μ C/OS-II operating system data check restoration methods, it is characterised in that include following Step:
The first step, controls block for the verification needing the task creation carrying out coding checkout recovery corresponding in μ C/OS-II operating system And initialize, then these verifications being controlled block and sets up into verification control block chained list, it is a group that described verification controls block Mould assembly data structure, including 6 territories: task priority, type is shaping, represents the dispatching priority of each task, makees simultaneously Mark for task;Task stack district initial address, type is shaping, represents initial address when encoding this task;Task End address, stack area, type is shaping, represents end address when encoding this task;Check bit storage address, type is Shaping array, size is configured according to the size of coding region by user, and the result obtained after depositing data encoding, for logarithm According to verification and recovery;Actual schedule number of times, type is shaping, represents the total degree that this task is dispatched by operating system, simultaneously As the timestamp of task to judge the situation of change of task stack data;Scheduling times during coding, type is shaping, represents right Actual schedule number of times when this task stack district encodes for the last time, simultaneously as the task heap corresponding to mark check bit The timestamp of stack district data;
Second step, the kernel of amendment μ C/OS-II operating system, interpolation real-time update verification can control task scheduling time in block Number and the code of task stack end of extent address, amending method is:
2.1 add code in μ C/OS-II operating system nucleus so that it is have and update when task obtains the processor right to use The verification of task controls the ability of block;
2.2 add code in μ C/OS-II operating system nucleus so that it is have and update when task loses the processor right to use The verification of task controls the ability of block;
3rd step, based on Hamming code principle, it is achieved the coding function of (71,63) code of improvement and verification reconstruction, the most such as Under:
3.1 realize coding function: the input parameter of coding function is deposited for coding initial address, end-of-encode address and check bit Storage address;Coding function realizes based on (71, the 63) code improved, and is an encoding block with 63 bit data, obtains 8 schools after coding Test a C0To C7;For the processor of w position, w encoding block is encoded by this coding function simultaneously, i.e. from coding initial address Starting, every 7.875wByte data carry out first encoding, obtain wByte check bit and check bit are stored to check bit storage ground Region of memory pointed by location, w is the integral number power integer of 2;
3.2 realize verification reconstructions: verification reconstruction input parameter for verification initial address, verification end address and Check bit storage address;Verification reconstruction realizes based on (71, the 63) code improved, with 63 bit data and 8 corresponding bit checks Position is a check block;For the processor of w position, this verification reconstruction simultaneously w check block is carried out verification recover, i.e. from Verification initial address starts, and the wByte check bit of every 7.875wByte data and correspondence thereof is a check block;
4th step, creates a priority in an operating system and is 0 and is constantly in the verification recovery tasks of ready state, work as school Testing recovery tasks when being activated, this task travels through verification repeatedly and controls block chained list, for verification control in block chained list each Verification controls block, and this task checks information therein thus determines encode task stack data or verify recovery;
5th step, starts amended operating system, and amended operating system is to needing user task stacked data to be protected Carry out encoding and verifying recovery, specific as follows:
5.1 operating system initialization;
5.2 operating systems carry out task scheduling, run the code of 2.1 steps interpolations to obtaining processor right to use task Verification controls actual schedule number of times in block and is updated, and the code running 2.2 steps interpolations is appointed losing the processor right to use The verification of business controls task stack end of extent address in block and is updated;If obtaining the usufructuary task of processor is that user appoints Business, turns 5.3, if obtaining the usufructuary task of processor is verification recovery tasks, turns 5.4;
5.3 user tasks activate, and user task performs until being interrupted by operating system, turn 5.2;
5.4 verification recovery tasks activate;
5.5 from the beginning of the gauge outfit that verification controls block chained list, and each verification in traversal chained list controls block, according to verification repeatedly The information in block that controls determines encode task stack or verify recovery, until being interrupted by operating system, specific as follows:
5.5.1 initialize, take and control the next verification that block chained list gauge outfit is linked control block as currently verifying control with verifying Clamp dog piece;
When 5.5.2 taking the coding in current verification control block piece, scheduling times and actual schedule number of times compare, if compiling During code, scheduling times is less than actual schedule number of times, turns 5.5.3, if scheduling times is equal to actual schedule number of times during coding, turns 5.5.5;
5.5.3 data encoding: by currently verify the stack area initial address controlled in block piece, end address, stack area and Check bit storage address performs coding function as parameter, for the processor of w position, specific as follows:
5.5.3.1 encoding block is divided: data to be encoded control stack area initial address and heap in block piece for current verification Data between stack end of extent address, are a block to be encoded with 7.875wByte data, these data are divided into N number of waiting and compile Code block, Represent and round on X;
5.5.3.2 initializing, make variable n=1, current block to be encoded initial address data=currently verifies in control block piece Stack area initial address, current check bit storage address check=currently verifies the check bit storage ground controlled in block piece Location;Write 63 w bit data between data to data+7.875w as 8 × 8 square formations from upper left to bottom right, supplemented one 0 Number, is only used for description and is not involved in calculating, and making this 8 × 8 square formation is Adata
5.5.3.3 the data supervision position C of the n-th block to be encoded is calculated0To C5, wherein C0For AdataIn the 2nd, 4,6,8 row XORs With, C1For AdataIn the 3rd, 4,7,8 row XORs and, C2For AdataIn the 5th, 6,7,8 row XORs and, C3For AdataIn the 2nd, 4, 6,8 row XOR and, C4For AdataIn the 3rd, 4,7, the XOR of 8 row and, C5For AdataIn the 5th, 6,7,8 row XORs and;
5.5.3.4 the data parity check position C of the n-th block to be encoded is calculated6, C6For Adata63 middle w bit data different Or and;
5.5.3.5 the supervision parity check bit C of the n-th block to be encoded is calculated7, C7For C0To C5XOR and;
5.5.3.6 by C0To C7Deposit the internal memory pointed to check, n=n+1, data=data+7.875w, check=check+ W, if n is not more than N, forwards 5.5.3.3 to, otherwise turns 5.5.4;
5.5.4 the actual schedule number of times currently verified in control block piece is assigned to scheduling times during the coding of this block, turns 5.5.6;
5.5.5 data check recovers: will currently verify the stack area initial address, the end address, stack area that control in block piece And check bit storage address performs verification reconstruction as parameter, for the processor of w position, specific as follows:
5.5.5.1 verification recovery block is divided: the data of recovery to be verified are that in current verification control block piece, stack area initiates Data between address and end address, stack area, are a recovery block to be verified with 7.875wByte data, by these data It is divided into N number of recovery block to be verified;
5.5.5.2 initialize, make variable n=1, current recovery block initial address data=to be verified currently verify control block Stack area initial address in piece, current check bit storage address check=currently verifies the verification controlled in block piece Storage address, position;Write 63 w bit data as 8 × 8 square formations from upper left to bottom right, supplemented 0 number, be only used for describing Being not involved in calculating, making this 8 × 8 square formation is Bdata
5.5.5.3 from the internal memory that check points to, take out 8 w bit data, respectively C0To C7
5.5.5.4 calculate syndrome S of the n-th recovery block to be verified0To S5, wherein S0For BdataIn the 2nd, 4,6,8 row and C0's XOR and, S1For BdataIn the 3rd, 4,7,8 row and C1XOR and, S2For BdataIn the 5th, 6,7,8 row and C2XOR and, S3For BdataIn the 2nd, 4,6,8 row and C3XOR and, S4For BdataIn the 3rd, 4,7,8 row and C4XOR and, S5For BdataIn the 5th, 6,7,8 row and C5XOR and;
5.5.5.5 the sub-S of data parity check of the n-th recovery block to be verified is calculated6, S6For BdataIn whole 63 w bit data and C6XOR and;
5.5.5.6 the supervision sub-parity check S of the n-th recovery block to be verified is calculated7, S7For C0To C5And C7XOR and;
W the bit plane to the n-th recovery block to be verified carries out verification and recovers the most respectively, recovery block to be verified by 63 w bit data and 8 w bit check code C thereof0To C7Constituting, kth bit plane is by these 63 data and 8 check code C thereof0 To C7Kth position constitute, make variable k=1, verification recovery process is specific as follows:
5.5.5.7.1 the errors present index of the kth bit plane of the n-th recovery block to be verified is calculated, i.e. by S5To S0? The binary numeral that k position is constituted;
5.5.5.7.2 syndrome S that the supervision parity check bit of the kth bit plane of the n-th recovery block to be verified is corresponding is judged7 Whether it is 0, if 0, turn 5.5.5.7.3;If 1, turn 5.5.5.7.4;
5.5.5.7.3 judge in the kth bit plane of the n-th recovery block to be verified, the verification that data parity check position is corresponding Sub-S6Whether it is 0, if S6It is 0 and errors present index is also that 0 explanation verifies successfully, turns 5.5.5.7.9;If index is not 0 to say Bright there occurs many dislocations, turn 5.5.5.7.8;If S6It is 1 and index to be to make a mistake in 0 explanation data parity check position, turns 5.5.5.7.6;There occurs that a data is wrong if index is not 0 explanation, turn 5.5.5.7.7;
5.5.5.7.4 syndrome S that the data parity check position of the kth bit plane of the n-th recovery block to be verified is corresponding is judged6 Whether it is 0, if S6It is that 0 explanation check bit includes that its parity check bit occurs a bit-errors, turns 5.5.5.7.5;If S6It it is 1 explanation There occurs many dislocations, it is impossible to recover, turn 5.5.5.7.8;
5.5.5.7.5 by the C of the n-th recovery block to be verified0To C5Kth position respectively with the S of the n-th recovery block to be verified0To S5 Kth position carry out XOR and then recalculate the C of the n-th recovery block to be verified7Kth position, thus mistake is recovered, turns 5.5.5.7.9;
5.5.5.7.6 the data parity check position C to the n-th recovery block to be verified6Kth position negate, thus mistake is carried out Recover, turn 5.5.5.7.9;
5.5.5.7.7 the data bit of the errors present index instruction of the kth bit plane of the n-th recovery block to be verified is taken Instead, thus mistake is recovered, turn 5.5.5.7.9;
5.5.5.7.8 operating system carries out abnormality processing, turns 5.5.5.8;
5.5.5.7.9 the verification of the kth bit plane of the n-th recovery block to be verified completes, k=k+1, if k is not more than w, turns 5.5.5.7.1,5.5.5.8 is otherwise turned;
5.5.5.8 the n-th recovery block to be verified has verified, n=n+1, data=data+7.875w, check=check+ W, if n is no more than N, turns 5.5.5.3, otherwise turns 5.5.6;
5.5.6 current verification control block piece is disposed, and takes the next verification being linked with piece and controls block as newly Piece, operating system determines whether there is higher priority task ready, if there is no higher priority task ready, turn 5.5.2;If there being higher priority task ready, operating system interrupts the execution of verification recovery tasks, performs higher priority and appoints Business, turns 5.2.
2. task stack district based on μ C/OS-II operating system as claimed in claim 1 data check restoration methods, it is special Levy and be that the method that the first step sets up verification control block chained list is:
1.1 foundation verifications control block chained list gauge outfit: creating a content is that the empty of full 0 verifies control block, controls block as verification The gauge outfit of chained list, and control block as current verification;
1.2 control block for any one task creation one verification not setting up verification control block in operating system;
1.3 pairs of newly-established verifications control block and initialize: task priority is initialized as this task and sets in an operating system The priority put;Task stack district initial address and task stack end of extent address initialization are that this task is joined in an operating system The task stack district initial address put and task stack end of extent address;Check bit storage address initialization is user configured use In the region of memory initial address depositing this task check bit;Actual schedule number of times is initialized as 0;During coding, scheduling times is initial Turn to-1;
Newly-established verification is controlled block chaining after current verification controls block, then as currently verifying control by 1.4 Block, if also not setting up verification in operating system to control the task of block, turns 1.1, otherwise will currently verify control block chaining to chain First verification after gauge outfit controls block, to form circular linked list.
3. task stack district based on μ C/OS-II operating system as claimed in claim 1 data check restoration methods, it is special Levy and be described in 2.1 steps to add code in μ C/OS-II operating system nucleus so that it is have and obtain processor use in task The method of the ability that the verification of the most more new task controls block is: at task scheduling function OSSched () and interrupt processing function In the function code of OSIntExt (), in performing scheduling and being recovered before processor by stacked data, add one section of code, should Section code realizes verify the actual schedule number of times controlled in block and carrying out oneself and increase will obtain processor usufructuary task.
4. task stack district based on μ C/OS-II operating system as claimed in claim 1 data check restoration methods, it is special Levy and be described in 2.2 steps to add code in μ C/OS-II operating system nucleus so that it is have and lose processor use in task The method of the ability that the verification of the most more new task controls block is: at task scheduling function OSSched () and interrupt processing function In the function code of OSIntExt (), preserve in processor data and insert one section of code after the code in task stack district, should Section code realizes being assigned to be scheduled by task control block top-of-stack pointer ptcb-> OSTCBStkPtr losing processor use The verification of the task of power controls the task stack end of extent address in block.
CN201610580590.9A 2016-07-21 2016-07-21 Task stack area data check restoration methods based on μ C/OS-II operating system Active CN106201765B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201610580590.9A CN106201765B (en) 2016-07-21 2016-07-21 Task stack area data check restoration methods based on μ C/OS-II operating system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610580590.9A CN106201765B (en) 2016-07-21 2016-07-21 Task stack area data check restoration methods based on μ C/OS-II operating system

Publications (2)

Publication Number Publication Date
CN106201765A true CN106201765A (en) 2016-12-07
CN106201765B CN106201765B (en) 2019-03-15

Family

ID=57491653

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610580590.9A Active CN106201765B (en) 2016-07-21 2016-07-21 Task stack area data check restoration methods based on μ C/OS-II operating system

Country Status (1)

Country Link
CN (1) CN106201765B (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108196873A (en) * 2018-01-30 2018-06-22 山东科技大学 Electric system embedded software Remote Dynamic upgrade method and system
CN109541444A (en) * 2018-10-18 2019-03-29 天津大学 Integrated circuit fault injection detection method based on mixed granularity parity check
US10929180B2 (en) 2018-08-30 2021-02-23 Baidu Online Network Technology (Beijing) Co., Ltd. Task scheduling method, apparatus, electronic device and storage medium

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1359492A (en) * 1999-01-21 2002-07-17 毕事快公司 System and method for testing and validating devices having an embedded operating system
KR20070015754A (en) * 2005-08-01 2007-02-06 엘지전자 주식회사 Operating system recover apparatus and method
CN101295278A (en) * 2007-04-23 2008-10-29 大唐移动通信设备有限公司 Method and device for locating course of overwritten code segment
CN102508731A (en) * 2011-09-29 2012-06-20 中国航天科技集团公司第五研究院第五一三研究所 Fault tolerance starting method of operating system based on RS (Reed-Solomon) coding and decoding
CN103440176A (en) * 2013-09-13 2013-12-11 北京经纬恒润科技有限公司 Protection method and device for memory in real-time operation system

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1359492A (en) * 1999-01-21 2002-07-17 毕事快公司 System and method for testing and validating devices having an embedded operating system
KR20070015754A (en) * 2005-08-01 2007-02-06 엘지전자 주식회사 Operating system recover apparatus and method
CN101295278A (en) * 2007-04-23 2008-10-29 大唐移动通信设备有限公司 Method and device for locating course of overwritten code segment
CN102508731A (en) * 2011-09-29 2012-06-20 中国航天科技集团公司第五研究院第五一三研究所 Fault tolerance starting method of operating system based on RS (Reed-Solomon) coding and decoding
CN103440176A (en) * 2013-09-13 2013-12-11 北京经纬恒润科技有限公司 Protection method and device for memory in real-time operation system

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108196873A (en) * 2018-01-30 2018-06-22 山东科技大学 Electric system embedded software Remote Dynamic upgrade method and system
CN108196873B (en) * 2018-01-30 2021-03-30 山东科技大学 Method and system for remotely and dynamically upgrading embedded software of power system
US10929180B2 (en) 2018-08-30 2021-02-23 Baidu Online Network Technology (Beijing) Co., Ltd. Task scheduling method, apparatus, electronic device and storage medium
CN109541444A (en) * 2018-10-18 2019-03-29 天津大学 Integrated circuit fault injection detection method based on mixed granularity parity check

Also Published As

Publication number Publication date
CN106201765B (en) 2019-03-15

Similar Documents

Publication Publication Date Title
US20220164285A1 (en) Compensating for dram activation penalties
CN104347122B (en) A kind of access method and device of message type memory modules
US10324792B2 (en) Resiliency to memory failures in computer systems
CN104035843B (en) For improving the system and method for lock-step core availability
CN114586019A (en) Memory-based processor
KR101264494B1 (en) State history storage for synchronizing redundant processors
CN105159618B (en) The optimization method and optimization device repaired for single-deck failure
CN103150125B (en) Method for prolonging service life of power-down protection date buffer memory and smart card
CN105830040A (en) A memory appliance for accessing memory
CN108780460A (en) For the distribution index in distributed memory system and the method and apparatus of repositioning object segmentation
CN110096217A (en) The data from end-of-life memory driver are relocated in the data-storage system using mapping RAID technique
CN106201765A (en) Task stack district data check restoration methods based on μ C/OS II operating system
CN105378690A (en) Memory node error correction
CN102843212B (en) Coding and decoding processing method and device
Gomez et al. Low-overhead diskless checkpoint for hybrid computing systems
WO2019173075A4 (en) Mission-critical ai processor with multi-layer fault tolerance support
CN104932835A (en) Erasure code based distributed storage system capacity expansion and reduction method
Venkatesan et al. Effect of latent errors on the reliability of data storage systems
Tang et al. Self-checkpoint: An in-memory checkpoint method using less space and its practice on fault-tolerant HPL
Tang et al. An efficient in-memory checkpoint method and its practice on fault-tolerant HPL
Pâris et al. Three-dimensional redundancy codes for archival storage
CN105320575A (en) Self-checking and recovering device and method for dual-modular redundancy assembly lines
CN105447241A (en) ESOP minimization method for logic function
Dinan et al. Selective recovery from failures in a task parallel programming model
Asghari et al. An effective soft error detection mechanism using redundant instructions.

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant