摘要:
Methods and systems to support XML-based consoles in pre-boot and post OS execution environments. In an embodiment, during pre-boot, XML console in and console out interfaces are loaded, and corresponding API's are published to enable use of the interfaces by various firmware and software components. An XML schema is employed to provide templates for system management console user interface screens and to map various system components to corresponding settings and related data. A system management console host application is run on a remote host or the local system. XML content is passed between the system and the console host application via the XML console interfaces. The XML content is used to generate user interfaces via the console host application and to identify user navigation/menu selection within the user interface screens. The XML console interfaces are also available during OS runtime and OS afterlife, enabling a seamless integration between console appearance during pre-boot, OS runtime, and afterlife.
摘要:
Methods for providing and extracting hidden information in firmware images using steganographic processes. Information is hidden in binary firmware images, such as drivers, using a steganographic process in which the functionality of the binaries do not change, and the size is not increased. During a pre-boot phase of a computer system, binary firmware drivers containing hidden steganographic data are identified, and a steganographic extraction process is performed to extract the hidden data. In one embodiment, a hash is employed on an authentic binary image to uniquely identify the op code content. The digest from the hash is stored in the steganographic data. In one embodiment, a vendor's private key and optional signature is used to encrypt the hash. A similar hash is performed on the binary image of a discovered binary firmware driver, and the authentic hash digest is extracted from the steganographic data. The hash digests are compared to authenticate the binary firmware driver.
摘要:
A system and method is described that takes an existing operating system (OS) level driver and transforms it into a firmware extension, in one embodiment, for the extensible firmware interface (EFI). In one embodiment, an existing driver is stored in flash memory, without modification. When initializing the system, a mapping driver examines this image. Based on a determined image format and subtype, it is known whether the existing driver is compatible with Linux, Windows, fcode, or another type. Based on the type, the mapping driver either fills in the blanks and maps directly to the EFI services, or rewrites some of the flash with binary (in memory). The driver is typically compressed when in flash memory. Once the OS is booted, the OS uses its own driver.
摘要:
An embodiment of the present invention bridges event data from the pre-boot environment to the operating system runtime environment. Event logs are stored in a memory buffer during pre-boot. Prior to launching the operating system (OS), the event log is registered to a known memory location accessible to the OS. A preferred embodiment uses the extensible firmware interface (EFI) configuration table to store the event log. A globally unique identifier (GUID) may be used to identify the memory buffer location. Once accessible to the OS, the event data may be displayed using standard extensible Markup Language (XML) forms, or via any other desired method.
摘要:
A method and system to access the firmware of a remote computer via a trusted process. The remote computer receives a request to perform a firmware service from a caller computer via a network. The caller computer and remote computer then interact to authenticate the caller computer, and, optionally, the remote computer. If authentication is successful, the firmware service is performed by the remote computer, otherwise access to the firmware service is denied. A cipher negotiation may also be employed to agree upon an encryption scheme to be used to encrypt and decrypt data traffic sent between the caller and remote computers. In one embodiment, the operations of the method are performed via execution of firmware of the remote computer that is configured in accordance with the Extensible Firmware Interface (EFI) framework standard.
摘要:
A method and apparatus for managing memory usage. Whether a file stored on a user/hardware accessible portion of a non-volatile memory device in a computing system has been accessed within a predetermined period is determined. If the file has not been accessed within the pre-determined period, the file is purged to enable the recovery of storage space in the user/hardware accessible portion of the non-volatile memory device being occupied by unused or infrequently accessed files.
摘要:
Methods, apparatus, and systems for sharing resources across a plurality of computing platforms. Firmware provided on each platform is loaded for operating system runtime availability. Shared resources are presented to operating systems running on the platforms as local resources, while in reality they are generally hosted by other platforms. An operating system resource access request is received by a requesting platform and rerouted to another platform that actually hosts a target resource used to service the resource access request. Global resource maps are employed to determine the appropriate host platforms. Communications between the platforms is enabled via an out-of-band (OOB) communication channel or network. A hidden execution mode is implemented to effectuate data rerouting via the OOB channel such that the method is performed in a manner that is transparent to operating systems running on the platforms. The shared resources include storage, input, and video devices. The method can be used to support shared KVM (keyboard, video and mouse) resources.
摘要:
Methods and systems for allocating address space resources to resource requesting peripheral devices in an efficient manner. Resource requests are gathered for enumerated peripheral devices host by a computer platform. A map containing resource alignment requirements is built, and a virtual resource allocation map is computed based on aggregated resource requests and the alignment requirements. The resource aggregations are, in turn, based on a hierarchy of the peripheral devices. A bin-packing algorithm is employed to determine allocation of the resource requests so as to minimize resource address space allocations. The virtual resource map is then used to perform actual resource allocations. The resources include peripheral device I/O address allocation and peripheral device memory address allocations.
摘要:
A computer system is disclosed. The computer system includes a storage device, a device controller and a chipset. The device controller includes lock registers having values that correspond to the ranges of locked sectors of the storage device. The lock registers verify if a storage device access request is targeted for ranges of sectors of the storage device that are locked. The chipset includes an embedded controller to authenticate the storage device access request and to manage configuration of the storage device.
摘要:
Systems and methods are described herein to provide for device driver isolation from a host operating system on a computing device. Other embodiments include apparatus and system for control of two or more virtual machines, each of the virtual machines isolated from all other virtual machines. Further embodiments include methods for executing an operating system wherein the device driver is isolated from the operating system. Other embodiments are described and claimed.