×

Method and apparatus for providing a modular ABIOS device support layer in a computer system

  • US 5,481,709 A
  • Filed: 06/22/1992
  • Issued: 01/02/1996
  • Est. Priority Date: 06/22/1992
  • Status: Expired due to Fees
First Claim
Patent Images

1. A personal computer system for making use of a logical memory space containing plural bounded regions, each region containing multiple address locations;

  • said regions including at least a low region having discrete upper and lower boundaries, a high region having a discrete lower boundary, and an intermediate region situated between the upper boundary of said low region and the lower boundary of said high region;

    said intermediate region being traditionally allocated for storing firmware information for controlling said system, said firmware information including discretely separate first and second portions of 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 useful by said system, after completion of said preliminary initialization, for enabling said system to handle program applications requiring access to 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 characterized in that said first mode allows said microprocessor to address only said low and intermediate regions while said second mode permits said microprocessor to address any of said regions;

    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 microcode for use by said microprocessor;

    said non-volatile memory containing physical locations mapped into said intermediate region of said memory address space;

    volatile memory electrically coupled to the data bus, and accessible to said microprocessor via said bus, said volatile memory containing physical storage locations, mapped into said low region of said address space, that are allocated for storing a linking code used by said microprocessor during a preliminary initialization of said system to initialize said system for accessing said second portion of microcode;

    said linking code being invoked while said microprocessor is operating under control of said first portion of microcode during said preliminary initialization; and

    ,a direct access storage device electrically coupled to the data bus, and accessible to said microprocessor via said bus, said direct access storage device storing at least a part of said second portion of microcode, said second portion of microcode stored in said direct access storage device including a plurality of separately accessible modules for respectively controlling said microprocessor to perform a plurality of different functions, at least one of said functions requiring said microprocessor to have access to said high region;

    said linking code controlling said microprocessor to successively;

    load said modules, one at a time, from said direct access storage device into said volatile memory, examine each loaded module for pertinence to the respective system, retain the respective loaded module if it is heeded for subsequent operations of said system, and discard the respective loaded module if it is not needed for said subsequent operations.

View all claims
  • 1 Assignment
Timeline View
Assignment View
    ×
    ×