Tom: Ständige Aktualisierung im Programm erzwingen

Beitrag lesen

Hello,

wenn man es genau nimmt, ist ein Prozessor (zumindest die üblichen) immer zu 100% "ausgelastet" vom Kernel des ihn gerade bespielenden OS. Dieses entscheidet dann, wieviel Gunst an welchen Prozess vergeben wird.

Durch den Virtual-Mode / Protected Mode der Prozessoren hat man dann endlich einen Teil der "Aufsicht" hardcoded und an die Prozessoren übergeben. Leider sind die Schranken mMn noch nicht hart genug. Das eigentliche "Kernel" würde z.B, einen total eigenen und von anderen Programmen getrennten RAM benötigen. Es müsste auf Hardwareseite eine "Überblendmöglichkeit" für die Grafikoberfläche und die Bedienelemente benötigen. DAS wäre dann die nächste Generation der Rechner. Sicheres OS bei freier Wahl des jeweils aktiven programmausführernden Systems.

Bei den 8086ern und DOS hatte man den Befehl "Terminate and stay resident".
Wenn der richtig verwendet wurde, konnte man Programme "in den Hintergrund" auf den Timerinterrupt oder den User-Timerinterrupt 1C legen. Wenn die aber länger dauerten, als die berühmte 18tel Sekunde, dann war's vorbei mit dem System.

Das Problem ist heute eigentlich immer noch dasselbe. Kein Prozess darf länger brauchen, all ihm maximal zugestanden wurde, sonst gerät das System in ein "Fischgrätenmuster" (Die Prozesse/deren Teile reihen sich nicht an, sondern fangen an, sich zu überlappen). Dann ist der Absturz unausweichlich.

Harzliche Grüße vom Berg
http://www.annerschbarrich.de

Tom

--
Fortschritt entsteht nur durch die Auseinandersetzung der Kreativen
Nur selber lernen macht schlau