2016-06-09 6 views
0

Es ist richtig, dass idealerweise Vorbelegung von Aufgaben durch andere Aufgaben nur von RTOS-Systemen erlaubt ist, während in Nicht-RTOS-Systemen eine Aufgabe durch einen Interrupt oder ISR und nicht durch eine andere Aufgabe verhindert werden kann.Preemptive Aufgabe auf nicht RTOS

Auch die folgende Aussage ist korrekt für preemptive Kernel, ist es auch für preemptive Aufgaben anwendbar.

„die meisten Betriebssysteme erlauben nicht, aber es ist für bestimmte Anwendungen, wie in Echtzeitsystemen erforderlich“

+0

Sie haben mehr oder weniger dieselbe Frage vor ein paar Tagen gestellt und die Antwort akzeptiert. Was war nicht klar über diese Antwort? Wenn es nicht klar war, warum hast du es akzeptiert? Ihr letzter Absatz ist in Anführungszeichen, aber es gibt kein Zitat. Es ist auch nicht wahr, Windows, Linux, OSX (und andere Unix-Betriebssysteme) sind alle präventive Betriebssysteme, die keine RTOS sind (wie in der angenommenen Antwort auf Ihre vorherige fast identische Frage erläutert). – Clifford

+0

Mögliches Duplikat von [Ist die Unterbrechung zwischen den Tasks im Nicht-RTOS-System möglich?] (Http://stackoverflow.com/questions/37518975/is-interruption-between-task-is-opossible-in-non-rtos-system) – Clifford

Antwort

0

RTOS steht für Echtzeitbetriebssysteme.

Sie müssen verschiedene Planungsalgorithmen wie FCFS, SJF, Prioritätsplanung, Round-Robin-Mehrfachwarteschlange usw. vergleichen. Jeder hat da Vor- und Nachteile. Dann können Sie herausfinden, warum wir Priorität preemptive in rtos verwenden. Weil das nötig ist. Beispiel Vxworks hat Priorität Vorrang, aber wenn zwei Aufgaben mit der gleichen Priorität kommt es für Round-Robin.

"die meisten Betriebssysteme erlauben dies nicht, aber es ist für bestimmte Anwendungen wie in Echtzeit-Systemen erforderlich". Dies ist nicht wahr, da die meisten modernen Betriebssysteme präventiv für eine bessere Leistung sind.

Überprüfen Sie die Kommentare. Informational link

+0

Vielen Dank. Die Frage ist hier, ob Non-Rtos-Systeme präemptives Prioirty verwenden oder nicht. Wenn nicht, dann ist es richtig zu sagen, dass nur ISR eine Aufgabe und keine anderen Aufgaben unterbrechen kann. –

+0

Aber es ist nicht einmal wahr; modernste Betriebssysteme * sind präventiv. – Clifford

+0

@Clifford Ja, die meisten Betriebssysteme sind präventiv für eine bessere Leistung. Preemption kann auch ein Problem sein, wenn der Kernel einen Systemaufruf implementiert (z. B. Aktualisieren kritischer Kernel-Datenstrukturen), wenn die Vorbelegung auftritt. Die meisten modernen UNIXe befassen sich mit diesem Problem, indem sie warten, bis der Systemaufruf entweder abgeschlossen oder blockiert wurde das Vorkaufsrecht zuzulassen, macht es nicht deterministisch. Dies kann ein Problem für rtos sein. Auch weil "TIME" der Hauptfaktor in "RTOS" ist. Wir können keine Verzögerungen erwarten, also passt Priority Preemptive dazu. Korrigiere mich, wenn ich falsch liege. –

Verwandte Themen