... stattfinden2.1
Diese Annahmen gelten in Uniprozessor-Systemen ohne Beachtung von Interferenz mit Hardwareereignissen.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
... Kanäle2.2
Es sind eigentlich 8 DMA Kanäle, aber Kanal 4 wird ähnlich dem Prinzip der kaskadierten PICs verwendet, um Aktivitäten am Slave-Controller zu indizieren.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
... wurden2.3
Die Bearbeitung des Ereignisses wird vom Interrupt-Handler, der sog. Linux-Top-Half, unter Nutzung des Kernstacks des aktiven Prozesses durchgeführt.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
...(un)interruptible2.4
interruptible bedeutet hier blockiert aber durch Signale unterbrechbar; uninterruptible ist auch ein Blockierungszustand, aber meist an einer E/A-Operation und deshalb nicht durch Signale unterbrechbar.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
... oft2.5
Es ist geräte- bzw. gerätetreiberabhängig ob weitere Unterbrechungen während der Bearbeitung zugelassen werden (SA_INTERRUPT Flag).
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
... werden2.6
Unterbrechungen derselben Quelle können aber nicht auftreten, da diese maskiert ist.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
... aufgerufen2.7
In [BC01] S.127: Notice that the kernel cannot break the loop [that executes all ISRs] as soon as one ISR has claimed the interrupt because another device on the same IRQ line might need to be serviced. (ISR = Interrupt Service Routine)
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
... können3.1
Diese allgemeine Annahme kann durch bestimmte Konfigurationen überwunden werden (Abschnitt 2.1: Colocation).
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
... activities3.2
Unter SMP-Fiasco würde es sich möglicherweise anbieten, mehrere Threads zu verwenden.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
... Speicherallokationen3.3
Im Linuxkern baut selbst das einfache kmalloc() auf Slabs der Größen 32, 64, 128 usw. Bytes auf. Dies wurde hier nicht übernommen, um die Slab-Implementierung in eine eigene Spezial-Bibliothek auslagern zu können.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
... Anforderungen3.4
Eine Anforderung ist natürlich, daß der Manager ein Dataspace-Manager für Speicher ist, der bei dieser Darstellung ein 1:1 Mapping physischen Speichers in seinem Adreßraum hält.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
... wird3.5
Es wird hier (selten) das yield Flag gesetzt.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
... bestätigt3.6
Bei der Unterstützung von shared interrupts ist das Verhalten etwas anders. Diese Funktionalität wird aber bisher noch nicht vom DDE unterstützt. Der Grund dafür ist, daß bisher keine Einigung über eine einheitliche Methode zum Umgang mit shared interrupts in der L4 Umgebung getroffen wurde.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
...A-Port-Adreßraum4.1
Dieser Mechanismus (IO-Flexpages) ist zwar für alle L4 Versionen vorgesehen, aber bisher noch nicht implementiert worden.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
... leicht4.2
Der Quellcode des Omega0-Servers wurde umstrukturiert. Durch die Auslagerung der Threadinitialisierung in ein eigenes Modul kann nun entweder die Eigenimplementierung (Original-Server) oder die Threadbibliothek als Bestandteil von [Reu01] verwendet werden. Weiterhin wurde die Spezifikation des Servers dahingehend erweitert, daß der Schnittstellen-Thread nicht zwingend lthread 0 sein muß. Die Änderungen sind schon Bestandteil des Originalpakets omega0 und stellen somit keinen selbständigen Patch dar.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
... LMM4.3
list-based memory manager
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
... hinreichend4.4
Eine Änderung in Hinblick auf Softirqs wäre hier nur nötig, wenn der TCP/IP Protokollstack in der Emulationsumgebung ablaufen soll, da diese Komponente die einzige ist, welche ebensolche softirqs direkt nutzt.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.