<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="de">
		<id>https://rn-wissen.de/wiki/index.php?action=history&amp;feed=atom&amp;title=Betriebssystem</id>
		<title>Betriebssystem - Versionsgeschichte</title>
		<link rel="self" type="application/atom+xml" href="https://rn-wissen.de/wiki/index.php?action=history&amp;feed=atom&amp;title=Betriebssystem"/>
		<link rel="alternate" type="text/html" href="https://rn-wissen.de/wiki/index.php?title=Betriebssystem&amp;action=history"/>
		<updated>2026-04-11T16:38:58Z</updated>
		<subtitle>Versionsgeschichte dieser Seite in RN-Wissen.de</subtitle>
		<generator>MediaWiki 1.25.1</generator>

	<entry>
		<id>https://rn-wissen.de/wiki/index.php?title=Betriebssystem&amp;diff=11201&amp;oldid=prev</id>
		<title>Pascal am 11. April 2007 um 20:34 Uhr</title>
		<link rel="alternate" type="text/html" href="https://rn-wissen.de/wiki/index.php?title=Betriebssystem&amp;diff=11201&amp;oldid=prev"/>
				<updated>2007-04-11T20:34:56Z</updated>
		
		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table class='diff diff-contentalign-left'&gt;
				&lt;col class='diff-marker' /&gt;
				&lt;col class='diff-content' /&gt;
				&lt;col class='diff-marker' /&gt;
				&lt;col class='diff-content' /&gt;
				&lt;tr style='vertical-align: top;'&gt;
				&lt;td colspan='2' style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;← Nächstältere Version&lt;/td&gt;
				&lt;td colspan='2' style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;Version vom 11. April 2007, 20:34 Uhr&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;L18&quot; &gt;Zeile 18:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Zeile 18:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Das ist nun der oben erwähnte Moment, in dem sich entscheidet, ob irgendein Windows, Linux oder sonst was läuft.&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Das ist nun der oben erwähnte Moment, in dem sich entscheidet, ob irgendein Windows, Linux oder sonst was läuft.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;====Applikationen Laden &amp;amp; Ausführen====&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;====Applikationen Laden &amp;amp; Ausführen====&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Im Grunde heißt das nicht mehr, als &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;eine File &lt;/del&gt;in den Arbeitsspeicher zu laden und den Befehlszähler (Program Counter) auf den ersten Maschinenbefehl darin anzusetzen und ab da die CPU einfach werken zu lassen. &amp;#160;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Im Grunde heißt das nicht mehr, als &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;ein file &lt;/ins&gt;in den Arbeitsspeicher zu laden und den Befehlszähler (Program Counter) auf den ersten Maschinenbefehl darin anzusetzen und ab da die CPU einfach werken zu lassen. &amp;#160;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;====Multi-User/Multi-Task====&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;====Multi-User/Multi-Task====&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Eigentlich alle gängigen Computer (und Betriebssysteme) tun aber so, als könnten sie viele solche Applikationen nebeneinander und völlig getrennt für verschiedene Benutzer gleichzeitig ausführen. Teils stimmt das ja auch, größtenteils aber ist es eine Täuschung, denn in Wirklichkeit läuft mal dieser, mal jener Task, aber der Wechsel geschieht so schnell, dass die Illusion der Gleichzeitigkeit entsteht. &amp;#160;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Eigentlich alle gängigen Computer (und Betriebssysteme) tun aber so, als könnten sie viele solche Applikationen nebeneinander und völlig getrennt für verschiedene Benutzer gleichzeitig ausführen. Teils stimmt das ja auch, größtenteils aber ist es eine Täuschung, denn in Wirklichkeit läuft mal dieser, mal jener Task, aber der Wechsel geschieht so schnell, dass die Illusion der Gleichzeitigkeit entsteht. &amp;#160;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;L30&quot; &gt;Zeile 30:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Zeile 30:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Multi-Threading ist also: mehrere Programme für verschiedene Aufgaben &amp;lt;br&amp;gt;mit Stack und Registern zu versorgen und die gemeinschaftliche Hardware&amp;lt;br&amp;gt;so zu verwalten, daß jeder seinen Teil bekommt. &amp;#160;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Multi-Threading ist also: mehrere Programme für verschiedene Aufgaben &amp;lt;br&amp;gt;mit Stack und Registern zu versorgen und die gemeinschaftliche Hardware&amp;lt;br&amp;gt;so zu verwalten, daß jeder seinen Teil bekommt. &amp;#160;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Und um so einen Threadwechsel durchzuführen, muß also von einem Thread-Kontext (Register &amp;amp; Stack) auf einen anderen umgeschalten werden, ohne &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;daß &lt;/del&gt;das Programm beeinträchtigt wird &amp;#160;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Und um so einen Threadwechsel durchzuführen, muß also von einem Thread-Kontext (Register &amp;amp; Stack) auf einen anderen umgeschalten werden, ohne &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;dass &lt;/ins&gt;das Programm beeinträchtigt wird &amp;#160;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;=====Kontrolle der Ressourcen=====&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;=====Kontrolle der Ressourcen=====&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;L41&quot; &gt;Zeile 41:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Zeile 41:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Ein zum PC oder Großrechner vergleichbares Betriebssystem gibt es nicht. &amp;#160;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Ein zum PC oder Großrechner vergleichbares Betriebssystem gibt es nicht. &amp;#160;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Das hat mehrere, durchaus verständliche Gründe:&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Das hat mehrere, durchaus verständliche Gründe:&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;*'''Overhead''' Das bißchen Platz, &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;daß &lt;/del&gt;man hat, will man nicht mit allgemeinen Routinen für die meist hochspezialisierten User-Probleme belegen. Und natürlich, jede Instruktion, die zusätzlich zu den User-Befehlen abläuft, kann schmerzen. &amp;#160;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;*'''Overhead''' Das bißchen Platz, &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;das &lt;/ins&gt;man hat, will man nicht mit allgemeinen Routinen für die meist hochspezialisierten User-Probleme belegen. Und natürlich, jede Instruktion, die zusätzlich zu den User-Befehlen abläuft, kann schmerzen. &amp;#160;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* '''Fest gespeicherte Programme''' (Flash) Betriebsmäßiges Programmladen oder -wechseln ist für den Flash-Speicher nicht sinnvoll. &amp;#160;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* '''Fest gespeicherte Programme''' (Flash) Betriebsmäßiges Programmladen oder -wechseln ist für den Flash-Speicher nicht sinnvoll. &amp;#160;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* '''Keine Standards''' Bei den [[MCU]] ist die ähnliche Situation wie bei den Intel-CPUs, bevor Bill Gates kam. Es gab ein Konzept für Vektor-Tabellen (Software-Interrupts) und sonst eigentlich auch nix.&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* '''Keine Standards''' Bei den [[MCU]] ist die ähnliche Situation wie bei den Intel-CPUs, bevor Bill Gates kam. Es gab ein Konzept für Vektor-Tabellen (Software-Interrupts) und sonst eigentlich auch nix.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Es gibt auf den MCUs z.B. keine verbindlichen call und stack-standards.&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Es gibt auf den MCUs z.B. keine verbindlichen call und stack-standards.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;===Firmware===&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;===Firmware===&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Das, was man beim Mikrocontroller vorfindet, könnte man als „Firmware“ bezeichnen, die durch &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;Flags &lt;/del&gt;und Werte in den I-O Registern &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;kontrolliert &lt;/del&gt;kann.&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Das, was man beim Mikrocontroller vorfindet, könnte man als „Firmware“ bezeichnen, die &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;man &lt;/ins&gt;durch &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;flags &lt;/ins&gt;und Werte in den I-O Registern &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;kontrollieren &lt;/ins&gt;kann.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* Starten &amp;amp; Initialisieren&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* Starten &amp;amp; Initialisieren&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Es werden&amp;#160; die I-O Register auf definierte Werte gesetzt, der Befehl an der Adresse 0000 wird ausgeführt. &amp;#160;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Es werden&amp;#160; die I-O Register auf definierte Werte gesetzt, der Befehl an der Adresse 0000 wird ausgeführt. &amp;#160;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Pascal</name></author>	</entry>

	<entry>
		<id>https://rn-wissen.de/wiki/index.php?title=Betriebssystem&amp;diff=5474&amp;oldid=prev</id>
		<title>Luma: /* Allgemein */</title>
		<link rel="alternate" type="text/html" href="https://rn-wissen.de/wiki/index.php?title=Betriebssystem&amp;diff=5474&amp;oldid=prev"/>
				<updated>2006-01-19T14:49:48Z</updated>
		
		<summary type="html">&lt;p&gt;‎&lt;span dir=&quot;auto&quot;&gt;&lt;span class=&quot;autocomment&quot;&gt;Allgemein&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;table class='diff diff-contentalign-left'&gt;
				&lt;col class='diff-marker' /&gt;
				&lt;col class='diff-content' /&gt;
				&lt;col class='diff-marker' /&gt;
				&lt;col class='diff-content' /&gt;
				&lt;tr style='vertical-align: top;'&gt;
				&lt;td colspan='2' style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;← Nächstältere Version&lt;/td&gt;
				&lt;td colspan='2' style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;Version vom 19. Januar 2006, 14:49 Uhr&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;L3&quot; &gt;Zeile 3:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Zeile 3:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Wichtig für uns an dieser Schichten-Teilung ist Folgendes: &amp;#160;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Wichtig für uns an dieser Schichten-Teilung ist Folgendes: &amp;#160;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* Jede Schicht bietet der direkt &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;darüberliegenden &lt;/del&gt;eine Reihe von Funktionalitäten, die von dieser über ein Interface (Schnittstelle) angesprochen werden können. &amp;#160;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* Jede Schicht bietet der direkt &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;darüber Liegenden &lt;/ins&gt;eine Reihe von Funktionalitäten, die von dieser über ein Interface (Schnittstelle) angesprochen werden können.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* Keine solche Schicht sollte übersprungen werden können („sollte“, weil in der Praxis das nicht immer eingehalten wird).&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* Keine solche Schicht sollte übersprungen werden können („sollte“, weil in der Praxis das nicht immer eingehalten wird).&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;L12&quot; &gt;Zeile 12:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Zeile 12:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;===Die Aufgaben:===&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;===Die Aufgaben:===&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;====Starten &amp;amp; Initialisieren (Boot)====&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;====Starten &amp;amp; Initialisieren (Boot)====&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Beim PC kann man diesen Vorgang sehr schön beobachten. Wenn man zum Beispiel keine Festplatte drin hat, &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;umfaßt &lt;/del&gt;dieses &amp;quot;Booten&amp;quot; alles das, was der PC macht, bevor er schreibt &amp;quot;No System Disk&amp;quot;. &amp;#160;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Beim PC kann man diesen Vorgang sehr schön beobachten. Wenn man zum Beispiel keine Festplatte drin hat, &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;umfasst &lt;/ins&gt;dieses &amp;quot;Booten&amp;quot; alles das, was der PC macht, bevor er schreibt &amp;quot;No System Disk&amp;quot;.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* Rechner-Initialisierung&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* Rechner-Initialisierung&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* Peripherie-Startup&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* Peripherie-Startup&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* Eigentliches Betriebs-System &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;Laden &amp;amp; Starten. &lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* Eigentliches Betriebs-System &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;laden und starten&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Das ist nun der oben erwähnte Moment, in dem sich entscheidet, ob irgendein Windows, Linux oder sonst was läuft.&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Das ist nun der oben erwähnte Moment, in dem sich entscheidet, ob irgendein Windows, Linux oder sonst was läuft.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;====Applikationen Laden &amp;amp; Ausführen====&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;====Applikationen Laden &amp;amp; Ausführen====&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Im Grunde heißt das nicht mehr, als eine File in den Arbeitsspeicher zu laden und den Befehlszähler (Program Counter) auf den ersten Maschinenbefehl darin anzusetzen und ab da die CPU einfach werken zu lassen. &amp;#160;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Im Grunde heißt das nicht mehr, als eine File in den Arbeitsspeicher zu laden und den Befehlszähler (Program Counter) auf den ersten Maschinenbefehl darin anzusetzen und ab da die CPU einfach werken zu lassen. &amp;#160;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;====Multi-User/Multi-Task====&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;====Multi-User/Multi-Task====&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Eigentlich alle gängigen Computer (und Betriebssysteme) tun aber so, als könnten sie viele solche Applikationen nebeneinander und völlig getrennt für verschiedene Benutzer gleichzeitig ausführen. Teils stimmt das ja auch, größtenteils aber ist es eine Täuschung, denn in Wirklichkeit läuft mal dieser, mal jener Task, aber der Wechsel geschieht so schnell, &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;daß &lt;/del&gt;die Illusion der Gleichzeitigkeit entsteht. &amp;#160;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Eigentlich alle gängigen Computer (und Betriebssysteme) tun aber so, als könnten sie viele solche Applikationen nebeneinander und völlig getrennt für verschiedene Benutzer gleichzeitig ausführen. Teils stimmt das ja auch, größtenteils aber ist es eine Täuschung, denn in Wirklichkeit läuft mal dieser, mal jener Task, aber der Wechsel geschieht so schnell, &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;dass &lt;/ins&gt;die Illusion der Gleichzeitigkeit entsteht. &amp;#160;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;=====Task/Prozess=====&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;=====Task/Prozess=====&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Wir wollen die Sache mit den &amp;quot;Multi-Usern&amp;quot; in der Folge einfach mal vergessen. Da geht's hauptsächlich nur um &amp;quot;Berechtigungen&amp;quot; und &amp;quot;Privilegien&amp;quot;. Doch was ist nun ein Task (oder Prozess) ? &amp;#160;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Wir wollen die Sache mit den &amp;quot;Multi-Usern&amp;quot; in der Folge einfach mal vergessen. Da geht's hauptsächlich nur um &amp;quot;Berechtigungen&amp;quot; und &amp;quot;Privilegien&amp;quot;. Doch was ist nun ein Task (oder Prozess) ? &amp;#160;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;L27&quot; &gt;Zeile 27:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Zeile 27:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* Ein eigener Stack&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* Ein eigener Stack&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;=====Multi-Threading=====&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;=====Multi-Threading=====&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;So etwas kann man auch als &amp;quot;Thread&amp;quot; bezeichnen, und das Bild eines &amp;quot;Threads&amp;quot; in einem Roboternetz-Forum ist &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;garnicht &lt;/del&gt;so weit weg. Ich kann (normalerweise) immer nur einen lesen, ich kann aber hin- und herspringen. Und ich hab immer die gleichen Buttons, trotzdem geht's in jedem Thread um was ganz anderes. &amp;#160;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;So etwas kann man auch als &amp;quot;Thread&amp;quot; bezeichnen, und das Bild eines &amp;quot;Threads&amp;quot; in einem Roboternetz-Forum ist &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;gar nicht &lt;/ins&gt;so weit weg. Ich kann (normalerweise) immer nur einen lesen, ich kann aber hin- und herspringen. Und ich hab immer die gleichen Buttons, trotzdem geht's in jedem Thread um was ganz anderes. &amp;#160;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del class=&quot;diffchange diffchange-inline&quot;&gt; &lt;/del&gt;Multi-Threading ist also: mehrere Programme für verschiedene Aufgaben &amp;lt;br&amp;gt;mit Stack und Registern zu versorgen und die gemeinschaftliche Hardware&amp;lt;br&amp;gt;so zu verwalten, daß jeder seinen Teil bekommt. &amp;#160;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Multi-Threading ist also: mehrere Programme für verschiedene Aufgaben &amp;lt;br&amp;gt;mit Stack und Registern zu versorgen und die gemeinschaftliche Hardware&amp;lt;br&amp;gt;so zu verwalten, daß jeder seinen Teil bekommt. &amp;#160;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Und um so einen Threadwechsel durchzuführen, muß also von einem Thread-Kontext (Register &amp;amp; Stack) auf einen anderen umgeschalten werden, ohne daß das Programm beeinträchtigt wird &amp;#160;&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Und um so einen Threadwechsel durchzuführen, muß also von einem Thread-Kontext (Register &amp;amp; Stack) auf einen anderen umgeschalten werden, ohne daß das Programm beeinträchtigt wird &amp;#160;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Luma</name></author>	</entry>

	<entry>
		<id>https://rn-wissen.de/wiki/index.php?title=Betriebssystem&amp;diff=2916&amp;oldid=prev</id>
		<title>Frank am 29. November 2005 um 23:00 Uhr</title>
		<link rel="alternate" type="text/html" href="https://rn-wissen.de/wiki/index.php?title=Betriebssystem&amp;diff=2916&amp;oldid=prev"/>
				<updated>2005-11-29T23:00:14Z</updated>
		
		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Neue Seite&lt;/b&gt;&lt;/p&gt;&lt;div&gt;==Allgemein==&lt;br /&gt;
Ein Betriebssystem ist ganz allgemein und ungefähr das, was zwischen User-Applikation und Hardware an Programmen und Funktionen abläuft. Das kann man dann noch noch in weitere Schichten teilen. &lt;br /&gt;
&lt;br /&gt;
Wichtig für uns an dieser Schichten-Teilung ist Folgendes: &lt;br /&gt;
* Jede Schicht bietet der direkt darüberliegenden eine Reihe von Funktionalitäten, die von dieser über ein Interface (Schnittstelle) angesprochen werden können. &lt;br /&gt;
* Keine solche Schicht sollte übersprungen werden können („sollte“, weil in der Praxis das nicht immer eingehalten wird).&lt;br /&gt;
&lt;br /&gt;
[[Bild:Core1.jpg]]&lt;br /&gt;
 &lt;br /&gt;
Der Zweck ist schon klar: Das User-Programm soll sich keine Gedanken machen müssen, welche Schalter wo betätigt werden, um irgendeine Hardware-Aktion auszulösen. &lt;br /&gt;
&lt;br /&gt;
===Die Aufgaben:===&lt;br /&gt;
====Starten &amp;amp; Initialisieren (Boot)====&lt;br /&gt;
Beim PC kann man diesen Vorgang sehr schön beobachten. Wenn man zum Beispiel keine Festplatte drin hat, umfaßt dieses &amp;quot;Booten&amp;quot; alles das, was der PC macht, bevor er schreibt &amp;quot;No System Disk&amp;quot;. &lt;br /&gt;
* Rechner-Initialisierung&lt;br /&gt;
* Peripherie-Startup&lt;br /&gt;
* Eigentliches Betriebs-System Laden &amp;amp; Starten. &lt;br /&gt;
Das ist nun der oben erwähnte Moment, in dem sich entscheidet, ob irgendein Windows, Linux oder sonst was läuft.&lt;br /&gt;
====Applikationen Laden &amp;amp; Ausführen====&lt;br /&gt;
Im Grunde heißt das nicht mehr, als eine File in den Arbeitsspeicher zu laden und den Befehlszähler (Program Counter) auf den ersten Maschinenbefehl darin anzusetzen und ab da die CPU einfach werken zu lassen. &lt;br /&gt;
====Multi-User/Multi-Task====&lt;br /&gt;
Eigentlich alle gängigen Computer (und Betriebssysteme) tun aber so, als könnten sie viele solche Applikationen nebeneinander und völlig getrennt für verschiedene Benutzer gleichzeitig ausführen. Teils stimmt das ja auch, größtenteils aber ist es eine Täuschung, denn in Wirklichkeit läuft mal dieser, mal jener Task, aber der Wechsel geschieht so schnell, daß die Illusion der Gleichzeitigkeit entsteht. &lt;br /&gt;
=====Task/Prozess=====&lt;br /&gt;
Wir wollen die Sache mit den &amp;quot;Multi-Usern&amp;quot; in der Folge einfach mal vergessen. Da geht's hauptsächlich nur um &amp;quot;Berechtigungen&amp;quot; und &amp;quot;Privilegien&amp;quot;. Doch was ist nun ein Task (oder Prozess) ? &lt;br /&gt;
* Der Maschinencode&lt;br /&gt;
* Ein kompletter Satz Register&lt;br /&gt;
* Ein eigener Stack&lt;br /&gt;
=====Multi-Threading=====&lt;br /&gt;
So etwas kann man auch als &amp;quot;Thread&amp;quot; bezeichnen, und das Bild eines &amp;quot;Threads&amp;quot; in einem Roboternetz-Forum ist garnicht so weit weg. Ich kann (normalerweise) immer nur einen lesen, ich kann aber hin- und herspringen. Und ich hab immer die gleichen Buttons, trotzdem geht's in jedem Thread um was ganz anderes. &lt;br /&gt;
 Multi-Threading ist also: mehrere Programme für verschiedene Aufgaben &amp;lt;br&amp;gt;mit Stack und Registern zu versorgen und die gemeinschaftliche Hardware&amp;lt;br&amp;gt;so zu verwalten, daß jeder seinen Teil bekommt. &lt;br /&gt;
&lt;br /&gt;
Und um so einen Threadwechsel durchzuführen, muß also von einem Thread-Kontext (Register &amp;amp; Stack) auf einen anderen umgeschalten werden, ohne daß das Programm beeinträchtigt wird &lt;br /&gt;
&lt;br /&gt;
=====Kontrolle der Ressourcen=====&lt;br /&gt;
Da ja die gesamte Hardware für alle ja trotzdem nur ein einziges Mal da ist, müssen natürlich Konflikte vermieden oder sonstwie abgehandelt werden. Da gibt es Mechanismen wie &amp;quot;Spin-Locks&amp;quot;, &amp;quot;Semaphores&amp;quot;, &amp;quot;Mutex&amp;quot;, &amp;quot;Critical Sections&amp;quot; und was weiß ich noch, die alle diesem Zweck dienen.&lt;br /&gt;
&lt;br /&gt;
====Shutdown====&lt;br /&gt;
Beim Pc ist es das, was bei &amp;quot;Computer ausschalten&amp;quot; passiert. Dauerhaftes Speichern auf die Platte, etc. Bei Mikrokontrollern gibt es sowas eigentlich nur beim geordneten Wechsel in den &amp;quot;Sleep&amp;quot; oder &amp;quot;Idle&amp;quot;-Mode, ansonsten wird meist einfach der Strom abgedreht.&lt;br /&gt;
&lt;br /&gt;
==Betriebssystem und Mikrocontroller==&lt;br /&gt;
Ein zum PC oder Großrechner vergleichbares Betriebssystem gibt es nicht. &lt;br /&gt;
Das hat mehrere, durchaus verständliche Gründe:&lt;br /&gt;
*'''Overhead''' Das bißchen Platz, daß man hat, will man nicht mit allgemeinen Routinen für die meist hochspezialisierten User-Probleme belegen. Und natürlich, jede Instruktion, die zusätzlich zu den User-Befehlen abläuft, kann schmerzen. &lt;br /&gt;
* '''Fest gespeicherte Programme''' (Flash) Betriebsmäßiges Programmladen oder -wechseln ist für den Flash-Speicher nicht sinnvoll. &lt;br /&gt;
* '''Keine Standards''' Bei den [[MCU]] ist die ähnliche Situation wie bei den Intel-CPUs, bevor Bill Gates kam. Es gab ein Konzept für Vektor-Tabellen (Software-Interrupts) und sonst eigentlich auch nix.&lt;br /&gt;
Es gibt auf den MCUs z.B. keine verbindlichen call und stack-standards.&lt;br /&gt;
===Firmware===&lt;br /&gt;
Das, was man beim Mikrocontroller vorfindet, könnte man als „Firmware“ bezeichnen, die durch Flags und Werte in den I-O Registern kontrolliert kann.&lt;br /&gt;
* Starten &amp;amp; Initialisieren&lt;br /&gt;
Es werden  die I-O Register auf definierte Werte gesetzt, der Befehl an der Adresse 0000 wird ausgeführt. &lt;br /&gt;
* Shutdown&lt;br /&gt;
Der Shutdown besteht üblicherweise einfach aus dem Entzug der Stromzufuhr. &lt;br /&gt;
* Sonderfunktionen&lt;br /&gt;
** [[On_Chip_Debugging|JTAG/Debugging]]&lt;br /&gt;
** [[Bascom_-_Erstes_Programm_in_den_AVR_Controller_%C3%BCbertragen|Flash-Programmierung]]&lt;br /&gt;
** [[Bootloader|Boot-Loader]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Alle anderen Betriebs-System-Funktionalitäten, wenn es sie gibt, sind Teil des User-Programmes.&lt;br /&gt;
&lt;br /&gt;
===Interpreter===&lt;br /&gt;
JAVA, Basic Stamp, RCX…&lt;br /&gt;
Das im Flash gespeicherte Programm ist ein Interpreter, der die eigentliche User-Anwendung, meist in Form von Meta-Commands, unabhängig, vielleicht auch in einem eigenen physischen Speicher geladen hat oder ggf. nachlädt.  In diesen Fällen könnte man vielleicht von einem Betriebssystem sprechen.  Aber durch die Abhängigkeit von dem Compiler /Encoder ist die Eigenständigkeit nicht gegeben.&amp;lt;br&amp;gt;Es bleibt irgendwie eine Interpretationssache.&lt;br /&gt;
&lt;br /&gt;
==Multithreading für Kontroller==&lt;br /&gt;
Der Mikrokontroller unterscheidet sich ja vom (Mikro)-prozessor, weil er auch zusätzlich eine Reihe von &amp;quot;Geräten&amp;quot; eingebaut hat, die es zu kontrollieren gilt. &lt;br /&gt;
===Synchron===&lt;br /&gt;
Man kann diese Geräte nun sozusagen &amp;quot;normal&amp;quot; betreiben, d.h. im Programmfluß wird ein Gerät &lt;br /&gt;
* initialisiert und eingestellt mit diversen Parametern&lt;br /&gt;
* gestartet &lt;br /&gt;
Nun läuft die Funktionalität ab, das Hauptprogramm wartet auf das Fertigwerden&lt;br /&gt;
* Fertig &lt;br /&gt;
Das Ergebnis wird ausgewertet und es geht wieder weiter&lt;br /&gt;
===Asynchron===&lt;br /&gt;
Es können &amp;quot;Interrupts&amp;quot;, also Unterbrechungen definiert werden, die eine Art Multi-Threading ermöglichen. &lt;br /&gt;
In diesem Falle wird das Gerät zwar wie oben &lt;br /&gt;
* initialisiert und eingestellt mit diversen Parametern&lt;br /&gt;
* gestartet &lt;br /&gt;
Aber nun läuft das Programm einfach weiter und kümmert sich nicht mehr.&lt;br /&gt;
&lt;br /&gt;
Ist das Gerät mit seiner Funktion nun irgendwann einmal fertig, wird der normale Programmablauf einfach dort gestoppt, wo es halt grad ist, und an dessen Stelle wird eine sogenannte ISR-Routine ausgeführt, die erst durch einen bestimmten Befehl (RETI) wieder die Rückkehr ins Hauptprogramm zuläßt.&lt;br /&gt;
&lt;br /&gt;
Für das Hauptprogramm ist diese Unterbrechnung nicht direkt erkennbar. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
''Artikel PickNick''&lt;br /&gt;
&lt;br /&gt;
==Siehe auch==&lt;br /&gt;
* [[Microcontroller]]&lt;br /&gt;
&lt;br /&gt;
[[Kategorie:Software]]&lt;br /&gt;
[[Kategorie:Microcontroller]]&lt;/div&gt;</summary>
		<author><name>Frank</name></author>	</entry>

	</feed>