<?xml version="1.0" encoding="UTF-8"?>
<!-- generator="FeedCreator 1.8" -->
<?xml-stylesheet href="http://update.proggen.org/lib/exe/css.php?s=feed" type="text/css"?>
<rdf:RDF
    xmlns="http://purl.org/rss/1.0/"
    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
    xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
    xmlns:dc="http://purl.org/dc/elements/1.1/">
    <channel rdf:about="http://update.proggen.org/feed.php">
        <title>proggen.org theory:os</title>
        <description></description>
        <link>http://update.proggen.org/</link>
        <image rdf:resource="http://update.proggen.org/lib/tpl/proggenY/images/favicon.ico" />
       <dc:date>2026-04-20T15:33:06+0200</dc:date>
        <items>
            <rdf:Seq>
                <rdf:li rdf:resource="http://update.proggen.org/doku.php?id=theory:os:definition&amp;rev=1663868365"/>
                <rdf:li rdf:resource="http://update.proggen.org/doku.php?id=theory:os:driver&amp;rev=1663868365"/>
                <rdf:li rdf:resource="http://update.proggen.org/doku.php?id=theory:os:interrupt&amp;rev=1663868365"/>
                <rdf:li rdf:resource="http://update.proggen.org/doku.php?id=theory:os:mutex&amp;rev=1663868365"/>
                <rdf:li rdf:resource="http://update.proggen.org/doku.php?id=theory:os:process&amp;rev=1663868365"/>
                <rdf:li rdf:resource="http://update.proggen.org/doku.php?id=theory:os:scheduling&amp;rev=1663868365"/>
                <rdf:li rdf:resource="http://update.proggen.org/doku.php?id=theory:os:start&amp;rev=1663868365"/>
                <rdf:li rdf:resource="http://update.proggen.org/doku.php?id=theory:os:syscall&amp;rev=1663868365"/>
            </rdf:Seq>
        </items>
    </channel>
    <image rdf:about="http://update.proggen.org/lib/tpl/proggenY/images/favicon.ico">
        <title>proggen.org</title>
        <link>http://update.proggen.org/</link>
        <url>http://update.proggen.org/lib/tpl/proggenY/images/favicon.ico</url>
    </image>
    <item rdf:about="http://update.proggen.org/doku.php?id=theory:os:definition&amp;rev=1663868365">
        <dc:format>text/html</dc:format>
        <dc:date>2022-09-22T19:39:25+0200</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>theory:os:definition</title>
        <link>http://update.proggen.org/doku.php?id=theory:os:definition&amp;rev=1663868365</link>
        <description>Definitionen und Aufgaben eines Betriebssystems

Den Begriff eines Betriebssystems zu definieren ist eine nicht-triviale Aufgabe. Es gibt viele verschiedene Definitionen des Begriffs, woraus sich verschiedene Aufgaben eines Betriebssystems ableiten. Es gibt sogar Debatten darüber, ob Middleware als Betriebssystem zu bezeichnen ist.</description>
    </item>
    <item rdf:about="http://update.proggen.org/doku.php?id=theory:os:driver&amp;rev=1663868365">
        <dc:format>text/html</dc:format>
        <dc:date>2022-09-22T19:39:25+0200</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>theory:os:driver</title>
        <link>http://update.proggen.org/doku.php?id=theory:os:driver&amp;rev=1663868365</link>
        <description>Treiber

Als Treiber (Driver) wird Software bezeichnet, die die Steuerung von Hardware übernimmt, teilweise auch Software, die dazu Hilfsfunktionen anbietet (bspw. generischer TCP-Stack für beliebige Ethernet-Hardware). Treiber können, je nachdem, welche Kernelarchitektur verwendet wird, im Userspace oder Kernelspace laufen; können Teil des Kernels sein, können aber auch als Prozesse ausgeführt werden.</description>
    </item>
    <item rdf:about="http://update.proggen.org/doku.php?id=theory:os:interrupt&amp;rev=1663868365">
        <dc:format>text/html</dc:format>
        <dc:date>2022-09-22T19:39:25+0200</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>theory:os:interrupt</title>
        <link>http://update.proggen.org/doku.php?id=theory:os:interrupt&amp;rev=1663868365</link>
        <description>Interrupts

Interrupts unterbrechen die aktuelle Befehlsabarbeitung aufgrund von besonders wichtigen externen (oder internen) Ereignissen. Damit ist bspw. gemeint, wenn Daten an einem I/O-Device anliegen, kann dieses Gerät an der CPU einen Interrupt auslösen, sodass diese die Befehlsabarbeitung (Fetch / Decode / Execute / Write-Back) unterbricht und den Interrupt behandelt. Der Programmcode, der den Interrupt behandelt wird Interrupt Service Routine genannt, und ist Teil des Betriebssystems.</description>
    </item>
    <item rdf:about="http://update.proggen.org/doku.php?id=theory:os:mutex&amp;rev=1663868365">
        <dc:format>text/html</dc:format>
        <dc:date>2022-09-22T19:39:25+0200</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>theory:os:mutex</title>
        <link>http://update.proggen.org/doku.php?id=theory:os:mutex&amp;rev=1663868365</link>
        <description>Gegenseitiger Ausschluss (Mutex - Mutual Exclusion)

Im Betriebssystemcode oder auch in Prozessen kann der Fall auftreten, dass einen bestimmten Codeabschnitt nur ein Prozess zu einer Zeit ausführen darf, und auch wenn er unterbrochen wird, darf kein anderer Prozess diesen Code nebenläufig ausführen. Wir sprechen von einem kritischen Abschnitt (Critical Section).</description>
    </item>
    <item rdf:about="http://update.proggen.org/doku.php?id=theory:os:process&amp;rev=1663868365">
        <dc:format>text/html</dc:format>
        <dc:date>2022-09-22T19:39:25+0200</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>theory:os:process</title>
        <link>http://update.proggen.org/doku.php?id=theory:os:process&amp;rev=1663868365</link>
        <description>Prozesse

Es gibt viele Definitionen für den Begriff Prozess. Grundlegend kann ein Prozess als Code in Ausführung beschrieben werden, bzw. als Ausführungsstrang. Ein Prozess wird im Betriebssystem durch den so genannten Process-Control-Block (Prozesssteuerblock) identifiziert. Dieser enthält einige Informationen über den Prozess, wie bspw. Identifikationsnummer, Program-Counter, Stackpointer oder Prozesszustand.</description>
    </item>
    <item rdf:about="http://update.proggen.org/doku.php?id=theory:os:scheduling&amp;rev=1663868365">
        <dc:format>text/html</dc:format>
        <dc:date>2022-09-22T19:39:25+0200</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>theory:os:scheduling</title>
        <link>http://update.proggen.org/doku.php?id=theory:os:scheduling&amp;rev=1663868365</link>
        <description>Scheduling

Als Scheduling bezeichnet man die Zuordnung eines Prozesses zur CPU, dh. die Zuordnung, dass genau dieser Prozess die CPU ab jetzt (eine Zeit lang) nutzen darf. Um das zu realisieren, gibt es einige Strategien, hier seien nur einige genannt. Es gibt viele verschiedene Strategien, einige davon ergeben eine geringere Antwortzeit der Prozesse, andere garantieren</description>
    </item>
    <item rdf:about="http://update.proggen.org/doku.php?id=theory:os:start&amp;rev=1663868365">
        <dc:format>text/html</dc:format>
        <dc:date>2022-09-22T19:39:25+0200</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>theory:os:start</title>
        <link>http://update.proggen.org/doku.php?id=theory:os:start&amp;rev=1663868365</link>
        <description>Betriebssysteme

Diese Sektion soll einen Einblick in die Grundlagen eines Betriebssystems vermitteln. Dabei geht es nicht darum ein bestimmtes Betriebssystem zu erlernen und vor allem nicht dessen Nutzung, sondern darum, die grundlegenden Entwurfsprinzipien und Verhaltensweisen eines Betriebssystems zu verstehen und dessen Aufgaben zu durchleuchten. Diese Sektion ist vor allem an technisch sehr Interessierte gerichtet.</description>
    </item>
    <item rdf:about="http://update.proggen.org/doku.php?id=theory:os:syscall&amp;rev=1663868365">
        <dc:format>text/html</dc:format>
        <dc:date>2022-09-22T19:39:25+0200</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>theory:os:syscall</title>
        <link>http://update.proggen.org/doku.php?id=theory:os:syscall&amp;rev=1663868365</link>
        <description>Systemrufe

Systemrufe sind Funktionen, die unser Betriebssystem den Prozessen zur Verfügung stellt, um bestimmte Aktionen auszuführen, die der Prozess nicht selbst implementieren soll. Bspw. Prozesserstellung mittels fork() oder Dateilesen mittels</description>
    </item>
</rdf:RDF>
