Quandary Peak Research expert Dr. Shahin Nazarian was deposed in several IPR cases on March 15, March 16, April 4 and April 6, 2016. He was the lead testifying expert witness on six contested patents. Nazarian was asked to opine on the invalidity of US patents 6,519,659, 6,487,656, 6,633,976, 6,373,498, 6,401,202, and 6,892,304. Nazarian drew on his industrial and research skills in OS and firmware design and development from both hardware and software domains. He was engaged by Stadheim & Grear, who represented the patent owner, Kinglite Holdings Inc., against the petitioners, American Megatrends, Inc., Micro-Star International Co., Ltd, MSI Computer Corp., Giga-Byte Technology Co., Ltd., and G.B.T., Inc.

US 6,519,659: Method and System for Transferring an Application Program from System Firmware to a Storage Device

Basic Input and Output System (BIOS) firmware is the software shipped on a BIOS ROM or FLASH chipset with a PC system. Firmware is the ROM-based software that controls a computer between the time it is turned on and the time the primary OS (operating system) takes control of the machine. Firmware’s responsibilities include testing and initializing the hardware, determining the hardware configuration, loading or booting the OS, and providing interactive debugging facilities in case of faulty hardware or software.

This patent discloses a system and a method to deliver applications from system firmware to a storage device without the need for or availability of an OS and/or a directory service. Prior to booting an OS on the processor-based system, the stored instruction sequences cause the processor to write the contents of a storage element to the storage device.

This patent also teaches a system and a method to endow remote communication with a service computer to provide the user computer access a database. The method first writes the contents of at least one storage element to a memory of the user computer in advance to boot-up. It then establishes communication between the user computer and the service computer to offer the available information to the user computer.

US 6,487,656: System and Method for Providing Functionalities to System Bios

The BIOS in the early systems such as IBM PC and XT had no built-in user interface. Instead, users set the options via DIP switches on the motherboard. Later computers, including all IBM-compatibles with 80286 CPUs, had a battery-backed nonvolatile BIOS memory (CMOS RAM chip) that held the BIOS settings.

These settings, such as video-adapter type, memory size, and hard-disk parameters could only be configured by running a configuration program from a disk, not built into the ROM. A special “reference diskette” was inserted in an IBM AT to configure settings such as memory size.

Later, 386-class computers started integrating the BIOS setup utility in the BIOS ROM itself, alongside the BIOS code. These computers usually boot into the BIOS setup utility if a certain key or key combination is pressed, otherwise BIOS POST and boot process are executed. CMOS RAM memory saves the BIOS settings between power-ups and also records real time clock (RTC) clock data 1024 times a second whether the PC is powered on or off. CMOS-RAM cannot be used to store anything except this specific BIOS and clock configuration data.

The BIOS settings stored by default in CMOS RAM may be chosen by an OEM (original equipment manufacturer) or computed by routines in BIOS ROM. All default settings including the determination of bootable devices must occur before a BIOS setup utility can display them as zero terminated ASCII strings (ASCIIZ).

These settings can be displayed and modified by a BIOS setup utility if initiated by a user with some “hot key” combination, at the time of boot-up. For example, a user can modify boot order, assign boot drives, and set advanced features that BIOS routines will read from CMOS RAM on subsequent reboot. An OEM may use an underneath program to provide additional functionalities and advanced features to a BIOS setup utility. A user “hot key” intervention interrupts the BIOS routines, and starts the BIOS setup utility, which may or may not continue with OS boot when exited. When users exit CMOS Setup they are asked whether or not they want to save changes. Saving changes or writing into BIOS may cause the system to reboot. Not saving changes generally allows the BIOS boot to continue from the point it was interrupted. Any changes committed to CMOS RAM will not be used or implemented by BIOS until a subsequent power-up. The BIOS ROM subsequently reads the settings in CMOS RAM during the system initialization.

This patent discloses a technique to provide functionalities to system BIOS in a simple, elegant and flexible manner. An interface module is provided, which enables various parties such as PC system manufacturers and motherboard manufacturers to provide additional system BIOS functionalities with minimal impact to the system BIOS code. The technology embeds an interface module to the system BIOS to receive a request from the system BIOS to perform a task. The interface module translates the system device information associated with the task to provide translated information to the corresponding module. This invention also presents an efficient routine to provide and display the system device information.

US 6,633,976: Method of Storing Bios Modules and Transferring Them to Memory for Execution

The general field of technology of BIOS has been based on storing the BIOS program in a nonvolatile memory. The program would operate to initialize a computing system when powered on. This patents presents methods to utilize multiple memory modules to store the BIOS program in pieces, and also selective transfer of the BIOS modules into RAM in runtime.

Dr. Nazarian believes this technology also provides the system with higher protection and more efficiency during the BIOS operation. The fact that the BIOS system can be in a separate memory outside the hard disk, can provide the option of exclusively dedicating a memory module, to BIOS. This supports the system to create a more secure firewall for outsider attack on BIOS. Furthermore, the modularity of the BIOS storage, means that those BIOS memory modules can be designed to be small memories. This in turn means faster access for BIOS operation.

A system with the suggested BIOS implementation in this patent, would benefit from simpler upgrades on BIOS program, as needed in the future, because of the fact that the modules are fairly independent, and only linked during runtime, therefore any future necessary modifications to BIOS, would be easier to implement. This is because the BIOS modules can be structurally related using input and output arguments, rather than being part of one piece of code. This helps with faster runtime, as well as simpler modification, debugging and maintenance of the BIOS code, when necessary.

US 6,373,498: Displaying Images During Boot-Up and Shutdown

While a computer powers on or off, an image stored in a predetermined location in the system firmware or directory is displayed during the operating system (OS) transition. The system capabilities of a PC during transition of an OS are significantly different than the traditional graphics environment of a PC under the control of an OS. In particular media output on a PC depends upon drivers that control the graphical display.

Generating a media output can be performed in a number of ways. If the graphic object is represented by bit-mapped graphic data, a graphic engine can read the bit-mapped pixels directly and renders the appropriate colors according to the pixel values. If the graphic object is formed by a series of vector operations, the graphic controller can perform vector-generating operations sequentially.

Traditional methods usually generate the image directly from the graphic object. These methods suffer from a number of drawbacks. First, it is difficult to update the graphic objects, especially when only a portion of the image set needs to be updated. Second, they require more storage to organize the graphic object. Third, they do not provide a flexible way to render the image such as mixing different image characteristics (e.g., color, layout). Therefore, a PC during transition of an OS has very limited resources and time to generate a media output.

This patent unveils an apparatus and a process of displaying images during OS boot-up and shutdown. The images would include useful information that corresponds to the user profile. The image is therefore generated based on the data gathered regarding such preferences.

Considering the long waiting time during the OS transitions, this invention would allow useful information to be advertised to the user in such periods. The content displayed to the user is downloaded from an infomediary server based on profiles of the user and the user’s computer system. The downloaded content may be stored in a system firmware or a mass storage media of the computer system.

US 6,401,202: Multitasking During Bios Boot-Up

A computer system generally comprises at least one processor and a memory that holds the executable code that needs to be run by the processor. As the computer system is powered up for the first time, its processor first executes BIOS, a built-in program to initialize and test the devices. The BIOS boot-up time depends on the BIOS tasks, as well as the types of the processor, memory and the interfaces. The goal of this patent is to provide the user with useful or interesting information during the boot-up time and also during the shut-down of the system.

To increase the performance of computing systems, multiple tasks (also processes, or threads) can be performed in parallel over a certain period of time by executing them concurrently. New tasks start and may interrupt an already started task before it has reached completion, instead of executing the tasks sequentially so each started task needs to reach its end before a new one is started. As a result, a computer executes segments of multiple tasks in an interleaved manner, while the tasks share common processing resources such as central processing units (CPUs) and main memory.

This patent discloses a technology that offers efficient multitasking during BIOS boot-up. In a two-task scenario, one task can be performed between successive interrupt times. At every interrupt time, the corresponding interrupt signal(s) is enabled. In response to the interrupt signal(s) another task can be performed. This arrangement can be extended to more than two tasks.

US 6,892,304: System and Method for Securely Utilizing Basic Input and Output System (BIOS) Services

This patent discloses methods, a system and computer-readable programs, for a user mode application to utilize the restricted BIOS services securely by generating a secure service request based on asymmetric cryptography (using public and private keys).

The computing system includes components that may generate service request to utilize BIOS services. Those services can be secured by adding a service request signature which is created using a private key in a cryptographic key pair. To ensure the BIOS service request integrity, the system includes an interface to verify the service request signature using a public key.

In one embodiment of the invention, the generation of a hash value is outlined for a constructed message. The hash value and a private key stored in an authority certificate are applied to generate a digital signature, which would be inserted into a service request. It also describes the acts required to process the service request.