Method and apparatus for configuring and installing a loadable ABIOS device support layer in a computer system
First Claim
1. A personal computer system for making use of a logical memory space containing plural regions, each region containing multiple logical address locations;
- said regions including at least a low region having discrete lower and upper address boundary limits, a high region having a lower address boundary limit, and an intermediate region located between said low and high regions;
said intermediate region being traditionally used for storing firmware information for controlling said system;
said firmware information including separate first and second portions of operating system microcode;
said first portion being required by said system for completing a preliminary initialization enabling said system to handle application programs incapable of addressing said high region;
said second portion being conditionally used by said system, after completion of said preliminary initialization, for enabling said system to handle application programs capable of addressing any of said regions;
said personal computer system comprising;
a data bus;
a microprocessor electrically coupled to said data bus;
said microprocessor operating in different first and second modes;
said first mode restricting said microprocessor to address only said low and intermediate regions, and said second mode permitting said microprocessor to address any of said regions;
non-volatile memory electrically coupled to the data bus, said non-volatile memory being accessible to said microprocessor via said data bus;
said non-volatile memory storing said first portion of operating system microcode,said non-volatile memory storing request information indicating whether said system does or does not support loading into said computer system of a said second portion of operating system microcode from storage media not normally contained in said system;
said request information being used only when the configuration of said system is initially established or altered to prompt a user of said system to provide access to said second portion of microcode on said storage media not normally contained in said system;
volatile memory electrically coupled to the data bus, said volatile memory being accessible to said microprocessor via said data bus;
said volatile memory being used to store linking information enabling said system to retrieve said second portion of operating system microcode while running under control of said first portion of operating system microcode;
a memory controller electrically coupled to said data bus, said microprocessor, said volatile memory and said non-volatile memory, said memory controller regulating communications between said volatile memory, said non-volatile memory and said microprocessor;
said memory controller translating logical addresses into physical addresses of storage locations in said volatile and non-volatile memories; and
,a direct access storage device electrically coupled to said data bus, said direct access storage device storing an image of said second portion of operating system microcode when said second portion of operating system microcode has been obtained from said media not contained in said system based upon said request information.
2 Assignments
0 Petitions
Accused Products
Abstract
A personal computer system which is compatible with application programs and operating system software is disclosed. The personal computer system includes a microprocessor electrically coupled to a data bus, non-volatile memory electrically coupled to the data bus, volatile memory electrically responsive to the data bus, a memory controller electrically coupled to the microprocessor, the volatile memory and the non-volatile memory, and, a direct access storage device electrically responsive to the data bus. The non-volatile memory stores a first portion of operating system microcode and request information which indicates whether a second portion of operating system microcode is required by the personal computer system. The volatile memory includes a volatile operating system portion intended for use by the first portion of the operating system microcode. The memory controller regulates communications between the volatile memory, the non-volatile memory and the high speed microprocessor. The direct access storage device stores the second portion of operating system microcode which is accessed by the microprocessor based upon the request information.
31 Citations
9 Claims
-
1. A personal computer system for making use of a logical memory space containing plural regions, each region containing multiple logical address locations;
- said regions including at least a low region having discrete lower and upper address boundary limits, a high region having a lower address boundary limit, and an intermediate region located between said low and high regions;
said intermediate region being traditionally used for storing firmware information for controlling said system;
said firmware information including separate first and second portions of operating system microcode;
said first portion being required by said system for completing a preliminary initialization enabling said system to handle application programs incapable of addressing said high region;
said second portion being conditionally used by said system, after completion of said preliminary initialization, for enabling said system to handle application programs capable of addressing any of said regions;
said personal computer system comprising;a data bus; a microprocessor electrically coupled to said data bus;
said microprocessor operating in different first and second modes;
said first mode restricting said microprocessor to address only said low and intermediate regions, and said second mode permitting said microprocessor to address any of said regions;non-volatile memory electrically coupled to the data bus, said non-volatile memory being accessible to said microprocessor via said data bus; said non-volatile memory storing said first portion of operating system microcode, said non-volatile memory storing request information indicating whether said system does or does not support loading into said computer system of a said second portion of operating system microcode from storage media not normally contained in said system;
said request information being used only when the configuration of said system is initially established or altered to prompt a user of said system to provide access to said second portion of microcode on said storage media not normally contained in said system;volatile memory electrically coupled to the data bus, said volatile memory being accessible to said microprocessor via said data bus;
said volatile memory being used to store linking information enabling said system to retrieve said second portion of operating system microcode while running under control of said first portion of operating system microcode;a memory controller electrically coupled to said data bus, said microprocessor, said volatile memory and said non-volatile memory, said memory controller regulating communications between said volatile memory, said non-volatile memory and said microprocessor;
said memory controller translating logical addresses into physical addresses of storage locations in said volatile and non-volatile memories; and
,a direct access storage device electrically coupled to said data bus, said direct access storage device storing an image of said second portion of operating system microcode when said second portion of operating system microcode has been obtained from said media not contained in said system based upon said request information. - View Dependent Claims (2, 3)
- said regions including at least a low region having discrete lower and upper address boundary limits, a high region having a lower address boundary limit, and an intermediate region located between said low and high regions;
-
4. An apparatus for loading an operational interface used in the operation of a personal computer system containing a system processor, a non-volatile memory, a volatile memory, and a direct access storage device;
- said operational interface comprising first and second portions of microcode having different memory addressing capabilities;
said first portion being used exclusively by said system during its initialization;
both said first and second portions being useful for enabling said system to handle application programs;
said first portion comprising a first information part and a second information part;
said first information part and a request indicator being stored in said non-volatile memory;
said second portion containing a plurality of modular sub-portions;
said request indicator indicating whether said system is or is not configured to support loading of at least some of said modular sub-portions of said second portion of the operational interface into said system from external storage media not normally contained in said system;
said direct access storage device being conditionally loaded with said at least some of said modular sub-portions of said second portion of the operational interface, from said external media, depending upon the value of said request indicator, said apparatus comprising;means formed by said system processor while using said first information part of said first portion for initializing said personal computer system, and storing a copy of said second information part of said first portion in a part of said volatile memory allocated for storing an operating system;
said second information part of said first portion being required by said system for managing selective transferral of said at least some of said modular sub-portions of said second portion from said direct access storage device to said volatile memory;means formed by said system processor under control of said first portion, when the configuration of said system is initially established or altered, for accessing the request indicator to determine whether the computer system does or does not support loading of said at least some of said modular sub-portions of said second portion from said media not contained in said system, and upon determining that such loading is supported prompting said user to provide said system with access to said media not normally contained in said system; means operative upon said system obtaining said access to said media not normally contained in said system, for retrieving said at least some of said modular sub-portions of said second portion of said operational interface from said media and storing a copy of said retrieved second portion on said direct access storage device; and means operative during subsequent initializations of said system for loading the at least some of said modular sub-portions of said second portion of the operational interface from said direct access storage device into a remaining portion of said volatile memory when the computer system requires said at least some of said modular sub-portions of said second portion of the operational interface. - View Dependent Claims (5, 6)
- said operational interface comprising first and second portions of microcode having different memory addressing capabilities;
-
7. A personal computer system compatible with application programs and operating system software, the personal computer system comprising:
-
a data bus; a microprocessor electrically coupled to said data bus;
said microprocessor operating in different first and second modes having different first and second memory addressing ranges;
said second memory addressing range being larger than said first memory addressing range;
said microprocessor using a first portion of operating system microcode for operating in said first mode and a second portion of operating system microcode for operating in either of said first and second modes;
said microprocessor invariably operating in said first mode, and using said first portion of microcode, during startup and initialization of said personal computer system,a direct access storage device coupled to said data bus, and accessible to said microprocessor via said data bus; non-volatile memory electrically coupled to the data bus, and accessible to said microprocessor via said bus, said non-volatile memory storing said first portion of operating system microcode, said non-volatile memory also storing request information inspected by said microprocessor when the configuration of said personal computer system is established or altered for indicating whether said system does or does not require loading of said second portion of operating system microcode from support storage media not normally contained in said personal computer system;
said microprocessor acting upon inspection of said request information, if said information indicates the system does support loading of said second portion from said support storage media, to obtain access to said support storage media, retrieve said second portion therefrom, and store a copy of said second portion in said direct access storage device;
said copy being transferred from said direct access storage device to said volatile memory during subsequent initializations of said system;volatile memory electrically coupled to the data bus, said volatile memory including linking information used by the operating system during said subsequent initializations of said system for directing said microprocessor, while under the control of said first portion of the operating system microcode, to load said copy of said second portion of said microcode into a designated part of said volatile memory and to retain an indication of the location of said designated part; a memory controller electrically coupled to said microprocessor, said volatile memory and said non-volatile memory, said memory controller regulating communications between said volatile memory, said non-volatile memory and said microprocessor;
said memory controller translating logical addresses within said first and second memory addressing ranges into physical addresses in said volatile and non-volatile memories;linking means responsive to said request information and said linking information for indicating to said memory controller the location of said second portion of the operating system microcode in said designated part of said volatile memory;
said linking means thereby enabling said microprocessor to access said copy of said second portion of the operating system microcode in said non-volatile memory. - View Dependent Claims (8, 9)
-
Specification