|
class | Spinlock |
| Mit Hilfe eines Spinlocks kann man Codeabschnitte serialisieren, die echt nebenläufig auf mehreren CPUs laufen. Mehr ...
|
|
class | Ticketlock |
| Mit Hilfe eines Ticketlocks kann man Codeabschnitte serialisieren, die echt nebenläufig auf mehreren CPUs laufen. Mehr ...
|
|
|
void | CPU::Interrupt::enable () |
| Erlauben von (Hardware-)Interrupts. Mehr ...
|
|
bool | CPU::Interrupt::disable () |
| Interrupts werden ignoriert/verbotenVerhindert eine Reaktion auf Unterbrechungen, indem die Assembleranweisung cli ausgeführt wird. Der Rückgabewert gibt an ob Unterbrechungen schon gesperrt waren. Mehr ...
|
|
void | CPU::Interrupt::restore (bool val) |
| Unterbrechungszustand wiederherstellenZusammen mit dem Rückgabewert von CPU::disable_int() kann diese Funktion verwendet werden, um das Sperren und freigeben von Unterbrechungen zu schachteln. Mehr ...
|
|
Im Synchronisationsmodul sind die Funktionalitäten implementiert, die benötigt werden um mehrere Prozessoren und Aktivitäten miteinander in Einklang zu bringen. Dies bezieht sich insbesondere darauf, wenn mehrere Teilnehmer auf eine Ressource zugreifen wollen. Dabei können die Teilnehmer auf der gleichen CPU oder unterschiedlichen Prozessoren laufen.
◆ disable()
bool CPU::Interrupt::disable |
( |
void |
| ) |
|
|
inline |
Interrupts werden ignoriert/verbotenVerhindert eine Reaktion auf Unterbrechungen, indem die Assembleranweisung cli ausgeführt wird. Der Rückgabewert gibt an ob Unterbrechungen schon gesperrt waren.
- Rückgabe
- true wenn die Unterbrechungen zum Zeitpunkt des Aufrufs frei waren, false wenn sie schon gesperrt waren.
◆ enable()
void CPU::Interrupt::enable |
( |
| ) |
|
|
inline |
Erlauben von (Hardware-)Interrupts.
Lässt die Unterbrechungsbehandlung zu, indem die Assembleranweisung sti ausgeführt wird.
◆ restore()
void CPU::Interrupt::restore |
( |
bool |
val | ) |
|
|
inline |
Unterbrechungszustand wiederherstellenZusammen mit dem Rückgabewert von CPU::disable_int() kann diese Funktion verwendet werden, um das Sperren und freigeben von Unterbrechungen zu schachteln.
- Parameter
-
val | Gibt an ob Unterbrechungen wieder freigegeben werden sollen oder nicht. |