CA2057131C - Power management initialization for a computer operable under a plurality of operating systems - Google Patents
Power management initialization for a computer operable under a plurality of operating systemsInfo
- Publication number
- CA2057131C CA2057131C CA002057131A CA2057131A CA2057131C CA 2057131 C CA2057131 C CA 2057131C CA 002057131 A CA002057131 A CA 002057131A CA 2057131 A CA2057131 A CA 2057131A CA 2057131 C CA2057131 C CA 2057131C
- Authority
- CA
- Canada
- Prior art keywords
- pmis
- computer
- processor
- power management
- operating system
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/4401—Bootstrapping
- G06F9/4406—Loading of operating system
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/26—Power supply means, e.g. regulation thereof
- G06F1/32—Means for saving power
- G06F1/3203—Power management, i.e. event-based initiation of a power-saving mode
Abstract
Power management interrupt enabling is done after completion of POST by loading either DOS or OS/2 operating systems in accordance with whichever operating system the computer is setup to operate under. After being loaded, the operating system then enables the PMIs. This provides a very simple solution that allows the PMIs to be used in a computer operable under a plurality of operating systems.
Description
~- 2057 1 3 1 POWER MANAGEMENT INITIALIZATION FOR A COMPUTER OPERABLE
UNDER A PLURALITY OF OPERATING SYSTEMS
FIELD OF THE INVENTION
This invention relates to the field of data processing, and, more particularly to method and apparatus for initialization of a power management system in a computer that can operate under a plurality of operating systems.
R~LATED APPLICATION
U.S. Patent No. 5,230,074, issued July 20, 1993 for BATTERY OPERATED COMPUTER POWER MANAGEM~NT SYSTEM, by F. J.
Canova, Jr. et al, discloses a novel computer in which the present invention is designed to operate.
BACKGROUND OF THE INVENTION
The above related application is directed to a battery operated computer having a sophisticated power management system. Such computer has two processors, a main processor and a power management processor (PMP). The main processor operates under the control of an operating system and provides overall control of the computer for executing application programs. The main processor also assists in power management by executing power management interrupt handlers and controlling a power control register to turn power on and off to various devices. The power management processor monitors ambient temperature and humidity, and battery conditions, and generates interrupts as a result of predetermined changes.
Such processor also controls charging of the battery. Logic means are responsive to predetermined conditions to also generate interrupts.
An interrupt controller is connected to the main processor and receives the power management interrupts (PMIs).
When such a computer is turned on or is rebooted, it ., ~
BC9-91-008 2 ~057 13 1 is necessary to initialize the system and enable the PMIs.
This enablement links the appropriate interrupt handlers to the PMIs. In a prior art battery operated computer, specifically the IBM~ model PC-Convertible computer, the initialization including PMI enablement was done during a power on self test (POST). This method can not be used with OS/2~ because a protect mode interrupt handler is not loaded until after the OS/2 kernel loads. The prior art technique would allow power management interrupts to occur during the OS/2 load process and since no handler is available at that time, such interrupt would cause the processor to become unstable and crash.
SUMMARY OF THE INVENTION
One of the objects of the invention is to provide an improved power management initialization for a computer that is operable under a plurality of operating systems, such as DOS and OS/2, which run in a real mode and in a protected mode.
Another object of the invention is to initialize a computer that runs under both DOS and OS/2 operating systems, so as to enable power management interrupts in a manner compatible to both operating systems.
Briefly, in accordance with the invention, PMI enabling is done after completion of POST by loading either DOS or OS/2 operating systems in accordance with whichever operating system the computer is setup to operate under.
After being loaded, the operating system then enables the PMIs. This provides a very simple solution that allows the PMIs to be used in a computer operable under a plurality of operating systems.
DRAWINGS
Other objects and advantages of the invention will be apparent from the following description taken in connection with the accompanying drawings wherein:
BC9-91-008 3 2 0 S 71~1 Fig. 1 is a block diagram of a battery operated computer embodying the invention; and Fig. 2 is a flow chart illustrating operation of the invention.
DETAILED DESCRIPTION
Referring now to the drawings, Fig. 1 generally shows a computer 10 the details of which are more fully disclosed in the above identified application to which reference may be had for further details not disclosed herein. Computer 10 comprises a main processor 12 connected to a system bus 14.
A main memory 16 is connected to bus 14 for storing application operating system and application programs for execution by processor 12. A read only memory (ROM) 18 is also connected to bus 14 and comprises or stores a POST
program 20 and basic I/O operating system (BIOS) programs 22. Such BIOS programs include a power management (PM) BIOS
comprising various interrupt handlers for handling the various PMIs.
Computer 10 is selectively operable with power from a battery 11 or from an ac power source (not shown). Battery 11 is connected to a power distribution system (PDS) 24 which operates under the control of settings of a power control register (PCR) 26. PCR 26 is connected to bus 14 and is set or controlled by processor 12 executing PM BIOS.
A power management processor (PMP) 28 is connected by a bus 30 to bus 14 and together with processor 12 execute and perform the power management functions for operating computer 10. PMP 28 is also connected to a keyboard 32 and in addition to performing the PM functions PMP 28 manages the keyboard.
A plurality of sensors 34 are connected to PMP 28 to monitor or measure environmental and battery conditions including ambient temperature and humidity, and battery voltage, current, and temperature. In response to such measurements, PMP 28 determines the energy level of battery 11 and generates a low battery signal on line 36 when the battery becomes discharged and needs replacement or recharging. PMP 28 also generates a PM software interrupt (PMSI) signal on line 34 when there is a watchdog timeout, extreme temperature, or low battery condition. The PMSI
signal is fed into a multiplexer or MUX 40. Various other conditions produce signals that are analyzed by logic 38 to produce suspend and resume (S/R) interrupts on lines 44, the signals being a LID POSITION signal indicating when the computer lid has been opened or closed, a NOT DOCKED signal indicating the computer is not connected to a docking station, a TOD ALARM signal generated at a preset time of day, and a MODEM RING signal generated when a modem rings for transmitting information to computer 10.
MUX 40 has two additional input lines 46 and 48. Line 46 receives a signal SYSTEM VOLTAGE when the system voltage is at or above a predetermined level (5 volts). It is used when a discharged battery is replaced by a charged battery and the system voltage becomes normal upon connection to the charged battery. It is also used when the computer is in a suspend mode and is then attached to an ac power source.
Line 48 transmits an A/M signal when the position of a switch 50 is changed. Switch 50 has two settings or positions, an "automatic" and a "manual" which allow the user to select a preset speed at which to run processor 12 or to allow the computer to automatically select the processor running speed.
Thus, MUX 40 receives a plurality of interrupts or requests therefor. MUX 40 polls the input lines on a round robin basis and when it notes an active signal on one of the lines, it outputs onto lines 52 a power management interrupt (PMI) along with a three-bit code identifying the specific interrupt. Lines 52 are connected to interrupt controller 54. The interrupt request from MUX 40 is transmitted on a specific one of plural interrupt request lines into controller 54. In response to receiving the interrupt from MUX 40, controller 54 transmits an interrupt request to processor 12 on one of lines 56. When processor 12 is able to handle the interrupt, it acknowledges such request and then controller 54 transmits to the processor a vector identifying the specific PM interrupt handler for processing such interrupt. Processor 12 thereupon accesses the desired handler in BIOS 22 and executes it accordingly. Obviously, the above process presupposes that PM interrupts have been enabled.
Processor 12 receives two types of interrupts, maskable and non-maskable. A PM interrupt is a maskable interrupt.
When the computer is initially turned on, or when it is subsequently rebooted, the computer is initialized and one step of such initialization involves enabling PM interrupts.
Thus, with reference to Fig. 2, when the computer is powered on or rebooted in step 62, POST routine 20 is first executed. In accordance with the above mentioned prior art, the PC Convertible prior art POST routine also performed step 63 to thereupon enable PM interrupts during POST.
However, such step precluded being able to load and execute OS/2. Therefore, step 63 is eliminated from the POST routine 20 of the invention. Continuig with the operation of the invention, upon completion of POST 20, an operating system is loaded in accordance with the system setup. Thus, assuming DOS is the desired operating system, step 64 loads it into main memory for execution by processor 12. After DOS
is loaded, a DOS prompt appears on the display screen (not shown) and the computer in step 66 waits for a key stroke from keyboard 32. When a key stroke occurs, step 82 processes the stroke and upon completion branches to step 66 to set up a loop for processing subsequent keystrokes. Had the PM interrupts been enabled by step 63 in accordance with the prior art, such processing would have occurred immediately following step 66. However, in accordance with the invention, a plurality of other steps occur between step 66 and step 82.
Step 66 is processed by immediately making a BIOS call in step 68 to issue a "wait for key" call via interrupt 16 and setting processor register AH to 0. PM BIOS 22 is then entered at step 70 by setting AH=41 and issuing an int=15 call. Step 70 then routes or directs that step 72 be the next step. Step 72 decides if this is the first time this BC9-91-008 6 20~713~
string of code or routine is being executed since turning the power on or rebooting the system. If so, step 74 enables power management interrupt in controller 54 by setting an input gate (not shown) connected to line 52. If step 72 results in a negative determination or upon completion of step 74, step 76 then stops processor clocks byshutting off power to the processor until an interrupt occurs. Then step 78 exits PM BIOS 22 and returns to step 68. If the interrupt was caused by a keystroke, step 68 branches along line 80 to step 82 whereupon the keystroke can be processed. If the interrupt was not caused by a keystroke, step 68 enters step 70 to repeat the process until a keystroke occurs.
If the computer is setup to run under OS/2, then step 84 loads the appropriate portions of OS/2 into main memory.
Step 84 then loads the PM driver and enables PM interrupts in a manner the same as that described for step 74. Step 88 then loads any other drivers and the operating system kernel is started in step 90. Step 92 is an idle task which is entered from the kernel. Step 92 looks to see if theprocessor is busy whth other tasks. If the processor is not busy, step 92 requests by step 96 that the processor clocks be stopped as with step 76. When that is done, step 94 returns to step 92. When an interrupt subsequently occurs, the processor is started and the interrupt handled.
Thereafter, when computer 10 is operating under either DOS or OS/2, when a PM interrupt occurs at 98, PM BIOS 22 is entered at step 100 to monitor the hardware activity. Step 102 decides if the hardware has been idle (by looking at waiting interrupts in controller 54,for a period of n seconds where n is a value selected by the user or given a system default value. If the hardware has not been idle, step 106 returns to the application. If the hardware has been idle for the time period, step 104 starts a suspend interrupt handler to switch computer 10 into the suspend mode.
It should be apparent to those skilled in the art that many changes can be made in the details and arrangements of steps and parts without departing from the scope of the invention as defined in the appended claims.
UNDER A PLURALITY OF OPERATING SYSTEMS
FIELD OF THE INVENTION
This invention relates to the field of data processing, and, more particularly to method and apparatus for initialization of a power management system in a computer that can operate under a plurality of operating systems.
R~LATED APPLICATION
U.S. Patent No. 5,230,074, issued July 20, 1993 for BATTERY OPERATED COMPUTER POWER MANAGEM~NT SYSTEM, by F. J.
Canova, Jr. et al, discloses a novel computer in which the present invention is designed to operate.
BACKGROUND OF THE INVENTION
The above related application is directed to a battery operated computer having a sophisticated power management system. Such computer has two processors, a main processor and a power management processor (PMP). The main processor operates under the control of an operating system and provides overall control of the computer for executing application programs. The main processor also assists in power management by executing power management interrupt handlers and controlling a power control register to turn power on and off to various devices. The power management processor monitors ambient temperature and humidity, and battery conditions, and generates interrupts as a result of predetermined changes.
Such processor also controls charging of the battery. Logic means are responsive to predetermined conditions to also generate interrupts.
An interrupt controller is connected to the main processor and receives the power management interrupts (PMIs).
When such a computer is turned on or is rebooted, it ., ~
BC9-91-008 2 ~057 13 1 is necessary to initialize the system and enable the PMIs.
This enablement links the appropriate interrupt handlers to the PMIs. In a prior art battery operated computer, specifically the IBM~ model PC-Convertible computer, the initialization including PMI enablement was done during a power on self test (POST). This method can not be used with OS/2~ because a protect mode interrupt handler is not loaded until after the OS/2 kernel loads. The prior art technique would allow power management interrupts to occur during the OS/2 load process and since no handler is available at that time, such interrupt would cause the processor to become unstable and crash.
SUMMARY OF THE INVENTION
One of the objects of the invention is to provide an improved power management initialization for a computer that is operable under a plurality of operating systems, such as DOS and OS/2, which run in a real mode and in a protected mode.
Another object of the invention is to initialize a computer that runs under both DOS and OS/2 operating systems, so as to enable power management interrupts in a manner compatible to both operating systems.
Briefly, in accordance with the invention, PMI enabling is done after completion of POST by loading either DOS or OS/2 operating systems in accordance with whichever operating system the computer is setup to operate under.
After being loaded, the operating system then enables the PMIs. This provides a very simple solution that allows the PMIs to be used in a computer operable under a plurality of operating systems.
DRAWINGS
Other objects and advantages of the invention will be apparent from the following description taken in connection with the accompanying drawings wherein:
BC9-91-008 3 2 0 S 71~1 Fig. 1 is a block diagram of a battery operated computer embodying the invention; and Fig. 2 is a flow chart illustrating operation of the invention.
DETAILED DESCRIPTION
Referring now to the drawings, Fig. 1 generally shows a computer 10 the details of which are more fully disclosed in the above identified application to which reference may be had for further details not disclosed herein. Computer 10 comprises a main processor 12 connected to a system bus 14.
A main memory 16 is connected to bus 14 for storing application operating system and application programs for execution by processor 12. A read only memory (ROM) 18 is also connected to bus 14 and comprises or stores a POST
program 20 and basic I/O operating system (BIOS) programs 22. Such BIOS programs include a power management (PM) BIOS
comprising various interrupt handlers for handling the various PMIs.
Computer 10 is selectively operable with power from a battery 11 or from an ac power source (not shown). Battery 11 is connected to a power distribution system (PDS) 24 which operates under the control of settings of a power control register (PCR) 26. PCR 26 is connected to bus 14 and is set or controlled by processor 12 executing PM BIOS.
A power management processor (PMP) 28 is connected by a bus 30 to bus 14 and together with processor 12 execute and perform the power management functions for operating computer 10. PMP 28 is also connected to a keyboard 32 and in addition to performing the PM functions PMP 28 manages the keyboard.
A plurality of sensors 34 are connected to PMP 28 to monitor or measure environmental and battery conditions including ambient temperature and humidity, and battery voltage, current, and temperature. In response to such measurements, PMP 28 determines the energy level of battery 11 and generates a low battery signal on line 36 when the battery becomes discharged and needs replacement or recharging. PMP 28 also generates a PM software interrupt (PMSI) signal on line 34 when there is a watchdog timeout, extreme temperature, or low battery condition. The PMSI
signal is fed into a multiplexer or MUX 40. Various other conditions produce signals that are analyzed by logic 38 to produce suspend and resume (S/R) interrupts on lines 44, the signals being a LID POSITION signal indicating when the computer lid has been opened or closed, a NOT DOCKED signal indicating the computer is not connected to a docking station, a TOD ALARM signal generated at a preset time of day, and a MODEM RING signal generated when a modem rings for transmitting information to computer 10.
MUX 40 has two additional input lines 46 and 48. Line 46 receives a signal SYSTEM VOLTAGE when the system voltage is at or above a predetermined level (5 volts). It is used when a discharged battery is replaced by a charged battery and the system voltage becomes normal upon connection to the charged battery. It is also used when the computer is in a suspend mode and is then attached to an ac power source.
Line 48 transmits an A/M signal when the position of a switch 50 is changed. Switch 50 has two settings or positions, an "automatic" and a "manual" which allow the user to select a preset speed at which to run processor 12 or to allow the computer to automatically select the processor running speed.
Thus, MUX 40 receives a plurality of interrupts or requests therefor. MUX 40 polls the input lines on a round robin basis and when it notes an active signal on one of the lines, it outputs onto lines 52 a power management interrupt (PMI) along with a three-bit code identifying the specific interrupt. Lines 52 are connected to interrupt controller 54. The interrupt request from MUX 40 is transmitted on a specific one of plural interrupt request lines into controller 54. In response to receiving the interrupt from MUX 40, controller 54 transmits an interrupt request to processor 12 on one of lines 56. When processor 12 is able to handle the interrupt, it acknowledges such request and then controller 54 transmits to the processor a vector identifying the specific PM interrupt handler for processing such interrupt. Processor 12 thereupon accesses the desired handler in BIOS 22 and executes it accordingly. Obviously, the above process presupposes that PM interrupts have been enabled.
Processor 12 receives two types of interrupts, maskable and non-maskable. A PM interrupt is a maskable interrupt.
When the computer is initially turned on, or when it is subsequently rebooted, the computer is initialized and one step of such initialization involves enabling PM interrupts.
Thus, with reference to Fig. 2, when the computer is powered on or rebooted in step 62, POST routine 20 is first executed. In accordance with the above mentioned prior art, the PC Convertible prior art POST routine also performed step 63 to thereupon enable PM interrupts during POST.
However, such step precluded being able to load and execute OS/2. Therefore, step 63 is eliminated from the POST routine 20 of the invention. Continuig with the operation of the invention, upon completion of POST 20, an operating system is loaded in accordance with the system setup. Thus, assuming DOS is the desired operating system, step 64 loads it into main memory for execution by processor 12. After DOS
is loaded, a DOS prompt appears on the display screen (not shown) and the computer in step 66 waits for a key stroke from keyboard 32. When a key stroke occurs, step 82 processes the stroke and upon completion branches to step 66 to set up a loop for processing subsequent keystrokes. Had the PM interrupts been enabled by step 63 in accordance with the prior art, such processing would have occurred immediately following step 66. However, in accordance with the invention, a plurality of other steps occur between step 66 and step 82.
Step 66 is processed by immediately making a BIOS call in step 68 to issue a "wait for key" call via interrupt 16 and setting processor register AH to 0. PM BIOS 22 is then entered at step 70 by setting AH=41 and issuing an int=15 call. Step 70 then routes or directs that step 72 be the next step. Step 72 decides if this is the first time this BC9-91-008 6 20~713~
string of code or routine is being executed since turning the power on or rebooting the system. If so, step 74 enables power management interrupt in controller 54 by setting an input gate (not shown) connected to line 52. If step 72 results in a negative determination or upon completion of step 74, step 76 then stops processor clocks byshutting off power to the processor until an interrupt occurs. Then step 78 exits PM BIOS 22 and returns to step 68. If the interrupt was caused by a keystroke, step 68 branches along line 80 to step 82 whereupon the keystroke can be processed. If the interrupt was not caused by a keystroke, step 68 enters step 70 to repeat the process until a keystroke occurs.
If the computer is setup to run under OS/2, then step 84 loads the appropriate portions of OS/2 into main memory.
Step 84 then loads the PM driver and enables PM interrupts in a manner the same as that described for step 74. Step 88 then loads any other drivers and the operating system kernel is started in step 90. Step 92 is an idle task which is entered from the kernel. Step 92 looks to see if theprocessor is busy whth other tasks. If the processor is not busy, step 92 requests by step 96 that the processor clocks be stopped as with step 76. When that is done, step 94 returns to step 92. When an interrupt subsequently occurs, the processor is started and the interrupt handled.
Thereafter, when computer 10 is operating under either DOS or OS/2, when a PM interrupt occurs at 98, PM BIOS 22 is entered at step 100 to monitor the hardware activity. Step 102 decides if the hardware has been idle (by looking at waiting interrupts in controller 54,for a period of n seconds where n is a value selected by the user or given a system default value. If the hardware has not been idle, step 106 returns to the application. If the hardware has been idle for the time period, step 104 starts a suspend interrupt handler to switch computer 10 into the suspend mode.
It should be apparent to those skilled in the art that many changes can be made in the details and arrangements of steps and parts without departing from the scope of the invention as defined in the appended claims.
Claims (7)
1. A battery operated computer comprising:
a main processor operable in a real mode and in a protected mode;
a main memory for storing application programs and an operating system for execution by said processor, said operating system being one of a group of a disk operating system (DOS) executable during said real mode of operation of said main processor and a multitasking operating system (MOS) executable in said protected mode of operation of said main processor;
a read only memory (ROM) storing a plurality of power management interrupt handling (PMIH) routines:
power management means for monitoring environmental and battery conditions in said computer and generating power management interrupts (PMIs) in response to predetermined changes in said environmental and battery conditions;
and initialization means operative in response to turning on said computer to load one of said operating systems and place said computer in readiness for execution of an application program, said initialization means comprising a power on self test (POST) program stored in said ROM
means, said POST program being executed by said main processor in response to said computer being turned on, to test said computer without enabling said PMIs;
loading means operable when said POST program has completed, to load one of said operating systems into said main memory in accordance with a system setup which determines which operating system said computer will be operated under;
first means operable when said DOS has been loaded into said main memory to enable said PMIs and link said PMIH
routines to said PMIs;
and second means operable when said MOS has been loaded into said main memory to first load a power management driver and to then enable said PMIs and link said PMIH routines to said PMIs.
a main processor operable in a real mode and in a protected mode;
a main memory for storing application programs and an operating system for execution by said processor, said operating system being one of a group of a disk operating system (DOS) executable during said real mode of operation of said main processor and a multitasking operating system (MOS) executable in said protected mode of operation of said main processor;
a read only memory (ROM) storing a plurality of power management interrupt handling (PMIH) routines:
power management means for monitoring environmental and battery conditions in said computer and generating power management interrupts (PMIs) in response to predetermined changes in said environmental and battery conditions;
and initialization means operative in response to turning on said computer to load one of said operating systems and place said computer in readiness for execution of an application program, said initialization means comprising a power on self test (POST) program stored in said ROM
means, said POST program being executed by said main processor in response to said computer being turned on, to test said computer without enabling said PMIs;
loading means operable when said POST program has completed, to load one of said operating systems into said main memory in accordance with a system setup which determines which operating system said computer will be operated under;
first means operable when said DOS has been loaded into said main memory to enable said PMIs and link said PMIH
routines to said PMIs;
and second means operable when said MOS has been loaded into said main memory to first load a power management driver and to then enable said PMIs and link said PMIH routines to said PMIs.
2. A computer in accordance with claim 1 comprising:
an interrupt controller connected to said processor and having a selectively gated PMI input line for receiving said PMIs, said interrupt controller being operative to transmit a PMI interrupt to said processor when said PMI input line is gated;
said first and second means being operable to gate said PMI input line and thereby enable said PMIs.
an interrupt controller connected to said processor and having a selectively gated PMI input line for receiving said PMIs, said interrupt controller being operative to transmit a PMI interrupt to said processor when said PMI input line is gated;
said first and second means being operable to gate said PMI input line and thereby enable said PMIs.
3. A computer in accordance with claim 2 comprising:
a power management basic input output system (BIOS) stored in said ROM and including a callable wait-on-key BIOS
routine forming part of said first means whereby in response to a first instance of calling such wait-on-key routine after said computer has been turned on, said PMIs are enabled by said wait-on-key routine.
a power management basic input output system (BIOS) stored in said ROM and including a callable wait-on-key BIOS
routine forming part of said first means whereby in response to a first instance of calling such wait-on-key routine after said computer has been turned on, said PMIs are enabled by said wait-on-key routine.
4. A computer in accordance with claim 3 wherein:
said second means is operable to load a kernel of said MOS into said main memory before loading said power management driver, and said second means is further operable after enabling said PMIs to thereafter stop said processor and await an interrupt.
said second means is operable to load a kernel of said MOS into said main memory before loading said power management driver, and said second means is further operable after enabling said PMIs to thereafter stop said processor and await an interrupt.
5. A method of initializing a battery operated computer having a main processor operable in a real mode and in a protected mode, a main memory for storing application programs and an operating system for execution by said processor, power management means for monitoring environmental and battery conditions and generating power management interrupts (PMIs) in response to predetermined changes in said environmental and battery conditions, and a read only memory (ROM) storing power management interrupt handlers (PMIHs) for handling said PMIs, said method comprising the steps of:
executing a power on self test (POST) program without enabling said PMIs;
upon completion of execution of said POST program, loading into said main memory an operating system from the group of a disk operating system (DOS) executable in said real mode and a multitasking operating system (MOS) executable in said protected mode, the operating system to be loaded being determined by system setup;
and thereafter enabling said PMIS in accordance with which one of said operating systems is loaded into said main memory whereby said processor is operative upon enabling said PMIs to thereafter execute one of said PMIHs in response to an occurence of one of said PMIs.
executing a power on self test (POST) program without enabling said PMIs;
upon completion of execution of said POST program, loading into said main memory an operating system from the group of a disk operating system (DOS) executable in said real mode and a multitasking operating system (MOS) executable in said protected mode, the operating system to be loaded being determined by system setup;
and thereafter enabling said PMIS in accordance with which one of said operating systems is loaded into said main memory whereby said processor is operative upon enabling said PMIs to thereafter execute one of said PMIHs in response to an occurence of one of said PMIs.
6. A method in accordance with claim 5 wherein said computer comprises an interrupt controller having a PMI line for receiving said PMIs, and said PMIs are enabled by gating said PMIs into said interrupt controller through said PMI line.
7. A method in accordance with claim 5 comprising shutting off said processor after said PMIs are enabled, until an interrupt occurs.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US649,785 | 1984-09-12 | ||
US07/649,785 US5414860A (en) | 1991-01-29 | 1991-01-29 | Power management initialization for a computer operable under a plurality of operating systems |
Publications (1)
Publication Number | Publication Date |
---|---|
CA2057131C true CA2057131C (en) | 1996-01-02 |
Family
ID=24606225
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CA002057131A Expired - Fee Related CA2057131C (en) | 1991-01-29 | 1991-12-05 | Power management initialization for a computer operable under a plurality of operating systems |
Country Status (9)
Country | Link |
---|---|
US (1) | US5414860A (en) |
EP (1) | EP0497474A3 (en) |
JP (1) | JPH07101386B2 (en) |
KR (1) | KR950009688B1 (en) |
CN (1) | CN1025463C (en) |
AU (1) | AU652594B2 (en) |
CA (1) | CA2057131C (en) |
MY (1) | MY115940A (en) |
SG (1) | SG44434A1 (en) |
Families Citing this family (42)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6158012A (en) * | 1989-10-30 | 2000-12-05 | Texas Instruments Incorporated | Real-time power conservation and thermal management for computers |
JP2880863B2 (en) * | 1992-10-29 | 1999-04-12 | 株式会社東芝 | Suspend control method and system |
WO1996025796A1 (en) * | 1995-02-17 | 1996-08-22 | Intel Corporation | Power dissipation control system for vlsi chips |
US7167993B1 (en) | 1994-06-20 | 2007-01-23 | Thomas C Douglass | Thermal and power management for computer systems |
US5752011A (en) | 1994-06-20 | 1998-05-12 | Thomas; C. Douglas | Method and system for controlling a processor's clock frequency in accordance with the processor's temperature |
US5560022A (en) * | 1994-07-19 | 1996-09-24 | Intel Corporation | Power management coordinator system and interface |
US5793840A (en) * | 1994-08-30 | 1998-08-11 | Zhuang; Min | Method of sending a message through a phone system by turning on a computer |
US5630142A (en) * | 1994-09-07 | 1997-05-13 | International Business Machines Corporation | Multifunction power switch and feedback led for suspend systems |
US5671421A (en) * | 1994-12-07 | 1997-09-23 | Intel Corporation | Serial interrupt bus protocol |
EP0727728A1 (en) * | 1995-02-15 | 1996-08-21 | International Business Machines Corporation | Computer system power management |
US6327653B1 (en) | 1995-11-07 | 2001-12-04 | Samsung Electronics Co., Ltd. | Technique for easily changing operating systems of a digital computer system using at least two pushbuttons |
US5784628A (en) * | 1996-03-12 | 1998-07-21 | Microsoft Corporation | Method and system for controlling power consumption in a computer system |
US5983355A (en) * | 1996-05-20 | 1999-11-09 | National Semiconductor Corporation | Power conservation method and apparatus activated by detecting specific fixed interrupt signals indicative of system inactivity and excluding prefetched signals |
US5954819A (en) * | 1996-05-17 | 1999-09-21 | National Semiconductor Corporation | Power conservation method and apparatus activated by detecting programmable signals indicative of system inactivity and excluding prefetched signals |
KR100502400B1 (en) * | 1997-07-31 | 2005-11-03 | 삼성전자주식회사 | Computer and method for selecting controls of peripheral storage devices |
US6209088B1 (en) | 1998-09-21 | 2001-03-27 | Microsoft Corporation | Computer hibernation implemented by a computer operating system |
WO2001020456A1 (en) * | 1999-09-10 | 2001-03-22 | Hitachi, Ltd. | Operating system managing system and method |
EP1085396A1 (en) * | 1999-09-17 | 2001-03-21 | Hewlett-Packard Company | Operation of trusted state in computing platform |
GB2376763B (en) * | 2001-06-19 | 2004-12-15 | Hewlett Packard Co | Demonstrating integrity of a compartment of a compartmented operating system |
GB0102518D0 (en) * | 2001-01-31 | 2001-03-21 | Hewlett Packard Co | Trusted operating system |
GB0102516D0 (en) * | 2001-01-31 | 2001-03-21 | Hewlett Packard Co | Trusted gateway system |
GB2372595A (en) * | 2001-02-23 | 2002-08-28 | Hewlett Packard Co | Method of and apparatus for ascertaining the status of a data processing environment. |
GB2372592B (en) | 2001-02-23 | 2005-03-30 | Hewlett Packard Co | Information system |
GB0114898D0 (en) * | 2001-06-19 | 2001-08-08 | Hewlett Packard Co | Interaction with electronic services and markets |
GB2376764B (en) * | 2001-06-19 | 2004-12-29 | Hewlett Packard Co | Multiple trusted computing environments |
GB2376762A (en) * | 2001-06-19 | 2002-12-24 | Hewlett Packard Co | Renting a computing environment on a trusted computing platform |
GB2378013A (en) * | 2001-07-27 | 2003-01-29 | Hewlett Packard Co | Trusted computer platform audit system |
GB2382419B (en) * | 2001-11-22 | 2005-12-14 | Hewlett Packard Co | Apparatus and method for creating a trusted environment |
JP2003196096A (en) * | 2001-12-07 | 2003-07-11 | Internatl Business Mach Corp <Ibm> | Computer system, its starting control method and program |
US7080267B2 (en) * | 2002-08-01 | 2006-07-18 | Texas Instruments Incorporated | Methodology for managing power consumption in an application |
KR100568246B1 (en) * | 2003-11-19 | 2006-04-05 | 삼성전자주식회사 | Computer System And Controlling Method Thereof |
WO2006100522A1 (en) | 2005-03-22 | 2006-09-28 | Hewlett-Packard Development Company, L.P. | Methods, devices and data structures for trusted data |
CN100458756C (en) * | 2006-04-10 | 2009-02-04 | 重庆大学 | Management system of power battery for mixed-power automobile |
US7657730B2 (en) * | 2006-07-07 | 2010-02-02 | International Business Machines Corporation | Initialization after a power interruption |
US8244947B2 (en) * | 2009-02-20 | 2012-08-14 | Qualcomm Incorporated | Methods and apparatus for resource sharing in a programmable interrupt controller |
US8190873B2 (en) * | 2009-05-13 | 2012-05-29 | Dell Products L.P. | System and method for optimizing performance of an information handling system component |
US8812825B2 (en) | 2011-01-10 | 2014-08-19 | Dell Products L.P. | Methods and systems for managing performance and power utilization of a processor employing a fully multithreaded load threshold |
US8806254B2 (en) | 2011-02-01 | 2014-08-12 | Dell Products L.P. | System and method for creating and dynamically maintaining system power inventories |
US9797784B2 (en) | 2012-03-07 | 2017-10-24 | Apple Inc. | Communication and monitoring of a battery via a single wire |
US9599519B2 (en) | 2012-03-07 | 2017-03-21 | Apple Inc. | Charging a battery based on stored battery characteristics |
US20150280598A1 (en) * | 2014-04-01 | 2015-10-01 | Nissim Zur | Apparatus and method of Automated Power Saving and Safety |
KR102375925B1 (en) * | 2015-08-31 | 2022-03-17 | 삼성전자주식회사 | Method of operating cpu and method of operating system having the cpu |
Family Cites Families (20)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4203153A (en) * | 1978-04-12 | 1980-05-13 | Diebold, Incorporated | Circuit for reducing power consumption in battery operated microprocessor based systems |
US4409665A (en) * | 1979-12-26 | 1983-10-11 | Texas Instruments Incorporated | Turn-off-processor between keystrokes |
US4597084A (en) * | 1981-10-01 | 1986-06-24 | Stratus Computer, Inc. | Computer memory apparatus |
JPS58127262A (en) * | 1982-01-25 | 1983-07-29 | Toshiba Corp | Microcomputer |
US4698748A (en) * | 1983-10-07 | 1987-10-06 | Essex Group, Inc. | Power-conserving control system for turning-off the power and the clocking for data transactions upon certain system inactivity |
JPS60136833A (en) * | 1983-12-26 | 1985-07-20 | Hitachi Ltd | Switching method of operating system |
US4779187A (en) * | 1985-04-10 | 1988-10-18 | Microsoft Corporation | Method and operating system for executing programs in a multi-mode microprocessor |
US5027273A (en) * | 1985-04-10 | 1991-06-25 | Microsoft Corporation | Method and operating system for executing programs in a multi-mode microprocessor |
US4825358A (en) * | 1985-04-10 | 1989-04-25 | Microsoft Corporation | Method and operating system for executing programs in a multi-mode microprocessor |
US4768149A (en) * | 1985-08-29 | 1988-08-30 | International Business Machines Corporation | System for managing a plurality of shared interrupt handlers in a linked-list data structure |
US4744048A (en) * | 1985-10-09 | 1988-05-10 | American Telephone And Telegraph Company | Display context switching arrangement |
US4747040A (en) * | 1985-10-09 | 1988-05-24 | American Telephone & Telegraph Company | Dual operating system computer |
US4851987A (en) * | 1986-01-17 | 1989-07-25 | International Business Machines Corporation | System for reducing processor power consumption by stopping processor clock supply if a desired event does not occur |
US4843541A (en) * | 1987-07-29 | 1989-06-27 | International Business Machines Corporation | Logical resource partitioning of a data processing system |
JPH01219931A (en) * | 1988-02-29 | 1989-09-01 | Fujitsu Ltd | Memory control system |
US4979106A (en) * | 1988-08-29 | 1990-12-18 | Amdahl Corporation | Customization of a system control program in response to initialization of a computer system |
US4980836A (en) * | 1988-10-14 | 1990-12-25 | Compaq Computer Corporation | Apparatus for reducing computer system power consumption |
US5041964A (en) * | 1989-06-12 | 1991-08-20 | Grid Systems Corporation | Low-power, standby mode computer |
CA2063413C (en) * | 1989-06-30 | 2000-08-15 | Leroy D. Harper | Computer power management system |
US5134580A (en) * | 1990-03-22 | 1992-07-28 | International Business Machines Corporation | Computer with capability to automatically initialize in a first operating system of choice and reinitialize in a second operating system without computer shutdown |
-
1991
- 1991-01-29 US US07/649,785 patent/US5414860A/en not_active Expired - Lifetime
- 1991-12-04 JP JP3320413A patent/JPH07101386B2/en not_active Expired - Lifetime
- 1991-12-05 CA CA002057131A patent/CA2057131C/en not_active Expired - Fee Related
- 1991-12-20 KR KR1019910023617A patent/KR950009688B1/en not_active IP Right Cessation
- 1991-12-20 AU AU89925/91A patent/AU652594B2/en not_active Ceased
- 1991-12-27 MY MYPI91002408A patent/MY115940A/en unknown
- 1991-12-31 CN CN91107574A patent/CN1025463C/en not_active Expired - Lifetime
-
1992
- 1992-01-17 SG SG1996000368A patent/SG44434A1/en unknown
- 1992-01-17 EP EP19920300401 patent/EP0497474A3/en not_active Withdrawn
Also Published As
Publication number | Publication date |
---|---|
AU8992591A (en) | 1992-08-06 |
KR920015195A (en) | 1992-08-26 |
KR950009688B1 (en) | 1995-08-26 |
JPH06119180A (en) | 1994-04-28 |
CN1063766A (en) | 1992-08-19 |
CN1025463C (en) | 1994-07-13 |
US5414860A (en) | 1995-05-09 |
MY115940A (en) | 2003-10-31 |
JPH07101386B2 (en) | 1995-11-01 |
AU652594B2 (en) | 1994-09-01 |
EP0497474A3 (en) | 1993-02-24 |
EP0497474A2 (en) | 1992-08-05 |
SG44434A1 (en) | 1997-12-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CA2057131C (en) | Power management initialization for a computer operable under a plurality of operating systems | |
US8176339B2 (en) | Method and system for managing peripheral connection wakeup in a processing system supporting multiple virtual machines | |
US5737615A (en) | Microprocessor power control in a multiprocessor computer system | |
EP0496536B1 (en) | Battery operated computer power management system | |
US6732283B2 (en) | Processor having real-time power conservation | |
US5642110A (en) | Memory mapped keyboard controller | |
US6378068B1 (en) | Suspend/resume capability for a protected mode microprocesser | |
US5237692A (en) | Internal interrupt controller for a peripheral controller | |
JP3437587B2 (en) | Resume processing method for operating system | |
US5408624A (en) | Method and apparatus for down-loading instructions from a host computer system to a memory in a peripheral controller for execution by a core microprocessor in the peripheral controller | |
JP3442100B2 (en) | Method of saving a system image of a computer system and computer system implementing the method | |
US5303171A (en) | System suspend on lid close and system resume on lid open | |
US6832311B2 (en) | Information processing system and resume processing method used in the system | |
US20120159028A1 (en) | System Management Mode Inter-Processor Interrupt Redirection | |
US6128745A (en) | Power management inactivity monitoring using software threads | |
CA1216949A (en) | Data processing system including a main processor and a co-processor and co-processor error handling logic | |
US8056078B2 (en) | Cooperatively multitasking in an interrupt free computing environment | |
WO2015012878A1 (en) | Operating system switching method and apparatus | |
US7451073B2 (en) | System and method for increasing performance in multi-CPU simulation | |
JPH02187830A (en) | Interruption control system | |
KR19990030951A (en) | How to diagnose hardware in SMM | |
JPH07319591A (en) | Computer system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
EEER | Examination request | ||
MKLA | Lapsed |