USRE42936E1 - Method and apparatus to minimize computer apparatus initial program load and exit/shut down processing - Google Patents
Method and apparatus to minimize computer apparatus initial program load and exit/shut down processing Download PDFInfo
- Publication number
- USRE42936E1 USRE42936E1 US12/614,184 US61418409A USRE42936E US RE42936 E1 USRE42936 E1 US RE42936E1 US 61418409 A US61418409 A US 61418409A US RE42936 E USRE42936 E US RE42936E
- Authority
- US
- United States
- Prior art keywords
- computing apparatus
- ram
- task
- tasks
- user
- 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 - Lifetime, expires
Links
Images
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
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
Abstract
Description
-
- A. On a personal computer, the monitor driver, the mouse driver and the keyboard driver (in that order).
- 1. The monitor driver maintains a small database on the hard drive consisting of the background and all icons displayed on the desktop. This database is displayed almost instantaneously by the instant invention.
- 2. The mouse driver is loaded next as this is generally typically what the user will require next.
- B. On a router (such as, but not limited to a Cisco® router).
- 1. The basic input/output system (BIOS) loads only enough of itself to determine if a valid image in flash memory exists and if the configuration boots to that image. If found, then the image in flash memory starts booting.
- 2. The router next concentrates interface(s) execution with respect to the OSI (Open Systems Interconnection) seven layer model. Concentration emphasis is on layer one (“line up”), then layer two (“protocol up”) and last layer 3.
- 3. The image booting next determines the type routing (layer three) required (IP (Internet Protocol), IPX (Internet Packet Exchange), Appletalk, X.25, Frame Relay, etc.) and loads only those portions of the IOS (Cisco's Internet Operating System) that are required. If BGP (Border Gateway Protocol) is not in the configuration, the BGP is not loaded.
- 4. An additional feature of the instant invention is to accommodate a router's maintaining of statistics (stored in NVRAM and regularly updated to allow for changes in traffic flows) which interfaces are busiest and thus allowing prioritization for making those interfaces operational.
- 5. When the router has completed all tasks related to “routing”, the invention allows user interaction via the console should be run (on exception to this is, of course, allowing operator input to stop the initial boot sequence to correct router problems).
- C. On a hand held “personal device”
- 1. The display is immediately visible (a “splash” screen can be shown first if absolutely necessary) showing the “main function” of the apparatus.
- a) A cell phone would display the main menu
- b) a MPEG (Moving Pictures Expert's Group) would display video
- c) A MP3 player would display the songs that are on the playlist
- d) A hand held video game would display the start screen
- 2. Function buttons are next made accessible to the user
- 3. The apparatus then load, tasks that are its “primary” function
- a.) A cell phone would load the task to access its directory of phone numbers
- b.) A MP3 player would load the task to play music (with pointers to the current song, the past two songs and the next two songs)
- c.) A hand held video game would load the start of the game
- 1. The display is immediately visible (a “splash” screen can be shown first if absolutely necessary) showing the “main function” of the apparatus.
- A. On a personal computer, the monitor driver, the mouse driver and the keyboard driver (in that order).
MTM Task Table [Task] = NVRAM Task information
/* NVRAM task, MTM, RCT and the NVRAM table (see below) are most likely “critical” components of operation. If the MTM returns a memory allocation error then the system should display a “out of memory/bad memory” error and halt. */
IF MTM returns “No Memory Available” error, then display error message and halt
/* The priority of the NVRAM task is dependent on each device. In the example of a personal computer the NVRAM task should have a lower priority than the Display, keyboard or mouse task.
*/
Start execution of NVRAM task at priority X (as indicated in block 30)
Pass RCT task to MTM to allocate memory / load RCT task
Tasks = Tasks + 1
MTM Task Table [Tasks] = RCT Task information
IF MTM returns “No Memory Available” error, then display error message and halt (as indicated in block 36)
RCT task is lowest priority (priority Y) on the CTM task list. RCT is to run only when there are free CPU cycles or at a high priority if MTM needs more memory to load a task. */
Start execution of RCT task at priority Y
/* The NVRAM table has a list of “high priority” tasks (and their associated priority) that need to be read from BIOS into main memory, a list of the BIOS tasks that have updated code that resides on NVRAM (again with a priority) an the History data. The “History data” is device dependent (see below). Note: A default table can reside in BIOS for initial device operation or if the NVRAM table is destroyed. */
Read NVRAM table of BIOS tasks, Updated BIOS tasks and history from NVRAM
/* Entries in the NVRAM table should include task location, size, priority “Z” */
WHILE entries in BIOS / NVRAM task list DO
Pass task to MTM to allocate memory / load task
Tasks = Tasks + 1
MTM Task Table [Tasks] = BIOS / NVRAM Task
IF MTM returns “No Memory Available” error, then display error message and halt
Start execution of task at priority Z (as indicated in block 30)
/* Continue execution of tasks in the MTM task table. */
CALL Execute Tasks
ENDWHILE
/* The entries in the History table include a priority level and a “load/run” bit. The load/run bit tells whether the task is preloaded into RAM, but not executed until the device requests them (e.g. task for what to do when the user presses a particular button of the front panel or the application the user “usually” double clicks on first) or tasks that are not the absolute highest priority but still need to be loaded and run at device startup (e.g. tasks for interface operation on a router or on a server the applications that run on the server at initialization). The “load” tasks are “historically” the first tasks that the system executes after it is fully operational. The “Load and Run” tasks are configured by the operator of the device. */
WHILE entries in history table Run bit set DO
Pass task to MTM to allocate memory/load task
Tasks = Tasks + 1
MTM Task Table [Tasks] = Task
Start execution of task at priority indicated in History table
/* Continue execution of tasks in the MTM task table. */
CALL Execute Tasks
ENDWHILE (as indicated in block 23)
/* If the invention receive operator input while the invention are loading tasks, stop loading tasks and execute operator requested task */
WHILE entries in history table Load bit set AND no operator input DO
Pass task to MTM to allocate memory/load task
Tasks = Tasks + 1
MTM Task Table [Tasks] = Optional Task
CALL Execute Tasks
ENDWHILE (as indicated in
/* CTM Main loop. The Shutdown flag is set to 1 upon interrupt from the user (graceful shutdown) or upon receipt of a power loss interrupt from the power supply (immediate shutdown). Upon receipt of either flag the CTM should IMMEDIATELY branch to the shutdown routine. */
Shutdown = 0
WHILE Shutdown Flag not set DO
CALL Execute Tasks
ENDWHILE
CALL Shutdown
MEMORY TASK MANAGER (a.k.a. “MTM”) SUBROUTINE
/* The MTM tracks RAM usage and (if required/if available) does paging in/out of Virtual Memory (VM). The CTM or MTM protects the tasks from other tasks overwriting them (segmentation violations) and should discourage self modifying programs via not allowing “data” to be executed (helps prevent possible viral attacks/buffer overflow attacks). Memory protection would be via memory protection hardware or strong memory protection AKAUNIXOS. The MTM tracks which tasks (drivers, system calls, applications) are active and which are no longer active so that if RAM is required then that RAM can be reused. Memory is not changed until something is loaded into that address space. If a system routine is already in memory (albeit not active at the moment) then it can be immediately reactivated and used without requiring the instructions/data be reloaded into memory from NVRAM (a waste of load time and presumably NVRAM is a slower access device than RAM). */
/* MTM Called to add task if DontNeedTask = 0 */ (as indicated in block 34)
IF DontNeedTask = 0 THEN DO
/* The history table needs to be updated on a device by device basis. In the case of a personal computer the MTM should track the first “X” tasks the user requests and combine that information in the history table with respect to the previous information to give a cumulative history of the user's actions at startup. In the case of a router the router should keep a history of the highest traffic interfaces and write that information to NVRAM on a periodic basis. This gives the router an idea next time it starts up which interfaces should have the highest priority task initialization/execution. In the case of an MP3 player the MP3 player should track which button is historically pusher first and load that task first. */
SizeOfMemory = Size of task to be loaded
IF (Memory available) < SizeOfMemory then DO
/* Try to complete checking more RAM to load task */
WHILE RCTComplete = 0 and (Memory available) < SizeOfMemory DO
Execute RCT Task
ENDWHILE
/* Check and see if there is enough memory now. If not then free up memory from tasks that are not required. Worst case page out to Virtual Memory (if available) */
IF (Memory available) < SizeOfMemory then DO
MTMTask = 1
WHILE ((Memory available)<SizeOfMemory) and MTMTask<Tasks DO
/* If there is a task in memory that is not called by anything then that task is eligible to be freed. Add that task to the memory available list */
IF MTMTaskTable[MTMTask, AvailableForRAM] = 0 then DO
Looptasks = 0
/* The idle loop goes thru the tasks and gives them CPU time. While a plethora of queuing algorithms can be used (and the Execute Tasks would be modified accordingly) this loop will use a simple equation of Execution time = (CPUTime/ (Priority + 1)) scheme where CPUTime is “X” instructions. This allows all tasks some access to the CPU and does not starve out any task. Standard OS contention / semaphore algorithms apply to preclude deadlocking processes. */
CPUTime = 10000
WHILE Looptasks <= Tasks do
/* Allow task to operate AT MOST (CPU Time / (Priority + 1)) instructions. If the task does not need that many cycles (i.e. it is idle) then the task should set a flag indicating such and immediately return */
Allow task MTMTaskTable[Looptasks] to operate (CPUTime / (Priority +1)) instructions
/* If the just executed task requires subtasks to run then it set a flag, returns the task name it needs to MTM and ends. That task will now be brought into memory and all the passed parameters passed to that subtask */
IF NeedTask flag for task MTMTaskTable[Looptasks] is set DO
IF Task Requested is in MTMTaskTable, Pass task name to MTM to pass parameters and update MTM table with calling task, set LoadTask flag ELSE Pass task to MTM to allocate memory / load task and passed parameters, set AddTask flag
ENDIF
/* Likewise if a task is releasing a subtask or the task is terminating then the invention can release any subtasks to that task */
IF DontNeedTask flag for task MTMTaskTable[Looptasks] is set or Terminate flag is set DO
IF DontNeedTask flag is set, Pass task and subtask name to MTM and set DontNeedTask flag
If task is terminating then pass task name to MTM and set Terminate flag
ENDIF
ENDWHILE
ENDSUBROUTINE (as indicated in
SUBROUTINE Shutdown
/* There should be sufficient power in the power supply so that after the CTM is notified of power loss a final write of all buffers on the non-volatile memory can be accomplished (if required) by the CTM. At that time the device can be shut down. The fast shutdown of the device requires that all tasks appends a “log” file (changes to that file) to the NVRAM file as changes are made to that file. When a file is “saved” the new file consists of the original file plus the “logged” changes to that file. When the new file is completely written then the old file can be deleted. This process allows the system to just flush all the buffers an not require a graceful shutdown of all tasks. */
Flush NVRAM Buffers to NVRAM device (if required)
Shut down the device
ENDSUBROUTINE
Claims (27)
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US12/614,184 USRE42936E1 (en) | 2002-06-27 | 2009-11-06 | Method and apparatus to minimize computer apparatus initial program load and exit/shut down processing |
US13/073,686 US20110173429A1 (en) | 2002-06-27 | 2011-03-28 | Method and apparatus to minimize computer apparatus initial program load and exit/shut down processing |
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US18370902A | 2002-06-27 | 2002-06-27 | |
US10/342,020 US7299346B1 (en) | 2002-06-27 | 2003-01-14 | Method and apparatus to minimize computer apparatus initial program load and exit/shut down processing |
US12/614,184 USRE42936E1 (en) | 2002-06-27 | 2009-11-06 | Method and apparatus to minimize computer apparatus initial program load and exit/shut down processing |
Related Parent Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US10/342,020 Continuation US7299346B1 (en) | 2002-06-27 | 2003-01-14 | Method and apparatus to minimize computer apparatus initial program load and exit/shut down processing |
US10/342,020 Reissue US7299346B1 (en) | 2002-06-27 | 2003-01-14 | Method and apparatus to minimize computer apparatus initial program load and exit/shut down processing |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US13/073,686 Continuation US20110173429A1 (en) | 2002-06-27 | 2011-03-28 | Method and apparatus to minimize computer apparatus initial program load and exit/shut down processing |
Publications (1)
Publication Number | Publication Date |
---|---|
USRE42936E1 true USRE42936E1 (en) | 2011-11-15 |
Family
ID=38691065
Family Applications (3)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US10/342,020 Ceased US7299346B1 (en) | 2002-06-27 | 2003-01-14 | Method and apparatus to minimize computer apparatus initial program load and exit/shut down processing |
US12/614,184 Expired - Lifetime USRE42936E1 (en) | 2002-06-27 | 2009-11-06 | Method and apparatus to minimize computer apparatus initial program load and exit/shut down processing |
US13/073,686 Abandoned US20110173429A1 (en) | 2002-06-27 | 2011-03-28 | Method and apparatus to minimize computer apparatus initial program load and exit/shut down processing |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US10/342,020 Ceased US7299346B1 (en) | 2002-06-27 | 2003-01-14 | Method and apparatus to minimize computer apparatus initial program load and exit/shut down processing |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US13/073,686 Abandoned US20110173429A1 (en) | 2002-06-27 | 2011-03-28 | Method and apparatus to minimize computer apparatus initial program load and exit/shut down processing |
Country Status (1)
Country | Link |
---|---|
US (3) | US7299346B1 (en) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20110173429A1 (en) * | 2002-06-27 | 2011-07-14 | Hollis William K | Method and apparatus to minimize computer apparatus initial program load and exit/shut down processing |
US11176009B2 (en) | 2018-10-16 | 2021-11-16 | International Business Machines Corporation | Implementing power up detection in power down cycle to dynamically identify failed system component resulting in loss of resources preventing IPL |
Families Citing this family (24)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7607000B1 (en) * | 2003-05-13 | 2009-10-20 | Apple Inc. | Method for booting an operating system |
US7937198B2 (en) * | 2004-12-29 | 2011-05-03 | Snap-On Incorporated | Vehicle or engine diagnostic systems supporting fast boot and reprogramming |
US7590839B2 (en) * | 2005-03-22 | 2009-09-15 | Qnx Software Systems Gmbh & Co. Kg | System employing fast booting of application programs |
US7523323B2 (en) * | 2005-09-15 | 2009-04-21 | Intel Corporation | Method and apparatus for quick resumption |
US7500091B2 (en) * | 2005-11-30 | 2009-03-03 | Microsoft Corporation | Delay start-up of applications |
US8838620B2 (en) * | 2006-02-03 | 2014-09-16 | International Business Machines Corporation | Predictive data object retrieval |
US20070234029A1 (en) * | 2006-03-28 | 2007-10-04 | Rothman Michael A | Methods and apparatus for context sensitive component dispatch management |
US20070266231A1 (en) * | 2006-05-15 | 2007-11-15 | Huey-Tyug Chua | Portable Electronic Device and Method for Loading Resource Data of the Portable Electronic Device |
US7958398B2 (en) * | 2008-07-16 | 2011-06-07 | International Business Machines Corporation | Reference state information generation |
US8055719B2 (en) * | 2008-07-16 | 2011-11-08 | International Business Machines Corporation | Performance and reduce network traffic for remote hardware data scan operations |
US8271623B2 (en) * | 2009-01-15 | 2012-09-18 | Microsoft Corporation | Performing configuration in a multimachine environment |
US20100292102A1 (en) * | 2009-05-14 | 2010-11-18 | Ali Nouri | System and Method For Preventing Synthesis of Dangerous Biological Sequences |
US8977399B2 (en) * | 2009-05-21 | 2015-03-10 | Lennox Industries Inc. | Staggered start-up HVAC system, a method for starting an HVAC unit and an HVAC controller configured for the same |
US9483312B2 (en) * | 2010-08-16 | 2016-11-01 | International Business Machines Corporation | Locating service endpoints from a service registry |
CN102135910B (en) * | 2011-03-03 | 2014-05-14 | 威盛电子股份有限公司 | Method for switching operating systems and electronic device using same |
WO2013028203A1 (en) * | 2011-08-25 | 2013-02-28 | Intel Corporation | Determining, at least in part, one or more respective amounts of buffer memory field |
TWI464583B (en) * | 2012-03-02 | 2014-12-11 | Wistron Corp | Method of obtaining command for triggering function |
US9110677B2 (en) | 2013-03-14 | 2015-08-18 | Sandisk Technologies Inc. | System and method for predicting and improving boot-up sequence |
CN104346194B (en) * | 2014-04-18 | 2017-12-01 | 腾讯科技(深圳)有限公司 | A kind of startup file loading method, device and electronic equipment |
US9959187B2 (en) * | 2014-04-25 | 2018-05-01 | Lenovo (Singapore) Pte. Ltd. | Decoalescing resource utilization at boot |
CN105278370B (en) * | 2015-09-30 | 2018-03-20 | 小米科技有限责任公司 | Energy-saving mode open method and device |
US10216498B2 (en) * | 2016-05-13 | 2019-02-26 | Tibco Software Inc. | Custom-built process engine with minimal memory and disk resource consumption |
CN109194521B (en) * | 2018-09-29 | 2021-12-07 | 新华三技术有限公司 | Flow forwarding method and equipment |
US11507383B2 (en) * | 2020-03-10 | 2022-11-22 | Dell Products L.P. | Configurable boot paths |
Citations (25)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5168555A (en) | 1989-09-06 | 1992-12-01 | Unisys Corporation | Initial program load control |
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 |
US5410699A (en) | 1989-08-25 | 1995-04-25 | International Business Machines Corp. | Apparatus and method for loading BIOS from a diskette in a personal computer system |
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 |
US5748957A (en) | 1995-06-27 | 1998-05-05 | Klein; Dean A. | Computer system usage determination based on hard disk drive activity |
US5884211A (en) | 1997-01-23 | 1999-03-16 | Ford Global Technologies, Inc. | System and method for memory reset of a vehicle controller |
US5935228A (en) | 1996-04-26 | 1999-08-10 | International Business Machines Corporation | Method for automatically enabling peripheral devices and a storage medium for storing automatic enable program for peripheral devices |
US5968173A (en) | 1996-10-01 | 1999-10-19 | Texas Instruments Incorporated | Method and system for maximizing the apparent initial processing capability of a computer |
US6061788A (en) | 1997-10-02 | 2000-05-09 | Siemens Information And Communication Networks, Inc. | System and method for intelligent and reliable booting |
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 |
US6122677A (en) | 1998-03-20 | 2000-09-19 | Micron Technology, Inc. | Method of shortening boot uptime in a computer system |
US6148322A (en) | 1993-11-26 | 2000-11-14 | Siemens Aktiengesellschaft | Processing unit with an improved ability to coordinate the execution of multiple tasks with varying priorities |
US6202091B1 (en) | 1997-12-08 | 2001-03-13 | Nortel Networks Limited | Process and apparatus for initializing a computer from power up |
US6212632B1 (en) | 1998-07-31 | 2001-04-03 | Flashpoint Technology, Inc. | Method and system for efficiently reducing the RAM footprint of software executing on an embedded computer system |
US20010047473A1 (en) | 2000-02-03 | 2001-11-29 | Realtime Data, Llc | Systems and methods for computer initialization |
US6367074B1 (en) * | 1998-12-28 | 2002-04-02 | Intel Corporation | Operation of a system |
US20020199093A1 (en) | 2001-06-26 | 2002-12-26 | Poisner David I. | Method and system for using internal FIFO RAM to improve system boot times |
US20030070066A1 (en) | 2001-07-28 | 2003-04-10 | Cross Edward A. | System for detection and routing of platform events in a multi-cell computer |
US6553432B1 (en) | 1999-10-26 | 2003-04-22 | Dell Usa, L.P. | Method and system for selecting IDE devices |
US6567912B1 (en) * | 2000-03-31 | 2003-05-20 | Motorola, Inc. | Method and apparatus for robust initialization of devices |
US20030135729A1 (en) | 2001-12-14 | 2003-07-17 | I/O Integrity, Inc. | Apparatus and meta data caching method for optimizing server startup performance |
US6631469B1 (en) | 2000-07-17 | 2003-10-07 | Intel Corporation | Method and apparatus for periodic low power data exchange |
US6883091B2 (en) | 2001-05-30 | 2005-04-19 | Hewlett-Packard Development Company, L.P. | Reducing boot times via intrusion monitoring |
US6973447B1 (en) * | 2000-03-23 | 2005-12-06 | International Business Machines Corporation | System apparatus and method for supporting multiple partitions including multiple systems in boot code |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7299346B1 (en) * | 2002-06-27 | 2007-11-20 | William K. Hollis | Method and apparatus to minimize computer apparatus initial program load and exit/shut down processing |
-
2003
- 2003-01-14 US US10/342,020 patent/US7299346B1/en not_active Ceased
-
2009
- 2009-11-06 US US12/614,184 patent/USRE42936E1/en not_active Expired - Lifetime
-
2011
- 2011-03-28 US US13/073,686 patent/US20110173429A1/en not_active Abandoned
Patent Citations (27)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5410699A (en) | 1989-08-25 | 1995-04-25 | International Business Machines Corp. | Apparatus and method for loading BIOS from a diskette in a personal computer system |
US5168555A (en) | 1989-09-06 | 1992-12-01 | Unisys Corporation | Initial program load control |
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 |
US6148322A (en) | 1993-11-26 | 2000-11-14 | Siemens Aktiengesellschaft | Processing unit with an improved ability to coordinate the execution of multiple tasks with varying priorities |
US5951700A (en) | 1995-06-27 | 1999-09-14 | Micron Electronics, Inc. | Methods of computer system usage determination based on hard disk drive activity |
US5748957A (en) | 1995-06-27 | 1998-05-05 | Klein; Dean A. | Computer system usage determination based on hard disk drive activity |
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 |
US5935228A (en) | 1996-04-26 | 1999-08-10 | International Business Machines Corporation | Method for automatically enabling peripheral devices and a storage medium for storing automatic enable program for peripheral devices |
US5968173A (en) | 1996-10-01 | 1999-10-19 | Texas Instruments Incorporated | Method and system for maximizing the apparent initial processing capability of a computer |
US5884211A (en) | 1997-01-23 | 1999-03-16 | Ford Global Technologies, Inc. | System and method for memory reset of a vehicle controller |
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 |
US6061788A (en) | 1997-10-02 | 2000-05-09 | Siemens Information And Communication Networks, Inc. | System and method for intelligent and reliable booting |
US6202091B1 (en) | 1997-12-08 | 2001-03-13 | Nortel Networks Limited | Process and apparatus for initializing a computer from power up |
US6098158A (en) | 1997-12-18 | 2000-08-01 | International Business Machines Corporation | Software-enabled fast boot |
US6122677A (en) | 1998-03-20 | 2000-09-19 | Micron Technology, Inc. | Method of shortening boot uptime in a computer system |
US6212632B1 (en) | 1998-07-31 | 2001-04-03 | Flashpoint Technology, Inc. | Method and system for efficiently reducing the RAM footprint of software executing on an embedded computer system |
US6367074B1 (en) * | 1998-12-28 | 2002-04-02 | Intel Corporation | Operation of a system |
US6553432B1 (en) | 1999-10-26 | 2003-04-22 | Dell Usa, L.P. | Method and system for selecting IDE devices |
US20010047473A1 (en) | 2000-02-03 | 2001-11-29 | Realtime Data, Llc | Systems and methods for computer initialization |
US20010052038A1 (en) | 2000-02-03 | 2001-12-13 | Realtime Data, Llc | Data storewidth accelerator |
US6973447B1 (en) * | 2000-03-23 | 2005-12-06 | International Business Machines Corporation | System apparatus and method for supporting multiple partitions including multiple systems in boot code |
US6567912B1 (en) * | 2000-03-31 | 2003-05-20 | Motorola, Inc. | Method and apparatus for robust initialization of devices |
US6631469B1 (en) | 2000-07-17 | 2003-10-07 | Intel Corporation | Method and apparatus for periodic low power data exchange |
US6883091B2 (en) | 2001-05-30 | 2005-04-19 | Hewlett-Packard Development Company, L.P. | Reducing boot times via intrusion monitoring |
US20020199093A1 (en) | 2001-06-26 | 2002-12-26 | Poisner David I. | Method and system for using internal FIFO RAM to improve system boot times |
US20030070066A1 (en) | 2001-07-28 | 2003-04-10 | Cross Edward A. | System for detection and routing of platform events in a multi-cell computer |
US20030135729A1 (en) | 2001-12-14 | 2003-07-17 | I/O Integrity, Inc. | Apparatus and meta data caching method for optimizing server startup performance |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20110173429A1 (en) * | 2002-06-27 | 2011-07-14 | Hollis William K | Method and apparatus to minimize computer apparatus initial program load and exit/shut down processing |
US11176009B2 (en) | 2018-10-16 | 2021-11-16 | International Business Machines Corporation | Implementing power up detection in power down cycle to dynamically identify failed system component resulting in loss of resources preventing IPL |
Also Published As
Publication number | Publication date |
---|---|
US20110173429A1 (en) | 2011-07-14 |
US7299346B1 (en) | 2007-11-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
USRE42936E1 (en) | Method and apparatus to minimize computer apparatus initial program load and exit/shut down processing | |
EP3491519B1 (en) | Optimized uefi reboot process | |
US6173417B1 (en) | Initializing and restarting operating systems | |
JP3593241B2 (en) | How to restart the computer | |
US7827371B2 (en) | Method for isolating third party pre-boot firmware from trusted pre-boot firmware | |
EP1854006B1 (en) | Method and system for preserving dump data upon a crash of the operating system | |
US9081734B2 (en) | Restoring from a legacy OS environment to a UEFI pre-boot environment | |
US20060242398A1 (en) | Booting from non-volatile memory | |
US7941624B2 (en) | Parallel memory migration | |
US20090037722A1 (en) | Integration Model for Instant-On Environment | |
US8230210B1 (en) | Interactive firmware recovery | |
US7962736B1 (en) | Interactive pre-OS firmware update with repeated disabling of interrupts | |
US20080209198A1 (en) | Boot Acceleration For Computer Systems | |
US7069445B2 (en) | System and method for migration of a version of a bootable program | |
JP2018511104A (en) | Techniques for improved hybrid sleep power management | |
US20080098381A1 (en) | Systems and methods for firmware update in a data processing device | |
US20060036832A1 (en) | Virtual computer system and firmware updating method in virtual computer system | |
US9235426B2 (en) | Multicore processor system, computer product, and notification method for updating operating system | |
US9471231B2 (en) | Systems and methods for dynamic memory allocation of fault resistant memory (FRM) | |
EP1860563A1 (en) | Sparse checkpoint and rollback | |
US20050240821A1 (en) | Hard drive reset cache | |
JPH11175397A (en) | Information processor |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
FEPP | Fee payment procedure |
Free format text: PAYOR NUMBER ASSIGNED (ORIGINAL EVENT CODE: ASPN); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY |
|
AS | Assignment |
Owner name: III HOLDINGS 1, LLC, DELAWARE Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:HOLLIS, WILLIAM K.;REEL/FRAME:032609/0243 Effective date: 20131231 |
|
FEPP | Fee payment procedure |
Free format text: PAT HOLDER NO LONGER CLAIMS SMALL ENTITY STATUS, ENTITY STATUS SET TO UNDISCOUNTED (ORIGINAL EVENT CODE: STOL); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY |
|
REFU | Refund |
Free format text: REFUND - PAYMENT OF MAINTENANCE FEE, 8TH YR, SMALL ENTITY (ORIGINAL EVENT CODE: R2552); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY |
|
FPAY | Fee payment |
Year of fee payment: 8 |
|
MAFP | Maintenance fee payment |
Free format text: PAYMENT OF MAINTENANCE FEE, 12TH YEAR, LARGE ENTITY (ORIGINAL EVENT CODE: M1553); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY Year of fee payment: 12 |