Technique for using shared resources on a multi-threaded processor
US6785887B2 · kind B2 · utility
Assignee
Inventors
Key dates
| Filing date | Dec 27, 2000 |
| Grant date | Aug 31, 2004 |
| Priority date | — |
| Expiry date | Mar 3, 2023 |
Classification
- Technology area (CPC G)Physics
- CPC primaryG06F9/4812
- WIPO fieldComputer technology
- WIPO sectorElectrical engineering
Abstract
A method of handling conflicts between threads, including an initiating thread and at least one other thread, for at least one shared resource in a multi-threaded processing system having a processor and memory includes setting a location in memory for each other thread on the processor with the initiating thread. The initiating thread signals an inter-processor interrupt (IPI) to all other threads on the processor. For each other thread, an interrupt handler is initiated where each other thread: acknowledges receipt of the interrupt, and proceeds to spin on the respective location in memory that was set, thereby guaranteeing that the respective other thread will not be using any shared resource of the processor. The initiating thread waits for other threads on processor to acknowledge the inter-processor interrupt (IPI), and when all the other threads have acknowledged the inter-processor interrupt (IPI), the initiating thread proceeds to save the state of the shared resource in memory, sets the shared resource to the state wanted, uses the shared resource, and restores the original state of the resource. The initiating thread then releases the other threads from their spin by res…
Source: USPTO / EPO open patent data. Objective bibliographic and citation counts.