Multiprogrammierung vs. Timesharing-Systeme
Multiprogramming ist die Zuweisung von mehr als einem gleichzeitigen Programm auf einem Computersystem und seinen Ressourcen. Multiprogramming ermöglicht die effektive Nutzung der CPU, indem es verschiedenen Benutzern ermöglicht wird, die CPU und die E/A-Geräte effektiv zu nutzen. Multiprogramming stellt sicher, dass die CPU immer etwas auszuführen hat und erhöht somit die CPU-Auslastung. Auf der anderen Seite ist Timesharing die gemeinsame Nutzung von Rechenressourcen durch mehrere Benutzer gleichzeitig. Da dies es einer großen Anzahl von Benutzern ermöglicht, gleichzeitig in einem einzigen Computersystem zu arbeiten, würde dies die Kosten für die Bereitstellung von Rechenkapazitäten senken.
Was ist ein Multiprogramming-System?
Multiprogramming ist das schnelle Umsch alten der CPU zwischen mehreren Programmen. Ein Programm besteht in der Regel aus mehreren Tasks. Eine Aufgabe endet normalerweise mit einer Anfrage zum Verschieben von Daten, was die Ausführung einiger E/A-Operationen erfordern würde. Multitasking wurde üblicherweise durchgeführt, um die CPU zu beschäftigen, während das aktuell laufende Programm E/A-Operationen ausführt. Im Vergleich zu anderen Ausführungsbefehlen sind I/O-Operationen extrem langsam. Selbst wenn ein Programm eine sehr kleine Anzahl von E/A-Operationen enthält, wird die meiste Zeit, die für das Programm benötigt wird, für diese E/A-Operationen aufgewendet. Wenn Sie diese Leerlaufzeit verwenden und einem anderen Programm erlauben, die CPU zu diesem Zeitpunkt zu verwenden, wird daher die CPU-Auslastung erhöht. Multiprogramming wurde ursprünglich in den späten 1950er Jahren als Funktion von Betriebssystemen entwickelt und erstmals im Mainframe-Computing eingesetzt. Mit der Einführung von Technologien für virtuellen Speicher und virtuelle Maschinen wurde die Verwendung von Multiprogramming verbessert.
Was ist das Timesharing-System?
Time-Sharing, das in den 1960er Jahren eingeführt wurde, ist die gleichzeitige gemeinsame Nutzung von Rechenressourcen durch mehrere Benutzer. Bei Time-Sharing-Systemen sind mehrere Endgeräte an einen einzigen dedizierten Server mit eigener CPU angeschlossen. Vom Betriebssystem eines Time-Sharing-Systems ausgeführte Aktionen/Befehle haben eine sehr kurze Zeitspanne. Daher wird die CPU Benutzern an den Terminals für einen kurzen Zeitraum zugewiesen, wodurch ein Benutzer in einem Terminal das Gefühl bekommt, dass ihm hinter seinem Terminal eine CPU zugeordnet ist. Die kurze Zeitspanne, in der ein Befehl auf einem Time-Sharing-System ausgeführt wird, wird als Zeitscheibe oder Zeitquantum bezeichnet. Mit der Entwicklung des Internets sind Time-Sharing-Systeme immer beliebter geworden, da teure Serverfarmen eine sehr große Anzahl von Kunden beherbergen konnten, die sich dieselben Ressourcen teilen. Da die Websites hauptsächlich in Aktivitätsschüben betrieben werden, gefolgt von Phasen der Leerlaufzeit, könnte die Leerlaufzeit eines Kunden durch den anderen effektiv genutzt werden, ohne dass einer von ihnen die Verzögerung bemerkt.
Was ist der Unterschied zwischen Multiprogramming-System und Time-Sharing-System?
Der Hauptunterschied zwischen Multiprogramming und Time-Sharing besteht darin, dass Multiprogramming die effektive Nutzung der CPU-Zeit ist, indem es mehreren Programmen ermöglicht wird, die CPU gleichzeitig zu nutzen, Time-Sharing hingegen ist die gemeinsame Nutzung einer Computereinrichtung durch mehrere Benutzer, die dies wünschen die gleiche Einrichtung zur gleichen Zeit zu nutzen. Jeder Benutzer eines Time-Sharing-Systems bekommt sein eigenes Terminal und bekommt das Gefühl, dass er die CPU alleine benutzt. Tatsächlich verwenden Timesharing-Systeme das Konzept der Multiprogrammierung, um die CPU-Zeit zwischen mehreren Benutzern gleichzeitig aufzuteilen.