Advanced firmware boot sequence x86 computer system that...

Electrical computers and digital processing systems: support – Digital data processing system initialization or configuration – Loading initialization program

Reexamination Certificate

Rate now

  [ 0.00 ] – not rated yet Voters 0   Comments 0

Details

C709S241000, C710S010000

Reexamination Certificate

active

06357003

ABSTRACT:

FIELD OF THE INVENTION
The field of the present invention pertains to the initialization functions and routines of x86 computer systems. More particularly, the present invention pertains to a method and a system for initializing x86 computer systems by using advanced firmware.
BACKGROUND OF THE INVENTION
The “IBM-compatible” computer system is well known and is widely used in many different areas of business, industry, government, and the home. More than 90 percent of the personal computer systems sold by the industry today are IBM-compatible. The vast majority of software programs written for personal computer systems are designed to function with the standard, IBM-compatible, x86 computer system. Each IBM-compatible computer system is substantially the same with regard to its basics functions as the original IBM PC AT (sometimes referred to as PS/2) computer system introduced in 1984.
The IBM PC AT computer (hereinafter referred to as the IBM PC) was built upon what became known as the industry standard architecture. This architecture is based upon various attributes of the IBM PC computer system. As is well known, the original IBM PC was based upon an Intel x86 microprocessor (e.g., the Intel 80286) and ran software written to the Intel x86 instruction set. The architecture of the IBM PC was comprised of various discrete hardware components (e.g., such as interrupt controller chips, input output controller chips, and the like) and basic functional software, or boot software, stored in non-volatile memory chips.
The most basic operations of the IBM PC were controlled by this basic functional software component stored in a ROM chip, referred to as basic input output system software, or “BIOS”. When the computer system is initially powered on, the BIOS software is the executed from non-volatile memory and initializes the various discrete hardware components to place the computer system into a state of readiness, wherein the system is able to subsequently execute software from a coupled mass storage device (e.g., a floppy disk, a hard drive, etc.). Each of these attributes comprise portions of the IBM PC compatible architecture and define what it means to be “IBM-compatible”. Software programmers and hardware device designers became intimately familiar with these attributes of the IBM PC and the IBM PC compatible architecture. There software programs and hardware devices are designed to access the innermost data structures, addresses, I/O registers, and other such attributes. Thus, these attributes have become known as, essentially, the “IBM-compatible API”, since software engineers/hardware designers write their various applications/hardware devices to directly access and/or utilize these attributes.
For example, to be software compatible, a software application must be able to run on an IBM PC. The software application must be able to interface with the specific addresses of certain discrete hardware components, specific input output register addresses, specific memory locations defined by the BIOS to perform certain functions, and the like, on the IBM PC. Each of these various attributes determine whether a software program is IBM-compatible or not.
With respect to IBM-compatible computer systems, to be hardware compatible, a computer system from a different manufacturer (e.g., Compaq) must be able to successfully run software applications written specifically for the IBM PC. To be hardware compatible, a computer system must use the same specific addresses for the same specific functions, utilize the same input output registers at the same addresses, perform the same BIOS functions by accessing the identical memory locations, and the like.
Essentially, to be IBM-compatible, a manufacturer had to build its respective computer system using substantially the same hardware components and executing the same software for implementing its most basic functions, such as BIOS software, as the IBM PC. To use different hardware (e.g., interrupt controller's, memory controllers, bus interfaces, or the like), or to use different BIOS software meant risking hardware and/or software compatibility and risking the possibility of not being able to run IBM-compatible software applications or to use IBM-compatible hardware devices.
This had a practical effect of freezing the basic hardware and basic software of all IBM-compatible computer systems at the IBM PC level. To maintain compatibility with the large number of previously written software programs and previously designed hardware devices, commonly referred to as legacy programs and legacy hardware, each successive generation of computer systems remained substantially the same as the IBM PC. Thus, while the industry has progressed by several generations from the Intel 286 microprocessor used in the original IBM PC (e.g., the Pentium II, AMD K6, etc.) the most basic functionality of all IBM-compatible computer systems remains the same.
The problem with this situation is the fact that in order to remain compatible, computer manufacturers have had to retain this most basic functionality of the IBM PC, regardless of how out of date, or how unsuited to task, this basic functionality has become. Computer manufacturers have been unable to incorporate advances or improvements to this functionality without sacrificing compatibility with legacy programs and legacy hardware. As specific user applications have increased in sophistication, so to have demands for reliability, performance, and availability of the computer systems. These demands are becoming increasingly difficult to satisfy given the “primitive” state of the most basic functionality of IBM-compatible computer systems. Computer systems are now several orders of magnitude more capable and more sophisticated than the original IBM PC. However, the systems still must use the same BIOS software and boot through the same sequence of operations as the original IBM PC, or risk sacrificing compatibility with legacy programs and legacy hardware.
For example, it would be very desirable to build a modern computer system which incorporates modern firmware. Modern firmware uses up-to-date, current design practices to implement the most basic functions of a computer system. Modern firmware is designed to present very structured, standardized, APIs to applications running on the computer system. Such a modern computer system would take advantage of all the advances in computer system technology. Such a system would use state-of-the-art components and use state-of-the-art programming techniques. Such a modern computer system would provide a huge vantages in terms of its usability, its reliability, and its ability to incorporate much more modern subsystems (e.g., a modern graphics rendering pipe line, modern hardware peripheral interfaces, and the like).
The problem with this solution, however, is the fact that, as described above, the vast majority of preexisting software programs (e.g., word processors, spreadsheets, games, etc.) and hardware peripherals (e.g., software add on cards, serial port devices, parallel port devices, etc.) for personal computers are written to the specific attributes and APIs presented by IBM-compatible computer systems. In designing a computer system which boots from and operates with a modern firmware architecture, the IBM PC hardware and the associated IBM PC BIOS is abandoned. Without this “IBM-compatible API”, virtually all the preexisting hardware peripherals and software applications cannot run. This is unacceptable to the average user.
One solution to this problem is software based emulation of the IBM PC. This involves translating the instructions from one format to another using a software emulation program, and executing the translated instructions on the host system, wherein the translated instructions are native instructions and execute natively. An example of such a program would be SoftWindows from Insignia, wherein the underlying hardware would be a RISC-based machine (e.g., a MIPS based computer system running Unix) and wherein SoftWindows translates instr

LandOfFree

Say what you really think

Search LandOfFree.com for the USA inventors and patents. Rate them and share your experience with other people.

Rating

Advanced firmware boot sequence x86 computer system that... does not yet have a rating. At this time, there are no reviews or comments for this patent.

If you have personal experience with Advanced firmware boot sequence x86 computer system that..., we encourage you to share that experience with our LandOfFree.com community. Your opinion is very important and Advanced firmware boot sequence x86 computer system that... will most certainly appreciate the feedback.

Rate now

     

Profile ID: LFUS-PAI-O-2869285

  Search
All data on this website is collected from public sources. Our data reflects the most accurate information available at the time of publication.