Begriffsgeschichte.

Zunächst wurden darunter diejenigen Deutschen in der k. u. k. Doppelmonarchie verstanden, die in der „Zerstreuung“, abseits des geschlossenen deutschen Sprachraums, siedelten: in Galizien und der Bukowina, in der ungarischen Reichshälfte (vor allem Slowakei und Siebenbürgen), in Bosnien und der Herzegowina. Mit den territorialen Veränderungen aufgrund der Pariser Vorortverträge 1919/20 wurde diese Definition allerdings unüblich. Seitdem bezog sich der Begriff zunehmend nur noch auf die westlichen und mittleren Karpaten (Slowakei und Karpato-Ukraine).

Geschichte.

Besiedlung.

Deutsche Siedler haben die Slowakei vom 12. bis zum 15. Jahrhundert, vor allem jedoch nach dem „Mongolensturm“ (1241) besiedelt. Ihren Höhepunkt erreichte die Besiedlung im 14. Jahrhundert. Im Gebiet von Pressburg (Bratislava) gab es wohl auch schon etwas früher Deutsche. Sie haben vor allem ältere slowakische Städte (v. a. Pressburg), Markt- und Bergbausiedlungen besiedelt und wurden meist von den Königen als Spezialisten (Handwerker, Bergleute) angeworben. Ungefähr bis zum 15. Jahrhundert bestand die Führungsschicht aller slowakischen Städte fast ausschließlich aus Deutschen.  Die drei Hauptsiedlungsgebiete waren Pressburg und Umgebung, die deutschen Sprachinseln in der Zips (Zipser Sachsen) sowie das Hauerland. Hinzu kamen ab dem 18. Jahrhundert in der Karpato-Ukraine im Tereswa- bzw. Mokrjankatal sowie bei Munkatsch noch zwei weitere kleine deutsche Sprachinseln. Zusammen stellten die Bewohner der fünf Siedlungsgebiete aber keine homogene Gruppe dar, oftmals hatten sie nicht einmal Kenntnis voneinander.

20. Jahrhundert.

Die zahlenmäßig größte Population Karpatendeutscher lebte in Pressburg/Bratislava. Unmittelbar nach Gründung der Tschechoslowakei wurden im August 1919 36 Prozent Deutsche, 33 Prozent Slowaken, 29 Prozent Magyaren und 1,7 Prozent "andere" gezählt; Juden wurden nach Sprache erfasst.  Zwar waren die Karpatendeutschen genauso wie viele Slowaken in der zweiten Hälfte des 19. und Anfang des 20. Jahrhunderts einem starken Magyarisierungsdruck ausgesetzt, aber in zahlreichen Orten stellten die Deutschen immer noch die Bevölkerungsmehrheit. Nach dem Ende des Ersten Weltkrieges plädierten die meisten Karpatendeutschen für den Verbleib der Slowakei bei Ungarn, danach für eine slowakische Autonomie innerhalb der Tschechoslowakei. Nach 1918 veränderte sich die Situation für die Karpatendeutschen grundlegend, denn mit der Erhebung Pressburgs zur Landeshauptstadt und dem Zustrom an Slowaken wurden sie, trotz Wegzug vieler Ungarn, zu einer Minderheit in der Bevölkerung. In den anderen Siedlungsgebieten ging es ähnlich vonstatten. Die meisten Karpatendeutschen waren bereits vor dem Ende des Zweiten Weltkriegs aus der Slowakei ins Deutsche Reich geflüchtet oder wurden von den deutschen Behörden evakuiert. Dies war nicht zuletzt eine Reaktion auf den slowakischen Nationalaufstand im Spätsommer 1944, bei dessen Niederschlagung von den Partisanen Grausamkeiten an Deutschen und von der SS Grausamkeiten an Slowaken verübt wurden.  Aus der Zips sind die meisten Deutschen zwischen Mitte November 1944 und dem 21. Januar 1945 dank einer Initiative Adalbert Wanhoffs und den Vorbereitungen des Bischöflichen Amtes der deutschen evangelischen Kirche vor der heranrückenden Roten Armee nach Deutschland oder in das Sudetenland evakuiert worden. Die Deutschen von Bratislava wurden im Januar und Februar 1945 nach langen Verzögerungen evakuiert, jene des Hauerlandes flüchteten Ende März 1945 aus ihren Orten. Die Rote Armee erreichte Bratislava am 4. April 1945.  Nach dem Ende des Krieges am 8. Mai 1945 war zunächst etwa ein Drittel der evakuierten und geflüchteten Deutschen in die Slowakei zurückgekehrt. Ab dem 2. August 1945 wurde ihnen – zusammen mit den Sudetendeutschen in Tschechien und mit den Ungarn in der Südslowakei – durch das Beneš-Dekret Nr. 33 die tschechoslowakische Staatsangehörigkeit aberkannt. Sie wurden in Sammellagern interniert (in Bratislava-Petržalka (dt. Engerau), Nováky, Handlová). 1946/47 sind schließlich etwa 33.000 Deutsche als Folge des Potsdamer Abkommens aus der Slowakei vertrieben worden, während ca. 20.000 Personen infolge besonderer Umstände in der Slowakei bleiben konnten. Von rund 128.000 Deutschen in der Slowakei im Jahre 1938 sind also 1947 etwa 20.000 (16 %) geblieben.

Karpatendeutsche in der Slowakei.

Gegenwärtige Situation.

Heute leben nach einer Volkszählung nur noch weniger als 6.000 Deutsche in der Slowakei, die aber seit der samtenen Revolution sämtliche politische Rechte genießen. Die Karpatendeutsche Landsmannschaft in Stuttgart arbeitet mit dem Karpatendeutschen Verein in der Slowakei und dessen Jugendverband und mit der slowakischen Regierung zusammen und betreibt u. a. Traditionspflege. Eine große Herausforderung stellt die Assimilation der mittleren und jüngeren Generationen an das slowakische Umfeld dar, die in den meisten Fällen den Verlust von deutscher Sprache und Brauchtum bedeutet.  Es gibt jedoch immer noch zwei karpatendeutsche Dörfer, Hopgarten und Metzenseifen. In Hopgarten ist die Einwohnerschaft noch mehrheitlich deutschsprachig.  Der prominenteste Angehörige dieser Volksgruppe ist Rudolf Schuster, 1999–2004 slowakischer Präsident.  Zu den karpatendeutschen Mundarten gibt es eine aus den 1950er/-60er Jahren stammende Materialsammlung in der Redaktion des Sudetendeutschen Wörterbuches, die noch nicht wissenschaftlich aufgearbeitet ist.

Als Karpatendeutsche (teils auch Mantaken) wird die deutschsprachige Bevölkerung in der Slowakei und der Karpato-Ukraine bezeichnet. Der Begriff wurde Anfang des 20. Jahrhunderts von dem Historiker und Ethnologen Raimund Friedrich Kaindl geprägt und bezieht sich auf den Gebirgszug der Karpaten.


Geschichte.

Die baltischen Stämme der Lettgallen, Semgallen, Selen und die Kuren waren die Ureinwohner im heutigen Lettland. Hinzu kommen die Liven, die das Gebiet der Küste des Rigaschen Meerbusen bewohnten. Albert von Buxhoeveden, Bischof von Livland und Bremer Domherr begann 1199 mit Hilfe des Schwertbrüderordens (später Deutschen Ordens) und der Kriegstruppen der von ihm alliierten christianisierten Letten und Liven die Kolonisation des Gebietes. Nach der Unterwerfung gingen Selen, Semgallen, Kuren und teilweise die Liven in die neue Ethnie von Letten auf. Georg Mancelius, Professor der Theologie an der Dorpater Universität, hat das erste deutsch-lettische Lexikon „Lettus“ (1638) verfasst. Der Begriff "Lettische Nation" wurde erstmals von dem evangelisch-lutherischen Pastor Paul Einhorn in seinen Schriften „Reformatio gentis Letticae in Ducatu Curlandiae“ (1636) und „Historia Lettica“ (1649) benutzt. Die entscheidende Rolle für die Entwicklung der lettischen Literatursprache hat der Pastor Gotthard Friedrich Stender (1714–1796) gespielt. Bis in das 19. Jahrhundert hinein lebten die Letten auf dem Land zumeist als Bauernvolk unter Herrschaft der deutsch-baltischer Rittergutsbesitzer. In den Städten dominierten die Deutschen.  Erst durch die schrittweise Befreiung durch Agrarreformen und Bauernlandverkauf änderte sich die Situation ab der Mitte des 19. Jahrhunderts. Es entstand eine kleine Schicht lettischer Großbauern. Mit der Industrialisierung wuchsen die Hafenstädte Riga und Libau und die Letten stellten nun auch in den Städten die Bevölkerungsmehrheit. Es entstanden: ein lettisches Proletariat, ein lettischer Mittelstand und ein kleines lettisches Bildungsbürgertum, von dem erste Anzeichen eines "nationalen Erwachens" kam. Unter dem russischen Kaiser Alexander III. kam es ab 1881 zu einer gezielten Russifizierung der baltischen Provinzen. Gegen diesen doppelten Druck durch Deutsch-Balten und Russen revoltierten die Letten bei der Revolution 1905. Ende des Jahres waren Gutsbesitzer und russisches Militär nahezu vollständig vom flachen Land vertrieben. Die "Lettische Revolution" zielte auf die administrative Vereinigung der lettischen Gebiete, Einführung der lettischen Sprache als Verwaltungs- und Schulsprache und Autonomie. Mit dem Sturz des Zaren 1917 wurden diese Forderungen wieder laut. Ein erster Erfolg war die Anerkennung eines demokratisch gewählten Landrats durch die russische Übergangsregierung. Jedoch war Kurland seit 1915 durch deutsche Truppen besetzt. 1918 rief ein lettischer Volksrat die unabhängige Republik Lettland aus, die sich in langwierigen Kämpfen auch gegen die erste Lettische Sowjetrepublik durchsetzen konnte. 1920 wurde Frieden mit der Sowjetunion und Deutschland geschlossen. 1934 kam ein faschistisches System an die Macht, das unter dem Spruch „Lettland den Letten“ sich vor allem gegen die jüdische (1935: 4,8 % der Bevölkerung) und deutsche Minderheit (1935: 3,2 %) richtete.  Durch den deutsch-sowjetischen Nichtangriffspakt wurde Lettland der sowjetischen Interessensphäre zugeschlagen und 1940 von der Sowjetunion annektiert. 1941 bis 1944/45 besetzten die Deutschen Lettland. Über 150.000 Letten wurden unter der Herrschaft Josef Stalins deportiert. Für Industrieunternehmen wanderten russische Arbeitskräfte ein. 1970 war der Anteil der lettischen Bevölkerung in Riga kleiner als der russische Anteil. 1988 wurde die Volksfront Lettlands ("Latvijas Tautas Fronte") gegründet. Im Juli 1989 erklärte sich Lettland erneut für souverän, am 4. Mai 1990 wurde die unabhängige Republik Lettland wiederhergestellt und im August 1991 von der Sowjetunion anerkannt.

Siehe auch.

Geschichte Lettlands

Die Letten (Eigenbezeichnung: "latvieši") sind ein baltisches Volk. Sie sprechen die lettische Sprache der östlichen baltischen Sprachgruppe und sind zu zwei Dritteln Protestanten und zu gut einem Viertel Katholiken. Sie bilden mit 62,1 % (2011) die Bevölkerungsmehrheit im heutigen Lettland, jedoch im politischen Sinne bilden alle lettischen Staatsbürger das lettische Staatsvolk.


Leben.

Albrecht war der Sohn Herzog Albrechts IV. von Österreich († 1404) und der Herzogin Johanna Sophie von Bayern-Straubing.  Während seiner Minderjährigkeit verwalteten seine drei Großonkel, zuerst Wilhelm der Artige (bis 1406), dann Herzog Leopold der Dicke und zuletzt Ernst der Eiserne von Steiermark, unter fortwährenden Streitigkeiten seine Erblande. Erst der plötzliche Tod Leopolds ermöglichte seinen Regierungsantritt 1411. Seine Erzieher waren Berthold von Wehingen, der spätere Fürstbischof von Freising, und Reinprecht (II.) von Walsee.  Am 17. März 1420 wurde durch eine päpstliche Bulle der Kreuzzug gegen die häretischen Hussiten in Böhmen angeordnet. Im Juni vereinigten sich Albrechts Truppen bei Beraun mit den Truppen des deutschen Königs Sigismund. Am 28. September 1421 kam Sigismund mit Albrecht in Preßburg über die Bedingungen überein, unter welchen dieser seine minderjährige Tochter, Prinzessin Elisabeth, zur Frau erhalten sollte. Für die Belehnung mit Mähren, die am 4. Oktober 1423 an den Herzog erfolgte, musste Albrecht V. fast alleine die Last des Hussitenkrieges bestreiten.  Albrecht versuchte der Ausbreitung der häretischen Hussiten neben militärischen Mitteln auch durch die kirchentreue Melker Klosterreform zu begegnen. Auch Juden und Ketzer ließ er mit fanatischem Hass verfolgen. Die großangelegte Vertreibung und Ermordung der Wiener Juden 1420/1421 und die Schleifung der Or-Sarua-Synagoge auf dem Judenplatz ging nicht zuletzt auf seine Initiative zurück.  Den Feldzug von 1423 eröffnete Albrecht mit der Belagerung von Lundenburg. Die Böhmen unter Jan Žižka und Prokop Holy rückten zum Entsatz heran. Albrecht musste die Belagerung aufheben und zog sich über Marchegg nach Preßburg zurück. Er verstärkte sich mit ungarischen Truppen und brachte im Gegenzug den Hussiten bei Kremsier eine bedeutende Niederlage bei. 1424 eroberte Albrecht alle gegnerischen Plätze in Mähren, dann gebot ihm der Gegner unter Žižka vor Pribislav Halt. Während eingeleiteter Friedensverhandlungen starb Žižka, abgespaltete Heerhaufen der Taboriten fielen unter Prokop dem Kahlen in Österreich ein.  Albrecht unterstützte seinen Schwiegervater auch weiterhin in seinem Kampf gegen die Hussiten, ein Umstand, der die österreichischen Länder immer tiefer in die Auseinandersetzung hineinzog. Am 25. Juli 1425 schlossen König Sigismund von Ungarn und Albrecht zu Waitzen ein gegenseitiges Beistandsbündnis mit dem Markgrafen Friedrich von Meißen, der dafür die Kurwürde von Sachsen erlangte.  Die Böhmen drangen derweil unter ihrem neuen Führer Prokop dem Großen in Mähren ein und eroberten Trebitsch, am 12. November zerstörten sie das Stift Klosterbruck bei Znaim. Vor allem die Gebiete nördlich der Donau wurden zwischen November 1425 und 1431/1432 von marodierenden Kampfverbänden heimgesucht. Im März 1427 verheerten die Gegner Stadt und Stift Zwettl, im folgenden Jahr belagerten sie Brünn, das sich aber erfolgreich verteidigen konnte.  Während die königlichen Truppen 1431 in der Schlacht bei Taus von den Hussiten schwer geschlagen worden waren, konnten Albrechts Truppen im Oktober 1431 einen feindlichen Heerhaufen bei Waidhofen an der Thaya zurückschlagen. Trotzdem war Albrecht jetzt gezwungen, einen etwas moderateren Kurs einzuschlagen.  König Sigismund designierte Albrecht II. immer verstärkter zum Nachfolger seiner Luxemburger Hausmacht. Nach Einleitung von Friedensverhandlungen von 1433 ließen die Einfälle der Hussiten nach, der mährische Grenzraum kam zur Ruhe. Die Vernichtung des Hauptheeres der Hussiten bei Lipan durch verbündete Truppen machte 1434 den Weg zum Ausgleich frei.  Nachdem der bereits schwer erkrankte Kaiser Sigismund bei einem Zusammentreffen mit Albrecht in Znaim verstorben war, wählten die ungarischen Stände den Herzog am 18. Dezember 1437 zum Nachfolger. In Böhmen schlug die pro-österreichische Seite unter Führung von Ulrich II. von Rosenberg und Meinhard von Neuhaus am 30. Dezember 1437 Albrecht zwar als König vor, hatte aber eine starke Opposition. Am 1. Januar 1438 wurde Albrecht in Stuhlweißenburg vorerst nur zum König von Ungarn gekrönt.  Nachdem Albrecht am 18. März 1438 in Frankfurt am Main auch zum römisch-deutschen König erwählt worden war, versuchten die Hussiten und deren polnische Verbündeten seine zusätzliche Erhebung in Böhmen mit allen Mitteln zu verhindern. Albrecht drang darauf mit bewaffnetem Gefolge in Prag ein und ließ sich am 29. Juni 1438 im Prager Veitsdom zum König von Böhmen krönen. Er konnte das Land aber nicht dauerhaft in Besitz nehmen und musste sich wieder zurückziehen.  Als deutscher König berief er einen Reichstag ein und schloss sich der kurfürstlichen Neutralität im Streit zwischen dem Papst und dem Basler Konzil an. Größere politische Aktivität entfaltete er nicht, da er bereits 1439 gegen die Türken nach Ungarn zog. Dort stieß er auf erhebliche Gegenwehr des einheimischen Adels gegen seine Versuche, seine königliche Macht durchzusetzen, sowie auf Auseinandersetzungen zwischen deutschen Siedlern und ungarischen Einwohnern. Diese Unruhen verhinderten, dass er sein Heer durch einheimische Kräfte verstärken konnte. Nicht zuletzt deshalb fiel Serbien an die Türken.  Während des Feldzugs starb Albrecht II. in Neszmély (Langendorf) vermutlich an der Ruhr, an der er bereits längere Zeit erkrankt war, und wurde in Stuhlweißenburg (Székesfehérvár) begraben. Sein Sohn Ladislaus wurde erst nach seinem Tod durch Elisabeth zur Welt gebracht, daher erhielt er den Namen Postumus (der Nachgeborene).  Sein Wahlspruch lautete: "Amicus optima vitae possessio" („Ein Freund ist der beste Besitz des Lebens“).

Heirat und Nachkommen.

Am 28. September 1421 heiratete er in Prag Prinzessin Elisabeth von Luxemburg (* um 1409; † 1442), die Tochter Kaiser Sigismunds und dessen Gattin Gräfin Barbara von Cilli. Das Paar hatte vier Kinder:

Der Habsburger Albrecht (ungarisch "Albert", kroatisch "Albreht"; * 16. August 1397 in Wien; † 27. Oktober 1439 in Neszmély nahe Esztergom) war ab 1404, als Albrecht V., Herzog von Österreich und ab 1438 als Albrecht II. römisch-deutscher König sowie König von Ungarn, Kroatien und Böhmen. Albrecht unterstützte den römisch-deutschen Kaiser und böhmischen König Sigismund, dessen Tochter Elisabeth von Luxemburg er geheiratet hatte, bei dessen Kampf gegen die Hussiten und übernahm, nach dessen Tod, seine vier Königskronen. Die römisch-deutsche Königswürde sollte bis zum Untergang des Heiligen Römischen Reiches 1806, mit nur wenigen Jahren Unterbrechung, bei den Habsburgern bleiben.


Unterscheidung zwischen Programm und Prozess.

Ein Programm ist eine den Regeln einer bestimmten Programmiersprache genügende Folge von Anweisungen (bestehend aus Deklarationen und Instruktionen), um bestimmte Funktionen bzw. Aufgaben oder Probleme mithilfe eines Computers zu bearbeiten oder zu lösen. Ein Programm bewirkt nichts, solange es nicht gestartet wurde. Wird ein Programm gestartet – genauer: eine Kopie (im Hauptspeicher) des Programms (auf dem Festwertspeicher), so wird diese Instanz zu einem (Betriebssystem-)Prozess, der zum Ablauf einem Prozessorkern zugeordnet werden muss.  Andrew S. Tanenbaum veranschaulicht den Unterschied zwischen einem Programm und einem Prozess metaphorisch anhand des Prozesses des Kuchenbackens:  Ein Prozess stellt auf einem Rechnersystem die Ablaufumgebung für ein Programm zur Verfügung und ist die Instanziierung eines Programms. Als ablaufendes Programm beinhaltet ein Prozess dessen Anweisungen – sie sind eine dynamische Folge von Aktionen, die entsprechende Zustandsänderungen bewirken. Als Prozess bezeichnet man auch die gesamte Zustandsinformation eines laufenden Programms. Damit ein Programm ausgeführt werden kann, müssen ihm bestimmte Ressourcen zugeteilt werden. Dazu gehört u. a. ein ausreichender Anteil des Hauptspeichers, in dem der entsprechende Prozess ausgeführt werden soll. Im Allgemeinen übersetzt der Compiler ein Programm in eine ausführbare Datei, die vom Betriebssystem in den Adressraum eines Prozesses geladen werden kann. Ein Programm kann nur zu einem Prozess werden, wenn die ausführbare Datei in den Hauptspeicher geladen wird. Es gibt zwei übliche Techniken, wie ein Benutzer dem Betriebssystem anweist, eine ausführbare Datei zu laden und zu starten: durch Doppelklick auf ein Icon, das die ausführbare Datei repräsentiert, oder durch Eingabe des Dateinamens in der Kommandozeile. Außerdem haben laufende Programme auch noch die Möglichkeit, ohne Beteiligung des Benutzers weitere Prozesse mit Programmen zu starten.  Ein Prozess beinhaltet insbesondere  Auch wenn zwei Prozesse zu demselben Programm gehören, werden sie trotzdem als zwei unterschiedliche Ausführungseinheiten angesehen. So können beispielsweise verschiedene Benutzer verschiedene Kopien eines gleichen Mail-Programms ausführen oder ein einziger Benutzer kann verschiedene Kopien eines Browser-Programms aktivieren. Davon ist jede ein separater Prozess. Auch wenn unter Umständen das Programmsegment bei verschiedenen Instanzen eines Programms dasselbe ist, so unterscheiden sich Daten-, Heap- und Stack-Segmente.  Ein Prozess kann seinerseits wieder eine Ausführungsumgebung für anderen Programmcode sein. Ein Beispiel dafür ist die Java-Laufzeitumgebung. Diese besteht üblicherweise aus der Java Virtual Machine (JVM), die für die Ausführung der Java-Anwendungen verantwortlich ist. Mit ihr werden Java-Programme weitgehend unabhängig vom darunter liegenden Betriebssystem ausgeführt. So lässt sich ein kompiliertes Java-Programm codice_1 mit dem Kommandozeilenbefehl codice_2 ausführen. Der Befehl codice_3 erzeugt einen gewöhnlichen Prozess für die JVM, welche dann ihrerseits das Java-Programm codice_4 in der virtuellen Maschine ausführt.  Im Zusammenhang mit den Speicherbereichen, die ein laufendes Programm als Prozess nutzen darf, spricht man auch von einem Prozessadressraum. Ein Prozess kann nur Daten verarbeiten, die zuvor in seinen Adressraum geladen wurden; Daten, die momentan von einem Maschinenbefehl verwendet werden, müssen sich zudem im (physischen) Hauptspeicher befinden. Der Adressraum eines Prozesses ist im Allgemeinen virtuell; der virtuelle Speicher bezeichnet den vom tatsächlich vorhandenen Hauptspeicher unabhängigen Adressraum, der einem Prozess vom Betriebssystem zur Verfügung gestellt wird. Die Memory Management Unit (MMU) verwaltet den Zugriff auf den Hauptspeicher. Sie rechnet eine virtuelle in eine physische Adresse um (siehe dazu auch Speicherverwaltung und Paging).

Prozesszustände.

Es wird unterschieden zwischen  Ein Prozessor(kern) kann immer nur einen Prozess gleichzeitig verarbeiten. Bei den ersten Computern wurden daher die Prozesse immer nacheinander als Ganzes verarbeitet, es konnte immer nur ein Prozess zur gleichen Zeit (exklusiv) ablaufen. Um die Wartezeiten beim Zugriff z. B. auf langsame Peripherie-Einheiten nutzen zu können, wurde die Möglichkeit geschaffen, Prozesse nur teilweise auszuführen, zu unterbrechen und später wieder fortzuführen (wieder „aufzusetzen“). Der Begriff Multiprogramming (auch Multiprogrammbetrieb oder Multiprocessing) bezeichnet im Gegensatz zum Einprogrammbetrieb (Singleprocessing) die Möglichkeit der „gleichzeitigen“ oder „quasi-gleichzeitigen“ Ausführung von Programmen/Prozessen in einem Betriebssystem. Die meisten modernen Betriebssysteme wie Windows oder Unix unterstützen den Mehrprozessbetrieb, wobei die Anzahl der nebenläufigen Prozesse meist wesentlich höher ist als die Anzahl der vorhandenen Prozessorkerne.  Ein Prozess durchläuft somit während seiner Lebenszeit verschiedene Zustände. Wenn das Betriebssystem entscheidet, den Prozessor für eine gewisse Zeit einem anderen Prozess zuzuteilen, wird zunächst der aktuell rechnende Prozess gestoppt und in den Zustand "rechenbereit" versetzt. Danach kann der andere Prozess in den Zustand "rechnend" versetzt werden. Es kann auch sein, dass ein Prozess "blockiert" wird, weil er nicht weiterarbeiten kann. Typischerweise geschieht dies durch das Warten auf Eingabedaten, die noch nicht zur Verfügung stehen. Vereinfacht lassen sich vier Zustände unterscheiden:  Dies lässt sich als Zustandsautomat eines Prozesses mit vier Zuständen modellieren:  Es ergeben sich dabei u. a. die folgenden Zustandsübergänge:  Natürlich sind die Zustandsautomaten moderner Betriebssysteme etwas komplexer, aber im Prinzip sind sie ähnlich konzipiert. Auch die Bezeichnungen der Prozesszustände variieren zwischen den Betriebssystemen. Grundlegend bleibt, dass sich pro Prozessor(kern) nur ein Prozess im Zustand "rechnend" befinden kann, dagegen können viele Prozesse gleichzeitig "rechenbereit" und "blockiert" sein.

Prozesskontext.

Die gesamte Information, die für den Ablauf und die Verwaltung von Prozessen von Bedeutung ist, bezeichnet man als Prozesskontext.  Der Prozesskontext beinhaltet u. a. die Informationen, die im Betriebssystem für einen Prozess verwaltet werden und die Inhalte aller zum Prozess gehörenden Prozessorregister (z. B. Allzweckregister, Befehlszähler, Statusregister und MMU-Register). Die Registerinhalte sind wesentlicher Bestandteil des sogenannten Hardware-Kontext. Verliert ein rechnender Prozess die CPU, so findet ein sog. Kontextwechsel (engl. context switch) statt: Dabei wird zunächst der Hardware-Kontext des aktiven Prozesses gesichert; anschließend wird der Kontext des Schedulers hergestellt und dieser ausgeführt; er entscheidet nun, ob/welcher Prozess als nächstes folgen soll. Der Scheduler sichert dann seinen eigenen Kontext, lädt den Hardware-Kontext des neu zu aktivierenden Prozesses in den Prozessorkern und startet ihn anschließend.

Prozessverwaltung.

Prozesskontrollblock.

Jeder Prozess eines Betriebssystems wird durch einen Prozesskontrollblock (engl. "process control block", kurz PCB, auch "task control block") dargestellt. Der Prozesskontrollblock beinhaltet viele Informationen, die mit einem bestimmten Prozess verbunden sind. Es werden also alle wichtigen Informationen über einen Prozess gespeichert, wenn er vom Zustand "rechnend" in die Zustände "rechenbereit" oder "blockiert" übergeht: Der Hardware-Kontext eines zu suspendierenden Prozesses wird in seinem PCB gesichert, der Hardware-Kontext des neu zu aktivierenden Prozesses aus seinem PCB in die Ablaufumgebung geladen. Dadurch kann der blockierte oder rechenbereite Prozess zu einem späteren Zeitpunkt fortgesetzt werden, genau in dem Zustand, wie er vor der Unterbrechung war (ggf. mit Ausnahme der Änderung, die ihn zuvor blockierte).  Zu den Informationen, die über einen Prozess im PCB gespeichert werden, gehören unter anderem:

Prozesstabelle.

Das Betriebssystem führt eine Tabelle mit aktuellen Prozessen in einer kerneleigenen Datenstruktur, der sog. Prozesstabelle. Bei der Erzeugung eines neuen Prozesses wird darin ein Prozesskontrollblock als neuer Eintrag angelegt. Viele Zugriffe auf einen Prozess basieren darauf, dass über den PID der zugehörige PCB in der Prozesstabelle gesucht wird. Da PCBs Informationen über die belegten Ressourcen enthalten, müssen sie im Speicher direkt zugreifbar sein. Wesentliches Kriterium, in was für einer Datenstruktur die Tabelle im Betriebssystem gespeichert wird, ist daher ein möglichst effizienter Zugriff.

Operationen auf Prozessen.

Prozesserzeugung.

Prozesse, die mit (menschlichen) Benutzern interagieren, müssen „im Vordergrund laufen“, also Eingabe- und Ausgaberessourcen belegen und verwenden. Hintergrundprozesse dagegen erfüllen Funktionen, die keine Benutzer-Interaktion benötigen; sie sind meist eher dem Betriebssystem als ganzes zuzuordnen denn einem bestimmten Benutzer. Prozesse, die im Hintergrund bleiben, heißen auf Unix-basierten Betriebssystemen „Daemons“, auf Windows-basierten „Dienste“. Wenn der Computer hochgefahren wird, werden üblicherweise viele Prozesse gestartet, von denen der Benutzer nichts bemerkt. Beispielsweise könnte ein Hintergrundprozess zum Empfangen von E-Mails gestartet werden, der im Zustand „blockiert“ verbleibt, bis eine E-Mail eintrifft. In unixoiden Systemen werden die laufenden Prozesse mit dem Kommando "ps" angezeigt, unter Windows wird dazu der Taskmanager benutzt.  Ein laufender Prozess kann weitere Prozesse durch einen Systemaufruf erzeugen (lassen) – ein Beispiel-Systemaufruf dafür ist die Funktion "fork()" in unixoiden Systemen: Diese erzeugt aus einem existierenden Prozess (Elternprozess) einen zusätzlichen, neuen Prozess (Kindprozess). Der Kindprozess wird als Kopie des Elternprozesses erzeugt, erhält jedoch einen eigenen Prozessidentifikator (PID) und wird in der Folge als eigenständige Instanz eines Programms und unabhängig vom Elternprozess ausgeführt. In Windows kann ein Prozess durch die Funktion "CreateProcess()" gestartet werden.  In manchen Betriebssystemen besteht zwischen Eltern- und Kindprozessen weiterhin eine gewisse Beziehung. Wenn der Kindprozess weitere Prozesse erzeugt, entsteht eine Prozesshierarchie. In Unix formiert ein Prozess zusammen mit seinen Nachkommen eine Prozessfamilie. Versendet beispielsweise ein Benutzer ein Signal mittels Tastatureingabe, so wird dieses an all diejenigen Prozesse der Prozessfamilie weitergeleitet, die momentan mit der Tastatur in Verbindung stehen. Jeder Prozess kann nun selber entscheiden, wie er mit dem Signal umgeht.  In Windows existiert dagegen kein Konzept der Prozesshierarchie. Alle Prozesse sind gleichwertig. Es ist lediglich ein spezielles Token ("Handle" genannt) vorhanden, das einem Elternprozess erlaubt, seinen Kindprozess zu steuern.

Prozessbeendigung.

Ein Prozess endet normalerweise, indem er sich am Ende seines Programmablaufs mittels Systemaufruf als beendet erklärt. Bildschirmorientierte Programme wie Textverarbeitungsprogramme und Webbrowser stellen ein Symbol oder einen Menüpunkt bereit, den der Benutzer anklicken kann, um den Prozess anzuweisen, sich freiwillig zu beenden. Ein Prozess sollte vor seinem Ende sämtliche geöffneten Dateien schließen und jegliche Ressourcen zurückgeben. Als beendender Systemauruf existiert unter Unix der Systemaufruf "exit" und unter Windows "exitProcess".  Ein Prozess kann auch von einem anderen Prozess beendet (terminiert) werden. Ein Systemaufruf, der das Betriebssystem anweist, einen anderen Prozess zu beenden, heißt unter Unix "kill" und unter Windows "TerminateProcess".  Ein weiterer Grund für eine Terminierung liegt vor, wenn ein Prozess einen schwerwiegenden Fehler verursacht. Dies geschieht häufig aufgrund von Programmierfehlern. Beispielsweise wenn der Prozess auf Ressourcen zugreifen möchte, die ihm nicht (mehr) zugeteilt sind (zum Beispiel Schreiben auf eine bereits geschlossene Datei, Lesen aus einem Speicherbereich, der bereits dem Betriebssystem zurückgegeben wurde). Ebenso bricht das Betriebssystem einen Prozess ab, der illegale Aktionen auszuführen versucht (zum Beispiel Bitkombinationen als Befehle ausführen möchte, die die CPU nicht kennt, oder direkte Hardwarezugriffe, die nur das Betriebssystem darf).  Wenn ein Prozess in unixoiden Betriebssystemen beendet wurde, kann er trotzdem noch in der Prozesstabelle gelistet sein und noch zugeteilte Ressourcen belegen sowie Attribute besitzen. Ein Prozess in diesem Zustand wird Zombie-Prozess genannt. Wenn ein Kindprozess beendet wird, kann der Elternprozess dadurch vom Betriebssystem erfragen, auf welche Art dieser beendet wurde: erfolgreich, mit Fehler, abgestürzt, abgebrochen etc. Um diese Abfrage zu ermöglichen, bleibt ein Prozess, selbst nachdem er beendet wurde, in der Prozesstabelle stehen, bis der Elternprozess diese Abfrage durchführt – egal ob diese Information gebraucht wird oder nicht. Bis dahin hat der Kindprozess den Zustand Zombie.

Prozessbesitzer und Prozessrechte.

Ein Aspekt der IT-Sicherheit verlangt, dass sich Benutzer gegenüber dem Computersystem authentifizieren müssen. Ansonsten kann das Betriebssystem nicht beurteilen, auf welche Dateien oder andere Betriebsmittel ein Benutzer zugreifen darf. Bei der am weitesten verbreiteten Form der Authentifizierung wird der Benutzer aufgefordert, einen Login-Namen und ein Passwort einzugeben. Jeder Benutzer erhält so eine eindeutige Benutzer-ID (UID). Benutzer können wiederum in Gruppen organisiert werden, denen eine Gruppen-ID (GID) zugewiesen ist.  Der Zugriff auf gewisse Daten soll insofern beschränkt und kontrolliert sein, als nur autorisierte Benutzer oder Programme auf die Informationen zugreifen dürfen. So baut beispielsweise ein wichtiger Sicherheitsmechanismus von unixoiden Systemen auf diesem Benutzer-Konzept auf: Jeder Prozess trägt die Benutzer-ID und Gruppen-ID seines Aufrufers. Durch den Login-Prozess erfährt das Betriebssystem, mit wessen Benutzer-ID ein Prozess zu starten ist. Man sagt, dass ein Prozess dem Benutzer gehört, der ihn gestartet hat. Der Benutzer ist also der Besitzer des Prozesses. Wenn nun beispielsweise eine Datei erstellt wird, bekommt diese die UID und GID des erzeugenden Prozesses. Die Datei gehört somit ebenfalls dem Benutzer, in dessen Namen (mit dessen UID) sie angelegt wurde. Wenn ein Prozess auf eine Datei zugreift, prüft das Betriebssystem anhand der UID der Datei, ob diese dem Besitzer des Prozesses gehört, und entscheidet daraufhin, ob der Zugriff gestattet wird.  Ein Spezialfall ist der Superuser (oder Root-Benutzer), der mit den weitreichendsten Zugriffsrechten ausgestattet ist. In unixoiden Systemen hat dieses Benutzerkonto die UID 0. Prozessen mit der UID 0 ist es auch gestattet, eine kleine Anzahl geschützter Systemaufrufe durchzuführen, die für normale Benutzer gesperrt sind. Das Setuid-Bit ermöglicht einen erweiterten Schutzmechanismus. Wenn das Setuid-Bit gesetzt ist, dann wird die effektive UID für diesen Prozess auf den Besitzer der ausführbaren Datei gesetzt, anstatt auf den Benutzer, der es aufgerufen hat. Dieses Vorgehen ermöglicht unprivilegierten Benutzern und Prozessen einen kontrollierten Zugriff auf privilegierte Ressourcen.

Prozessumschaltung.

Bei einer Prozessumschaltung (engl. "context switch") wird der Prozessor an einen anderen Prozess vergeben. Bei nicht unterbrechbaren Prozessen findet eine Prozessumschaltung beim Start und beim Ende einer Prozessausführung statt. Bei unterbrechbaren Prozessen ist eine Umschaltung möglich, wann immer es der Prozessor zulässt. Man spricht auch von der Verdrängung (engl. "suspension") eines Prozesses durch einen anderen, wenn ein Prozess mit einer höheren Priorität die CPU erhält.

Prozess-Scheduling.

Ein Prozess-Scheduler regelt die zeitliche Ausführung mehrerer Prozesse. Die Strategie, die er verwendet, heißt Schedulingstrategie. Dies ist die Strategie, nach der der Scheduler die Prozess-Umschaltungen vornimmt. Diese sollte eine „bestmögliche“ Zuteilung der CPU an die Prozesse ermöglichen, wobei allerdings (abhängig vom ausführenden System) unterschiedliche Ziele verfolgt werden können. Bei interaktiven Systemen ist beispielsweise eine kurze Antwortzeit erwünscht, d. h. eine möglichst kurze Reaktionszeit des Systems auf die Eingaben eines Benutzers. Wenn er beispielsweise in einem Texteditor eine Tastatureingabe tätigt, sollte der Text "sofort" erscheinen. Als einer von mehreren Benutzern sollte auch eine gewisse Fairness garantiert werden: Kein (Benutzer-)Prozess sollte unverhältnismäßig lange warten müssen, während ein anderer bevorzugt wird.  Einprozessorsysteme verwalten genau einen Prozessor(kern) (CPU). Es gibt darauf also immer nur einen Prozess, der im Zustand "rechnend" ist, alle anderen (rechenbereiten) Prozesse müssen warten, bis ihnen der Scheduler die CPU für eine gewisse Zeit zuweist. Auch bei Mehrprozessorsystemen ist die Anzahl der Prozesse meist größer als die Anzahl der Prozessorkerne und die Prozesse konkurrieren um das knappe Betriebsmittel CPU-Zeit. Ein weiteres allgemeines Ziel der Schedulingstrategie ist es, möglichst alle Teile des Systems beschäftigt zu halten: Wenn die CPU und alle Ein-/Ausgabegeräte die ganze Zeit über am Laufen gehalten werden können, wird mehr Arbeit pro Sekunde erledigt, als wenn sich einige Komponenten des Rechnersystems im Leerlauf befinden.  Grob lassen sich Schedulingstrategien in zwei Kategorien einteilen: Eine "nicht unterbrechende" (engl. "nonpreemptive") Schedulingstrategie wählt einen Prozess aus und lässt ihn so lange laufen, bis er blockiert (z. B. wegen Ein-/Ausgabe oder weil er auf einen anderen Prozess wartet) oder bis er freiwillig die CPU abgibt. Im Gegensatz dazu wählt eine "unterbrechende" (engl. "preemptive") Schedulingstrategie einen Prozess aus und lässt ihn nicht länger als eine festgelegte Zeit laufen. Falls er nach diesem Zeitintervall immer noch rechnet, wird er beendet und der Scheduler wählt einen anderen Prozess aus den rechenbereiten Prozessen zur Ausführung aus. Unterbrechendes Scheduling erfordert einen Timerinterrupt, der am Ende des Zeitintervalls dem Scheduler die Kontrolle über die CPU zurückgibt.

Unterbrechungen.

Die Hardware oder die Software kann einen Prozess vorübergehend unterbrechen, um einen anderen, in der Regel kurzen, aber zeitkritischen, Vorgang abzuarbeiten (siehe Interrupt). Da Unterbrechungen in Systemen häufige Ereignisse sind, muss entsprechend sichergestellt werden, dass ein unterbrochener Prozess später wieder fortgesetzt werden kann, ohne dass bereits geleistete Arbeit verloren geht. In den unterbrochenen Prozess wird quasi eine Unterbrechungsbehandlung eingeschoben. Diese wird im Betriebssystem ausgeführt.  Das auslösende Ereignis wird Unterbrechungsanforderung (engl. "interrupt request", kurz IRQ) genannt. Nach dieser Anforderung führt der Prozessor eine Unterbrechungsroutine aus (auch Unterbrechungsbehandlung genannt, engl. "interrupt handler", "interrupt service routine" oder kurz ISR). Anschließend wird der unterbrochene Prozess dort fortgeführt, wo er unterbrochen wurde.

Synchrone Unterbrechungen.

Synchrone Unterbrechungen treten bei internen Ereignissen auf, die insbesondere bei identischen Rahmenbedingungen (Programmausführung mit gleichen Daten) immer an der gleichen Programmstelle auftreten. Die Unterbrechungsstelle im Programm ist also vorhersagbar.  Die Bezeichnung "synchron" deutet darauf hin, dass diese Unterbrechungen an die Ausführung eines Befehls im Rechnerkern selbst geknüpft sind. Der Rechnerkern erkennt Ausnahmen (engl. "exceptions" oder "traps") im Rahmen seiner Verarbeitung (z. B. eine Division durch null). Der Rechnerkern muss daher auf interne Unterbrechungswünsche sofort reagieren und die Behandlung der aufgetretenen (Fehler-)Situation in der Unterbrechungsbehandlung veranlassen. Sie sind also nicht verzögerbar.  Entsprechend ihrer typischen Bedeutung haben sich für einige Unterbrechungswünsche spezielle Bezeichnungen eingebürgert, zum Beispiel:

Asynchrone Unterbrechungen.

Asynchrone Unterbrechungen (auch (asynchrone) Interrupts genannt) sind Unterbrechungen, die nicht an den rechnenden Prozess gebunden sind. Sie kommen durch externe Ereignisse zustande und hängen nicht mit der CPU-Verarbeitung zusammen. Dementsprechend sind solche Unterbrechungen unvorhersagbar und nicht reproduzierbar.  Häufig wird eine asynchrone Unterbrechung durch ein Ein-/Ausgabegerät ausgelöst. Diese bestehen üblicherweise aus zwei Teilen: einem Controller und dem Gerät selbst. Der Controller ist ein Chip (oder auch mehrere Chips), der das Gerät auf der Hardwareebene steuert. Er bekommt Befehle vom Betriebssystem, wie das Lesen von Daten vom Gerät, und führt diese aus. Sobald das Ein-/Ausgabegerät seine Aufgabe beendet hat, erzeugt es ein Interrupt. Dazu wird ein Signal auf den Bus gelegt, das vom entsprechenden Interrupt-Controller erkannt wird, der dann aus einem "interrupt request" eine Unterbrechung der CPU erzeugt, die mit Hilfe eines passenden Programmstücks bearbeitet werden muss (meist eine Interrupt-Service-Routine, kurz ISR).  Beispiele, bei denen Geräte eine Unterbrechungsanforderung generieren, sind:  Die Interrupt-Service-Routinen werden meist an Interrupt-Vektoren adressiert, die in einer Interrupt-Vektor-Tabelle gespeichert sind. Ein Interrupt-Vektor ist also ein Eintrag in dieser Tabelle, der die Speicheradresse der Interrupt-Service-Routinen enthält.  Am Ende einer Interrupt-Bearbeitungsroutine sendet die ISR an den Interrupt-Controller eine Bestätigung. Der alte Prozessorstatus wird anschließend wieder hergestellt und der unterbrochene Prozess kann an der vorher unterbrochenen Stelle weiterarbeiten. Durch eine entsprechende Scheduling-Eintscheidung kann auch ermöglicht werden, dass zunächst ein Prozess mit höherer Priorität die CPU erhält, bevor der unterbrochene Prozess an der Reihe ist. Dies hängt von der Schedulingstrategie des Betriebssystems ab.

Threads.

Da die Verwaltung von Prozessen relativ aufwändig ist, unterstützen moderne Betriebssysteme auch ein Ressourcen-schonenderes Konzept, die sogenannten Threads (deutsch: Fäden, Ausführungsstränge). Ein Thread verkörpert eine nebenläufige Ausführungseinheit innerhalb eines Prozesses. Im Gegensatz zu den schwergewichtigen (heavy-weight) Prozessen werden Threads als leichtgewichtige (light-weight) Prozesse (kurz LWP) charakterisiert. Diese lassen sich leichter erzeugen und wieder zerstören: In vielen Systemen läuft die Erstellung eines Threads 10-100-mal schneller ab als die Erstellung eines Prozesses. Insbesondere wenn sich die Anzahl an benötigten Threads dynamisch und schnell verändert, ist diese Eigenschaft von Vorteil.  Threads existieren innerhalb von Prozessen und teilen sich deren Ressourcen. Ein Prozess kann mehrere Threads oder – wenn bei dem Programmablauf keine Parallelverarbeitung vorgesehen ist – auch nur einen einzigen Thread beinhalten. Ein wesentlicher Unterschied zwischen einem Prozess und einem Thread besteht darin, dass jeder Prozess seinen eigenen Adressraum besitzt, während für einen neu gestarteten Thread kein neuer Adressraum eingerichtet werden muss, sondern die Threads auf den gemeinsamen Speicher des Prozesses zugreifen können. Threads teilen sich innerhalb eines Prozesses auch andere betriebssystemabhängige Ressourcen wie Prozessoren, Dateien und Netzwerkverbindungen. Deswegen ist der Verwaltungsaufwand für Threads üblicherweise geringer als der für Prozesse. Ein wesentlicher Effizienzvorteil von Threads besteht zum einen darin, dass im Gegensatz zu Prozessen beim Threadwechsel kein vollständiger Wechsel des Prozesskontextes notwendig ist, da alle Threads einen gemeinsamen Teil des Prozesskontextes verwenden, zum anderen in der einfachen Kommunikation und schnellem Datenaustausch zwischen Threads. Threads eines Prozesses sind aber nicht gegeneinander geschützt und müssen sich daher beim Zugriff auf die gemeinsamen Prozess-Ressourcen abstimmen (synchronisieren).  Die Implementierung von Threads hängt vom jeweiligen Betriebssystem ab. Sie kann auf Kernel- oder auf Benutzerebene erfolgen. So sind Threads in Windows-Betriebssystemen auf Kernelebene realisiert, in Unix sind Thread-Implementierungen sowohl auf der Kernel- als auch auf der Benutzerebene möglich. Bei Threads auf der Benutzerebene führt die entsprechende Threadbibliothek das Scheduling und Umschalten zwischen den Threads durch. Jeder Prozess verwaltet einen privaten Thread-Kontrollblock (analog zum PCB) und der Kern hat keinerlei Kenntnis davon, ob ein Prozess mehrere Threads verwendet oder nicht. Bei Kernel-Threads werden die Threads im Kernelmodus verwaltet. Eine spezielle Threadbibliothek ist dabei für den Anwendungsprogrammierer nicht erforderlich. Der Kern ist hier also an der Erzeugung und Umschaltung von Threads beteiligt.  Ein Thread-Paket auf Benutzerebene (links) und ein Thread-Paket vom Betriebssystem-Kern verwaltet (rechts)

Interprozesskommunikation.

Der Begriff Interprozesskommunikation (engl. "interprocess communication", kurz IPC) meint verschiedene Verfahren des Informationsaustausches zwischen den Prozessen eines Systems. Bei der Variante „Shared Memory“ erfolgt die Kommunikation dadurch, dass mehrere Prozesse auf einen gemeinsamen Datenspeicher zugreifen können, beispielsweise gemeinsame Bereiche des Arbeitsspeichers. Bei einer Message Queue dagegen werden „Nachrichten“ (Datenpakete) von einem Prozess an eine Liste („Nachrichtenschlange“) angehängt; von dort können diese von einem anderen Prozess abgeholt werden. Dritte Variante ist die „Pipe“, ein (Byte-)Datenstrom zwischen zwei Prozessen nach dem FIFO-Prinzip. Um längere Datenpakete effizient übertragen zu können, wird eine Pipe meist durch einen Sende- und/oder Empfangs-Puffer ergänzt.  Die Kommunikation zwischen den Prozessen sollte in einer gut strukturierten Weise erfolgen. Um Race Conditions zu vermeiden, sollten die kritischen Abschnitte, in denen auf gemeinsam genutzte Ressourcen zugegriffen wird, vor einem (quasi-)gleichzeitigen Zugriff geschützt werden. Dies kann durch verschiedene Mechanismen wie Semaphore oder Monitore realisiert werden. Wenn ein Prozess auf die Freigabe einer Ressource oder den Empfang einer Nachricht wartet, die ein anderer Prozess nicht freigibt/sendet, weil jener wiederum darauf wartet, dass ersterer eine andere Ressource freigebe/Nachricht sende, so entsteht eine sogenannte Deadlock-Situation. Es können sich auch mehr als zwei Prozesse gegenseitig blockieren.  Klassische Problemstellungen der Interprozesskommunikation sind das Erzeuger-Verbraucher-Problem, das Philosophenproblem und das Leser-Schreiber-Problem.

Verbesserung der CPU-Ausnutzung.

Durch den Einsatz von Multiprogrammierung kann die CPU-Ausnutzung verbessert werden. Wenn ein Prozess einen Anteil formula_1 seiner Laufzeit auf die Beendigung von Ein-/Ausgaben wartet, so ist die Wahrscheinlichkeit, dass formula_2 solche Prozesse auf die Ein-/Ausgabe warten formula_3. Dies entspricht der Wahrscheinlichkeit, dass die CPU unbeschäftigt wäre. Die CPU-Ausnutzung kann dadurch als Funktion von formula_2 ausgedrückt werden, die Grad der Multiprogrammierung genannt wird:  Es ist durchaus üblich, dass ein interaktiver Prozess 80 % oder mehr im Ein-/Ausgabe-Wartezustand verbringt. Auch auf Servern, die viel Plattenein-/ausgabe durchführen, ist dieser Wert realistisch. Unter dieser Annahme, dass Prozesse 80 % ihrer Zeit im blockierten Zustand verbringen, müssen mindestens 10 Prozesse laufen, damit die CPU weniger als 10 % der Zeit verschwendet wird.  Natürlich stellt dieses probabilistische Modell nur eine Annäherung dar. So setzt es voraus, dass alle Prozesse unabhängig sind. In einer einzigen CPU können jedoch nicht mehrere Prozesse gleichzeitig laufen. Es müsste also noch berücksichtigt werden, dass ein rechenbereiter Prozess warten muss, während die CPU läuft. Ein exaktes Modell kann mit Hilfe der Warteschlangentheorie konstruiert werden. Dennoch veranschaulicht das Modell die Verbesserung der CPU-Ausnutzung: Mit Multiprogrammierung können Prozesse die CPU benutzen, die ansonsten untätig wäre. Es lassen sich so zumindest überschlägige Vorhersagen über die CPU-Performanz machen.

Programmbeispiele.

Erzeugen eines Kindprozesses mit dem fork()-Aufruf.

Mit Hilfe der fork-Funktion erstellt ein Prozess eine nahezu identische Kopie von sich selber. Der Name bedeutet im Englischen in etwa „sich gabeln, verzweigen oder spalten“: Der aufrufende Prozess gelangt an eine Weggabelung, an der sich Eltern- und Kindprozess trennen.  Das folgende C-Programm deklariert eine Zählervariable codice_5 und weist ihr zunächst den Wert 0 zu. Durch codice_6 wird danach ein Kindprozess erzeugt, der eine identische Kopie des Elternprozesses ist. Der Systemaufruf codice_6 liefert bei Erfolg dem Elternprozess den PID des eben geschaffenen Kindes zurück. Im Kind liefert die Funktion dagegen den Rückgabewert 0. Mit Hilfe dieses Rückgabewerts kann man nun Auskunft darüber erlangen, ob es sich jeweils um Eltern- oder Kindprozess handelt und entsprechend in einer if-else-Verzweigung fortfahren. Um die eigene PID zu finden, ist codice_8 nötig.  Nach dem Aufruf von codice_6 laufen also zwei Prozesse quasi-parallel, die beide ihre eigene Version der Zählervariable codice_5 von 0 bis 1000 erhöhen. Man hat nun keinen Einfluss darauf, welcher Prozess zu welchem Zeitpunkt bearbeitet wird. Dementsprechend kann die Ausgabe auf der Konsole von einem Durchgang zum nächsten variieren.  int main(void)

Forkbomb.

Das folgende Programmbeispiel erzeugt eine Forkbomb. Es wird ein Prozess gestartet, der in einer Endlosschleife mittels codice_6 immer wieder Kindprozesse erzeugt, die sich gleich verhalten wie der Elternprozess. Dadurch werden die verfügbaren Systemressourcen (Prozesstabellen, CPU usw.) aufgebraucht. Eine Forkbomb realisiert somit eine Denial-of-Service-Attacke, kann aber auch bei unbedachter Anwendung des fork-Aufrufs „hochgehen“.  int main(void)  Der konkrete Effekt der Forkbomb hängt in erster Linie von der Konfiguration des Betriebssystems ab. Beispielsweise erlaubt PAM auf Unix, die Zahl der Prozesse und den maximal zu verbrauchenden Speicher pro Benutzer zu beschränken. „Explodiert“ eine Forkbomb auf einem System, welches diese Möglichkeiten der Beschränkung nutzt, scheitert irgendwann der Versuch, neue Kopien der Forkbomb zu starten und das Wachstum ist eingedämmt.

Ein Prozess (in manchen Betriebssystemen auch Task genannt) ist ein Computerprogramm zur Laufzeit. Genauer ist ein Prozess die konkrete Instanziierung eines Programms zu dessen Ausführung innerhalb eines Rechnersystems, ergänzt um weitere (Verwaltungs-)Informationen und Ressourcenzuteilungen des Betriebssystems für diese Ausführung.


Galilei-Transformation.

Die Galilei-Transformation besteht aus folgenden Einzeltransformationen, die miteinander kombiniert werden können:  Hierbei wurde die Vektor-Schreibweise verwendet: formula_7 bezeichnet den Ortsvektor und formula_8 die Zeit. Insgesamt gibt es für eine Zeit- und drei Raumdimensionen 10 Parameter.<br> Für formula_9 stellt der räumliche Teil der Galilei-Transformation mit 6 übrigen freien Parametern die eigentliche euklidische Gruppe formula_10 dar. Die Elemente aus formula_10 werden dabei als räumliche Koordinatentransformationen aufgefasst (passive oder Alias-Transformation). Galilei-Transformationen zwischen ruhenden Beobachtern sind ein Spezialfall der euklidischen Transformation, die nur die Konstanz der Abstände zweier beliebiger Punkte bei der Transformation fordert und in der klassischen Mechanik der Definition von invarianten oder objektiven Größen dient.

Gültigkeitsgrenze der Galilei-Transformation.

Klassische Mechanik.

Die Unabhängigkeit der Gesetze der Mechanik vom Bewegungszustand bei gleichförmiger Bewegung wurde zuerst von Galileo Galilei erkannt und von Isaac Newton in seinem Buch Principia formuliert. Kräfte sind bei Newton nur von den Beschleunigungen abhängig, und Beschleunigungen ändern sich unter Galilei-Transformationen nicht. Geschwindigkeiten transformieren sich nach dem üblichen vektoriellen Additionsgesetz. Die Gesetze der klassischen Mechanik sind unter Galilei-Transformationen invariant oder kovariant (Galileisches Relativitätsprinzip). Man hielt dies lange Zeit für a priori gegeben und unangreifbar.

Lorentz-Transformation.

Die Elektrodynamik ging bis zum Ende des 19. Jahrhunderts von einem Äther als Träger elektromagnetischer Wellen, einschließlich des Lichts, aus. Die Maxwellschen Gleichungen und die daraus resultierende konstante Lichtgeschwindigkeit formula_12 als Ausbreitungsgeschwindigkeit der elektromagnetischen Wellen waren jedoch nicht vereinbar mit der Galilei-Transformation.  Ein weiteres Beispiel ist ein geladener Körper, der an einem stromdurchflossenen Leiter vorbeifliegt:  Hendrik Antoon Lorentz, Joseph Larmor und Henri Poincaré untersuchten Ende des 19. Jahrhunderts die Elektrodynamik bewegter Körper und erkannten, dass man diese Probleme lösen könne, indem man die Galilei-Transformation durch die Lorentz-Transformation ersetzt. Dies führte schließlich zur speziellen Relativitätstheorie von Albert Einstein, welche allerdings eine Modifikation der Vorstellungen von Zeit und Raum erforderte.  Für Geschwindigkeiten, die sehr viel kleiner als die Lichtgeschwindigkeit von ca. 300.000 km/s sind, ist die Galilei-Transformation in der Praxis oft eine gute Näherung der Lorentz-Transformation. Für formula_16 geht die Lorentztransformation exakt in die Galileitransformation über. Aber für kleine Geschwindigkeiten ist die Galilei-Transformation kein Grenzfall der Lorentz-Transformation, wie oft fälschlich behauptet wird. Z. B. verschwindet die Zeitdilatation nicht, wenn man zwei Ereignisse mit immer größeren räumlichen Abständen betrachtet. Galilei- und Lorentz-Transformationen sind essentiell unterschiedliche Transformationen, die beide für kleine Geschwindigkeiten gegen die Identitäts-Transformation konvergieren.

Praktische Anwendung.

Im Alltagsleben kann bei mechanischen Problemen fast immer die Galilei-Transformation angewendet werden, da die Korrektur in der Lorentz-Transformation bei "irdischen" Geschwindigkeiten sehr klein ist. Der Korrekturfaktor liegt oft unterhalb der Messbarkeitsgrenze; selbst in der Himmelsmechanik unseres Planetensystems liegt er z. B. unter 10 für die schon recht große Umlaufgeschwindigkeit der Erde um die Sonne (etwa 30 km/s).  Daher gilt die Galilei-Transformation beispielsweise beim Berechnen der Abdrift eines Schiffs oder Flugzeugs. Auch bei den in der Kernphysik betrachteten Stoßprozessen genügt sie zur Umrechnung zwischen Labor- und Schwerpunktsystem meistens (siehe Kinematik (Teilchenprozesse)). Nicht anwendbar ist sie jedoch auf elektrodynamische Phänomene.

Verwendung der Galilei-Transformation bei der Ableitung der Stoßgesetze durch Huygens.

Eine historisch wichtige Anwendung der "Galileischen Relativitätstheorie", also der Nutzung der Tatsache, dass die physikalische Beschreibung in unterschiedlichen, durch Galilei-Transformation verbundenen Bezugssystemen gleich ist, ist die korrekte Ableitung der Gesetze des Elastischen Stosses von Christian Huygens (1650er Jahre, veröffentlicht 1669 und 1703 in seinem "De Motu Corporum"). Er korrigierte dabei die überwiegend falsche Darstellung bei René Descartes, der aber immerhin die richtige Idee hatte, bei der Analyse von Erhaltungsgrößen auszugehen (bei Descartes noch fälschlich formula_17 mit den Beträgen der Geschwindigkeiten). Richtig lag Descartes nur beim Fall des Stosses gleicher Massen mit gleichen aber entgegengesetzten Geschwindigkeiten der Teilchen 1,2 vor (formula_18) und nach dem Stoß (formula_19), wobei die Bewegung in einer Dimension betrachtet wird:  Seine übrigen Ergebnisse waren falsch. Huygens brachte als wesentliches neues Element die Betrachtung von einem anderen, mit konstanter Geschwindigkeit formula_21 bewegten Bezugssystem, einem Boot bzw. einem Mann am Ufer, der Stoßexperimente im Boot beobachtet (in einem Bild in Huygens Buch als Stoß zweier Pendelkugeln am ausgestreckten Arm zweier Männer skizziert, von denen einer im Boot ist und der andere am Ufer, dort aber genau die von ihm wahrgenommene Bewegung der Kugeln im Boot nachvollzieht):  Wählt man z. B. formula_23 erhält man:  wofür Descartes das falsche Ergebnis formula_25 erhalten hatte. Huygens erhielt dagegen mit Hilfe des Galileischen Relativitätsprinzips das korrekte Ergebnis, dass die eine Kugel stoppt und ihren Impuls vollständig auf die andere, vorher ruhende Kugel überträgt. Huygens konnte auch andere Fälle durch geeignete Wahl von formula_26 behandeln. Allgemein lässt sich in heutiger Begriffsbildung zeigen, dass er das Gesetz der Erhaltung des Impulses beim elastischen Stoß bewies, wobei er den Impuls im Gegensatz zu Descartes korrekt mit Vorzeichen behandelte und die Erhaltung der kinetischen Energie benutzte (bei Huygens indirekt formuliert als eine Bedingung des elastischen Stosses). Verwendet man heutige Begriffe, kann dies einfach durch Betrachtung der Erhaltung der kinetischen Energie in einem mit konstanter Geschwindigkeit bewegten Bezugssystem gezeigt werden (die Vorfaktoren formula_27 sind weggelassen):  Multipliziert man aus und verwendet den Energiesatz im ruhenden System  folgt der Impuls-Erhaltungssatz:  Huygens Verwendung des Relativitätsprinzips ist in dem Buch von Ernst Mach über die Entwicklung der Mechanik herausgestellt, das Albert Einstein nachweislich stark beeinflusste und hat so möglicherweise dessen Verwendung von Bezugssystemen angeregt.

Galilei-Transformation und Erhaltungssätze.

Die Naturgesetze ändern sich nicht unter Galilei-Transformation. Der Ausgang eines Experiments bleibt gleich, wenn man seinen Ort einer Galilei-Transformation unterzieht. Eine Verschiebung des Orts, oder in der Zeit, oder auch der Ausrichtung ändern nichts. Eine solche Invarianz wird auch Symmetrie genannt. Nach dem Noether-Theorem ist jede solche Symmetrie mit einem Erhaltungssatz verknüpft. Aus der Invarianz der Naturgesetze unter Galilei-Transformation folgen damit die Erhaltungssätze der klassischen Mechanik. Im Einzelnen:

Galilei-Gruppe und Quantenmechanik.

Betrachtet man ein quantenmechanisches System, das in einer Darstellung der Galilei-Gruppe realisiert ist, gibt es im Gegensatz zur üblichen Behandlung als Darstellung der Poincaré-Gruppe der speziellen Relativitätstheorie eine exakte Erhaltung der Masse (sog. Superauswahlregel), das heißt es gibt keine instabilen Teilchen.  In der Quantenmechanik werden unitäre, projektive Darstellungen im Hilbertraum betrachtet. Bei der in der Elementarteilchenphysik üblicherweise verwendeten Poincaré-, Lorentz- oder der Rotationsgruppe erhält man nach Valentine Bargmann treue Darstellungen durch Betrachtung der universellen Überlagerungsgruppe. Bei der Galileigruppe ist das nicht der Fall. Man erhält nur treue Darstellungen bis auf einen Vorfaktor, in den die Masse als Parameter eingeht. Es gibt eine eindimensional-unendliche Menge nicht äquivalenter Klassen projektiver Darstellungen (parametrisiert durch die Masse), alle nicht-äquivalent zu treuen Darstellungen, und sie sind gerade die physikalisch relevanten Darstellungen.  Weiter lässt sich ableiten, dass auch die innere Energie formula_31 eines Teilchens willkürlich wählbar ist. In 3 Raum- und einer Zeitdimension gibt es drei Casimir-Invarianten der zur Galileigruppe gehörigen Lie-Algebra, Masse formula_32, die Massenschaleninvariante formula_33 (formula_34 ist die Energie, formula_35 der Impuls) und formula_36 mit formula_37 (wobei formula_38 der Boost-Operator ist entsprechend dem Übergang zu einem System mit anderer Geschwindigkeit) und formula_39 der Drehimpuls. Die dritte Invariante lässt sich für formula_40 als formula_41 angeben mit dem Spin formula_42.  Ein Beispiel der Anwendung ist der Lichtfrontformalismus (Infinite Momentum Frame) in der Elementarteilchenphysik, bei dem man zu einem Bezugssystem mit im Grenzfall unendlich hoher Geschwindigkeit übergeht (wie in typischen Hochenergie-Streuexperimenten). Da man dabei näherungsweise zu einem System mit Galilei-Symmetrie übergeht gibt es erhebliche Vereinfachungen wie Ähnlichkeiten mit der nichtrelativistischen Störungstheorie, Wegfall von Feynmandiagrammen mit Paarerzeugung und -vernichtung und neue Erhaltungsgrößen.

Die Galilei-Transformation, benannt nach Galileo Galilei, ist die einfachste Koordinatentransformation, mit der physikalische Aussagen von einem Bezugssystem in ein anderes umgerechnet werden können. Sie ist anwendbar, wenn die beiden Bezugssysteme sich durch eine geradlinig-gleichförmige Bewegung, Drehung und/oder eine Verschiebung in Raum oder Zeit unterscheiden. Alle Beobachtungen von Strecken, Winkeln und Zeitdifferenzen stimmen in beiden Bezugssystemen überein; alle beobachteten Geschwindigkeiten unterscheiden sich um die konstante Relativgeschwindigkeit der beiden Bezugssysteme.


Geographische Lage.

Die Stadt liegt in Niederschlesien, ungefähr in der Mitte zwischen den Großstädten Cottbus und Breslau auf etwa 100 Metern über dem Meeresspiegel, etwa 55 Kilometer westlich der Stadt Glogau. Nachbarorte sind Iłowa "(Halbau)" im Südwesten und Żary "(Sorau)" im Nordwesten. Kurz bevor der Bober die Stadtgrenzen erreicht, mündet der Queis in ihn.

Geschichte.

Mittelalter und Frühe Neuzeit.

Sagan wurde 1202 erstmals urkundlich erwähnt und erhielt um 1285 Stadtrecht. Nach der Teilung des Herzogtums Schlesien gehörte es ab 1249/51 zum Herzogtum Glogau, aus dem erstmals 1274 das Herzogtum Sagan ausgegliedert wurde.  Das 1284 gegründete Augustiner-Chorherrenstift war im späten Mittelalter ein kultureller Mittelpunkt der Region. Die Wirtschaft Sagans war geprägt von Tuchmacherei, Bierbrauerei und Eisenhandel.  1472 verkaufte Hans von Sagan Fürstentum und Stadt an die Wettiner. Unter Herzog Heinrich dem Frommen (1539–1541) breitete sich die Reformation ungehindert aus. Kurfürst Moritz überließ Sagan 1549 dem böhmischen Landesherrn Ferdinand I.  1628 belehnte Kaiser Ferdinand II. General Wallenstein mit Sagan und verlieh ihm den Titel „Herzog von Sagan“. Durch die Ansiedlung der Jesuiten im verlassenen Franziskanerkloster förderte er die Gegenreformation. Er rief den in Linz in Not geratenen Astronomen Johannes Kepler nach Sagan. Als er sich aber weigerte, sich den Feldherrn geneigt zu machen, fiel er in Ungnade, blieb jedoch. 1646 erwarb der böhmische Fürst Wenzel Eusebius von Lobkowitz Herzogtum und Stadt; dieser ließ 1670 das Saganer Schloss nach Plänen des italienischen Architekten Antonio della Porta, der für ihn auch am Schloss Roudnice im Böhmen arbeitete, auf den von Wallenstein begonnenen Fundamenten erbauen. Seine gegenreformatorischen Maßnahmen führten auf die 1668 im Fürstentum Sagan durchgeführte Kirchenreduktion. Bis dahin diente noch die Kreuzkirche dem evangelischen Gottesdienst, danach besuchten die evangelischen Saganer sogenannte Grenz- und Zufluchtskirchen entlang der Grenzen des Fürstentums. Auf Grund der Altranstädter Konvention (1707) wurde 1709/10 die außerhalb der Stadt auf der rechten Boberseite liegende Gnadenkirche Zur Heiligen Dreifaltigkeit erbaut.

Preußische Zeit.

1742 traten die Habsburger, die seit 1526 die Krone Böhmen innehatten, Sagan, wie auch einen Großteil Schlesiens, im Vorfrieden von Breslau an den König von Preußen ab.  1758 begann der Saganer Abt Johann Ignaz von Felbiger mit der Hebung des Volksschulwesens. Er war ein bekannter preußischer Schulreformer, der später in österreichischen Diensten stand.  Nach einem Edikt König Friedrichs II. zur Gründung von Kolonistendörfern wurden die Kolonien Neue Forst (1775), Schönthal (1777), Alte Forst (1781) und Georgenruh (1783) erbaut. Die Königliche Glogauer Kriegs- und Domänenkammer beaufsichtigte die Stadt Sagan beim Anlegen dieser neuen Kolonistendörfer mit freien Untertanen, die nur dem König von Preußen unterstellt waren. 1786 erwarb der kurländische Herzog Peter von Biron das Herzogtum, das aber weiterhin der Krone Preußens unterstand. Ihm folgte im Jahr 1800 seine Tochter Wilhelmine, die 1839 von ihrer Schwester Pauline beerbt wurde. Von ihr erwarb es 1842 die dritte Schwester Dorothea, die mit dem Grafen Edmond de Talleyrand-Périgord, einem Neffen des französischen Außenministers Charles-Maurice de Talleyrand verheiratet war. Sie ließ den Schlosspark durch Fürst Pückler anlegen. Bis zur Enteignung 1945 blieb die einstige Standesherrschaft mit dem Schloss Sagan und 20.000 ha Grundbesitz im Besitz der Herzöge von Talleyrand-Périgord, die aber meist in Frankreich lebten.  Am Anfang des 20. Jahrhunderts hatte Sagan eine große evangelische Kirche, drei katholische Kirchen, eine Synagoge, ein Schullehrerseminar, eine Präparandenanstalt, bedeutende Textilindustrie (3.000 Arbeiter) und ein Amtsgericht. Das Staatliche Gymnasium, die "Herzog-Friedland-Schule", ging auf die von Wallenstein eingerichtete Jesuitenschule zurück.  Die Stadt war seit 1816 Verwaltungssitz des preußischen Landkreises Sagan, der 1932 zum Landkreis Sprottau im Regierungsbezirk Liegnitz der preußischen Provinz Schlesien des Deutschen Reichs fusionierte, wobei das Landratsamt in Sagan verblieb.

Zweiter Weltkrieg und Teil Polens.

Im Februar 1945 besetzten Truppen der Roten Armee nach erbitterten Kämpfen die Stadt. Im Sommer 1945 wurde Sagan von der sowjetischen Besatzungsmacht unter polnische Verwaltung gestellt. Die Stadt erhielt den Namen "Żagań" in polnischer Schreibweise. In den folgenden zwei Jahren wurden die deutschen Einwohner von der örtlichen polnischen Verwaltungsbehörde vertrieben. Die polnischen Zuwanderer kamen vorwiegend aus den im Rahmen der „Westverschiebung Polens“ an die Sowjetunion gefallenen Gebieten östlich der Curzon-Linie.  Die Enttrümmerung der Stadt begann 1947, es folgten die Inbetriebnahme von Fabriken, Handwerksbetrieben und die Eröffnung von Schulen. In den 1970er Jahren entstanden Neubauviertel und 1983 konnten die Wiederaufbauarbeiten am Residenzschloss vollendet werden.  Bei der Stadt befinden sich große Truppenübungsplätze und Kasernen mit dem Kommando der 11. Panzerdivision der Polnischen Streitkräfte "König Jan III. Sobieski".  Im Jahre 1996 war die Stadt eine der sieben ersten Städte, die vom polnischen Regierungsprogramm zur Sanierung historischer Stätten profitierte.

Kriegsgefangenenlager.

Während des Zweiten Weltkrieges wurde unweit der Stadt das "Stalag VIII C" und das "Stalag Luft III" errichtet; in letzterem waren zeitweilig 10.000 Kriegsgefangene untergebracht. Am 24. März 1944 gelang 76 alliierten Kriegsgefangenen durch einen 110 m langen und 10 m tiefen Tunnel die Flucht aus dem Lager. Die meisten der Entflohenen wurden in der Umgebung des Lagers wieder gefasst, und nur drei Männern gelang die Flucht. Auf direkten Befehl Hitlers wurden 47 der wieder eingefangenen Flüchtigen von der Gestapo unter Verletzung der Genfer Konvention erschossen. 21 der beteiligten Polizei- und Gestapobeamten wurden nach dem Krieg im London Cage verhört und später von einem britischen Militärgericht in Hameln abgeurteilt und zum Teil hingerichtet. Das Ereignis wurde 1963 in "Gesprengte Ketten" verfilmt.  Am Ende des Zweiten Weltkriegs wurde das in den wiedergewonnenen Gebieten gelegene Lager Nr. 78 in Sagan (poln. Żagań) von der Roten Armee für die Internierung deutscher Kriegsgefangener genutzt und zum 1. September 1945 in polnische Leitung übergeben. Die Gefangenen wurden zur Zwangsarbeit im schlesischen Kohlebergbau eingesetzt.

Wirtschaft und Infrastruktur.

Verkehr.

Der Bahnhof Żagań war früher ein Bahnknoten, durch den die Niederschlesisch-Märkische Eisenbahn führte. Sie kreuzt hier die heutige Bahnstrecke Łódź–Forst (Lausitz); auch endeten hier die Bahnstrecken Wolsztyn–Żagań, Jelenia Góra–Żagań und Jankowa Żagańska–Żagań.

Żagań [] ( "Sagan") ist eine Stadt im Powiat Żagański "(Landkreis Sagan)" in der polnischen Woiwodschaft Lebus. Sie ist Kreisstadt und hat rund 26.500 Einwohner.


Herkunft der Bulgaren.

Die Forschung ist sich über die Herkunft der Bulgaren nicht einig und viele Aspekte sind bis heute umstritten. Die beiden zurzeit vorherrschenden Thesen gehen von einer turkischen oder von einer indo-iranischen Herkunft aus. Vor allem in Westeuropa werden sie überwiegend als ein Turkvolk eingeordnet. Nach überwiegender Auffassung sollen die Wolgabulgaren aus den Stämmen der Onoguren hervorgegangen sein (dies ist aber letztlich unsicher), zu denen sich noch andere turkstämmige Völkerschaften, wie die Sabiren und die Vorfahren der Chasaren, freiwillig anschlossen bzw. von ihnen unterworfen wurden. Sie sprachen zu jener Zeit eine der sogenannten "oghurischen Sprachen", waren also als Oghuren aufzufassen. Ihr ethnisches Gepräge änderte sich jedoch, als sie weitere Völkerschaften unterwarfen, wie z. B. Slawen und Finno-Ugren. Als Alternativbezeichnung für die Wolgabulgaren liegt uns auch aus der überwiegend turkvölkischen Turkologie "Törk Bolğar" (tatarisch), "Turk Bolğar" bzw. "Türk Bulğar" vor. Diese Bezeichnung stammt vom alttürkischen "Türük-Bolqar/Turuk-Bulkha" ab und hatte die Bedeutung: „vermischte Turuk“. Das weist eindeutig darauf hin, dass schon die Vorfahren der Wolgabulgaren ein ausgesprochenes Mischvolk darstellten. Doch heute wird „Türük-Bolqar“ vielfach mit "Türk-Bulgaren" oder "Turk-Bulgaren" übersetzt. Dieses hat zwar eine gewisse Berechtigung, doch diese Übersetzung kam erst im Zuge des Panturkismus des 19. Jahrhunderts bei den Tataren Russlands auf.  Die Hunnen waren nach 454 weitgehend aus Ungarn in die Schwarzmeer-Steppe abgezogen. Legendenhaft ausgeschmückten Berichten in den Quellen zufolge sollen die Kutriguren und Utiguren von den Resten der Hunnen abstammen, was aber unsicher ist. Um 550 kam es zu Kämpfen zwischen ihnen, vorangetrieben von oströmischer Seite; sie wurden schließlich von den Awaren besiegt. Diese Gruppen vermischten sich allmählich mit bereits benachbarten wie auch neu ankommenden türkischen und ersten slawischen Stammesgruppen, so dass sich das Volk der Protobulgaren bildete.

Großbulgarisches Reich.

Ende des 6. Jahrhunderts bildeten sie unter Orchan das so genannte "Großbulgarische Reich" im Bereich der Flüsse Don und Wolga mit der Hauptstadt Phanagoria, das im Westen von Awaren und im Osten von den Westtürken Tardus bevormundet wurde. Orchan hatte als "Onogur-Hunne" noch einen traditionell „geschorenen Kopf“, wird jedoch heute als der erste Fürst jener „Protobulgaren“ betrachtet. Ihre älteste Herrscherliste führt jedoch weit zurück und führt Attilas Sohn Ernak als Begründer.  Sein Nachfolger war sein Neffe Kubrat Dulo, zu dessen Zeit (ca. 626) der Druck der Chasaren zunahm, die sich mit dem Tod des Khan Tung Sche-hu 630 ("Ziebil?") langsam von den Westtürken ablösten. Kubrat hielt sich in seiner Jugend einige Zeit als Geisel oder Gast in Konstantinopel auf, so dass ihm gern byzantinische, zivilisierte Sitten nachgesagt werden. Zumindest galt er als „Freund“ des damaligen byzantinischen Kaisers und soll Johannes von Nikiu zufolge in seiner Kindheit als Christ getauft worden sein. Die Existenz dieses sogenannten Großbulgarischen Reiches wird in der Forschung mehrheitlich akzeptiert, wenngleich einige Gelehrte aufgrund der schlechten Quellenlage mehrere Punkte anzweifeln und vor zu pauschalen Urteilen warnen.

Aufspaltung.

Mit dem Tod Kubrats (668) aus der Dulo-Dynastie folgte der Niedergang des Großbulgarenreiches. Mit dessen Auflösung in Südrussland erfolgte die Abwanderung der bulgarischen Stämme unter der Führung der fünf Söhne Kubrats.  Ein Teil unter Kubrats ältestem Sohn Khan Batbajan (bzw. Vatbajan) blieb am unteren Verlauf der Wolga und unterwarf sich den Chasaren. Seine Gruppe, die „Schwarzen Bulgaren“ ("Khara Bulkhar/Qara Bolqar") wurden noch eine Weile in russischen Inschriften erwähnt und verschwanden dann aus der Geschichte. Nachfahren dieser Bulgaren sind die im Norden des Kaukasus lebenden Balkaren.  Ein Teil unter dem zweitältesten Sohn Khan Kotrag wanderte nach Norden und gründete in der Folge an der mittleren Wolga ein "Bulgarisches Reich" (in arabischen Quellen spricht man von den „Weißen Bulgaren“ ("Akh Bulkhar/Aq Bolqar")), das zunächst noch von den Chasaren abhängig war. Zur Hauptstadt wurde die wichtige Handelsmetropole Bolgar, am Zusammenfluss von Wolga und Kama. Zur Unterscheidung von anderen bulgarischen Stämmen spricht man hier von "Wolgabulgaren".  Wolgabulgarien nahm unter Khan Alamusch (Almush, Almas, Almış reg. 895–925) um 922 den Islam an (vgl. Ibn Fadlan) und entwickelte sich bald zu einer bedeutenden Handelsmacht, die insbesondere den Fernhandel (Luxusprodukte) zwischen der Kiewer Rus und den islamischen Ländern im Süden vermittelte. Diplomatische Beziehungen reichten unter Ibrahim (reg. 1006–1025) um 1024 bis Chorasan. Man betrieb in dem dicht besiedelten Land erfolgreich Ackerbau und gründete mehrere Städte wie Bolgar (beim heutigen Kasan), die Moscheen, Karawansereien und öffentliche Bauten besaßen. Zahlreiche Dörfer und kleine Festungen werden verzeichnet.  Schon im 12. Jahrhundert kam es zu mehreren militärischen Konflikten mit russischen Fürsten, die den Bestand des Reiches bedrohten. Im Jahr 1236 wurde das Reich der Wolgabulgaren von der Goldenen Horde zerstört, kurz bevor diese die Rus unter ihre Herrschaft brachte. Das Volk der Tschuwaschen sieht sich bis heute als Nachfolger eines Teils der Wolga-Bulgaren, ein anderer Teil verschmolz mit den Kasan-Tataren, die sich noch bis ins späte 19. Jahrhundert als „Bolgarları“ (Bolgaren bzw. Bulgaren) und nicht als „Tatarlar“ (Tataren) bezeichneten.  Kuver (Kuber) und Alzek, die beiden jüngsten Söhne Kubrats, zogen mit ihren Reitern und kleineren Stammesverbänden nach Pannonien (Ungarn) weiter, wo sie sich mit den übrigen Bulgaren unter avarischer Herrschaft vereinten. Nach einer misslungenen Revolte gegen die Awaren trennten sich ihre Wege. Khan Alzek zog weiter westlich, überquerte die Alpen und zog durch Nord- nach Süditalien. Dort bekam Alzek schließlich die Erlaubnis, sich im Herzogtum Benevent niederzulassen. Der Historiker Paulus Diaconus berichtet, dass dort Khan Alzek von dem langobardischen König Grimoald empfangen wurde. Alzek wurde die Region Molise zugesprochen, unter der Voraussetzung, dass er auf seinen Titel "dux" und Herrschaftsanspruch verzichtet, da Grimoald selbst "dux" von Benevent war. Noch heute tragen in ganz Italien Berge, Regionen, Dörfer, Flüsse und Familien bulgarische Namen oder die Bezeichnung „Bulgaren“ (bulg. Bulgari). Beispiele dafür sind der italienische Hersteller von Luxusartikeln Bulgari, Bartolomeo Bulgarini, Kardinal Pietro Bulgaro, der Name del Bulgaro oder die Gemeinde Bulgarograsso.  Khan Kuver zog um 680 Richtung Süden mit Teilen der "Sermesianoi" (Nachfahren der römischen Provinzialbevölkerung auf dem Balkan), erreichte Makedonien und errichtete in der Landschaft Pelagonien ein Khaganat. Die Bezeichnung dieses Reiches als Westbulgarisches Reich ist jedoch umstritten. Das Khaganat ging im Donaubulgarischen Reich auf. Bis heute sehen viele Bulgaren die Mazedonier nicht als eigenes Volk, sondern als Westbulgaren. Ein weiterer Teil unter dem dritten Sohn Asparuch (oder Isperich; 641–702) wanderte auf den Balkan aus und gründete 678 das heutige "Bulgarien", bzw. das Erste Bulgarische Reich. Slawische Stammesgruppen schlossen sich Asparuch an, als seine Bulgaren gegen 680 die Donau überschritten. Es kam zu Kämpfen mit dem Heer und der Flotte des byzantinischen Kaisers Konstantin IV. im sumpfigen Donaudelta. Sie endeten mit einem Erfolg der Bulgaren, so dass sich das Byzantinische Reich zu jährlichen Tributzahlungen gezwungen sah. Asparuch selbst fiel 700/01 in einem Gefecht mit den Chasaren.  Die Macht des protobulgarischen Reiches erreichte unter dem Khan Krum um 811 einen Höhepunkt, als dieser aus dem Haupt des byzantinischen Kaisers Nikephoros I. eine Trinkschale machte und beinahe Konstantinopel eroberte. Krums Sohn Omurtag schloss Ende 815 oder Anfang 816 einen auf 30 Jahre befristeten Friedensvertrag mit dem byzantinischen Kaiser Leon V. ab und leitete eine Phase der Annäherung Bulgariens an Byzanz ein. Als Verbündeter Kaiser Michaels II. hatte er entscheidenden Anteil an der Vernichtung des Usurpators Thomas. Im 9. Jahrhundert traten die Donaubulgaren zum orthodoxen Christentum über. Die hunnischen und türkischen Volksgruppen vermischten sich mit den slawischen, so dass z. B. die slawische Schrift und der alttürkische Tierkreiskalender nebeneinander bestanden. Das Volk der Bulgaren (in arabischen Quellen spricht man von den „Blauen Bulgaren“ ("Khökh Bulkhar/Qöq Bolqar")) entstand.

Das Großbulgarische Reich (, von „das alte große Bulgarien“) war das Steppenreich der wahrscheinlich turkstämmigen Protobulgaren (auch als "Hunno-Bulgaren" bezeichnet) in Südrussland und dem Nordkaukasus. Im Gegensatz zu den späteren bulgarischen Großreichen (1., 2. und 3. Bulgarenreich) erstreckte es sich nicht auf die Balkanhalbinsel, sondern lag nördlich des Schwarzen und Asowschen Meeres. Der Name des Reiches stammt von byzantinischen Gelehrten. Hauptstadt des Reiches war die Hafenstadt Phanagoria.


Funktion.

Der Grund für dieses Vorgehen waren ein herrschender Mangel an neuem Schreibmaterial beziehungsweise dessen hoher Preis. Ab der christlichen Spätantike wurde für Bücher praktisch nur noch Pergament verwendet. Etwa ab dem 5. Jahrhundert war Papyrus im Westen des Römischen Reiches sowie in dessen Nachfolgestaaten kaum noch verfügbar. Besonders in der Mitte des 7. Jahrhunderts war Schreibmaterial unerschwinglich teuer, so dass man besonders in dieser Zeit Pergamentbücher palimpsestierte. Diesem Vorgang fielen in erster Linie antike Texte zum Opfer, die Platz machen mussten für „Antiphonarien oder Heiligengeschichten“.

Herstellung.

Da Schreibmaterial wie Pergament im Mittelalter sehr kostbar war, wurden beschriebene Manuskriptseiten häufig wiederverwendet. Dabei wurde das Geschriebene abgekratzt oder abgewaschen. Auch wurden bereits chemische Tintenkiller wie Zitronensäure verwendet, um die Tinte zu entfernen. Die meisten Palimpseste bestehen aus Pergament oder Papyrus. Spuren des Originaltextes sind oft erhalten und können heutzutage häufig mittels Fluoreszenzfotografie (früher durch Gallapfel- oder Gioberti-Tinktur und Röntgenstrahlung) sichtbar gemacht werden, so dass das Lesen des alten Textes wieder möglich wird. Viele antike und mittelalterliche Texte sind nur als eine solche „Schrift unter der Schrift“ überliefert und daher lückenhaft. Einige Methoden der Sichtbarmachung ursprünglicher Texte wurden von Alban Dold entwickelt und angewandt.

Wichtige Exemplare.

Codex Ephraemi Rescriptus.

Einer der wichtigsten Palimpseste ist der "Codex Ephraemi Rescriptus" (Paris, Bibliothèque nationale de France, Département des manuscrits, Grec 9; in den Editionen der Septuaginta Sigle no C oder 04 (Gregory-Aland)), von dem nur etwa 203 Folia (Blätter) der ursprünglichen 238 überdauert haben. Den Originaltext einer in Majuskelschrift geschriebenen Voll-Bibel in griechischer Sprache (Septuaginta + griechisches Neues Testament), die im fünften Jahrhundert in Ägypten hergestellt worden war, schabte man im zwölften Jahrhundert ab und überschrieb ihn in griechischen Minuskelbuchstaben mit Predigten von Ephraem dem Syrer. Heute wird der Codex Ephraemi Rescriptus in der Pariser Nationalbibliothek aufbewahrt.

De re publica (Cicero).

Auch Ciceros "De re publica" aus seiner ersten philosophischen Phase galt lange Zeit als verloren. Man kannte die Inhalte lediglich aus Fragmenten und Zitaten bei anderen Autoren, während eine Originalüberlieferung unauffindbar war. Nachdem Angelo Mai, der eigentliche Begründer der Palimpsestforschung, mehrere Palimpseste mit bisher unbekannten Texten wie den Briefen des Fronto (ed. Mailand 1815), und verschiedenen Reden Ciceros mit deren Kommentar von Asconius Pedianus (ed. Mailand 1814–1817) entdeckt und ediert hatte, fand er in der Vatikanischen Bibliothek einen weiteren Pergament-Palimpsest (BAV Vat. lat. 5757). Dieser enthielt weite Teile des ersten und zweiten Buches, ferner Ausschnitte des dritten, vierten und fünften Buches, aber keinerlei Spuren des sechsten. Von diesem war allerdings der Großteil ohnehin durch die gesonderte Überlieferung des Somnium Scipionis im Kommentar des im 5. Jahrhundert wirkenden Grammatikers Macrobius bekannt. Die Schrift ist eine Unziale des IV./V. Jahrhunderts, die von zwei verschiedenen Schreibern ausgeführt und einem weiteren Schreiber korrigiert wurde. Von Schreiber A stammen Buch I 1,1–III 2,3 und IV 2,3–V 3,5, von Schreiber B III 3,4–35,48 und V 4,6–5,7. Überschrieben war Ciceros "De re publica" mit Psalmkommentaren von Augustinus. Auch dieser Text wurde in einer Unziale von allerdings sehr viel kleinerem Schriftgrad geschrieben, die ins VII. Jahrhundert datiert wird.  Bereits Mai und seine Mitarbeiter erkannten, dass der ursprüngliche Kodex mit dem Cicero-Text aus Lagen von jeweils 4 aufeinandergelegten, einmal gefalteten und dann gehefteten Blättern bestanden hatte. Jeder solcher Quaternio hatte also 16 beschriebene Seiten. Zur Palimpsestierung wurden diese Quaterniones auseinandergenommen, die Blätter abgewaschen – zum Abschaben waren sie zu dünn – und die brauchbaren dann neu, d. h. in anderer Ordnung, wieder zusammengesetzt und mit dem Psalmenkommentar des Augustinus beschrieben. Der Forschung gelang es, aus diesen Blättern die ursprünglichen Quaterniones mit dem Cicerotext wieder herzustellen. Dabei war es möglich, die Lücken festzustellen, die dadurch zustande kamen, dass jeweils ganze Blätter nicht mehr vorhanden waren, so dass also die entsprechenden 4 Seiten fehlen; z. B. beim Fehlen des untersten Blattes die Seiten 1 und 2, sowie 15 und 16, beim 2. Blatt die Seiten 3 und 4, sowie 13 und 14 usw. Auch ganze Quaterniones sind nicht enthalten. Insgesamt gewann man aus dem Palimpsest etwa ein Viertel des als verloren Geglaubten. Bei anderen Autoren überlieferte Fragmente, Zitate und Inhaltsangaben versuchte man dem Kontext entsprechend einzuordnen.  Trotz des überraschenden Fundes hatte es zunächst keine intensive wissenschaftliche Beschäftigung mit dem Inhalt dieses Werks gegeben. Erst ab der Zeit um den Ersten Weltkrieg herum begann die deutsche Forschung, unter dem Eindruck der vor allem von Autoren aus dem George-Kreis sowie Vertretern des sogenannten Dritten Humanismus propagierten Neubewertung von Platons Politeia, sich mit dem Text inhaltlich genauer auseinanderzusetzen und Ciceros im Anschluss an Platon streng hierarchisch konzipiertes Staatsmodell als wegweisend für Gesellschaft und Staat der Gegenwart zu diskutieren. Unter veränderter Perspektive (Betonung des Rechtsstaatsgedankens) hält die Forschung bis heute an.

Das Palimpsest des Archimedes.

Ein weiteres Beispiel ist das Archimedes-Palimpsest, ein kürzlich wiederentdecktes Buch des Archimedes, in dem dieser möglicherweise die Grundzüge der modernen Integralrechnung beschreibt. So konnte Archimedes den Schwerpunkt einer massiven Halbkugel und eines Paraboloidenstumpfs berechnen. Vor allem aber war er in der Lage, die Fläche zu ermitteln, die entsteht, wenn eine Parabel von einer ihrer Sekanten geschnitten wird. Flächenberechnungen werden seit der Antike untersucht. Im 5. Jahrhundert vor Christus entwickelte Eudoxos von Knidos nach einer Idee von Antiphon die Exhaustionsmethode, die darin bestand, einen Körper durch regelmäßige Polygone auszufüllen. Er konnte so Flächen als auch Volumina einiger einfacher Körper bestimmen. Archimedes verbesserte diesen Ansatz, und so gelang ihm die exakte Integration einer Parabel – ohne Benutzung eines Grenzwertbegriffs. Er bewies, dass das Verhältnis von Umfang zu Durchmesser eines Kreises größer als das Verhältnis von 6336 zu 20171⁄4, aber kleiner als das Verhältnis von 14688 zu 46731⁄2 ist.  Konstantin von Tischendorf entdeckte 1846 diesen Text. Obwohl er ihn damals nicht verstand, stufte er ihn dennoch als bedeutend ein. 1907 wurde er dann vom dänischen Philologen J. L. Heiberg teilweise übersetzt. Infolge des Ersten Weltkriegs geriet das Buch in Vergessenheit, bis es 1998 auf einer Auktion bei Christie’s von einem unbekannten Sammler für 2,2 Millionen Dollar ersteigert und dem Walters Art Museum in Baltimore übergeben wurde. Mehr als zehn Jahre lang arbeitete ein Expertenteam daran, die im 13. Jahrhundert in Palästina mit einem byzantinischen Euchologion überschriebenen Zeichnungen und Schriftzeichen erkennbar zu machen und zu übersetzen. Anfang August 2006 gelang es dabei einer Gruppe von Wissenschaftlern um den Physiker Uwe Bergmann, den ursprünglichen Text mit Röntgenstrahlung sichtbar zu machen.  Dieser sogenannte "Kodex C" ist die derzeit einzig bekannte Quelle für die "Methodenlehre", das "Stomachion" und die griechische Version von "Über schwimmende Körper" und wurde wahrscheinlich im ausgehenden 10. Jahrhundert, aufgrund der für diese Zeit charakteristischen Minuskelschrift, niedergeschrieben.

Übertragene Bedeutung.

Die Technik des Palimpsestierens wurde seit Mitte des 19. Jahrhunderts mehrmals als Metapher für geistige und kreative Prozesse verwendet.  Der englische Essayist Thomas De Quincey vergleicht in "Suspiria de Profundis" (1845) den menschlichen Geist und besonders das Gedächtnis mit einem Palimpsest:  Sigmund Freud entwickelt 80 Jahre später in seiner "Notiz über den ‚Wunderblock‘" (1925) ein verwandtes Modell vom menschlichen Gedächtnis. In einem Kinderspielzeug (dem sogenannten Wunderblock), das das immer neue Beschreiben und Löschen von Zeichen auf einer druckempfindlichen Wachsplatte ermöglicht, wobei Spuren aller früheren Einschreibungen als unsichtbare Vertiefungen erhalten bleiben, sieht er die zwei wesentlichen Bedingungen erfüllt, die für ihn das menschliche Gedächtnis leisten muss: „Unbegrenzte Aufnahmefähigkeit und Erhaltung von Dauerspuren“ (Lit.: Freud, 1968, S. 4).  Strukturalisten und Poststrukturalisten haben das Palimpsest als Denkfigur herangezogen, um Textualität und die Funktion des Schreibens zu beschreiben: Für sie stellt das Palimpsest in den Vordergrund, dass Schreiben nur im Dasein von anderem, bereits Geschriebenem existiert. Palimpseste untergraben das Konzept vom Autor als einziger, wirklicher Quelle eines Werks, und stellen so den Sinn eines Werks an das Ende einer unendlichen Kette von vielen Bedeutungen. In der Germanistik hat eine Beschäftigung mit dem Palimpsest zu Beginn der 1990er Jahre eingesetzt. Seit der Jahrtausendwende ist eine besondere Konjunktur des Palimpsest in unterschiedlichen Feldern der Literatur- und Kulturwissenschaften zu beobachten. Neben Arbeiten zur Intertextualitätstheorie, Literaturtheorie und Erinnerungs-/Gedächtnistheorie ist die Denkfigur vor wenigen Jahren in den Postkolonialen Studien in der Germanistik verwendet worden, um das kritische Verhältnis von (Gegenwarts-)Texten gegenüber älteren, kolonialen Prätexten zu diskutieren.  In der literarischen Avantgarde ist das Palimpsest neben der Collage und Montage ein zentrales künstlerisches Verfahren. Ein Gedichtband des ukrainischen Dichters Wassyl Stus trägt den Titel "Palimpseste".  Im abstrakten Expressionismus, insbesondere bei der Künstlergruppe CoBrA, wird das Prinzip der Wiederbenutzung von Papieren (z. B. auch Landkarten) ebenfalls unter dem Begriff „Palimpsest“ zusammengefasst, insbesondere bei Arbeiten von Pierre Alechinsky und Asger Jorn. Zitat Pierre Alechinsky: „Ich arbeite auf verschiedenen Malgründen... Seiten aus alten Kassenbüchern, Notariatsakten, alte Rechnungen, russische Drucke, veraltete Flugkarten etc., die ich nach dem Palimpsest-Prinzip neu bearbeite, indem ich mich von der Lektüre der Alltagssorgen anderer Zeiten leiten lasse, die den unseren so ähnlich sind.“  Die Titel der Autobiographie des amerikanischen Schriftstellers Gore Vidal sowie einer Komposition von Iannis Xenakis lauten ebenfalls "Palimpsest".  In der Medizin wird unter "Palimpsest" die alkoholbedingte Amnesie (der sogenannte „Filmriss“) verstanden.  In der Restaurierung von Wandmalerei werden Bereiche als Palimpsest bezeichnet, in denen Putz- und Malschichten unter einer bestehenden Wandmalerei erhalten geblieben sind.

Palimpsest (Maskulinum, auch Neutrum, von lateinisch "palimpsestus", "-i" m aus altgriechisch'„wieder“ und'„reiben, (ab-)schaben“) bezeichnet eine Manuskriptseite oder, die beschrieben, durch Schaben oder Waschen gereinigt und danach neu beschrieben wurde (lat. "codex rescriptus"). Der Begriff wurde bereits in Antike und Mittelalter verwendet. Es ist der Vorgang des Wiederbeschreibens, den man – entgegen der etymologischen Bedeutung – als Palimpsestieren bezeichnet. Im übertragenen Sinn werden vereinzelt auch Oberflächenstrukturen als "Palimpsest" bezeichnet, die durch jüngere Einflüsse überprägt und fast unsichtbar wurden – etwa die Geisterkrater in der Mondoberfläche.