Abstract:
A method and an apparatus for performing an I/O device access using targeted security. A software object (350) is executed. A security level for the software object (350) is established. A multi-table input/output (I/O) space access is performed using at least one of the security levels. The function of the software object (350) is executed.
Abstract:
A communications system (10) includes a physical layer hardware unit (220) and a processing unit (110). The physical layer hardware unit (220) is adapted to communicate data over a communications channel (40) in accordance with assigned transmission parameters. The physical layer hardware unit (220) is adapted to receive an incoming signal over the communications channel (40) and sample the incoming signal to generate a digital received signal. The processing unit (110) is adapted to execute a standard mode driver (240) in a standard mode of operation and a privileged mode driver (250) in a privileged mode of operation. The standard mode driver (240) includes program instructions adapted to extract control codes (280) from the digital received signal and configure the physical layer hardware unit (220) assigned transmission parameters based on the control codes (280). The privileged mode driver (250) includes prograni instructions adapted to independently extract secure control codes (310) from the digital received signal, determine an operational characteristic of the physical layer hardware unit (220), and signal a security violation in response to the operational characteristic being inconsistent with the secure control codes (310).
Abstract:
A method and system for handling a security exception. The method includes creating a security exception stack frame (900) in secure memory at a base address. The method also includes writing a faulting code sequence address and one or more register values into the security exception stack frame (900), and executing a plurality of security exception instructions.
Abstract:
A communications system (10) includes physical layer hardware (180) and a processing unit (105). The physical layer hardware (180) is adapted to communicate data over a communications channel (40) in accordance with a plurality of control codes. The physical layer hardware (180) is adapted to demodulate an incoming analog signal to generate a digital receive signal and modulate a digital transmit signal to generate an analog transmit signal. The processing unit (105) is adapted to execute a privileged driver (190) for interfacing with the physical layer hardware (180). The privileged driver (190) includes program instructions for implementing a protocol layer (80) to decode the digital receive signal, encode the digital transmit signal, and configure the physical layer harware (180) for receipt of the digital receive signal and transmission of the digital transmit signal based on the plurality of control codes. A method for configuring a transceiver (50) includes demodulating an incoming analog signal to generate a digital receive signal based on a plurality of control codes; modulating a digital transmit signal to generate an analog transmit signal based on the control codes; and executing a privileged driver (190) for configuring the plurality of control codes.
Abstract:
A communications system includes a physical layer hardware unit (220) and a processing unit (100). The physical layer hardware unit (220) is adapted to receive user data over a first communications channel and control codes over a second communications channel. The physical layer hardware unit (220) is further adapted to transmit an upstream data signal over the first communications channel based on transmission assignments defined by the control codes. The processing unit (100) is adapted to execute a software driver (240) for interfacing with the physical layer hardware unit (220). The software driver (240) includes program instructions for implementing a protocol layer (80) to decrypt the user data and provide upstream data to the physical layer hardware unit (220) for generation of the upstream data signal. A method for configuring a transceiver (50) includes receiving user data over a first communications channel; receiving control codes over a second communications channel; and transmitting an upstream signal over the first communications channel based on transmission assignments defined by the control codes.
Abstract:
A method and system (400A-B) for performing the method is provided. The method includes executing an insecure routine and receiving a request from the insecure routine. The method also includes performing a first evaluation of the request in hardware, and performing a second evaluation of the request in a secure routine in software. The computer system (400A-B) includes a processor (404) configurable to execute a secure routine and an insecure routine. The computer system (400A-B) also includes hardware coupled to perform a first evaluation of a request associated with the insecure routine. The hardware is further configured to provide a notification of the request to the secure routine. The secure routine is configured to perform a second evaluation of the request. The secure routine is further configured to deny a requested response to the request.
Abstract:
A method and an apparatus for performing an I/O device access using targeted security. A software object (350) is executed. A security level for the software object (350) is established. A multi-table input/output (I/O) space access is performed using at least one of the security levels. The function of the software object (350) is executed.
Abstract:
A method and apparatus for restricting the execution of security sensitive instructions. A first security identification (ID) is associated with each of a plurality of instructions or a set of instructions that are to be executed by a processor (305). Software code running on the processor (305) requests to execute at least one of the plurality of instructions or set of instructions. The processor (305) obtains a second security ID associated with the software code running thereon and compares the second security ID with the first security ID. The processor (305) executes the requested instruction or set of instructions providing that the second security ID matches the first security ID.
Abstract:
A memory management unit (MMU) (602) is disclosed for managing a memory (406) storing data arranged within a plurality of memory pages. The MMU (602) includes a security check unit (416) receiving a linear address (102) generated during execution of a current instruction. The linear address (102) has a corresponding physical address residing within a selected memory page. The security check unit (416) uses the linear address (102) to access one or more security attribute data structures located in the memory (406) to obtain a security attribute of the selected memory page. The security check unit (416) compares a numerical value conveyed by a security attribute of the current instruction to a numerical value conveyed by the security attribute of the selected memory page, and produces an output signal dependent upon a result of the comparison. The MMU (602)accesses the selected memory page dependent upon the output signal.
Abstract:
A method and an apparatus for performing a virtual memory access. A software object (350) is executed. A security level for the software object (350) is established. A secondary table (430) is established. A memory access request based upon the executing of the software object (350) is received. At least one security level that corresponds to a segment in the secondary table (430) is determined. A match between an execution security level and a security level associated with a segment being accessed is verified in response to an execution of the software object (350). A virtual memory address based upon the secondary table (430) in response to a match between the execution security level and the security level associated with the segment being accessed is determined. A physical memory location corresponding to the virtual memory address is located. A portion of a memory based upon locating the physical memory location is accessed.