Computer BIOS Enhancements to Create and Load
Memory-Resident File Systems
for High-Speed System and Application Software
Exhibit “A” in Provisional Application
to the U.S. Patent and Trademark Office
Paul Andrew Mitchell, B.A., M.S., Inventor
All Rights Reserved without Prejudice
November 26, 2007 A.D.
The inventor has recently had much success installing and using a commercial computer software package which designates a region of random access memory as a high-speed file system (“ramdisk”).
He moved a popular Internet browser’s temporary file cache from a rotating disk drive to this “ramdisk”, and measured extraordinary improvements in the speed of routine input/output (“I/O”) operations to and from that browser cache.
That experience motivated the inventor to investigate cost-effective hardware and software alternatives for hosting operating system and application software in a similar ramdisk, with the ultimate goal of designing and building personal computers (“PC”) with no moving parts, except for cooling fans.
One interesting alternative replaces rotating disk drives with solid-state disks (“SSD”) that utilize relatively recent flash memory technology.
Another alternative replaces rotating disk drives with conventional random access memory (“RAM”), and implements a device driver which permits dual-inline memory modules (“DIMM”) to emulate, or appear to the host operating system as if they are, standard Serial ATA (“SATA”) hard disk drives.
In discussions with other interested computer users, it occurred to the inventor that a general-purpose solution was needed which could be easily implemented by enhancing existing Basic Input Output Systems (“BIOS”) with the requisite features.
That solution can be briefly summarized in the following steps:
(1) Enhance the BIOS to perform 3 special functions not currently performed by the vast majority of BIOS software currently installed on PCs throughout the world:
(a) format a user-defined subset of RAM as a standard file system partition, beginning at a physical memory address equal to zero or greater than zero;
(b) restore to that partition a drive image that presently stores a stable set of system software previously installed onto a conventional rotating disk drive; and,
(c) update the BIOS settings to recognize this newly loaded ramdisk partition as one which can be used to boot the operating system into standard operating mode.
Some of the pieces required to accomplish the above results are already available in existing commercial software products.
Specifically, drive imaging software like Symantec’s GHOST has become rather essential to any serious computer system development project.
The inventor now makes regular use of drive imaging software, particularly whenever routine updates of the host operating system are downloaded from the Internet website of that popular OS vendor.
Thus, installing that popular OS, and creating a drive image of a stable set of OS and application software, are now rather routine tasks with which the inventor is quite experienced and familiar.
During the recent Thanksgiving Holiday, the inventor summarized his general-purpose solution as follows, in an email message transmitted to an engineer at one of the world’s most famous CPU manufacturers:
This is where a BIOS option would be most useful i.e.
to format the lower RAM subset for the system partition;
once formatted, this boot process would proceed
to load operating system software from something like a
special image file and write it into that system partition.
Once that task if finished, from that point forward
the boot process runs normally to completion.
Because of its large installed base, in what follows the full system development sequence is explained using Microsoft’s Windows XP x64 operating system as one among several other host operating systems that could also exploit such a development, to great advantage:
(A) run Windows XP x64 Setup normally to completion with a stable set of system software i.e. by loading XP onto a disk drive partitioned with XP drive letter C:;
(B) run a preferred drive imaging program e.g. Symantec’s GHOST and save a drive image file of C: to an optical disk or existing disk drive partition e.g. using drive letter D:+ ;
(C) enhance the BIOS to perform 3 special functions which are new yet analogous to the FLASH BIOS functions now available on recently manufactured PC motherboards:
(i) format a user-defined subset of RAM as a standard NTFS file system partition, beginning at a physical memory address equal to zero (“lower-most subset”), or greater than zero (“upper-most subset”);
(ii) restore to that partition a drive image that presently stores a stable set of XP system software previously installed onto a conventional rotating disk drive;
(iii) update the BIOS settings to recognize this newly loaded ramdisk partition as one which can be used to boot the Windows XP x64 operating system into standard operating mode; and,
(D) save changes and exit the BIOS normally, permitting the boot-up sequence to run to completion by assigning boot device priority to this ramdisk.
There are lots of implementation details to be addressed here: one of the most important is that the BIOS must also host a device driver that provides “native” support for emulating a standard SATA storage device, using this ramdisk instead of a rotating disk drive.
The “RamDisk Plus” product developed and sold by SuperSpeed LLC in Sudbury, Massachusetts, currently performs a very similar kind of emulation. The inventor installed RamDisk Plus software on his production workstation, and configured a 512 megabyte RamDisk to host the Windows IE7 browser cache. This upgrade works amazingly well.
Another important implementation detail is that the entire OS code and OS database may need to be implemented so both are "relocatable".
For example, in this scheme such a relocatable property might be required if XP loading begins at the next memory address after the last memory address assigned to the C: system partition, instead of starting to load XP at memory address zero where it normally begins to load.
Some of these implementation details cannot be accurately anticipated at the time the instant patent application is first filed, however. They will need to be discovered and solved at the time these BIOS enhancements are actually programmed and tested.
The latter problem may be partially or fully solvable using modern central processors that support machine virtualization and function with operating systems that are compatible with such virtualization.
The solution may also be as simple as writing a one-time “offset” in the logical-to-physical address translation tables that are managed by modern central processing units (“CPU”). Thus, what “looks like” physical address zero to the operating system and to all application software is really a physical address that is greater than zero.
If the latter is not commercially feasible, or if it turns out to be cost-prohibitive, the whole sequence above could be easily modified to format a user-defined subset of RAM as an NTFS partition that occupies the upper-most subset of RAM, instead of the lower-most subset of RAM.
If the upper-most subset of RAM is used, the whole situation is simplified by utilizing the BIOS to limit the amount of raw physical RAM which is visible to the operating system during boot-up, in the same manner in which existing BIOS software measures and saves the amount of physical memory before an operating system begins to boot from its system partition.
Nevertheless, whether specific machine virtualization technology and/or whether rendering specific system software relocatable will be absolutely necessary are topics that are not the subject of this particular patent application.
The BIOS alterations which the inventor believes are new concern the three generic enhancements that are itemized at (C) above.
Of course, those enhancements must be implemented by means of specific programming decisions that will be necessary for specific combinations of computer hardware, system software and application software that can now be anticipated for future prototypes assembled to demonstrate these enhancements and their far-reaching consequences.
Subsequent inventions may need to be tested and perfected before these desired BIOS alterations will work as conceived and documented here.
Thank you very much for your consideration.
/s/ Paul A. Mitchell, Inventor and
Systems Development Consultant
All Rights Reserved without Prejudice