← Back to Patent Explorer
US5557777A Expired / Lapsed US ⏱️ 0.0 years remaining

Method and apparatus for system recovery from power loss

Assignee: Apple Inc
•
Filing: 1994-09-30
•
Granted: 1996-09-17
•
Expires: 2014-09-30
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract A computer system for system recovery from power loss includes a central processing unit and an activation means for starting up the computer. The computer system also has a cold boot circuit, a system controller, volatile read/write memory, and non-volatile read/write memory. The controller includes a protection register whose value indicates the manner in which the computer system was previously shut-down. One aspect of the present invention is a method for an orderly shut-down which includes the steps of compressing all critical data stored in volatile read/write memory, transferring the compressed critical data into non-volatile read/write memory, writing memory validity data to indicate a successful store and the time and date stored, and shutting down the system. Another aspect of the present invention is a method for system recovery which includes the steps of utilizing the protection register and memory validity data to both recover system and user data if possible and perform only the necessary start-up steps, and setting the protection register to indicate that an orderly shut-down has not occurred.

Inventors

  • 👤 Michael F. Culbert

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-10-30 23:22
CPC Classifications
G; G06; G06F; G06F11/00; G06F11/07; G06F11/14; G06F11/1402; G06F11/1415; G06F11/1417; G06F1/00; G06F1/26; G06F1/30

Claims Analysis

Total Claims: 43
Claim 1
Independent Claim 113 words
A computer system comprising: a central processing unit (CPU); a controller including a protection register having a content representing a manner in which said computer system was previously inactivated, said controller being coupled to said CPU for communication therewith; and activation means operative to read said protection register and to activate said computer system in one of a plurality of ways dependent upon said content of said protection register, wherein each of said plurality of ways includes setting said content of said protection register to reflect that a proper inactivation of said computer system has not been performed, whereby when said computer system inactivates improperly, said protected register will reflect such improper inactivation.
Claim 2
Dependent Claim 113 words
A computer system comprising: a central processing unit (CPU); a controller including a protection register having a content representing a manner in which said computer system was previously inactivated, said controller being coupled to said CPU for communication therewith; and activation means operative to read said protection register and to activate said computer system in one of a plurality of ways dependent upon said content of said protection register, wherein each of said plurality of ways includes setting said content of said protection register to reflect that a proper inactivation of said computer system has not been performed, whereby when said computer system inactivates improperly, said protected register will reflect such improper inactivation.
Claim 3
Dependent Claim 23 words
A computer system as recited in claim 1 further comprising system memory including non-volatile read/write memory coupled to said CPU for communication therewith.
Claim 4
Dependent Claim 44 words
A computer system as recited in claim 2 wherein said non-volatile read/write memory is operative to store memory validity data, and wherein said activation means further utilizes said memory validity data to activate said computer system in said one of a plurality of ways.
Claim 5
Dependent Claim 48 words
A computer system as recited in claim 3 further comprising a cold boot circuit coupled to said controller for providing a cold boot signal, and wherein said activation means further utilizes said cold boot signal to activate said computer system in said one of a plurality of ways.
Claim 6
Dependent Claim 27 words
A computer system as recited in claim 4 wherein said activation means includes a cold boot activator if said cold boot signal is received by said controller.
Claim 7
Dependent Claim 17 words
A computer system as recited in claim 4 wherein said activation means further includes a CPU activator.
Claim 8
Dependent Claim 34 words
A computer system as recited in claim 1 further comprising means for setting said content of said protection register during an inactivation of said system to reflect a proper previous inactivation of said system.
Claim 9
Dependent Claim 152 words
A computer system comprising: a central processing unit (CPU); a controller including a protection register having a content representing a manner in which said computer system was previously inactivated, said controller being coupled to said CPU for communication therewith; a system memory including non-volatile read/write memory coupled to said CPU for communication therewith, said non-volatile read/write memory being operative to store memory validity data; a cold boot circuit coupled to said controller for providing a cold boot signal; and activation means operative to read said protection register and to activate said computer system in one of a plurality of ways dependent upon at least one of said content of said protection register, said memory validity data, and said cold boot signal, wherein said activation means comprises a normal activator if said protection register indicates a proper previous inactivation and if said memory validity data indicates that said non-volatile memory contains valid data.
Claim 10
Dependent Claim 152 words
A computer system comprising: a central processing unit (CPU); a controller including a protection register having a content representing a manner in which said computer system was previously inactivated, said controller being coupled to said CPU for communication therewith; a system memory including non-volatile read/write memory coupled to said CPU for communication therewith, said non-volatile read/write memory being operative to store memory validity data; a cold boot circuit coupled to said controller for providing a cold boot signal; and activation means operative to read said protection register and to activate said computer system in one of a plurality of ways dependent upon at least one of said content of said protection register, said memory validity data, and said cold boot signal, wherein said activation means comprises a normal activator if said protection register indicates a proper previous inactivation and if said memory validity data indicates that said non-volatile memory contains valid data.
Claim 11
Dependent Claim 61 words
A computer system as recited in claim 8 wherein said activation means enables a cold boot activator if said cold boot signal is received by said controller and said activation means enables a warm boot activator if said protection register indicates a proper previous inactivation and if said memory validity data indicates that said non-volatile memory does not contain valid data.
Claim 12
Dependent Claim 28 words
A computer system as recited in claim 9 wherein said system memory further includes volatile read/write memory, and wherein said CPU further includes a memory management unit (MMU).
Claim 13
Dependent Claim 37 words
A computer system as recited in claim 10 wherein said normal activator, when enabled, changes said content of said protection register, transfers data from said non-volatile read/write memory to said volatile read/write memory, and enables said MMU.
Claim 14
Dependent Claim 54 words
A computer system as recited in claim 9 wherein said computer system includes a display coupled to said CPU for communication therewith, and wherein said controller includes a plurality of registers, and wherein said cold boot activator, when enabled, initializes said display and said plurality of registers, and then activates said warm boot activator.
Claim 15
Dependent Claim 38 words
A computer system as recited in claim 9 wherein said warm boot activator, when enabled, initializes said volatile read/write memory, enables said MMU, sets the content of the protection register, and checks said non-volatile memory for user data.
Claim 16
Dependent Claim 39 words
A computer system as recited in claim 9 wherein said activation means further comprises a CPU activator which activates said CPU after one of said normal activator, said cold boot activator, and said warm boot activator has been enabled.
Claim 17
Dependent Claim 155 words
A computer system comprising: a central processing unit (CPU); a controller including a protection register having a content representing a manner in which said computer system was previously inactivated, said controller being coupled to said CPU for communication therewith; a system memory including non-volatile read/write memory coupled to said CPU for communication therewith, said non-volatile read/write memory being operative to store memory validity data; a cold boot circuit coupled to said controller for providing a cold boot signal; and activation means operative to read said protection register and to activate said computer system in one of a plurality of ways dependent upon at least one of said content of said protection register, said memory validity data, and said cold boot signal, wherein said activation means includes a warm boot activator if said protection register indicates a proper previous inactivation and if said memory validity data indicates that said non-volatile memory does not contain valid data.
Claim 18
Dependent Claim 155 words
A computer system comprising: a central processing unit (CPU); a controller including a protection register having a content representing a manner in which said computer system was previously inactivated, said controller being coupled to said CPU for communication therewith; a system memory including non-volatile read/write memory coupled to said CPU for communication therewith, said non-volatile read/write memory being operative to store memory validity data; a cold boot circuit coupled to said controller for providing a cold boot signal; and activation means operative to read said protection register and to activate said computer system in one of a plurality of ways dependent upon at least one of said content of said protection register, said memory validity data, and said cold boot signal, wherein said activation means includes a warm boot activator if said protection register indicates a proper previous inactivation and if said memory validity data indicates that said non-volatile memory does not contain valid data.
Claim 19
Independent Claim 134 words
A method for controlling an activation state of a computer system comprising the steps of: (a) activating a computer system by: (i) determining a content of a protection register of said computer system; and (ii) activating said computer system in one of a plurality of ways dependent upon said content of said protection register, each of said plurality of ways including the substep of setting said content of said protection register to reflect that a proper inactivation of said computer system has not been performed; and (b) deactivating said computer system such that said content of said protection register is set to a value which reflects a proper inactivation of said system if said computer system is properly inactivated, whereby when said computer system inactivates improperly, said protected register will reflect such improper inactivation.
Claim 20
Independent Claim 134 words
A method for controlling an activation state of a computer system comprising the steps of: (a) activating a computer system by: (i) determining a content of a protection register of said computer system; and (ii) activating said computer system in one of a plurality of ways dependent upon said content of said protection register, each of said plurality of ways including the substep of setting said content of said protection register to reflect that a proper inactivation of said computer system has not been performed; and (b) deactivating said computer system such that said content of said protection register is set to a value which reflects a proper inactivation of said system if said computer system is properly inactivated, whereby when said computer system inactivates improperly, said protected register will reflect such improper inactivation.
Claim 21
Dependent Claim 43 words
A method as recited in claim 16 wherein the step of activating a computer system further comprises utilizing memory validity data from a non-volatile read/write memory of the computer system to activate said computer system in said one of a plurality of ways.
Claim 22
Dependent Claim 36 words
A method as recited in claim 17 wherein the step of activating a computer system further comprises responding to a cold boot signal to activate said computer system in said one of a plurality of ways.
Claim 23
Dependent Claim 35 words
A method as recited in claim 18 wherein the step of activating a computer system further comprises resetting a central processing unit (CPU) of said computer if said protection register indicates an improper previous inactivation.
Claim 24
Dependent Claim 45 words
A method as recited in claim 19 wherein the step of activating a computer system further comprises performing a normal activating procedure if said protection register indicates an improper previous inactivation and if said memory validity data indicates that said non-volatile memory contains valid data.
Claim 25
Dependent Claim 33 words
A method as recited in claim 19 wherein the step of activating a computer system further comprises performing a cold boot activating procedure if said cold boot signal is received by said controller.
Claim 26
Dependent Claim 48 words
A method as recited in claim 19 wherein the step of activating a computer system further comprises performing a warm boot activating procedure if said protection register indicates an improper previous inactivation and if said memory validity data indicates that said non-volatile memory does not contain valid data.
Claim 27
Dependent Claim 93 words
A method as recited in claim 19 wherein the step of activating a computer system further comprises performing a normal activating procedure if said protection register indicates an improper previous inactivation and if said memory validity data indicates that said non-volatile memory contains valid data, performing a cold boot activating procedure if said cold boot signal is received by said controller, and performing a warm boot activating procedure if said protection register indicates an improper previous inactivation and if said memory validity data indicates that said non-volatile memory does not contain valid data.
Claim 28
Dependent Claim 45 words
A method as recited in claim 23 wherein said normal activating procedure comprises the steps of: restoring data from said non-volatile read/write memory to volatile read/write memory of the computer system; and enabling a memory management unit (MMU) on said CPU of said computer system.
Claim 29
Dependent Claim 46 words
A method as recited in claim 23 wherein said warm boot activating procedure comprises the steps of: initializing volatile read/write memory of said computer system; enabling a memory management unit (MMU) on said CPU of said computer system; and checking said non-volatile memory for user data.
Claim 30
Dependent Claim 72 words
A method as recited in claim 23 wherein said cold boot activating procedure comprises the steps of: initializing a display coupled to said CPU of said computer system for communication therewith; initializing a plurality of registers included in a controller coupled to said CPU for communication therewith; initializing volatile read/write memory of said computer system; enabling a memory management unit (MMU) on said CPU; and checking said non-volatile memory for user data.
Claim 31
Dependent Claim 45 words
A method as recited in claim 23 wherein the step of activating a computer system further comprises activating said CPU of the computer system after one of said normal activating procedure, said cold boot activating procedure, and said warm boot activating procedure has been completed.
Claim 32
Dependent Claim 23 words
A method as described in claim 16 wherein the step of deactivating said computer system is initiated by receiving a power-down interrupt signal.
Claim 33
Dependent Claim 107 words
A method as described in claim 28 wherein the step of deactivating said computer system further comprises the substeps of: storing critical data from volatile read/write memory of the computer system onto non-volatile read/write memory of said computer system; setting said protection register; shutting down a memory management unit (MMU) found on a central processing unit (CPU) of said computer system; setting power off to all peripheral components of said computer system, said peripheral components including said volatile read/write memory and said non-volatile read/write memory; and stopping said CPU, a controller for said computer system, and all clocks of said computer system except a real time clock.
Claim 34
Dependent Claim 42 words
A method as described in claim 29 wherein storing critical data comprises the steps of: deleting all non-critical data from said volatile read/write memory; compressing all critical data from said volatile read/write memory; and storing compressed critical data onto non-volatile read/write memory.
Claim 35
Independent Claim 135 words
A method for controlling an activation of a computer system comprising the steps of: determining a content of a protection register of said computer system; responding to a power up interrupt signal to activate said computer system in one of a plurality of ways dependent upon said content of said protection register; and deactivating said computer system such that said content of said protection register is set to a value which reflects a proper inactivation of said system if said computer system is properly inactivated, wherein said one of a plurality of ways includes the step of performing a normal activating procedure if said protection register indicates a proper previous inactivation and if a memory validity data stored in a non-volatile read/write memory of the computer system indicates that said non-volatile memory contains valid data.
Claim 36
Independent Claim 135 words
A method for controlling an activation of a computer system comprising the steps of: determining a content of a protection register of said computer system; responding to a power up interrupt signal to activate said computer system in one of a plurality of ways dependent upon said content of said protection register; and deactivating said computer system such that said content of said protection register is set to a value which reflects a proper inactivation of said system if said computer system is properly inactivated, wherein said one of a plurality of ways includes the step of performing a normal activating procedure if said protection register indicates a proper previous inactivation and if a memory validity data stored in a non-volatile read/write memory of the computer system indicates that said non-volatile memory contains valid data.
Claim 37
Dependent Claim 67 words
A method as recited in claim 31 wherein said one of a plurality of ways includes the step of performing a cold boot activating procedure if said cold boot signal is received by said controller and performing a warm boot activating procedure if said protection register indicates a proper previous inactivation and if said memory validity data indicates that said non-volatile memory does not contain valid data.
Claim 38
Dependent Claim 55 words
A method as recited in claim 32 wherein said normal activating procedure comprises the steps of: changing said content of said protection register; restoring data from said non-volatile read/write memory to volatile read/write memory of the computer system; and enabling a memory management unit (MMU) on a central processing unit (CPU) of said computer system.
Claim 39
Dependent Claim 56 words
A method as recited in claim 32 wherein said warm boot activating procedure comprises the steps of: initializing volatile read/write memory of said computer system; enabling a memory management unit (MMU) on a central processing unit (CPU) of said computer system; setting the content of the protection register; and checking said non-volatile memory for user data.
Claim 40
Dependent Claim 90 words
A method as recited in claim 32 wherein said cold boot activating procedure comprises the steps of: initializing a display coupled to a central processing unit (CPU) of said computer system for communication therewith; initializing a plurality of registers included in a controller coupled to said CPU of said computer system for communication therewith; initializing volatile read/write memory of said computer system; enabling a memory management unit (MMU) on said CPU of said computer system; setting the content of the protection register; and checking said non-volatile memory for user data.
Claim 41
Dependent Claim 48 words
A method as recited in claim 32 wherein the step of activating a computer system further comprises activating a central processing unit (CPU) of the computer system after one of said normal activating procedure, said cold boot activating procedure, and said warm boot activating procedure has been completed.
Claim 42
Independent Claim 138 words
A method for controlling an activation of a computer system comprising the steps of: determining a content of a protection register of said computer system; responding to a power up interrupt signal to activate said computer system in one of a plurality of ways dependent upon said content of said protection register; and deactivating said computer system such that said content of said protection register is set to a value which reflects a proper inactivation of said system if said computer system is properly inactivated, wherein said one of a plurality of ways includes the step of performing a warm boot activating procedure if said protection register indicates a proper previous inactivation and if a memory validity data stored in a non-volatile read/write memory of the computer system indicates that said non-volatile memory does not contain valid data.
Claim 43
Independent Claim 138 words
A method for controlling an activation of a computer system comprising the steps of: determining a content of a protection register of said computer system; responding to a power up interrupt signal to activate said computer system in one of a plurality of ways dependent upon said content of said protection register; and deactivating said computer system such that said content of said protection register is set to a value which reflects a proper inactivation of said system if said computer system is properly inactivated, wherein said one of a plurality of ways includes the step of performing a warm boot activating procedure if said protection register indicates a proper previous inactivation and if a memory validity data stored in a non-volatile read/write memory of the computer system indicates that said non-volatile memory does not contain valid data.

References Cited (Backward Citations)

US4905196A Cited
US4868832A Cited
US4979143A Cited
US5175847A Cited
US5193176A Cited
US5339426A Cited
US5426775A Cited
US5390324A Cited
US5438549A Cited

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 1999-09-17 2000-03-18 2000-09-17 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2003-09-17 2004-03-18 2004-09-17 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2007-09-17 2008-03-18 2008-09-17 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag