General purpose use of a stack pointer register
AssigneeMicrosoft Corporation
InventorsAmit Chatterjee, Stuart R. Patrick, Ralph A. Lipe, David N. Weise, Raymond E. Endres
Life of this patent
Estimating the term…
Loading patent…
AssigneeMicrosoft Corporation
InventorsAmit Chatterjee, Stuart R. Patrick, Ralph A. Lipe, David N. Weise, Raymond E. Endres
Estimating the term…
The stack pointer register in a computer is made available for general purpose use by programs executing at lower privilege levels than interrupt handlers. A set of instructions in such programs, excluding stack operations, stores data other than the stack pointer, such as operands, and the like, in the stack pointer register. When switching execution to an interrupt handler on an interrupt, return address data for the currently executing program is pushed onto a stack at the interrupt handler's privilege level. Thus, storing other data in the stack pointer register does not result in stack corruption. Also, these instructions can store data in a scratch portion of a stack segment beyond the current stack pointer.
A method for iteratively accessing a stack memory, comprising:
In a processor having a stack pointer register and providing a plurality of privilege levels having separately allocated stack memory in a protected mode of operation, the processor operative to store a return address at a memory location indicated by a stack pointer in the stack pointer register within the stack memory allocated to a current privilege level on receiving an interrupt and further operative to switch the stack pointer in the stack pointer register when switching privilege levels, a method for general purpose use of the stack pointer register, comprising:
In a processor having a stack pointer register and providing a plurality of privilege levels having separately allocated stack memory in a protected mode of operation, the processor operative to store a return address at a memory location indicated by a stack pointer in the stack pointer register within the stack memory allocated to a current privilege level on receiving an interrupt and further operative to switch the stack pointer in the stack pointer register when switching privilege levels, a method for general purpose use of the stack pointer register, comprising:
In a processor having a stack pointer register and providing a plurality of privilege levels having separately allocated stack memory in a protected mode of operation, the processor operative to store a return address at a memory location indicated by a stack pointer in the stack pointer register within the stack memory allocated to a current privilege level on receiving an interrupt and further operative to switch the stack pointer in the stack pointer register when switching privilege levels, a method for general purpose use of the stack pointer register, comprising:
An apparatus for general purpose use of a stack pointer register, comprising:
A storage medium having instructions therein for causing a computer to perform a method for general purpose use of a stack pointer register in a processor which provides a plurality of privilege levels having separately allocated stack memory in a protected mode of operation, the processor operative to store a return address at a memory location indicated by a stack pointer in the stack pointer register within the stack memory allocated to a current privilege level on receiving an interrupt and further operative to switch the stack pointer in the stack pointer register when switching privilege levels, the method comprising:
Dependencies are inferred from the claim text.