USRE40092E1 - Method for quickly booting a computer system - Google Patents

Method for quickly booting a computer system Download PDF

Info

Publication number
USRE40092E1
USRE40092E1 US10918293 US91829304A USRE40092E US RE40092 E1 USRE40092 E1 US RE40092E1 US 10918293 US10918293 US 10918293 US 91829304 A US91829304 A US 91829304A US RE40092 E USRE40092 E US RE40092E
Authority
US
Grant status
Grant
Patent type
Prior art keywords
memory
boot
system
configuration
computer
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.)
Active
Application number
US10918293
Inventor
Seong-Cheol Kang
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.)
Operating Systems Solutions LLC
Original Assignee
Protimus Tech LLC
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
Grant date

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 – G06F13/00 and G06F21/00
    • G06F1/24Resetting means
    • GPHYSICS
    • G06COMPUTING; CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/44Arrangements for executing specific programs
    • G06F9/4401Bootstrapping
    • GPHYSICS
    • G06COMPUTING; CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/44Arrangements for executing specific programs
    • G06F9/4401Bootstrapping
    • G06F9/4418Suspend and resume; Hibernate and awake

Abstract

A method for quickly booting a personal computer system using boot configuration information on memory and the attached devices that was created and saved in a hard disk at the preceding boot process. The method for a quick boot process includes the steps of performing a power-on self test POST) operation when a personal computer system is powered on or a reset button is pressed; performing a normal boot process after the POST operation; saving the contents of memory and the status of the attached devices to a hard disk; checking if a reboot is requested; restoring the saved boot configuration information from the hard disk, after POST is completed during the reboot process; checking whether or not an initial device configuration file and/or an automatic batch file were changed; and executing commands in the two files and saving a newly created boot configuration information to the hard disk for future boot. The personal computer system, may reboot quickly because of omission of execution of the initial device configuration filed and the automatic batch file.

Description

BACKGROUND OF THE INVENTION

1. Field of the Invention

The present invention relates to a method of and apparatus for booting a personal computer system and, more particularly, for quickly booting a computer system, in which a boot configuration information is created and saved in a disk for future boot, and the saved boot configuration information is reused upon the request of the subsequent boot.

2. Description of the Related Art

FIG. 1 shows a block diagram of the system architecture for a conventional personal computer system, comprising a central processing unit (CPU) 1; a read only memory (ROM) 2 for permanent storage of basic input output system (BIOS) and the initial states of internal devices, a random access memory (RAM) 3 for temporary storage of information; a micro computer (MICOM) 4 for controlling peripheral devices such as a keyboard input device, a mouse input device, and a power supply 7; a hard disk (HDD) 8 for providing a secondary information storage; a disk controller 5 for controlling HDD; a video output display 6 for displaying information; and a power supply 7. When power is applied to the computer system, the computer system starts to be booted to load an operating system (OS) and thus is brought into a known useful state in which application programs can be executed. This procedure is generally called “booting”. An operating system is a software that provides resource management on a computer system, including basic tasks such as process execution, memory management, and file management. Examples are MS-DOS, Windows95, OS/2, and UNIX. Execution of user applications is based on these basic functions of the operating system.

The boot process of an IBM PC in which MS-DOS operating system is already installed is as follows. When a user turns the personal computer power switch on or presses a reset button, a power-on self test (POST) is performed by ROM BIOS codes to diagnose each component of the personal computer. Next, a file called MSDOS.SYS is loaded and executed, and another file called IO.SYS is then loaded and executed to perform certain preliminary functions related to management of such peripheral devices as keyboard, disk, and display. And then, a command preprocessor or COMMAND.COM is loaded into a memory that receives, interprets and executes user commands. A file called CONFIG.SYS that specifies devices possibly connected to the personal computer is loaded and ASCII statements contained therein are executed to load device drivers and initialize them. Finally, another ASCII file called AUTOEXEC.BAT is loaded and then programs that are listed therein are executed, thereby preparing the personal computer for use.

There two kinds of boots; “cold boots” and “warm boots”, which rely on the state of the computer system when the boot operation is requested. A “cold boot” is performed when power is applied to the computer or a reset button is pressed. When an operating system is loaded in memory already and the computer system is powered on already, a user may request a “warm boot” by entering a predefined sequence of key strokes, e.g., <Ctrl>+<Alt>+<Del>. The BIOS codes include a plurality of computer routines for controlling devices such as a system clock, video output display 6, disk controller 5, and keyboard and thus provide a low-level interface to these devices. The BIOS is generally stored in a Flash ROM.

Shortly after power on or a reset button is pressed, the CPU begins executing the ROM BIOS codes. The BIOS codes for POST are, first, executed to diagnose and initialize devices attached to the computer system and obtain the status of the devices.

When a “warm boot” is requested or a reset button is pressed, it is desirable that the time required for the boot process is reduced to force the computer into a ready state as quickly as possible. The boot process is usually called “quick boot”, which is achieved by simplifying some device diagnosis processes or loading the device status information that was obtained at the preceding boot time from a storage medium such as disk. Because the quick boot means a boot process in which some POST operations, e.g., memory test are skipped, the quick boot is generally referred to as “quick post”.

FIG. 2 is a flowchart of the quick POST in an IBM personal computer system in which Windows95 is installed according to the conventional art. When the computer system is powered on or a reset button is pressed (S11), the Windows95 is loaded into a memory after execution of a normal POST process (S12). To be specific, once the POST process is performed, ASCII statements in CONFIG.SYS and AUTOEXEC.BAT are executed sequentially and WIN.COM is then executed to load Windows95. While Windows 3.1, a previous version of Windows95, is loaded after the personal computer is booted on the basis of MS-DOS, Windows95 installed PC is booted and Windows95 user interface is provided directly.

Once the boot operation is completed, a basic boot information is saved to a disk for future quick POST process (S13). After that, if a user requests a “quick boot” to reboot the personal computer (S14), the above-mentioned quick POST process is performed to reduce the time needed to complete a normal POST process. As another method, the POST process execution is skipped by using a basic boot information that was created and saved in a disk immediately after the preceding POST process is completed.

However, the conventional quick boot relies on the POST process, e.g., the omission of memory test. In other words, in the conventional quick booting method, the same operations as those of normal boot process are still performed after the quick POST process. Therefore, in case where there are a lot of ASCII statements in CONFIG.SYS and AUTOEXEC.BAT, the quick boot of the conventional art is not effective to reduction of the boot time.

According to the conventional booting method, in Windows95 installed personal computer system, working environment or all information stored in memory are saved to a disk for the subsequent quick boot. If memory size is larger than 32 MB, the amount of data to be saved to the disk becomes too large. As a result, the subsequent booting by reloading the saved data into the memory may be even slower than a normal boot.

SUMMARY OF THE INVENTION

It is therefore a primary object of the present invention to provide a method and apparatus that significantly reduces the time required for boot process after a POST operation by using a boot configuration information on memory and the attached devices that were created and saved in a disk in the preceding boot process, and thereby skipping execution of statements in an initial device configuration file and an automatic batch file.

To achieve the object, the present invention provides a method for quickly booting a personal computer system, comprising the steps of performing a POST operation when the system is powered on or a reset button is pressed; checking if a boot configuration information that was created in the preceding boot process exists in a disk; saving the boot configuration information to the disk after execution of a POST operation on the basis of the checking result; and loading a graphic user interface (GUI) program.

The method for quickly booting a computer system according to the present invention is also characterized in that it comprises the steps of performing a POST operation when the system is powered on or a reset button is pressed; restoring a boot configuration information by using the boot configuration information that has been saved in a disk; and loading a GUI program.

According to the quick booting method of the present invention, after ASCII statements listed in an initial device configuration file and an automatic batch file are executed, a boot configuration information that is resident in a memory, i.e., the status of devices and the contents of memory are saved into a disk. After that, when a reboot is requested, a computer system can be booted quickly by using the stored boot configuration information, without execution of the initial device configuration file and the automatic batch run file.

BRIEF DESCRIPTION OF THE DRAWINGS

The accompanying drawings, which are included to provide a further understanding of the invention, illustrate the preferred embodiment of this invention, and together with the description, serve to explain the principles of the present invention.

In the drawings:

FIG. 1 is the system architecture of a general personal computer system;

FIG. 2 is a flowchart showing the conventional method for quick POST operation in a Windows95-installed personal computer;

FIG. 3 is a flowchart showing a method for a quick boot according to an embodiment of the present invention;

FIG. 4 is a flowchart showing a method for saving a boot configuration information after execution of POST operation in a Windows95-installed personal computer according to an embodiment of the present invention;

FIG. 5 is a flowchart showing a method for restoring a stored boot configuration information in a Windows95-installed personal computer according to an embodiment of the present invention;

FIG. 6 is a flowchart showing a method for saving the contents of memory into a disk according to an embodiment of the present invention; and

FIG. 7 is a flowchart showing a method for restoring the contents of memory according to an embodiment of the present invention.

DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENT

The preferred embodiments of the present invention will be described below in detail referring to the accompanying drawings.

FIG. 3 is a flowchart of the quick boot process in an IBM personal computer system according to an embodiment of the present invention. The flow proceeds to step S21, in which a POST operation is performed when a computer system is powered on or a reset button is pressed. A normal boot process of an operating system, e.g., Windows95 is then executed (S22). Next, a boot configuration information, i.e., the contents of memory and the status of the attached devices that was created and has been resident in a memory since execution of the POST operation is saved to a disk (S23). A RAM-resident program is called by a software interrupt (INT in general) in modified ROM BIOS codes so as to save the boot configuration information into a disk for future boots. Since the, when a reboot is requested (S24), the POST operation is performed and then the saved boot configuration information is retrieved from the disk in order to complete the reboot process (S25). If it is determined that either CONFIG.SYS or AUTOEXEC.BAT was changed (S26), the changed two files are loaded into a memory and are then executed to form a new boot configuration information, which will be saved to the disk again for the subsequent boot. In this way, if CONFIG.SYS and AUTOEXEC.BAT are not changed, they do not need to be loaded and executed when a computer system is booted, resulting in a quick boot.

FIGS. 4 and 5 are flowcharts respectively showing methods for saving and restoring a boot configuration information in a Windows95-installed IBM personal computer according to an embodiment of the present invention.

The method for saving the boot configuration information to a disk will be described now in detail referring to FIG. 4. When power is turned on or a reset button is pressed (S31), a cold boot or warm boot is requested. The POST operation is, first, executed (S32) and then an INT 19h service routine is called to load an operating system (S53). By calling the INT 19h, control is passed to a bootstrap loader which loads the operating system into a memory to prepare the personal computer for use.

Next, CONFIG.SYS is loaded into the memory and statements therein are executed CONFIG.SYS includes ASCII statements describing the size of disk buffer, the number of files that can be opened simultaneously, the names of device drivers needed to control devices attached to the computer system, and so on. After executing CONFIG.SYS, another ASCII file called AUTOEXEC.BAT is loaded into the memory. The file-names of programs that a user wants to run automatically at the boot time are listed therein, and the programs are executed (S34).

Next, a RAM-resident program is activated to replace an original INT 2Fh service routine in the ROM BIOS codes. To do this, the interrupt Vector for INT 2Fh is substituted for the address of the RAM-resident program (S35). Next, WIN.COM is executed to load Windows95 into the memory (S36). The INT 2Fh service routine is called by using software system management interrupt (software SMI) during the execution of WIN.COM. At the interrupt point, the contents of a particular register is sent to the RAM-resident program and then performs a prescribed function associated with the register contents (S37).

If the register contents is a predetermined value, e.g., 1605H, the RAM-resident program checks if there is a file that contains the boot configuration information in a disk (S38) and saves the current boot configuration information to the disk, if not (S39). WIN.COM is then executed to load a GUI program of Windows95 into the memory (S41), providing a user with Windows95 interface (S42). It should be noted that the boot configuration information is saved in the disk immediately before Windows95 loads device drivers into a memory, i.e., an extended memory is used to load GUI program of Windows95.

The operation of saving the boot configuration information to a disk (the step S39 of FIG. 4) is described in detail with reference to a flowchart of FIG. 6. The contents of memory block of a predetermined size are, first, examined and are then saved to the disk if the memory block is satisfied with a predetermined criterion. An address of the memory block is saved to the disk, as well. To be specific, if it is determined that the boot configuration information resident in a memory needs to be saved to the disk (S71), the INT 2Fh service routine checks if a memory segment of 64 KB is filled with ‘0’, while scanning every memory segment (S72). If not, the contents of the memory segment are saved to the disk (S73), together with its address (S74). The memory segment is treated as a memory accessing unit, which is 64 KB in size in the IBM personal computer system. And the boot configuration information to be saved is approximately 7 MB in size, which is composed of 1 MB for saving the software SMI, 4 MB for the video memory, and 2 MB for saving a memory area in which the interrupt vector table and some crucial programs for system management are resided.

The next time the computer system is powered on or reset, the saved boot configuration information is used to boot the computer system. The method for restoring the boot configuration information will be described now in detail referring to FIG. 5.

Once power is turned on or reset button is pressed (S51), a quick POST operation including skip of memory test is executed (S52), and then it is checked whether or not there is any boot configuration information that has been saved to a disk in the preceding boot process (S52-1). If it is determined that a boot configuration information exists, the operation for its restoration is performed (S53).

The process for restoring the boot configuration information is described in detail referring to a flowchart of FIG. 7. First, it is checked whether or not a current boot configuration has been changed based on the restored boot configuration information. If there is any change in the boot configuration, commands that are usually executed at the boot time, for example, commands for initial setup device configuration are executed and then a newly formed boot configuration information is saved to the disk for future boot. Specifically, when a computer system is resumed, it is checked if the boot configuration information will be restored (S81). If it is determined that the boot configuration information is restored, the contents of memory segments, addresses of which was saved before in the disk, are copied to the memory at their own addresses (S82). Other memory segments than the restored memory segments, become filled with ‘0’ (S83). The reason why the contents of those segments are not restored is that they are set to all ‘0’s during the BIOS POST operation.

Once restoration of the contents of those memory segments is completed, it is checked if CONFIG.SYS and AUTOEXEC.BAT was changed (S54). If it is determined that either CONFIG.SYS and AUTOEXEC.BAT was changed, the bootstrap loader, the INT 19h service routine is called (S55), and then the both ASCII files are loaded into a memory to execute statements therein (S56). Next, the RAM-resident program is activated to replace the original INT 2Fh service routine (S57).

Next, WIN.COM is executed to load Windows95 into the memory (S58). The INT 2Fh service routine is called through the software SMI during the execution of WIN.COM (S59) and thus the RAM-resident program is executed. The RAM-resident program, first, checks the contents of a particular register and then, if it is matched with a predetermined value, saves the current boot configuration information that is resident in the memory to the disk (S61). The method for saving the contents of memory where the boot configuration information is resided is the same as that shown in FIG. 6. Next, control is passed to WIN.COM again and thus Windows95 GUI is set up (S62), thereby preparing the computer system for use (S63).

The reason why the boot configuration information should be restored before Windows95 loads Windows95-dedicated device drivers is to reduce the amount of data on the disk that must be copied to a memory at the boot time. Because the extended memory has been not used yet at that time, even if the size of total memory is 512 MB, memory of about 7 MB only is saved to and restored from the disk, according to the methods shown in FIGS. 6 and 7. Therefore, the execution of CONFIG.SYS and AUTOEXEC.BAT can be skipped by restoring the contents of memory and the status of devices based on the boot configuration information, thereby reducing the boot time significantly.

Though the description hereinbefore may refer to terms commonly used in describing particular computer systems and software, such as IBM personal computer and Windows95 operation system, the concepts equally apply to other systems and software.

The foregoing is provided only for the purpose of illustration and explanation of the preferred embodiments of the present invention, so changes, variations and modifications may be made without departing from the spirit and scope of the invention.

Claims (62)

1. A method for fast booting a computer system, comprising the steps of:
A. performing a power on self test (POST) of basic input output system (BIOS) when the computer system is powered on or reset is requested;
B. checking whether a boot configuration information including a system booting state which was created while executing a previous normal booting process exists or not, wherein the boot configuration information comprises selected portions of main memory contents and information indicative of a status of hardware;
C. storing the boot configuration information from execution of the POST operation before loading a graphic interface (GUI) program, based on the checking result; and
D. loading the graphic user interface (GUI) program.
2. A The method according to claim 1, wherein said step C stores the boot configuration information into a disk storage medium.
3. A The method according to claim 1, wherein said step C stores the boot configuration information after execution of the POST operation is completed and before an extended memory becomes in use.
4. A The method according to claim 1, wherein said step C comprises the steps of:
checking contents of a memory block of a predetermined size;
storing the contents of the memory block into a disc storage medium based on the checking result; and
storing the address of the stored memory block in the disc storage medium.
5. A method according to claim 1, wherein the boot configuration information in which system booting state is included comprises states of memory and hardware.
6. A method for fast booting a computer system, comprising the steps of:
A. performing a power on self test (POST) of basic input output system (BIOS) when the computer system is powered on or reset is requested;
B. resuming a boot configuration information including a system booting state by using the boot configuration information which was stored while executing a previous normal boot process, wherein the boot configuration information comprises selected portions of main memory contents; and
C. loading a graphic user interface (GUI) program.
7. A The method according to claim 6, wherein said step B further comprises the steps of:
checking if a designated boot configuration information is different from the resuming boot configuration information;
executing an initial driving program based on a modified configuration information; and
updating the boot configuration information after said execution.
8. A The method according to claim 6, wherein said step B comprises the steps of:
determining whether to resume said stored boot configuration information;
resuming the contents of memory blocks, addresses of which have been stored while executing a previous normal booting process; and
writing zeros into other memory blocks than the resumed memory blocks.
9. A The method according to claim 6, wherein said step B restores said stored boot configuration information before an extended memory becomes in use.
10. A method for quickly booting a computer system in which Windows operating system is installed, comprising the steps of:
A. performing a power on self test (POST) of basic input output system (BIOS) when the computer system is powered on or reset is requested;
B. checking whether a boot configuration information including a system booting state which was created while executing a previous normal boot process exists or not, wherein the boot configuration information comprises selected portions of main memory contents and information indicative of a status of hardware;
C. storing the a current boot configuration information, if there is no stored boot configuration information;
D. performing the POST operation when the computer system is rebooted;
E. resuming the stored boot configuration information; and
F. updating the boot configuration information before a graphic user interface (GUI) program is loaded, if a designated boot configuration information is different from the boot configuration information.
11. A The method according to claim 10, wherein said step B calls an interrupt for bootstrap loader to check if the boot configuration information which was created while executing a previous normal booting process.
12. A The method according to claim 10, wherein said step F determines whether or not the designated boot configuration information is different from the resumed boot configuration information based on changes of CONFIG.SYS file and/or AUTOEXEC.BAT file.
13. A method for supporting fast booting a computer system through storing/resuming a memory status state of the computer system, comprising the steps of:
checking whether to store a memory contents status state;
checking memory contents of a certain unit plurality of units of the main memory;
selectively storing on a unit by unit basis portions of the main memory contents written in an area necessary for system operation based on a result of the memory contents checking result ; and
resuming the selectively stored portions of the main memory contents for fast booting.
14. A The method according to claim 13, wherein the a certain unit is composed of a segment having 64 bytes.
15. A The method according to claim 13, wherein the storing step stores the contents if a value in a memory block is not ‘0’, and does not store the contents if the value is ‘0’.
16. A The method according to claim 13, wherein the storing step stores an address of a memory block unit if value of a the memory block unit is not ‘0’, and does not store the address if the value is ‘0’.
17. The method according to claim 13, wherein the resuming step resumes pre-stored memory contents of the certain a memory unit while writing ‘0’ in a remainder of the certain memory unit.
18. A The method according to claim 13, wherein the resuming step resumes the stored contents belonging to a corresponding segment if the system is resumed from a hibernation state to a normal state, and does not resume a remaining portion of the segment.
19. A method for fast booting a computer system, comprising the steps of:
A. performing a power on self test (POST) of basic input output system (BIOS) functions when the computer system is powered on or reset is requested;
B. checking whether a previous boot configuration information created while executing a previous normal booting process exists or not, wherein the previous boot configuration information comprises selectively stored portions of main memory contents and information indicative of a status of hardware;
C. storing a current boot configuration information after execution of the POST operation based on the checking result; and
D. loading a graphic user interface (GUI) program.
20. A method for quickly booting a computer system in which a Windows operating system is installed, comprising the steps of:
A. performing a power on self test (POST) of basic input output system (BIOS) functions when the computer system is powered on or reset is requested;
B. checking whether a boot configuration information created while executing a previous normal boot process is stored or not, wherein the boot configuration information comprises selectively stored portions of main memory contents and information indicative of a status of hardware;
C. storing a current boot configuration information, if there is no stored boot configuration information;
D. performing the POST operation when the computer system is rebooted; and
E. restoring the stored boot configuration information.
21. A method for supporting fast booting of a computer system through storing/restoring main memory contents of the computer system, comprising the steps of:
checking whether to store the main memory contents;
checking the main memory contents on a block-by-block basis;
selectively storing a portion of the main memory contents based on the result of the main memory contents checking; and
restoring the selectively stored portion of the main memory contents for fast booting.
22. The method of claim 21, wherein the stored main memory contents portion is stored in uncompressed form.
23. The method of claim 21, wherein the block-by-block basis involves a predetermined block size.
24. A method for supporting fast booting of a computer system through storing/restoring main memory contents of the computer system, comprising the steps of:
checking whether to store main memory contents;
checking memory contents of a main memory on a segment-by-segment basis;
selectively storing portions of the main memory contents based on the result of the checking of the main memory contents; and
restoring the selectively stored portions of the main memory contents for fast booting.
25. The method of claim 24, wherein the selectively stored portions of the main memory contents are stored in uncompressed form.
26. The method of claim 24, wherein the segment-by-segment basis involves a consistent segment size.
27. The method of claim 24, wherein the fast booting continues after the selectively stored portions of the main memory contents are restored.
28. A method for fast booting a computer system, comprising the steps of:
A. performing a power on self test (POST) of basic input output system (BIOS) functions when the computer system is powered on or reset is requested;
B. restoring boot configuration information comprised of selectively stored portions of main memory contents and status of attached devices, which was previously stored while executing a previous boot process;
C. loading a graphic user interface (GUI) program.
29. The method of claim 28, wherein the restored boot configuration information is restored prior to the use of extended memory by the graphical user interface (GUI) program.
30. A method for quick booting a computer system, comprising the steps of:
a) performing a power on self test (POST) when the computer system is powered on or reset;
b) executing any further instructions not included in the POST to further initialize hardware in the computer system to a known state and to place the computer system in a low level configuration for a boot operation to proceed;
c) storing a current state of the computer system in a configuration information file;
d) allowing the boot operation to continue;
e) checking during a subsequent boot operation to detect any changes to the computer system that would affect the low level configuration relative to the configuration information file;
f) skipping at least the execution of instructions previously executed in step b if no changes are detected that would affect the low level configuration relative to the configuration information file;
g) reloading the configuration information file and allowing the subsequent boot operation to proceed from that point if no changes are detected that would affect the low level configuration relative to the configuration information file.
31. A method for quickly booting a personal computer system using boot configuration information related to attached devices and a computer memory that was created and saved in a storage medium during a preceding boot process, wherein the method comprises:
a) performing an initial process operation to diagnose devices attached to the personal computer system when the personal computer system is powered on or a reset button is pressed;
b) referencing files specifying one or more of the attached devices and executing software to load device drivers into the computer memory and to initialize one or more of the attached devices;
c) loading additional files and software to identify and execute any additional programs to be executed prior to initiating normal user operations;
d) saving to the storage medium information reflecting a status of the attached devices, the computer memory and/or the additional programs;
e) in a subsequent restart operation, checking if the information requires updating; and
f) if no updating is necessary, loading the saved information into the computer memory and resuming normal personal computer system operations, thereby bypassing execution of steps (b) through (d) above, resulting in a quick booting operation.
32. The method of claim 31, wherein the storage medium comprises a disk drive.
33. A method for operating a computer system comprised of:
a) performing a Power on Self Test (POST) operation;
b) executing a bootstrap loader program which prepares the computer system for execution of a graphical operating system;
c) writing selected portions of memory contents from a main memory to a storage medium location;
d) executing the graphical operating system;
e) checking during a subsequent boot operation to detect any changes to the computer system that would affect the execution of the bootstrap loader program;
f) skipping at least a portion of the execution of the bootstrap loader program during the subsequent boot operation if no changes are detected;
g) writing the selected portions of main memory contents from the storage medium to the main memory and allowing the subsequent boot operation to proceed from that point if no changes are detected that would affect the execution of the bootstrap loader program.
34. The method of claim 33, wherein the selected portions of main memory contents written from the main memory to the storage medium location in step (c) are selected on a segment-by-segment basis based in part on the presence of actual data.
35. The method of claim 33, wherein the selected portions of main memory contents are written prior to the use of extended memory in the computer system.
36. The method of claim 33, wherein the storage medium comprises a disk drive.
37. A method for supporting an operation of a computer system through storing/restoring main memory contents of the computer system, comprising the steps of:
checking whether to store main memory contents;
checking main memory contents of the main memory on a block-by-block basis;
selectively storing portions of the main memory contents based on a result of the checking main memory contents; and
restoring the selectively stored portions of the main memory contents for the operation of the computer system.
38. The method of claim 37, wherein the selectively stored portions of the main memory contents are stored in uncompressed form.
39. The method of claim 37, wherein the block-by-block basis involves a predetermined block size.
40. The method of claim 37, wherein the selectively stored portions of the main memory contents are restored during a boot operation prior to the use of extended memory by an operating system.
41. A method for supporting an operation of a computer system through storing/restoring main memory contents of the computer system, comprising the steps of:
checking whether to store main memory contents;
checking main memory contents of the main memory on a segment-by-segment basis;
selectively storing portions of the main memory contents based on a result of the checking main memory contents; and
restoring the selectively stored portions of the main memory contents for the operation of the computer system.
42. The method of claim 41, wherein the selectively stored portions of the main memory contents are stored in uncompressed form.
43. The method of claim 41, wherein the segment-by-segment basis involves a consistent segment size.
44. The method of claim 41, wherein the selectively stored portions of the main memory contents are restored during a boot operation prior to the use of extended memory by an operating system.
45. A method for operating a computing system comprising the steps of:
carrying out a first boot up process for the computing system, wherein as a result of the first boot up process the computing system is brought to a state of operation in which application software may be executed, wherein during the first boot up process device configuration programming statements are executed, wherein based on the device configuration programming statements boot configuration data is written to a main memory in the computing system, wherein the boot configuration data is selectively stored in a storage medium in the computing system, wherein the boot configuration data comprises selectively stored portions of main memory contents;
carrying out a second boot up process for the computing system at a point in time subsequent to the first boot up process, wherein as a result of the second boot up process the boot configuration data is retrieved from the storage medium and is written to the main memory, wherein device configuration programming statements that were executed during the first boot up process are not executed during the second boot up process, wherein the second boot up process is faster than the first boot up process.
46. The method of claim 45, wherein data in the main memory is selectively stored in the storage medium based on whether the data in the main memory was altered from a predetermined value during the first boot up process.
47. The method of claim 46, wherein data in the main memory is selectively stored in the storage medium on a memory block by memory block basis.
48. The method of claim 46, wherein data in the main memory is selectively stored in the storage medium on a memory segment by memory segment basis.
49. The method of claim 45, further comprising the step of determining changes in the device configuration programming statements, wherein, in the event of changes in the device configuration programming statements, in a boot up process subsequent to the first boot up process the device configuration programming statements are re-executed and second boot configuration data is written to the main memory in the computing system, wherein the second boot configuration data is stored in the storage medium in the computing system and utilized in a further subsequent boot up process.
50. The method of claim 45, wherein the storage medium comprises a disk drive.
51. The method of claim 45, wherein the boot configuration data is written to the main memory prior to the use of extended memory by an operating system.
52. A method for quickly booting a personal computer system using boot configuration information related to attached devices and to selected areas of computer memory, that was created and saved in a storage medium during a preceding boot process, wherein the method comprises:
a) performing an initial process operation to diagnose devices attached to the personal computer system;
b) referencing files specifying one or more of the attached devices and executing software to load device drivers into the computer memory and to initialize one or more of the attached devices;
c) loading additional files and software to identify and execute any additional programs to be executed prior to initiating normal user operations;
d) saving to the storage medium information and selected areas of memory reflecting a status of the attached devices and the additional programs;
e) in a subsequent restart operation, checking if the selected areas of memory, and saved device and program information requires updating; and
f) if no updating is necessary, loading the saved information into the computer memory and resuming normal personal computer system operations, thereby bypassing execution of steps (b) through (d) above, resulting in a quick booting operation.
53. The method of claim 52, wherein the storage medium comprises a disk drive.
54. The method of claim 52 wherein the saved information is loaded into the computer memory using up to 1 MB of address space.
55. A method for quickly booting a computer system comprised of:
a) performing a Power on Self Test (POST) operation;
b) executing a bootstrap loader program which prepares the computer system for execution of a graphical operating system;
c) writing selected portions of main memory contents and status of attached devices from a main memory to a storage medium location;
d) executing the graphical operating system;
e) checking during a subsequent boot operation to detect any changes to the computer system that would affect the execution of the bootstrap loader program;
f) skipping at least a portion of the execution of the bootstrap loader program during the subsequent boot operation if no changes are detected;
g) writing the selected portions of main memory contents and status of attached devices from the storage medium to the main memory and allowing the subsequent boot operation to proceed from that point if no changes are detected that would affect the execution of the bootstrap loader program.
56. The method of claim 55, wherein the storage medium comprises a disk drive.
57. A method for operating a computer system, comprising the steps of:
A. performing a power on self test (POST) of basic input output system (BIOS) functions when the computer system is powered on or reset is requested;
B. restoring boot configuration information comprised of selectively stored portions of main memory contents and status of attached devices, which was previously stored while executing a previous boot process; and
C. loading a graphic user interface (GUI) program.
58. The method of claim 57, wherein the restored boot configuration information is restored prior to the use of extended memory by the graphical user interface (GUI) program.
59. A method for fast booting a computer system, comprising the steps of:
A. performing a power on self test (POST) of basic input output system (BIOS) when the computer system is powered on or reset is requested;
B. resuming a boot configuration information including a system booting state by using the boot configuration information which was stored while executing a previous normal boot process;
C. loading a graphic user interface (GUI) program; and
wherein said step B comprises the steps of:
determining whether to resume said stored boot configuration information;
resuming contents of memory blocks comprising selected portions of main memory contents, addresses of which have been stored while executing a previous normal booting process; and
writing zeros into other memory blocks than the resumed memory blocks.
60. A method for supporting fast booting a computer system through storing/resuming a memory status of the computer system, comprising the steps of:
checking whether to store a main memory contents status;
checking memory contents of a certain unit of the main memory;
selectively storing portions of main memory contents written in an area necessary for system operation based on the main memory contents checking result;
resuming the stored portions of main memory contents for fast booting; and
wherein the storing step stores the contents if a value in a memory block is not ‘0’, and does not store the contents if the value is ‘0’.
61. A method for supporting fast booting a computer system through storing/resuming a memory status of the computer system, comprising the steps of:
checking whether to store a main memory contents status;
checking memory contents of a certain unit of the main memory;
selectively storing portions of main memory contents written in an area necessary for system operation based on the main memory contents checking result;
resuming the stored portions of main memory contents for fast booting; and
wherein the storing step stores an address of a memory block if a value of a memory block is not ‘0’, and does not store the address if the value is ‘0’.
62. A method for supporting fast booting a computer system through storing/resuming a memory status of the computer system, comprising the steps of:
checking whether to store a main memory contents status;
checking memory contents of a certain unit of the main memory;
selectively storing portions of main memory contents written in an area necessary for system operation based on the main memory contents checking result;
resuming the stored portions of the main memory contents for fast booting; and
wherein the resuming step resumes pre-stored memory contents of the certain unit of the main memory while writing ‘0’ in a remainder of the certain unit of the main memory.
US10918293 1998-05-11 2004-08-12 Method for quickly booting a computer system Active USRE40092E1 (en)

Priority Applications (3)

Application Number Priority Date Filing Date Title
KR19980017715A KR100283243B1 (en) 1998-05-11 How to boot the operating system
US09309275 US6434696B1 (en) 1998-05-11 1999-05-11 Method for quickly booting a computer system
US10918293 USRE40092E1 (en) 1998-05-11 2004-08-12 Method for quickly booting a computer system

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US10918293 USRE40092E1 (en) 1998-05-11 2004-08-12 Method for quickly booting a computer system
US11961567 USRE42727E1 (en) 1998-05-11 2007-12-20 Method for quickly booting a computer system

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
US09309275 Reissue US6434696B1 (en) 1998-05-11 1999-05-11 Method for quickly booting a computer system

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US09309275 Continuation US6434696B1 (en) 1998-05-11 1999-05-11 Method for quickly booting a computer system

Publications (1)

Publication Number Publication Date
USRE40092E1 true USRE40092E1 (en) 2008-02-19

Family

ID=19537417

Family Applications (3)

Application Number Title Priority Date Filing Date
US09309275 Active US6434696B1 (en) 1998-05-11 1999-05-11 Method for quickly booting a computer system
US10918293 Active USRE40092E1 (en) 1998-05-11 2004-08-12 Method for quickly booting a computer system
US11961567 Expired - Fee Related USRE42727E1 (en) 1998-05-11 2007-12-20 Method for quickly booting a computer system

Family Applications Before (1)

Application Number Title Priority Date Filing Date
US09309275 Active US6434696B1 (en) 1998-05-11 1999-05-11 Method for quickly booting a computer system

Family Applications After (1)

Application Number Title Priority Date Filing Date
US11961567 Expired - Fee Related USRE42727E1 (en) 1998-05-11 2007-12-20 Method for quickly booting a computer system

Country Status (1)

Country Link
US (3) US6434696B1 (en)

Cited By (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020080871A1 (en) * 2000-10-03 2002-06-27 Realtime Data, Llc System and method for data feed acceleration and encryption
US20070043939A1 (en) * 2000-02-03 2007-02-22 Realtime Data Llc Systems and methods for accelerated loading of operating systems and application programs
US20070050515A1 (en) * 1999-03-11 2007-03-01 Realtime Data Llc System and methods for accelerated data storage and retrieval
US20070168724A1 (en) * 2004-01-27 2007-07-19 Akihito Kohiga High-speed restart method, information processing device, and program
US20080072028A1 (en) * 2006-09-20 2008-03-20 Allison Michael S Method of restarting a computer platform
US20080148037A1 (en) * 2006-12-15 2008-06-19 Rothman Michael A Efficient platform initialization
US20090158023A1 (en) * 2007-12-17 2009-06-18 Spansion Llc Adaptive system boot accelerator for computing systems
US20090154545A1 (en) * 2001-02-13 2009-06-18 Realtime Data Llc Bandwidth sensitive data compression and decompression
US7555677B1 (en) * 2005-04-22 2009-06-30 Sun Microsystems, Inc. System and method for diagnostic test innovation
US20100267442A1 (en) * 2003-07-02 2010-10-21 Wms Gaming Inc. Gaming Machine Having A Community Game With Side Wagering
US20110037626A1 (en) * 1998-12-11 2011-02-17 Fallon James J Data Compression Systems and Methods
US20110047129A1 (en) * 2009-08-18 2011-02-24 Computer Associates Think, Inc. Backup and recovery of systems including boot configuration data in an extension firmware interface partition
US20110055540A1 (en) * 2009-09-02 2011-03-03 Wei-Nan Lin Pre-Boot Loader for Reducing System Boot Time
US20110199243A1 (en) * 2000-10-03 2011-08-18 Realtime Data LLC DBA IXO System and Method For Data Feed Acceleration and Encryption
USRE42727E1 (en) * 1998-05-11 2011-09-20 Operating Systems Solutions, LLC Method for quickly booting a computer system
US20120239918A1 (en) * 2011-03-14 2012-09-20 Shuttle Inc. Expedited computer boot system and method
US8275897B2 (en) 1999-03-11 2012-09-25 Realtime Data, Llc System and methods for accelerated data storage and retrieval
US8707018B1 (en) * 2011-06-28 2014-04-22 Emc Corporation Managing initialization of file systems
US20140325196A1 (en) * 2013-04-24 2014-10-30 Dell Products L.P. System and Method for Inventory Collection Optimization by Selective Binding of the Pre-Boot Drivers

Families Citing this family (112)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100517546B1 (en) * 1999-07-16 2005-09-28 삼성전자주식회사 Portable computer displaying post code on led indicator
US6931523B1 (en) * 1999-12-09 2005-08-16 Gateway Inc. System and method for re-storing stored known-good computer configuration via a non-interactive user input device without re-booting the system
US6725368B1 (en) * 1999-12-09 2004-04-20 Gateway, Inc. System for executing a post having primary and secondary subsets, wherein the secondary subset is executed subsequently to the primary subset in the background setting
US6636963B1 (en) * 1999-12-30 2003-10-21 Cardiac Pacemakers, Inc. Quick starting for microprocessor-based system by retrieving a target state memory image and a target state data structure from an image storage medium
WO2001050244A1 (en) * 2000-01-06 2001-07-12 Chan Kam Fu Running microsoft windows 95/98 on ramdisk
US6721881B1 (en) * 2000-09-29 2004-04-13 Dell Products L.P. System and method for determining if a display device configuration has changed by comparing a current indicator with a previously saved indicator
US7890741B2 (en) * 2000-12-01 2011-02-15 O2Micro International Limited Low power digital audio decoding/playing system for computing devices
US6807630B2 (en) * 2000-12-15 2004-10-19 International Business Machines Corporation Method for fast reinitialization wherein a saved system image of an operating system is transferred into a primary memory from a secondary memory
JPWO2002095556A1 (en) * 2001-05-18 2004-09-09 富士通株式会社 Control method of a device having device, a program, and a standby mode with the standby mode
US6883091B2 (en) * 2001-05-30 2005-04-19 Hewlett-Packard Development Company, L.P. Reducing boot times via intrusion monitoring
US7062677B1 (en) * 2001-08-09 2006-06-13 Cisco Tech Inc Method for capturing core dump of a service module
US6965989B1 (en) * 2001-08-14 2005-11-15 Network Appliance, Inc. System and method for fast reboot of a file server
US7213139B2 (en) * 2001-08-22 2007-05-01 Legend (Beijing) Limited System for gathering and storing internal and peripheral components configuration and initialization information for subsequent fast start-up during first execution of fast start-up
US7017052B2 (en) * 2001-11-16 2006-03-21 Lenovo Pte. Ltd. Method and system for reducing boot time for a computer
US20030101312A1 (en) * 2001-11-26 2003-05-29 Doan Trung T. Machine state storage apparatus and method
US20030142561A1 (en) * 2001-12-14 2003-07-31 I/O Integrity, Inc. Apparatus and caching method for optimizing server startup performance
US20030135729A1 (en) * 2001-12-14 2003-07-17 I/O Integrity, Inc. Apparatus and meta data caching method for optimizing server startup performance
US6963970B2 (en) * 2002-04-29 2005-11-08 Hewlett-Packard Development Company, L.P. System and method for executing a fast reset of a computer system
US6968450B1 (en) * 2002-06-01 2005-11-22 Western Digital Technologies, Inc. Disk drive caching initial host requested data in non-volatile semiconductor memory to reduce start-up time of a host computer
US7039796B2 (en) * 2002-06-04 2006-05-02 Hewlett-Packard Development Company, L.P. Method and system of locating a position in memory at which to store incoming firmware image
US7133972B2 (en) 2002-06-07 2006-11-07 Micron Technology, Inc. Memory hub with internal cache and/or memory access prediction
US20030233534A1 (en) * 2002-06-12 2003-12-18 Adrian Bernhard Enhanced computer start-up methods
US6988194B2 (en) * 2002-06-13 2006-01-17 Dell Products L.P. System and method for preserving boot order in an information handling system when a boot device is replaced by a matching device
US7146515B2 (en) * 2002-06-20 2006-12-05 International Business Machines Corporation System and method for selectively executing a reboot request after a reset to power on state for a particular partition in a logically partitioned system
US7117316B2 (en) 2002-08-05 2006-10-03 Micron Technology, Inc. Memory hub and access method having internal row caching
US7313684B2 (en) * 2002-08-14 2007-12-25 T1 Technologies Limited Method and apparatus for booting a computer system
US20080059785A1 (en) * 2002-08-14 2008-03-06 Ti Technologies Limited Method and apparatus for shutting down a computer system
US20040034765A1 (en) * 2002-08-14 2004-02-19 James O?Apos;Connell Daniel Method and apparatus for booting a computer system
US7836252B2 (en) 2002-08-29 2010-11-16 Micron Technology, Inc. System and method for optimizing interconnections of memory devices in a multichip module
US6820181B2 (en) 2002-08-29 2004-11-16 Micron Technology, Inc. Method and system for controlling memory accesses to memory modules having a memory hub architecture
US20040059905A1 (en) * 2002-09-19 2004-03-25 Soulier George R. Method and apparatus for short-power cycle detection
US20040064686A1 (en) * 2002-09-30 2004-04-01 Miller Gregory L. Method and apparatus for marking current memory configuration
US20040078497A1 (en) * 2002-10-17 2004-04-22 Nalawadi Rajeev K. Method and apparatus for detecting configuration change
US7100037B2 (en) * 2002-11-27 2006-08-29 Intel Corporation Method for reducing BIOS resume time from a sleeping state
JP4187151B2 (en) * 2003-01-08 2008-11-26 ソニー株式会社 An information processing apparatus and method, and program
US7162625B2 (en) * 2003-03-10 2007-01-09 Dell Products L.P. System and method for testing memory during boot operation idle periods
US7000159B2 (en) * 2003-03-10 2006-02-14 Dell Products L.P. System and method for testing memory
US7734904B2 (en) * 2003-04-25 2010-06-08 Hewlett-Packard Development Company, L.P. Resetting a system in response to changes of component settings
US7130997B2 (en) * 2003-05-29 2006-10-31 International Business Machines Corporation Method of registering a portion of RAM with firmware to preserve the portion during reboot
JP2006526831A (en) * 2003-06-03 2006-11-24 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィKoninklijke Philips Electronics N.V. Boot from the non-volatile memory
US7245145B2 (en) 2003-06-11 2007-07-17 Micron Technology, Inc. Memory module and method having improved signal routing topology
US7120727B2 (en) 2003-06-19 2006-10-10 Micron Technology, Inc. Reconfigurable memory module and method
US7260685B2 (en) 2003-06-20 2007-08-21 Micron Technology, Inc. Memory hub and access method having internal prefetch buffers
US7389364B2 (en) 2003-07-22 2008-06-17 Micron Technology, Inc. Apparatus and method for direct memory access in a hub-based memory system
US7210059B2 (en) 2003-08-19 2007-04-24 Micron Technology, Inc. System and method for on-board diagnostics of memory modules
US7136958B2 (en) 2003-08-28 2006-11-14 Micron Technology, Inc. Multiple processor system and method including multiple memory hub modules
US7310752B2 (en) 2003-09-12 2007-12-18 Micron Technology, Inc. System and method for on-board timing margin testing of memory modules
US7194593B2 (en) 2003-09-18 2007-03-20 Micron Technology, Inc. Memory hub with integrated non-volatile memory
US7120743B2 (en) 2003-10-20 2006-10-10 Micron Technology, Inc. Arbitration system and method for memory responses in a hub-based memory system
US7162629B2 (en) * 2003-11-20 2007-01-09 Intel Corporation Method to suspend-and-resume across various operational environment contexts
US7373498B2 (en) * 2003-12-23 2008-05-13 Intel Corporation Method and apparatus for updating a system configuration through an active or passive update
US8990366B2 (en) 2003-12-23 2015-03-24 Intel Corporation Method and apparatus for remote modification of system configuration
US8924522B2 (en) 2003-12-23 2014-12-30 Intel Corporation Method and apparatus for remote modification of system configuration setting
US7330992B2 (en) 2003-12-29 2008-02-12 Micron Technology, Inc. System and method for read synchronization of memory modules
US7251744B1 (en) 2004-01-21 2007-07-31 Advanced Micro Devices Inc. Memory check architecture and method for a multiprocessor computer system
US7188219B2 (en) 2004-01-30 2007-03-06 Micron Technology, Inc. Buffer control system and method for a memory system having outstanding read and write request buffers
US7788451B2 (en) 2004-02-05 2010-08-31 Micron Technology, Inc. Apparatus and method for data bypass for a bi-directional data bus in a hub-based memory sub-system
US7366864B2 (en) 2004-03-08 2008-04-29 Micron Technology, Inc. Memory hub architecture having programmable lane widths
US7257683B2 (en) 2004-03-24 2007-08-14 Micron Technology, Inc. Memory arbitration system and method having an arbitration packet protocol
US7120723B2 (en) 2004-03-25 2006-10-10 Micron Technology, Inc. System and method for memory hub-based expansion bus
US20050223209A1 (en) * 2004-03-31 2005-10-06 Giga-Byte Technology Co., Ltd. Apparatus for fast booting computer and method for the same
US6980042B2 (en) 2004-04-05 2005-12-27 Micron Technology, Inc. Delay line synchronizer apparatus and method
US7590797B2 (en) 2004-04-08 2009-09-15 Micron Technology, Inc. System and method for optimizing interconnections of components in a multichip memory module
US7644239B2 (en) 2004-05-03 2010-01-05 Microsoft Corporation Non-volatile memory cache performance improvement
US7246269B1 (en) 2004-05-05 2007-07-17 Advanced Micro Devices, Inc. Efficient memory check architecture and method
US7162567B2 (en) * 2004-05-14 2007-01-09 Micron Technology, Inc. Memory hub and method for memory sequencing
US7363419B2 (en) 2004-05-28 2008-04-22 Micron Technology, Inc. Method and system for terminating write commands in a hub-based memory system
US7310748B2 (en) 2004-06-04 2007-12-18 Micron Technology, Inc. Memory hub tester interface and method for use thereof
US7519788B2 (en) 2004-06-04 2009-04-14 Micron Technology, Inc. System and method for an asynchronous data buffer having buffer write and read pointers
US7337368B2 (en) * 2004-06-07 2008-02-26 Dell Products L.P. System and method for shutdown memory testing
EP1764668A4 (en) * 2004-06-24 2008-01-02 Fujitsu Ltd Computer activating method, program, recording medium, and information processing apparatus
US20060031669A1 (en) * 2004-08-06 2006-02-09 Via Technologies Inc. Boot method and system
US7392331B2 (en) 2004-08-31 2008-06-24 Micron Technology, Inc. System and method for transmitting data packets in a computer system having a memory hub architecture
US7490197B2 (en) 2004-10-21 2009-02-10 Microsoft Corporation Using external memory devices to improve system performance
US7529921B2 (en) * 2004-12-17 2009-05-05 Cardiac Pacemakers, Inc. Fast initialization of medical device system having multiple operating systems
US7702777B2 (en) * 2004-12-28 2010-04-20 Lenovo Pte Ltd. Centralized software maintenance of blade computer system
US20060143262A1 (en) * 2004-12-28 2006-06-29 International Business Machines Corporation Fast client boot in blade environment
US7590839B2 (en) * 2005-03-22 2009-09-15 Qnx Software Systems Gmbh & Co. Kg System employing fast booting of application programs
CN1841323A (en) * 2005-03-31 2006-10-04 鸿富锦精密工业(深圳)有限公司 Method for switching operating system by hot key
US7356744B2 (en) * 2005-05-12 2008-04-08 Pc-Doctor, Inc. Method and system for optimizing testing of memory stores
US7568090B2 (en) * 2005-06-23 2009-07-28 Hewlett-Packard Development Company, L.P. Speedy boot for computer systems
US7634689B2 (en) * 2005-09-22 2009-12-15 Advanced Micro Devices, Inc. Boot performance optimization for hard drive for personal internet communicator
US7506203B2 (en) 2005-11-10 2009-03-17 International Business Machines Corporation Extracting log and trace buffers in the event of system crashes
US8914557B2 (en) 2005-12-16 2014-12-16 Microsoft Corporation Optimizing write and wear performance for a memory
US7673161B2 (en) * 2006-03-28 2010-03-02 Lenovo (Singapore) Pte. Ltd. Apparatus, system, and method for selecting a waking process
US20080126787A1 (en) * 2006-06-05 2008-05-29 International Business Machines Corporation System, method and program for managing default values for computer programs
US8082433B1 (en) 2008-02-12 2011-12-20 Western Digital Technologies, Inc. Disk drive employing boot disk space to expedite the boot operation for a host computer
JP2009259197A (en) * 2008-03-18 2009-11-05 Ricoh Co Ltd Information processor and its starting method
US20090259835A1 (en) * 2008-04-11 2009-10-15 Chiy-Ferng Perng System and method for tracking and recording system configurations of electronic devices
US8171276B2 (en) * 2008-06-10 2012-05-01 International Business Machines Corporation Minimal startup mode for performing multiple-reboot configuration
US7953774B2 (en) 2008-09-19 2011-05-31 Microsoft Corporation Aggregation of write traffic to a data store
US8296553B2 (en) 2008-11-19 2012-10-23 Intel Corporation Method and system to enable fast platform restart
US7984282B2 (en) * 2009-01-21 2011-07-19 Hewlett-Packard Development Company, L.P. Evasion of power on self test during an operating system initiated reboot
EP2278459A1 (en) * 2009-07-07 2011-01-26 Giga-Byte Technology Co., Ltd. Faster computer boot method
US8443180B2 (en) * 2009-07-25 2013-05-14 Giga-Byte Technology Co., Ltd. Method for operation system startup
US8762699B1 (en) * 2009-12-05 2014-06-24 Cms Products Inc. System, apparatus, and method for initiating a reboot of a personal computer system by pressing a button on an attached storage device and causing the operating system on the attached storage device to be booted
US8578144B2 (en) * 2010-08-04 2013-11-05 International Business Machines Corporation Partial hibernation restore for boot time reduction
US8572294B2 (en) * 2011-05-17 2013-10-29 Ncr Corporation Device start up system and method
US9286079B1 (en) 2011-06-30 2016-03-15 Western Digital Technologies, Inc. Cache optimization of a data storage device based on progress of boot commands
JP5966349B2 (en) 2011-12-22 2016-08-10 株式会社リコー Electronics
US9262178B2 (en) 2012-01-30 2016-02-16 Intel Corporation Method for reducing platform boot times by providing lazy input/output abstractions
CN103699463B (en) 2012-09-28 2017-12-05 联想企业解决方案(新加坡)有限公司 Xeon server processor using a memory test system and method
US8812744B1 (en) 2013-03-14 2014-08-19 Microsoft Corporation Assigning priorities to data for hybrid drives
US9626126B2 (en) 2013-04-24 2017-04-18 Microsoft Technology Licensing, Llc Power saving mode hybrid drive access management
US9946495B2 (en) 2013-04-25 2018-04-17 Microsoft Technology Licensing, Llc Dirty data management for hybrid drives
JP6164938B2 (en) * 2013-05-28 2017-07-19 キヤノン株式会社 Image forming apparatus and a control method thereof, and program
US9304779B2 (en) * 2013-06-04 2016-04-05 Avago Technologies General Ip (Singapore) Pte. Ltd. Optimizing boot time of a storage system
US9208101B2 (en) 2013-06-26 2015-12-08 Western Digital Technologies, Inc. Virtual NAND capacity extension in a hybrid drive
US20150169363A1 (en) * 2013-12-18 2015-06-18 Qualcomm Incorporated Runtime Optimization of Multi-core System Designs for Increased Operating Life and Maximized Performance
US9354896B1 (en) * 2014-02-28 2016-05-31 Emc Corporation Hypervisor utilization to reduce bootstrap time for data storage system
US20170344383A1 (en) * 2015-01-23 2017-11-30 Hewlett-Packard Development Company, L.P. Initialize port
US9710254B2 (en) * 2015-10-28 2017-07-18 International Business Machines Corporation Replacing an accelerator firmware image without operating system reboot

Citations (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4885770A (en) * 1987-09-04 1989-12-05 Digital Equipment Corporation Boot system for distributed digital data processing system
US4959774A (en) * 1984-07-06 1990-09-25 Ampex Corporation Shadow memory system for storing variable backup blocks in consecutive time periods
US5155833A (en) * 1987-05-11 1992-10-13 At&T Bell Laboratories Multi-purpose cache memory selectively addressable either as a boot memory or as a cache memory
US5269019A (en) * 1991-04-08 1993-12-07 Storage Technology Corporation Non-volatile memory storage and bilevel index structure for fast retrieval of modified records of a disk track
US5269022A (en) * 1990-03-28 1993-12-07 Kabushiki Kaisha Toshiba Method and apparatus for booting a computer system by restoring the main memory from a backup memory
US5276890A (en) 1989-11-30 1994-01-04 Kabushiki Kaisha Toshiba Resume control system and method for executing resume processing while checking operation mode of CPU
US5392415A (en) 1992-12-15 1995-02-21 International Business Machines Corporation System for grouping non-contiguous pages belonging to a storage object for page out
US5513359A (en) 1993-07-23 1996-04-30 International Business Machines Corporation Desktop computer having a single-switch suspend/resume function
US5564054A (en) 1994-08-25 1996-10-08 International Business Machines Corporation Fail-safe computer boot apparatus and method
US5710930A (en) * 1995-08-04 1998-01-20 Intel Corporation Apparatus and a method for allowing an operating system of a computer system to persist across a power off and on cycle
US5745669A (en) 1993-10-21 1998-04-28 Ast Research, Inc. System and method for recovering PC configurations
US5784628A (en) 1996-03-12 1998-07-21 Microsoft Corporation Method and system for controlling power consumption in a computer system
US5870613A (en) 1992-01-02 1999-02-09 Smith Corona/Acer Power mangement system for a computer
US5925129A (en) 1993-07-26 1999-07-20 International Business Machines Corporation Desktop computer system having compressed suspend to hardfile
US5978913A (en) * 1998-03-05 1999-11-02 Compaq Computer Corporation Computer with periodic full power-on self test
US6073232A (en) * 1997-02-25 2000-06-06 International Business Machines Corporation Method for minimizing a computer's initial program load time after a system reset or a power-on using non-volatile storage
US6098158A (en) 1997-12-18 2000-08-01 International Business Machines Corporation Software-enabled fast boot
US6173417B1 (en) * 1998-04-30 2001-01-09 Intel Corporation Initializing and restarting operating systems
US6209088B1 (en) 1998-09-21 2001-03-27 Microsoft Corporation Computer hibernation implemented by a computer operating system
US6279109B1 (en) 1999-01-07 2001-08-21 Dell U.S.A., L.P. Computing system and operating method for booting and running a graphical user interface (GUI) with r/w hard drive partition unavailable
US6374353B1 (en) 1998-03-16 2002-04-16 Mitsubishi Denki Kabushiki Kaisha Information processing apparatus method of booting information processing apparatus at a high speed
US6401198B1 (en) * 1999-03-09 2002-06-04 Texas Instruments Incorporated Storing system-level mass storage configuration data in non-volatile memory on each mass storage device to allow for reboot/power-on reconfiguration of all installed mass storage devices to the same configuration as last use
US6529966B1 (en) 1993-07-30 2003-03-04 Microsoft Corporation Booting a computer system using a last known good set of configuration data
US6567774B1 (en) * 1998-01-30 2003-05-20 Compaq Computer Corporation Method and system for configuring and updating networked client stations using a virtual disk and a snapshot disk
US6609182B1 (en) 2000-01-20 2003-08-19 Microsoft Corporation Smart hibernation on an operating system with page translation

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6434696B1 (en) * 1998-05-11 2002-08-13 Lg Electronics Inc. Method for quickly booting a computer system

Patent Citations (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4959774A (en) * 1984-07-06 1990-09-25 Ampex Corporation Shadow memory system for storing variable backup blocks in consecutive time periods
US5155833A (en) * 1987-05-11 1992-10-13 At&T Bell Laboratories Multi-purpose cache memory selectively addressable either as a boot memory or as a cache memory
US4885770A (en) * 1987-09-04 1989-12-05 Digital Equipment Corporation Boot system for distributed digital data processing system
US5276890A (en) 1989-11-30 1994-01-04 Kabushiki Kaisha Toshiba Resume control system and method for executing resume processing while checking operation mode of CPU
US5269022A (en) * 1990-03-28 1993-12-07 Kabushiki Kaisha Toshiba Method and apparatus for booting a computer system by restoring the main memory from a backup memory
US5269019A (en) * 1991-04-08 1993-12-07 Storage Technology Corporation Non-volatile memory storage and bilevel index structure for fast retrieval of modified records of a disk track
US5870613A (en) 1992-01-02 1999-02-09 Smith Corona/Acer Power mangement system for a computer
US5392415A (en) 1992-12-15 1995-02-21 International Business Machines Corporation System for grouping non-contiguous pages belonging to a storage object for page out
US5513359A (en) 1993-07-23 1996-04-30 International Business Machines Corporation Desktop computer having a single-switch suspend/resume function
US5925129A (en) 1993-07-26 1999-07-20 International Business Machines Corporation Desktop computer system having compressed suspend to hardfile
US6529966B1 (en) 1993-07-30 2003-03-04 Microsoft Corporation Booting a computer system using a last known good set of configuration data
US5745669A (en) 1993-10-21 1998-04-28 Ast Research, Inc. System and method for recovering PC configurations
US5564054A (en) 1994-08-25 1996-10-08 International Business Machines Corporation Fail-safe computer boot apparatus and method
US5710930A (en) * 1995-08-04 1998-01-20 Intel Corporation Apparatus and a method for allowing an operating system of a computer system to persist across a power off and on cycle
US5784628A (en) 1996-03-12 1998-07-21 Microsoft Corporation Method and system for controlling power consumption in a computer system
US6073232A (en) * 1997-02-25 2000-06-06 International Business Machines Corporation Method for minimizing a computer's initial program load time after a system reset or a power-on using non-volatile storage
US6098158A (en) 1997-12-18 2000-08-01 International Business Machines Corporation Software-enabled fast boot
US6567774B1 (en) * 1998-01-30 2003-05-20 Compaq Computer Corporation Method and system for configuring and updating networked client stations using a virtual disk and a snapshot disk
US5978913A (en) * 1998-03-05 1999-11-02 Compaq Computer Corporation Computer with periodic full power-on self test
US6374353B1 (en) 1998-03-16 2002-04-16 Mitsubishi Denki Kabushiki Kaisha Information processing apparatus method of booting information processing apparatus at a high speed
US6173417B1 (en) * 1998-04-30 2001-01-09 Intel Corporation Initializing and restarting operating systems
US6209088B1 (en) 1998-09-21 2001-03-27 Microsoft Corporation Computer hibernation implemented by a computer operating system
US6279109B1 (en) 1999-01-07 2001-08-21 Dell U.S.A., L.P. Computing system and operating method for booting and running a graphical user interface (GUI) with r/w hard drive partition unavailable
US6401198B1 (en) * 1999-03-09 2002-06-04 Texas Instruments Incorporated Storing system-level mass storage configuration data in non-volatile memory on each mass storage device to allow for reboot/power-on reconfiguration of all installed mass storage devices to the same configuration as last use
US6609182B1 (en) 2000-01-20 2003-08-19 Microsoft Corporation Smart hibernation on an operating system with page translation

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
"Fast DOS Soft Boot" IBM Technical Disclosure Bulletin, Feb. 1, 1994, vol. 37, Issue 2B, pp. 185-186. *

Cited By (62)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
USRE42727E1 (en) * 1998-05-11 2011-09-20 Operating Systems Solutions, LLC Method for quickly booting a computer system
US8502707B2 (en) 1998-12-11 2013-08-06 Realtime Data, Llc Data compression systems and methods
US8933825B2 (en) 1998-12-11 2015-01-13 Realtime Data Llc Data compression systems and methods
US8643513B2 (en) 1998-12-11 2014-02-04 Realtime Data Llc Data compression systems and methods
US9054728B2 (en) 1998-12-11 2015-06-09 Realtime Data, Llc Data compression systems and methods
US8717203B2 (en) 1998-12-11 2014-05-06 Realtime Data, Llc Data compression systems and methods
US20110037626A1 (en) * 1998-12-11 2011-02-17 Fallon James J Data Compression Systems and Methods
US20110208833A1 (en) * 1999-03-11 2011-08-25 Realtime Data LLC DBA IXO System and Methods For Accelerated Data Storage And Retrieval
US20070050514A1 (en) * 1999-03-11 2007-03-01 Realtime Data Llc System and methods for accelerated data storage and retrieval
US8719438B2 (en) 1999-03-11 2014-05-06 Realtime Data Llc System and methods for accelerated data storage and retrieval
US20070050515A1 (en) * 1999-03-11 2007-03-01 Realtime Data Llc System and methods for accelerated data storage and retrieval
US9116908B2 (en) 1999-03-11 2015-08-25 Realtime Data Llc System and methods for accelerated data storage and retrieval
US8275897B2 (en) 1999-03-11 2012-09-25 Realtime Data, Llc System and methods for accelerated data storage and retrieval
US8504710B2 (en) 1999-03-11 2013-08-06 Realtime Data Llc System and methods for accelerated data storage and retrieval
US8756332B2 (en) 1999-03-11 2014-06-17 Realtime Data Llc System and methods for accelerated data storage and retrieval
US8090936B2 (en) 2000-02-03 2012-01-03 Realtime Data, Llc Systems and methods for accelerated loading of operating systems and application programs
US20110231642A1 (en) * 2000-02-03 2011-09-22 Realtime Data LLC DBA IXO Systems and Methods for Accelerated Loading of Operating Systems and Application Programs
US9792128B2 (en) 2000-02-03 2017-10-17 Realtime Data, Llc System and method for electrical boot-device-reset signals
US20070083746A1 (en) * 2000-02-03 2007-04-12 Realtime Data Llc Systems and methods for accelerated loading of operating systems and application programs
US20070043939A1 (en) * 2000-02-03 2007-02-22 Realtime Data Llc Systems and methods for accelerated loading of operating systems and application programs
US8880862B2 (en) 2000-02-03 2014-11-04 Realtime Data, Llc Systems and methods for accelerated loading of operating systems and application programs
US8112619B2 (en) 2000-02-03 2012-02-07 Realtime Data Llc Systems and methods for accelerated loading of operating systems and application programs
US8692695B2 (en) 2000-10-03 2014-04-08 Realtime Data, Llc Methods for encoding and decoding data
US8742958B2 (en) 2000-10-03 2014-06-03 Realtime Data Llc Methods for encoding and decoding data
US20110199243A1 (en) * 2000-10-03 2011-08-18 Realtime Data LLC DBA IXO System and Method For Data Feed Acceleration and Encryption
US9143546B2 (en) 2000-10-03 2015-09-22 Realtime Data Llc System and method for data feed acceleration and encryption
US9141992B2 (en) 2000-10-03 2015-09-22 Realtime Data Llc Data feed acceleration
US9967368B2 (en) 2000-10-03 2018-05-08 Realtime Data Llc Systems and methods for data block decompression
US8723701B2 (en) 2000-10-03 2014-05-13 Realtime Data Llc Methods for encoding and decoding data
US9667751B2 (en) 2000-10-03 2017-05-30 Realtime Data, Llc Data feed acceleration
US8717204B2 (en) 2000-10-03 2014-05-06 Realtime Data Llc Methods for encoding and decoding data
US9859919B2 (en) 2000-10-03 2018-01-02 Realtime Data Llc System and method for data compression
US20020080871A1 (en) * 2000-10-03 2002-06-27 Realtime Data, Llc System and method for data feed acceleration and encryption
US20110235697A1 (en) * 2001-02-13 2011-09-29 Realtime Data, Llc Bandwidth Sensitive Data Compression and Decompression
US8934535B2 (en) 2001-02-13 2015-01-13 Realtime Data Llc Systems and methods for video and audio data storage and distribution
US9769477B2 (en) 2001-02-13 2017-09-19 Realtime Adaptive Streaming, LLC Video data compression systems
US8553759B2 (en) 2001-02-13 2013-10-08 Realtime Data, Llc Bandwidth sensitive data compression and decompression
US20090154545A1 (en) * 2001-02-13 2009-06-18 Realtime Data Llc Bandwidth sensitive data compression and decompression
US8073047B2 (en) 2001-02-13 2011-12-06 Realtime Data, Llc Bandwidth sensitive data compression and decompression
US9762907B2 (en) 2001-02-13 2017-09-12 Realtime Adaptive Streaming, LLC System and methods for video and audio data distribution
US20100316114A1 (en) * 2001-02-13 2010-12-16 Realtime Data Llc Bandwidth sensitive data compression and decompression
US8054879B2 (en) 2001-02-13 2011-11-08 Realtime Data Llc Bandwidth sensitive data compression and decompression
US8867610B2 (en) 2001-02-13 2014-10-21 Realtime Data Llc System and methods for video and audio data distribution
US8929442B2 (en) 2001-02-13 2015-01-06 Realtime Data, Llc System and methods for video and audio data distribution
US20100267442A1 (en) * 2003-07-02 2010-10-21 Wms Gaming Inc. Gaming Machine Having A Community Game With Side Wagering
US20070168724A1 (en) * 2004-01-27 2007-07-19 Akihito Kohiga High-speed restart method, information processing device, and program
US9298472B2 (en) * 2004-01-27 2016-03-29 Nec Corporation High-speed restart method, information processing device, and program
US7555677B1 (en) * 2005-04-22 2009-06-30 Sun Microsystems, Inc. System and method for diagnostic test innovation
US20080072028A1 (en) * 2006-09-20 2008-03-20 Allison Michael S Method of restarting a computer platform
US7962734B2 (en) * 2006-09-20 2011-06-14 Hewlett-Packard Development Company, L.P. Method of restarting a computer platform
US20080148037A1 (en) * 2006-12-15 2008-06-19 Rothman Michael A Efficient platform initialization
US20090158023A1 (en) * 2007-12-17 2009-06-18 Spansion Llc Adaptive system boot accelerator for computing systems
US8010776B2 (en) * 2007-12-17 2011-08-30 Spansion Llc Adaptive system boot accelerator for computing systems
US20110047129A1 (en) * 2009-08-18 2011-02-24 Computer Associates Think, Inc. Backup and recovery of systems including boot configuration data in an extension firmware interface partition
US8788801B2 (en) * 2009-08-18 2014-07-22 Ca, Inc. Backup and recovery of systems by restoring a backup boot configuration data (BCD) with installation files from an operating system install disk
US20110055540A1 (en) * 2009-09-02 2011-03-03 Wei-Nan Lin Pre-Boot Loader for Reducing System Boot Time
US8443183B2 (en) * 2009-09-02 2013-05-14 Spashtop Inc. Pre-boot loader for reducing system boot time
US20120239918A1 (en) * 2011-03-14 2012-09-20 Shuttle Inc. Expedited computer boot system and method
US8667264B2 (en) * 2011-03-14 2014-03-04 Shuttle Inc. Expedited computer boot system and method
US8707018B1 (en) * 2011-06-28 2014-04-22 Emc Corporation Managing initialization of file systems
US20140325196A1 (en) * 2013-04-24 2014-10-30 Dell Products L.P. System and Method for Inventory Collection Optimization by Selective Binding of the Pre-Boot Drivers
US9348604B2 (en) * 2013-04-24 2016-05-24 Dell Products L.P. System and method for inventory collection optimization by selective binding of the pre-boot drivers

Also Published As

Publication number Publication date Type
USRE42727E1 (en) 2011-09-20 grant
US6434696B1 (en) 2002-08-13 grant

Similar Documents

Publication Publication Date Title
US5128995A (en) Apparatus and method for loading a system reference diskette image from a system partition in a personal computer system
US5497497A (en) Method and apparatus for resetting multiple processors using a common ROM
US6378068B1 (en) Suspend/resume capability for a protected mode microprocesser
US5933631A (en) Dynamic boot filesystem selection
US5459869A (en) Method for providing protected mode services for device drivers and other resident software
US6490723B1 (en) Method and system for installing files in a computing system
US6334149B1 (en) Generic operating system usage in a remote initial program load environment
US6889340B1 (en) Use of extra firmware flash ROM space as a diagnostic drive
US6507906B1 (en) Method and system for selection of a boot mode using unattended boot sequencing
US7134007B2 (en) Method for sharing firmware across heterogeneous processor architectures
US6711660B1 (en) System and method for performing disk drive diagnostics and restoration using a host-inaccessible hidden partition
US6601166B1 (en) Mechanism for booting a computer through a network
US6463531B1 (en) Method and system for monitoring a boot process of a data processing system providing boot data and user prompt
US20070234028A1 (en) Method and apparatus for quickly changing the power state of a data processing system
US6434695B1 (en) Computer operating system using compressed ROM image in RAM
US20080022032A1 (en) Concurrent virtual machine snapshots and restore
US20040030877A1 (en) Using system BIOS to update embedded controller firmware
US5701477A (en) Method and apparatus for master boot record shadowing
US6158000A (en) Shared memory initialization method for system having multiple processor capability
US5594903A (en) Operating System architecture with reserved memory space resident program code identified in file system name space
US6477642B1 (en) Method and apparatus for extending BIOS control of screen display beyond operating system boot process
US6804774B1 (en) Software image transition aid comprising building a disk image based on identified hardware
US6732264B1 (en) Multi-tasking boot firmware
US6970957B1 (en) Dynamically configuring resources for cycle translation in a computer system
US6868507B1 (en) Operating system independent

Legal Events

Date Code Title Description
AS Assignment

Owner name: PROTIMUS TECHNOLOGIES LLC, DISTRICT OF COLUMBIA

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:MICROCONNECT LLC;REEL/FRAME:020227/0772

Effective date: 20071028

Owner name: PROTIMUS TECHNOLOGIES LLC,DISTRICT OF COLUMBIA

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:MICROCONNECT LLC;REEL/FRAME:020227/0772

Effective date: 20071028

AS Assignment

Owner name: ANPA INC., KOREA, DEMOCRATIC PEOPLE S REPUBLIC OF

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:PROTIMUS TECHNOLOGIES LLC;REEL/FRAME:021316/0029

Effective date: 20080701

Owner name: ANPA INC.,KOREA, DEMOCRATIC PEOPLE S REPUBLIC OF

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:PROTIMUS TECHNOLOGIES LLC;REEL/FRAME:021316/0029

Effective date: 20080701

FPAY Fee payment

Year of fee payment: 8

AS Assignment

Owner name: OPERATING SYSTEMS SOLUTIONS, LLC, FLORIDA

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:ANPA INC.;REEL/FRAME:026640/0965

Effective date: 20110303