Saul
Prozessmanagement ist ein integraler Bestandteil jedes modernen Betriebssystems. Das Betriebssystem muss Prozessen Ressourcen zuweisen, Prozessen die gemeinsame Nutzung und den Austausch von Informationen ermöglichen, die Ressourcen jedes Prozesses vor anderen Prozessen schützen und die Synchronisierung zwischen Prozessen ermöglichen. Um diese Anforderungen zu erfüllen, muss das OS für jeden Prozess eine Datenstruktur pflegen, die den Zustand und die Ressourceneigentümerschaft dieses Prozesses beschreibt und die es dem OS ermöglicht, die Kontrolle über jeden Prozess auszuüben.
Asien
Prozessmanagement ist eine der wichtigsten und relevantesten Aufgaben im Betriebssystemdesign. In diesem Whitepaper untersuchen wir das Prozessmanagement in Linux, FreeBSD und Darwin. Wir vergleichen die Datenstrukturen, die verwendet werden, um den Prozess darzustellen, und die globalen Variablen, die verwendet werden, um den aktuell aktiven Prozess in drei Betriebssystemen zu steuern. Basierend auf der Definitionsverwendungsanalyse untersuchen wir, wie sich die Anzahl der Instanzen der globalen Prozesssteuerungsvariablen auf die Wartung des Betriebssystemkerns auswirken kann. Dieser Effekt wird in einer empirischen Studie in der Beziehung zwischen der Anzahl der Kernelzeilen des modifizierten Codes und der Anzahl der Instanzen und der Anzahl der Definitionen der globalen Variablen des Prozessreglers demonstriert. Wir kommen zu dem Schluss, dass die in Linux implementierte Prozessverwaltung die Wartung schwieriger macht als die von FreeBSD und Darwin.