Patents Assigned to Phoenix Technologies Ltd.
  • Patent number: 10831506
    Abstract: Approaches for locally attesting an operational condition of a computer system during powering on the computer system. Prior to an operating system being loaded, an attestation client, executing on a computer system, analyzes a set of resources of the computer system to create measurement data. The attestation client provides the measurement data to an attestation server executing in a secure enclave on the computer system. The attestation server processes the measurement data and provides the processed measurement data to a remediation server. Upon the computer system being determined to be operationally healthy, the remediation server provides an unlock key to a locked persistent storage to permit the computer system to read the operating system stored on the persistent storage. Thereafter, a BIOS on the computer system may read the operating system and permit the same to be loaded on the computer system.
    Type: Grant
    Filed: April 5, 2018
    Date of Patent: November 10, 2020
    Assignee: Phoenix Technologies Ltd.
    Inventors: James L. Mortensen, Kenneth C. Taylor
  • Patent number: 10496853
    Abstract: Approaches for securing a host machine against security attacks conducted using Direct Memory Access (DMA). Platform firmware does not enable bus mastering during PCI bus enumeration. When the platform firmware determines that an expansion card has been plugged into an expansion card slot of the host machine, the platform firmware determines whether the expansion card slot has been approved by a user of the host machine for permitting Direct Memory Access (DMA) with the host machine. Unless the expansion card slot has been determined to be approved by the user for permitting Direct Memory Access (DMA) with the host machine, the platform firmware does not allow drivers that might enable DMA to connect to the device and does not grant permission to the expansion card slot and any upstream bridges to conduct Direct Memory Access (DMA) with the host machine.
    Type: Grant
    Filed: June 30, 2017
    Date of Patent: December 3, 2019
    Assignee: Phoenix Technologies Ltd.
    Inventors: Kenneth C. Taylor, James L. Mortensen
  • Patent number: 10262309
    Abstract: Approaches for augmenting a BIOS with a new program. A BIOS provides an interface through which a user may select one or more programs from a plurality of offered programs. When the BIOS receives input from the user that selects a particular program, the BIOS retrieves, over a network, the particular program. Received applications may be stored in the BIOS or in a hidden file that the BIOS can also access without booting the operating system. An online application store can offer applications that are signed by the BIOS issuer as being approved for plug-in applications for use in a pre-boot or post-boot environment.
    Type: Grant
    Filed: February 11, 2013
    Date of Patent: April 16, 2019
    Assignee: Phoenix Technologies Ltd.
    Inventors: Steven Chan, Dan Kikinis
  • Publication number: 20180209766
    Abstract: A system for attaching a firearm accessory to a sight base including a first bore in the sight base, a second bore in the accessory body and a bushing inserted into the second bore. A bushing is inserted into the second bore and is held in place with one or more protrusions located on the sight base near the first bore and/or a screw inserted into a bore in the bushing. The bushing allows the accessory body to rotate in a plane that is perpendicular to the first and second bores. A screw inserted into a third bore that communicates with the second bore allows a screw to engage the exterior surface of the bushing featuring grooves that define positions to which the accessory body can be rotated. The accessory body's rotation can also be stopped using a groove on the accessory body that is engaged by another protrusion featured by the sight base.
    Type: Application
    Filed: January 15, 2018
    Publication date: July 26, 2018
    Applicant: PHOENIX TECHNOLOGY, LTD
    Inventor: ZELJKO VESLIGAJ
  • Patent number: 9846584
    Abstract: Techniques for selectively permitting a device to boot an operating system. Before any operating system is loaded on the device, a BIOS component analyzes a set of files residing on the device to create state data that describes a current state of the set of files. This enables the state data to identify whether any files have been unexpectedly modified or are outdated. The BIOS component attempts to send the state data to a server over a network. The BIOS component then determines whether to permit the device to boot the operating system based on whether the network was detected and on the contents of any response, sent by the server, responsive to the state data.
    Type: Grant
    Filed: January 29, 2014
    Date of Patent: December 19, 2017
    Assignee: Phoenix Technologies Ltd.
    Inventors: Eugene Khoruzhenko, James Leonard Mortensen
  • Patent number: 9690596
    Abstract: Approaches for firmware-based runtime operating system switch. UEFI firmware receives a request to switch an active operating system on a device from a first operating system to a second operating system. The UEFI firmware changes the operational state of the first operating state to an ACPI S3 state. The UEFI firmware performs a set of ACPI S3 resume boot path operations on the second operating system to cause the second operating system to become the active operating system. The set of ACPI S3 resume boot path operations may be performed while the second operating system is loaded into a memory area inaccessible to the first operating system and the first operating system remains in the ACPI S3 state.
    Type: Grant
    Filed: September 2, 2015
    Date of Patent: June 27, 2017
    Assignee: Phoenix Technologies Ltd.
    Inventor: Franklin Chuang
  • Patent number: 9389878
    Abstract: Approaches for managing pre-boot drivers, programs, and data. A BIOS, operating in a pre-boot environment, establishes a connection to a remote server. The BIOS determines whether the server has any updates to be performed to the BIOS using the connection. The BIOS may also perform a discovery process to discover devices operationally connecting to the BIOS and load drivers associated therewith. Update to the BIOS may include multi-media content that is displayed or played during a booting process.
    Type: Grant
    Filed: August 11, 2015
    Date of Patent: July 12, 2016
    Assignee: Phoenix Technologies Ltd.
    Inventors: Steven Chan, Dan Kikinis
  • Patent number: 9292411
    Abstract: A debug control system and method thereof which includes a debug device and a wireless communication module. The debug device is configured to communicate electrical data with a target device via a first signal transmission interface. The wireless communication module is configured to communicate electrical data with the debug device via a second communication interface, and is configured to communicate electrical data with a host device. Electrical data exchanged between the debug control system and the target device is configured to debug or update firmware residing on the target device.
    Type: Grant
    Filed: March 7, 2013
    Date of Patent: March 22, 2016
    Assignee: Phoenix Technologies Ltd.
    Inventor: Chia Chien Chuang
  • Patent number: 9110744
    Abstract: Techniques for firmware providing a simulated system management mode (SMM) while being executed by a non-x86 platform, such as an ARM platform. In response to receiving a service call from an OS interface driver, the firmware may determine a requested service identified by the service call. Thereafter, the firmware may identify an appropriate service handler to perform the requested service. After the appropriate service handler performs the requested service, the appropriate service handler notifies the OS interface driver. Since the SMM is emulated by the firmware, the firmware may execute on an x86 platform or a non-x86 platform, such as an ARM platform.
    Type: Grant
    Filed: September 2, 2011
    Date of Patent: August 18, 2015
    Assignee: Phoenix Technologies Ltd.
    Inventor: Timothy A. Lewis
  • Patent number: 9110678
    Abstract: Approaches for updating a BIOS over a network without human intervention. A BIOS, executing on a machine, is configured to execute a program prior to booting an operating system executing on the machine. The program communicates with a server over a network to determine if an update to the BIOS is available. The update may be a new version of the BIOS and/or multi-media content, such as an advertisement. If an update is available, the update is downloaded to the machine and automatically installed without human intervention.
    Type: Grant
    Filed: February 11, 2013
    Date of Patent: August 18, 2015
    Assignee: Phoenix Technologies Ltd.
    Inventors: Steven Chan, Dan Kikinis
  • Patent number: 9110679
    Abstract: Approaches for managing pre-boot drivers, programs, and data. A BIOS, operating in a pre-boot environment, establishes a connection to a remote server. The BIOS determines whether the server has any updates to be performed to the BIOS using the connection. The BIOS may also perform a discovery process to discover devices operationally connecting to the BIOS and load drivers associated therewith. The BIOS may also establishes a wireless connection to a device, such as a phone, while the BIOS operates in a pre-boot environment. The BIOS may provide, using the connection, the device with access to data stored upon the apparatus, such as picture files, music files, video files, documents, emails, and other media files or objects stored on said device.
    Type: Grant
    Filed: February 11, 2013
    Date of Patent: August 18, 2015
    Assignee: Phoenix Technologies Ltd.
    Inventors: Steven Chan, Dan Kikinis
  • Patent number: 8972210
    Abstract: A power management module electrically coupled between an AC/DC switching power supply and an electronic apparatus comprises a memory device, voltage and current detecting units, a writing unit, and an alarm signal generation unit. The memory device generates an output data to the electronic apparatus. The voltage and current detecting units detect voltages and currents of the output terminals of the switching power supply, respectively. The writing unit writes a new input data and the voltage and current data to the memory. The alarm signal generation unit generates an alarm signal to the electronic apparatus according to the data stored in the memory device and according to the operation condition of the switching power supply.
    Type: Grant
    Filed: February 14, 2011
    Date of Patent: March 3, 2015
    Assignee: Phoenix Technologies Ltd.
    Inventor: Abel Yang
  • Patent number: 8918907
    Abstract: Techniques for determining whether firmware should trust an application sufficiently so as to provide a service to the application. Firmware, executing on a device, receives an indication that an application, also executing on the device, is requesting a service provided by the firmware. The firmware obtains (a) an operating system signature associated with the application and (b) a firmware signature associated with the application. The operating system signature is a signature that is used by the operating system, executing on the device, to authenticate the application, while the firmware signature is a signature that is used by the firmware to authenticate the application. If the firmware determines that the operating system signature matches the firmware signature, then the firmware storing trust data that permits the application to access the service provided by the firmware. The firmware need not calculate a signature based on the in-memory image of the application.
    Type: Grant
    Filed: April 13, 2011
    Date of Patent: December 23, 2014
    Assignee: Phoenix Technologies Ltd.
    Inventor: Timothy A. Lewis
  • Patent number: 8874892
    Abstract: Approaches for assessing information used in reverting to a prior BIOS version. A BIOS analyzes a file to determine whether the file may be used to revert the BIOS to a prior version of the BIOS. The file may contain a map of CMOS information.
    Type: Grant
    Filed: February 11, 2013
    Date of Patent: October 28, 2014
    Assignee: Phoenix Technologies Ltd.
    Inventors: Steven Chan, Dan Kikinis
  • Patent number: 8726258
    Abstract: Approaches for customizing a unified extensible firmware interface (UEFI) compatible firmware component to support multiple hardware components. The UEFI compatible firmware component may be implemented by linking one or more executive drivers created in an executive module of the firmware component. The executive drivers, instead of platform drivers, are executed by UEFI dispatchers. The platform module, rather than being a collection of drivers, functions as a platform library that links to the executive drivers. One or more programs for providing one or more library functions to the one or more executive drivers are also linked into the firmware component. Call outs to board library functions provided by a board module are implemented in the executive drivers, instead of drivers of the platform module. The board library functions replace the one or more library functions provided to the executive drivers and reflect a change in a customer reference board (CRB).
    Type: Grant
    Filed: April 14, 2011
    Date of Patent: May 13, 2014
    Assignee: Phoenix Technologies Ltd.
    Inventor: James L. Mortensen
  • Patent number: 8601255
    Abstract: Approaches for updating a Basic Input/Output System (BIOS) program used in a computer system. The computer system includes a central processing unit (CPU) and a non-volatile memory. The non-volatile memory is used to store the BIOS program, and the BIOS program includes a booting area and a program area for storing a first BIOS image file. The update method includes: duplicating a second BIOS image file from an external storage device of the computer system to a designated area of an internal non-volatile storage device of the computer system; changing a flag from a first status to a second status after the duplication is completed; checking the status of the first BIOS image file when the computer system is booted; and booting the computer system by the first BIOS image file or the second BIOS image file according to the status of the first BIOS image file.
    Type: Grant
    Filed: May 11, 2011
    Date of Patent: December 3, 2013
    Assignee: Phoenix Technologies Ltd.
    Inventor: Abel Yang
  • Patent number: 8560822
    Abstract: Approaches for a pre-boot operating environment. A BIOS, executing on a machine, is configured to execute a program prior to booting an operating system executing on the machine. Prior to loading an operating system on the machine, the program executes to establish a pre-boot operating environment. The pre-boot operating environment may support the execution of one or more application therein. The pre-boot operating environment may be a Linux-style or Unix-style operating environment.
    Type: Grant
    Filed: February 11, 2013
    Date of Patent: October 15, 2013
    Assignee: Phoenix Technologies Ltd.
    Inventors: Steven Chan, Dan Kikinis
  • Patent number: 8490116
    Abstract: Techniques for supporting legacy VGA video using UEFI standard and extended UEFI graphics drivers. When an operating system that does not natively support the UEFI display protocols requires video services provided by firmware, the operating system communicates a request for video services to a generic video option ROM. The generic video option ROM notifies a generic video SMM driver of the request for video services. Such notification may be performed using a software system management interrupt (SMI). Upon notification, the generic video SMM driver notifies a third party UEFI video driver of the request for video services. The third party video driver provides the requested video services to the operating system. In this way, a third party UEFI graphics driver may support a wide variety of operating systems, even those that do not natively support the UEFI display protocols.
    Type: Grant
    Filed: July 25, 2011
    Date of Patent: July 16, 2013
    Assignee: Phoenix Technologies Ltd.
    Inventors: Charles Marion Ueltschey, III, Timothy Andrew Lewis
  • Patent number: 8484631
    Abstract: A method and apparatus for providing support for customization of a build configuration of a Unified Extensible Firmware Interface (UEFI) compatible component. The method includes modifying the build configuration of the UEFI compatible component to reflect modifications to a first file. A configuration parameter is received. The configuration parameter is used to create a configuration parameter symbol pointing to the first file. The first file is replaced with a second file, which includes modifications to the first file. The modifications support a functionality desired by a user.
    Type: Grant
    Filed: March 30, 2011
    Date of Patent: July 9, 2013
    Assignee: Phoenix Technologies Ltd.
    Inventor: James L. Mortensen
  • Patent number: 8321656
    Abstract: Methods, systems, apparatuses and program products are disclosed for providing timer use and timer based execution parallelism during the DXE phase of computer start-up. Provision is made for loading a microkernel (or other kernel program) which presents itself as though it were a DXE Driver and changes a single threaded environment into a multithreaded environment.
    Type: Grant
    Filed: September 24, 2009
    Date of Patent: November 27, 2012
    Assignee: Phoenix Technologies Ltd.
    Inventor: Stephen E. Jones