G06F13/1663

LICENSE MANAGEMENT IN PRE-BOOT ENVIRONMENTS

Systems and methods for enabling license management in pre-boot environments are described. In some embodiments, a method may include: loading, by a Basic System Input/Output (BIOS) of an Information Handling System (IHS), prior to the booting of any Operating System (OS) by the IHS, a license manager Unified Extensible Firmware Interface (UEFI) driver; and executing, by the BIOS, a command received from a component or device coupled to the IHS following a license management protocol provided by the UEFI driver, where the command is to obtain or verify license data.

Memory device for providing data in a graphics system and method and apparatus thereof

A central processor unit (CPU) is connected to a system/graphics controller generally comprising a monolithic semiconductor device. The system/graphics controller is connected to an input output (IO) controller via a high-speed PCI bus. The IO controller interfaces to the system graphics controller via the high-speed PCI bus. The IO controller includes a lower speed PCI port controlled by an arbiter within the IO controller. Generally, the low speed PCI arbiter of the IO controller will interface to standard 33 MHz PCI cards. In addition, the IO controller interfaces to an external storage device, such as a hard drive, via either a standard or a proprietary bus protocol. A unified system/graphics memory which is accessed by the system/graphics controller. The unified memory contains both system data and graphics data. In a specific embodiment, two channels, CH0 and CH1 access the unified memory. Each channel is capable of accessing a portion of memory containing graphics data or a portion of memory containing system data.

Method of managing consistency of caches
09734065 · 2017-08-15 · ·

The present invention relates to a method of transmitting a message comprising an integrity check and a header, between two processing units via a shared memory, comprising steps of: —generation (501), by a first processing unit, of a first pseudorandom binary string; —encryption (502) of the message to be transmitted by applying an involutive transformation dependent on the first pseudorandom binary string generated; —transmission and storage (503) of the encrypted message in the shared memory; —generation (504), by the second processing unit, of a second pseudorandom binary string; —decryption of the message stored by applying an involutive transformation dependent on the second pseudorandom binary string, and by decrypting the header (505) of said message, by verifying the decrypted header (505), and as a function of the result of the verification, by decrypting the complete message (506); —verification (507) of the integrity of the decrypted message on the basis of its integrity check.

Resetting memory locks in a transactional memory system

A method for resetting of memory locks in a transactional memory system. The method includes a processor setting at least one new memory lock during execution of a transaction that acquires access to a region of memory. The new memory lock indicates that the transaction and its associated thread have exclusive temporary access to the memory region. The method further includes determining if a first in first out (FIFO) memory lock register is full of memory locks and, in response to the FIFO memory lock register being full, a memory lock is removed from a tail position of the FIFO memory lock register. The removed memory lock is reset to return to a transactional memory state and the new memory lock is added to a head position in the FIFO memory lock register.

SYSTEM, APPARATUS, AND METHOD FOR SCHEDULING METADATA REQUESTS

In one embodiment, an apparatus includes a memory and a scheduler. The scheduler is coupled to the memory and a memory controller. The memory stores a plurality of metadata requests. Each of the plurality of metadata requests is associated with one of a plurality of metadata priority levels. The scheduler schedules transmission of a first metadata request of the plurality of metadata requests to the memory controller based at least in part on a first metadata priority level associated with the first metadata request and a first bandwidth portion of a metadata request bandwidth. The first bandwidth portion is associated with the first metadata priority level. Other embodiments are described and claimed.

NETWORK INTERFACE CARD CONFIGURATION METHOD AND RESOURCE MANAGEMENT CENTER
20170228337 · 2017-08-10 ·

A network interface card configuration method and a resource management center are provided. According to the method, after obtaining a network interface card allocation request of an operating system that runs in a first CPU core, a resource management center selects, from M physical network interface cards and based on a network parameter of a network service required by the operating system, a target physical network interface card that conforms to the network parameter. Further, the resource management center selects at least one target hardware queue from each target physical network interface card and sends a command message to a network interface card controller. After receiving queue information of the target hardware queue from the network interface card controller, the resource management center send an instruction message to a CPU controller on a CPU board to instruct the CPU controller to construct a virtual network interface card.

RELAY MECHANISM TO FACILITATE PROCESSOR COMMUNICATION WITH INACCESSIBLE INPUT/OUTPUT (I/O) DEVICE

A method includes transmitting, by a first processing device, a signal to a second relay processing device. The signal includes a message for the second relay processing device to transmit a read command and/or a write command to an I/O device that is not accessible by the first processing device. The method also includes receiving, by the first processing device, an indication that the second relay processing device has transmitted the read command and/or the write command to the I/O device.

Hardware first come first serve arbiter using multiple request buckets
09727499 · 2017-08-08 · ·

A First Come First Server (FCFS) arbiter that receives a request to utilize a shared resource from a plurality of devices and in response generates a grant value indicating if the request is granted. The FCFS arbiter includes a circuit and a storage device. The circuit receives a first request and a grant enable during a first clock cycle and outputs a grant value. The grant enable is received from a shared resource. The grant value communicated to the source of the first request. The storage device includes a plurality of request buckets. The first request is stored in a first request bucket when the first request is not granted during the first clock cycle and is moved from the first request bucket to a second request bucket when the first request is not granted during a second clock cycle. A granted request is cleared from all request buckets.

GROUPING REQUESTS TO REDUCE INTER-PROCESS COMMUNICATION IN MEMORY SYSTEMS
20220269551 · 2022-08-25 ·

A memory system having a set of media, a plurality of inter-process communication channels, and a controller configured to run a plurality of processes that communicate with each other using inter-process communication messages transmitted via the plurality of inter-process communication channels, in response to requests from a host system to store data in the media or retrieve data from the media. The memory system has a message manager that examines requests from the host system, identifies a plurality of combinable requests, generates a combined request, and provides the combined request to the plurality of processes as a substitute of the plurality of combinable requests.

System and method for event monitoring in cache coherence protocols without explicit invalidations
11237966 · 2022-02-01 · ·

Synchronization events associated with cache coherence are monitored without using invalidations. A callback-read is issued to a memory address associated with the synchronization event, which callback-read either reads the last value written in the memory address or blocks until a next write takes place in the memory address and reads a newly written value.