Transparent software emulation as an alternative to hardware bus lock
First Claim
Patent Images
1. A method for emulating hardware bus lock in a computer system, comprising:
- acquiring a bus lock semaphore reserved for bus lock emulation;
acquiring a page table semaphore;
setting a mode bit that defeats fault-on-lock-attempt behavior;
invalidating relevant page table entries;
executing an instruction; and
releasing mode bit and the bus lock and page table semaphores.
2 Assignments
0 Petitions
Accused Products
Abstract
A method and apparatus for emulating hardware bus lock in a multi-architecture computer system includes a fault handler that acquires a semaphore reserved for bus lock and a semaphore that limits access to a page table. The fault handler includes an emulation module that sets a mode bit to prevent the bus lock and allows re-execution of the instruction that caused a request for a hardware bus lock. Using this method, the fault handler ensures a minimum disruption to operation of the computer system by restricting access to the least amount of computer system resources.
35 Citations
14 Claims
-
1. A method for emulating hardware bus lock in a computer system, comprising:
-
acquiring a bus lock semaphore reserved for bus lock emulation;
acquiring a page table semaphore;
setting a mode bit that defeats fault-on-lock-attempt behavior;
invalidating relevant page table entries;
executing an instruction; and
releasing mode bit and the bus lock and page table semaphores. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. A method for emulating a hardware bus lock in a computer system, comprising:
-
receiving a hardware bus lock request from a device in the computer system;
generating a fault in response to the hardware bus lock request;
setting a mode bit that defeats fault-on-lock-attempt behavior, thereby preventing a hardware bus lock;
processing the fault in a fault handler; and
releasing the mode bit after the processing. - View Dependent Claims (10)
setting a first semaphore for bus lock emulation;
setting a second semaphore to limit page access; and
after the processing step, releasing the first and the second semaphores.
-
-
11. An apparatus for emulating hardware bus lock in a computer system, comprising:
-
a fault handler that, in response to a device requesting a hardware bus lock, acquires a bus lock semaphore and a page table semaphore; and
an emulation module coupled to the fault handler that invalidates entries in a page table, wherein the fault handler sets a mode bit that defeats fault-on-lock-attempt behavior to prevent hardware bus lock, releases the mode bit and the semaphores after execution of an instruction by the device. - View Dependent Claims (12, 13, 14)
-
Specification