Application-level signal handling and application-level memory protection
AssigneeInternational Business Machines Corporation
InventorsAndrew D. Hilton, Brian M. Rogers
Life of this patent
Estimating the term…
Abstract
A processor receives a signal and determines whether an application has registered a signal handler therewith for handling the signal. In response to determining that the application has registered the signal handler, the processor transmits the signal directly to the signal handler of the application for handling the signal, without an operating system in relation to which the trusted application is running intervening. In response to determining that the trusted application has not registered the signal handler, the processor transmits the signal to a signal handler of the operating system for handling the signal.
Claims13
A method comprising:
- generating a memory fault, by a processor, the memory fault related to memory and caused by a memory operation exceeding a memory restriction placed on the memory;
- determining, by the processor, whether an application previously registered memory protection for the memory to which the memory fault relates with the processor;
- in response to determining that the application previously registered the memory protection for the memory, transmitting the memory fault directly to a memory fault handler of the application for handing the memory fault, without an operating system in relation to which the application is running intervening;
- and
- in response to determining that the application did not previously register the memory protection for the memory, transmitting the memory fault to a memory fault handler of the operating system for handling the memory fault.
A processor for a system, comprising:
- a first register to store a vector having a plurality of bits corresponding to a plurality of different signal types, each bit corresponding to whether an application-level signal handler has been registered for receiving signals of the corresponding signal type directly without intervention by an operating system;
- a second register to store memory pointers to the application-level signal handlers that have been registered;
- a memory to store for each of a plurality of memory blocks of the system an application-level memory restriction of the memory block, where one of the different signal types is a memory fault;
- and
- a processing core to process signals of the different signal types in accordance with the bits of the vector within the first register and in accordance with the memory pointers within the second register, and to process memory operations in accordance with at least the application-memory restrictions within the memory.
Dependencies are inferred from the claim text.