Heim  >  Artikel  >  Betrieb und Instandhaltung  >  Ist Linux ein Echtzeitbetriebssystem?

Ist Linux ein Echtzeitbetriebssystem?

WBOY
WBOYOriginal
2022-03-11 14:53:176640Durchsuche

Linux ist kein Echtzeitbetriebssystem. Linux ist ein Time-Sharing-Betriebssystem, das es einem Computer ermöglicht, mehrere, Dutzende oder sogar Hunderte von Benutzern gleichzeitig zu bedienen. Das Time-Sharing-Betriebssystem teilt die Prozessorzeit und den Speicherplatz des Systems in bestimmten Abständen auf . Wechseln Sie nacheinander zum Programm jedes Endbenutzers.

Ist Linux ein Echtzeitbetriebssystem?

Die Betriebsumgebung dieses Tutorials: Linux7.3-System, Dell G3-Computer.

Ist Linux ein Echtzeitbetriebssystem?

Echtzeitbetriebssystem (RTOS)

RTOS, der vollständige englische Name ist Real Time Operating System, also Echtzeitbetriebssystem.

1. Definition eines Echtzeitbetriebssystems

Echtzeitbetriebssystem (RTOS) bedeutet, dass externe Ereignisse oder Daten schnell genug akzeptiert und verarbeitet werden können und dass die Verarbeitungsergebnisse dies können Ein Betriebssystem, das Produktionsprozesse steuert oder schnell auf Verarbeitungssysteme reagiert und die koordinierte Ausführung aller Echtzeitaufgaben steuert.

Daher sind schnelle Reaktion und hohe Zuverlässigkeit seine Hauptmerkmale.

Echtzeit-Betriebssysteme werden in harte Echtzeit- und weiche Echtzeit-Betriebssysteme unterteilt. Harte Echtzeit-Betriebssysteme erfordern, dass Vorgänge innerhalb einer bestimmten Zeit abgeschlossen werden müssen, was beim Entwurf des Betriebssystems garantiert wird.

In weicher Echtzeit müssen Sie den Vorgang nur so schnell wie möglich entsprechend der Priorität der Aufgabe abschließen. Das von uns normalerweise verwendete Betriebssystem kann nach bestimmten Änderungen zu einem Echtzeitbetriebssystem werden.

Ein Echtzeitbetriebssystem ist ein Betriebssystem, das die Ausführung bestimmter Funktionen innerhalb einer bestimmten Zeitspanne garantiert. Beispielsweise könnte ein Betriebssystem so konzipiert sein, dass es sicherstellt, dass ein Roboter in einer Produktionslinie auf ein Objekt zugreifen kann. Wenn in einem „harten“ Echtzeitbetriebssystem die Berechnungen zur Erreichbarkeit des Objekts nicht innerhalb der zulässigen Zeit abgeschlossen werden können, wird das Betriebssystem mit einem Fehler beendet.

In einem „weichen“ Echtzeitbetriebssystem kann die Produktionslinie weiterhin arbeiten, aber die Ausgabe des Produkts wird verlangsamt, da das Produkt nicht innerhalb der zulässigen Zeit eintreffen kann, was dazu führt, dass der Roboter vorübergehend nicht produziert . Einige Echtzeitbetriebssysteme sind für bestimmte Anwendungen konzipiert, andere sind universell einsetzbar.

Einige Allzweckbetriebssysteme bezeichnen sich selbst als Echtzeitbetriebssysteme. Aber bis zu einem gewissen Grad verfügen die meisten Allzweckbetriebssysteme, wie etwa Microsofts Windows NT oder IBMs OS/390, über Echtzeitsystemeigenschaften. Das heißt, auch wenn ein Betriebssystem kein reines Echtzeitsystem ist, können sie einige Probleme von Echtzeitanwendungen lösen.

2. Eigenschaften von Echtzeitbetriebssystemen

1) Multitasking;

2) Thread-Priorität

3) Mehrere Interrupt-Ebenen

Kleine eingebettete Betriebssysteme erfordern oft Echtzeitbetriebssysteme, und die Der Kernel muss die Anforderungen von Echtzeitbetriebssystemen erfüllen.

3. Verwandte Konzepte von Echtzeitbetriebssystemen

(1) Grundkonzepte

Kritischer Abschnitt des Codes: Bezieht sich auf Code, der während der Verarbeitung unteilbar ist. Sobald dieser Teil des Codes ausgeführt wird, ist keine Unterbrechung zulässig.

Ressource: jede von einer Aufgabe belegte Ressource.

Geteilte Ressource: eine Ressource, die von mehr als einer Aufgabe verwendet werden kann , ist ein einfaches Programm. Jede Aufgabe erhält eine bestimmte Priorität, verfügt über einen eigenen Satz CPU-Register und einen eigenen Stapelspeicher. Normalerweise ist jede Aufgabe eine Endlosschleife und jede Aufgabe befindet sich in den folgenden fünf Zuständen: Ruhezustand, Bereitschaftszustand, Ausführungszustand, Ruhezustand, Unterbrechungszustand.

Aufgabenwechsel: wird ausgeführt. Der aktuelle Zustand der Aufgabe (alle). der Inhalt der CPU-Register wird im eigenen Stapelbereich der Aufgabe gespeichert, und dann wird der aktuelle Status der nächsten auszuführenden Aufgabe aus dem Stapel der Aufgabe in die Register der CPU geladen und die nächste Aufgabe wird gestartet Kernel: Verantwortlich für die Verwaltung verschiedener Aufgaben, die Zuweisung von CPU-Zeit für jede Aufgabe und verantwortlich für die Kommunikation zwischen Aufgaben. Unterteilt in nicht präemptive Kerne und präemptive Kerne;

Planung: Eine der Hauptaufgaben des Kernels besteht darin, zu entscheiden, welche Aufgabe ausgeführt werden soll. Im Allgemeinen basierend auf der Prioritätsplanungsmethode;

(2) Probleme mit der Priorität

Aufgabenpriorität: unterteilt in statische Priorität mit unveränderlicher Priorität und dynamische Priorität mit veränderlicher Priorität;

Prioritätsumkehr: Das Problem der Prioritätsumkehr ist das häufigste Problem Echtzeitsysteme. Die Zuweisung gemeinsam genutzter Ressourcen kann dazu führen, dass Aufgaben mit niedriger Priorität zuerst und Aufgaben mit hoher Priorität später ausgeführt werden. Die Lösung besteht darin, einen „Prioritätsvererbungs“-Algorithmus zu verwenden, um die Aufgabenprioritäten vorübergehend zu ändern und so die Prioritätsumkehr einzudämmen.

(3) Gegenseitiger Ausschluss

Obwohl der gemeinsame Datenbereich den Informationsaustausch zwischen Aufgaben vereinfacht, muss die Exklusivität jeder Aufgabe bei der Verarbeitung gemeinsamer Daten gewährleistet sein. Zu den allgemeinen Methoden zur Erfüllung gegenseitiger Ausschlussbedingungen gehören: Deaktivieren von Interrupts, Verwenden von Test- und Set-Anweisungen (TAS), Verhindern des Taskwechsels und Verwenden von Semaphoren.

Denn die Bedeutung der Verwendung eines Echtzeitbetriebssystems besteht darin, verschiedene Notfälle rechtzeitig bewältigen zu können, dh verschiedene Interrupts verarbeiten zu können, den wichtigsten und repräsentativsten Leistungsindexparameter zur Messung eingebetteter Echtzeitbetriebssysteme Es sollte zweifellos zu Unterbrechungen kommen. Die Reaktionszeit ist abgelaufen. Die Interrupt-Reaktionszeit wird normalerweise wie folgt definiert:

Interrupt-Reaktionszeit = Interrupt-Verzögerungszeit + Zeit zum Speichern des CPU-Status + Ausführungszeit der ISR-Eintragsfunktion des Kernels.

Interrupt-Verzögerungszeit = MAX (maximale Zeit zum Ausschalten von Interrupts, maximale Befehlszeit) + Zeit, um mit der Ausführung des ersten Befehls des ISR zu beginnen.

Time-Sharing-Betriebssystem (TSOS)

TSOS, der vollständige englische Name ist Time-Sharing-Betriebssystem, das Time-Sharing-Betriebssystem.

Ein Betriebssystem, das es einem Computer ermöglicht, mehrere, Dutzende oder sogar Hunderte von Benutzern gleichzeitig zu bedienen, wird als Time-Sharing-Betriebssystem bezeichnet. Durch die Verbindung des Computers mit vielen Endbenutzern schaltet das Time-Sharing-Betriebssystem die Systemprozessorzeit und den Speicherplatz in bestimmten Abständen abwechselnd auf die Programme jedes Endbenutzers um.

Da das Zeitintervall kurz ist, hat jeder Benutzer das Gefühl, als hätte er ausschließlich den Computer. Das Merkmal eines Time-Sharing-Betriebssystems besteht darin, dass es die Ressourcennutzung effektiv steigern kann. Beispielsweise nutzen UNIX-Systeme die CPU-Planung mit deprivierter dynamischer Priorität, um Time-Sharing-Vorgänge effektiv zu unterstützen.

Das Time-Sharing-System ist eine neue Art von Betriebssystem, das speziell auf die Bedürfnisse der Benutzer zugeschnitten ist. Es besteht ein völlig anderer Leistungsunterschied zwischen ihm und dem Mehrkanal-Stapelverarbeitungssystem. Die Bedürfnisse der Benutzer spiegeln sich insbesondere in den folgenden Aspekten wider: Mensch-Computer-Interaktion Shared Hosting Bequem für Benutzer, um auf den Computer zu gelangen

1 Die Grundidee des Time-Sharing-Systems

Zeitscheibe: Es ist Verwenden Sie die Systemressourcen des Computers (insbesondere die CPU-Zeit). Teilen Sie die Zeit. Jeder Zeitraum wird als Zeitscheibe bezeichnet, und jeder Benutzer nutzt abwechselnd die Zeitscheibe.

Time-Sharing-Technologie: Teilen Sie die Laufzeit des Prozessors in kurze Zeitscheiben auf und weisen Sie den Prozessor entsprechend der Zeitscheibe nacheinander jedem Online-Job zu.

Time-Sharing-Betriebssystem: Es handelt sich um ein interaktives Online-Mehrbenutzer-Betriebssystem. Im Allgemeinen wird die Zeitscheibenrotation verwendet, um es einem Computer zu ermöglichen, mehrere Terminals zu bedienen. Sorgen Sie für eine ausreichend schnelle Reaktionszeit für jeden Benutzer und stellen Sie interaktive Sitzungsfunktionen bereit.

Designziel: Zeitnah auf Benutzeranfragen reagieren und die Nutzung der Systemressourcen nach Möglichkeit maximieren.

Geeignet für Büroautomation, Unterricht und Transaktionsverarbeitung sowie andere Anlässe, die eine Mensch-Computer-Kommunikation erfordern.

2. Arbeitsmethode

Ein Host wird von einem Benutzer interaktiv verwendet. Das System nimmt Befehle von jedem Benutzer entgegen ; und Anzeige der Ergebnisse für den Benutzer auf dem Terminal durch Interaktion; der Benutzer gibt den nächsten Befehl basierend auf dem Ergebnis des vorherigen Schritts aus

Das Hauptproblem bei der Implementierung des Time-Sharing-Systems: rechtzeitiger Empfang. Behandeln Sie es umgehend.

3. Funktionen

Interaktivität: Benutzer führen einen Mensch-Computer-Dialog mit dem System.

Multiplexität: Mehrere Benutzer nutzen gleichzeitig dieselbe CPU auf ihren jeweiligen Endgeräten.

Unabhängigkeit: Benutzer können unabhängig voneinander arbeiten, ohne sich gegenseitig zu stören oder zu verwirren.

Aktualität: Benutzer können in kurzer Zeit zeitnahe Antworten vom System erhalten.

Faktoren, die die Reaktionszeit beeinflussen: die Anzahl der Terminals, die Größe der Zeitscheibe, die Menge des Informationsaustauschs und die Geschwindigkeit des Informationsaustauschs.

Unterschied

RTOS und TSOS haben jeweils ihre eigenen Eigenschaften. RTOS wird im Allgemeinen für MCUs mit relativ niedriger Geschwindigkeit verwendet, z. B. für Bewegungssteuerung, Tasteneingabe und andere Systeme, die im Allgemeinen eine Verarbeitung auf MS-Ebene erfordern Antworten auf -Ebene sind erforderlich.

Zeitteilung: Heutzutage übernehmen gängige PCs und Server diesen Betriebsmodus, der den CPU-Betrieb in mehrere Zeitscheiben aufteilt, um unterschiedliche Rechenanforderungen zu verarbeiten.

Echtzeit: Wird im Allgemeinen auf Mikrocontrollern verwendet, z. B. bei der Auf- und Absteuerung von Aufzügen, die eine Echtzeitverarbeitung von Tastendrücken und anderen Aktionen erfordern.

Abschließend

Durch die obige Analyse kann klar werden, dass Linux ein Time-Sharing-System ist, aber es kann auf Echtzeit umgestellt werden. Zum Beispiel: UCOS ist ein von Linux modifiziertes Echtzeitsystem Unterschiede, Sie können ähnliche Antworten in Baidu zitieren:

Das Time-Sharing-System ist ein System, das zwei oder mehr Konten gleichzeitig bedienen kann!

Verwandte Empfehlungen: „Linux-Video-Tutorial

Das obige ist der detaillierte Inhalt vonIst Linux ein Echtzeitbetriebssystem?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn