
- 734 Seiten
- German
- ePUB (handyfreundlich)
- Über iOS und Android verfügbar
eBook - ePub
Über dieses Buch
Dieses Lehrbuch bietet eine umfassende Einführung in die Grundlagen der Betriebssysteme und in die Systemprogrammierung. Im Vordergrund stehen die Prinzipien moderner Betriebssysteme und die Nutzung ihrer Dienste für die systemnahe Programmierung.
Methodisch wird ein Weg zwischen der Betrachtung anfallender Probleme und ihren Lösungen auf einer theoretischen und einer praktischen Basis beschritten. Dabei orientiert sich der Autor an den beiden am meisten verbreiteten Systemwelten, nämlich Unix/Linux und Windows. Zudem werden die wichtigsten Prozessorgrundlagen erklärt, soweit sie für das Verständnis der internen Funktionsweise eines Betriebssystems hilfreich sind.
Behandelt werden u.a.:
Die 4. Auflage ist in zahlreichen Details überarbeitet und generell aktualisiert. Neu aufgenommen wurden z.B. das Thread-Pool-Konzept, Windows Services, Completely Fair Scheduler, Container-Systeme und Unikernel.
Übungsaufgaben mit Lösungen, alle Abbildungen des Buches und Vorlesungsfolien für Dozierende stehen online zur Verfügung.
Methodisch wird ein Weg zwischen der Betrachtung anfallender Probleme und ihren Lösungen auf einer theoretischen und einer praktischen Basis beschritten. Dabei orientiert sich der Autor an den beiden am meisten verbreiteten Systemwelten, nämlich Unix/Linux und Windows. Zudem werden die wichtigsten Prozessorgrundlagen erklärt, soweit sie für das Verständnis der internen Funktionsweise eines Betriebssystems hilfreich sind.
Behandelt werden u.a.:
- Programmausführung und Hardware
- Systemprogrammierung
- Synchronisation und Kommunikation von Prozessen und Threads
- Speicherverwaltung
- Dateisysteme
- Programmentwicklung
- Sicherheit
- Virtualisierung
Die 4. Auflage ist in zahlreichen Details überarbeitet und generell aktualisiert. Neu aufgenommen wurden z.B. das Thread-Pool-Konzept, Windows Services, Completely Fair Scheduler, Container-Systeme und Unikernel.
Übungsaufgaben mit Lösungen, alle Abbildungen des Buches und Vorlesungsfolien für Dozierende stehen online zur Verfügung.
Häufig gestellte Fragen
Ja, du kannst dein Abo jederzeit über den Tab Abo in deinen Kontoeinstellungen auf der Perlego-Website kündigen. Dein Abo bleibt bis zum Ende deines aktuellen Abrechnungszeitraums aktiv. Erfahre, wie du dein Abo kündigen kannst.
Derzeit stehen all unsere auf mobile Endgeräte reagierenden ePub-Bücher zum Download über die App zur Verfügung. Die meisten unserer PDFs stehen ebenfalls zum Download bereit; wir arbeiten daran, auch die übrigen PDFs zum Download anzubieten, bei denen dies aktuell noch nicht möglich ist. Weitere Informationen hier.
Perlego bietet zwei Pläne an: Elementar and Erweitert
- Elementar ist ideal für Lernende und Interessierte, die gerne eine Vielzahl von Themen erkunden. Greife auf die Elementar-Bibliothek mit über 800.000 professionellen Titeln und Bestsellern aus den Bereichen Wirtschaft, Persönlichkeitsentwicklung und Geisteswissenschaften zu. Mit unbegrenzter Lesezeit und Standard-Vorlesefunktion.
- Erweitert: Perfekt für Fortgeschrittene Studenten und Akademiker, die uneingeschränkten Zugriff benötigen. Schalte über 1,4 Mio. Bücher in Hunderten von Fachgebieten frei. Der Erweitert-Plan enthält außerdem fortgeschrittene Funktionen wie Premium Read Aloud und Research Assistant.
Wir sind ein Online-Abodienst für Lehrbücher, bei dem du für weniger als den Preis eines einzelnen Buches pro Monat Zugang zu einer ganzen Online-Bibliothek erhältst. Mit über 1 Million Büchern zu über 1.000 verschiedenen Themen haben wir bestimmt alles, was du brauchst! Weitere Informationen hier.
Achte auf das Symbol zum Vorlesen in deinem nächsten Buch, um zu sehen, ob du es dir auch anhören kannst. Bei diesem Tool wird dir Text laut vorgelesen, wobei der Text beim Vorlesen auch grafisch hervorgehoben wird. Du kannst das Vorlesen jederzeit anhalten, beschleunigen und verlangsamen. Weitere Informationen hier.
Ja! Du kannst die Perlego-App sowohl auf iOS- als auch auf Android-Geräten verwenden, um jederzeit und überall zu lesen – sogar offline. Perfekt für den Weg zur Arbeit oder wenn du unterwegs bist.
Bitte beachte, dass wir keine Geräte unterstützen können, die mit iOS 13 oder Android 7 oder früheren Versionen laufen. Lerne mehr über die Nutzung der App.
Bitte beachte, dass wir keine Geräte unterstützen können, die mit iOS 13 oder Android 7 oder früheren Versionen laufen. Lerne mehr über die Nutzung der App.
Ja, du hast Zugang zu Betriebssysteme von Eduard Glatz im PDF- und/oder ePub-Format sowie zu anderen beliebten Büchern aus Informatik & Betriebssysteme. Aus unserem Katalog stehen dir über 1 Million Bücher zur Verfügung.
Information
Vorwort zur 1. und 2. Auflage
Obwohl heute Middleware-Systeme zur Verfügung stehen, die in vielen Fällen unabhängig von einem darunter laufenden Betriebssystem sind, ist die Betriebssystemthematik aus der Informatik-Grundausbildung aus verschiedenen Gründen nicht wegzudenken. Ohne Kenntnisse der hauptsächlichen Strukturen, Mechanismen und der Programmierschnittstelle eines Betriebssystems ist es nicht möglich, spezielle Systemdienste zu benutzen oder die Effizienz eines Systems zu optimieren. Es ist ein altes Ideal des Software Engineering, dass die hinter einer Schnittstelle stehende Implementierung als solche unwichtig ist und daher ignoriert werden soll. Auf Betriebssysteme bezogen würde dies heißen, nur die Programmierschnittstelle zu betrachten. Leider sind die dazugehörigen Beschreibungen praktisch immer minimal und befassen sich kaum mit den Konzepten der dahinter stehenden Implementierungen. Dies erschwert nicht nur ein tieferes Verständnis der Systemdienste, sondern kann auch zu einer inadäquaten Nutzung in komplexen Applikationen führen. Dieses Buch will Studierenden der Informatik und weiteren interessierten Personen die Grundlagen der Betriebssystemtheorie aus einer praktischen Perspektive näher bringen. Damit ist gemeint, dass nicht nur die Prinzipien von Betriebssystemen, sondern auch deren Nutzung bei der systemnahen Programmierung aufgezeigt werden. Dieser Ansatz entspricht der Idee des Bachelor-Studiums, das eine Berufsbefähigung nach drei Studienjahren anstrebt und die forschungsorientierte Ausbildung in die Master- und Doktoratstufe verschiebt.
Methodisch wird ein Weg zwischen der Betrachtung anfallender Probleme und ihren Lösungen auf einer theoretischen und einer praktischen Basis beschritten. Der Praxisbezug orientiert sich an den zwei am meisten verbreiteten Systemwelten, nämlich Unix und Windows. Kenntnisse der Prozessortechnik werden keine vorausgesetzt. Wo nötig werden die wichtigsten Prozessorgrundlagen erklärt, soweit sie für das Verständnis des Betriebssystems und der systemnahen Programmierung hilfreich sind. Die zahlreichen Beschreibungen von Systemfunktionen dienen dazu, die Programmbeispiele genau zu verstehen. Dies ist im Zeitalter der Java-Programmierung umso wichtiger, da eine gründliche Ausbildung in der Programmiersprache C nicht mehr vorausgesetzt werden kann, wenn auch C-Grundkenntnisse für dieses Buch notwendig sind. Im Weiteren verschaffen diese Beschreibungen einen Einstieg in die Systemdokumentationen, wie sie in Form der Unix-Handbuchseiten oder der MSDN-Beschreibungen (Microsoft Developer Network) für Windows vorliegen und erfahrungsgemäß für Neulinge nur schwer verständlich sind. Auf die Betrachtung von Computernetzen wird weitgehend verzichtet, da dieses Thema in einem Betriebssystembuch nur oberflächlich gestreift werden kann und ausgezeichnete Standardwerke zur Verfügung stehen. Dafür werden als Ergänzung die aktuellen Themen Multiprozessorsysteme, Handheld-Betriebssysteme und Virtualisierungstechnologien vorgestellt.
Als Hilfe für Dozierende stehen auf der Buch-Website http://unix.hsr.ch Übungsaufgaben mit Lösungen, alle Abbildungen des Buches und etliche Vorlesungsfolien in elektronischer Form zur Verfügung. Abschließend bedanke ich mich bei allen Personen, die mir bei der Realisierung dieses Buchprojektes geholfen haben.
Eduard Glatz
Urdorf, im August 2005
Neuheiten in der zweiten Auflage
Eine neue Auflage erlaubt nicht nur das Aktualisieren schnell veralteter Informationen, sondern auch das Einbringen von Erfahrungen und zusätzlichen Themen. Aktualisiert haben wir die Informationen zu Windows 7, Windows CE und Symbian OS. Die ausführlichen tabellarischen Beschreibungen zu den Systemfunktionen sind nun nicht mehr im Buch, sondern in einer PDF-Datei zusammengefasst auf der Buch-Website (http://unix.hsr.ch) verfügbar. Auf vielfältigen Wunsch wurde das Literaturverzeichnis ausgedehnt. Neue Themen betreffen u.a. die Linux-basierten Smartphone-Betriebssysteme Android, WebOS und Maemo, die Systemprogrammierung aus C++, Java und .NET-Sprachen, die Bauweise von SSD (Solid State Disks), spezielle Dateisystemtechnologien (Schattenkopie, Disk Scheduling) und die Vermeidung von Synchronisationsengpässen.
Eduard Glatz
Urdorf, im Februar 2010
Inhaltsverzeichnis
1Einführung
1.1Zweck
1.2Definitionen
1.3Einordnung im Computersystem
1.4Betriebssystemarten
1.4.1Klassische Einteilungen
1.4.2Moderne Einteilungen
1.4.3Geschichte
1.5Betriebssystemarchitekturen
1.5.1Architekturformen
1.5.2Benutzer-/Kernmodus
1.5.3Monolithische Systeme
1.5.4Geschichtete Systeme
1.5.5Mikrokernsysteme (Client/Server-Modell)
1.5.6Multiprozessorsysteme
1.5.7Verteilte Betriebssysteme
1.5.8Beispiele von Systemarchitekturen
1.5.9Zukünftige Systemarchitekturen aus Sicht der Forschung
2Programmausführung und Hardware
2.1Rechner- und Prozessorgrundlagen
2.1.1Grundmodell eines Rechners
2.1.2Befehlsverarbeitung in der CPU
2.1.3Prozessoraufbau
2.1.4Allgemeine Prozessorregister (general purpose registers)
2.1.5Steuerregister (control registers)
2.2Grundlagen des Adressraums
2.2.1Adressraumtypen
2.2.2Bytereihenfolge (byte ordering)
2.2.3Adressraumbelegungsplan (memory map)
2.2.4Ausrichtungsregeln im Adressr...
Inhaltsverzeichnis
- Cover
- Über den Autor
- Titel
- Impressum
- Vorwort zur 4. Auflage
- Vorwort zur 3. Auflage
- Vorwort zur 1. und 2. Auflage
- Inhaltsverzeichnis
- 1 Einführung
- 2 Programmausführung und Hardware
- 3 Systemprogrammierung
- 4 Prozesse und Threads
- 5 Synchronisation von Prozessen und Threads
- 6 Kommunikation von Prozessen und Threads
- 7 Ein- und Ausgabe
- 8 Speicherverwaltung
- 9 Dateisysteme
- 10 Programmentwicklung
- 11 Sicherheit
- 12 Virtualisierung
- 13 Mobile Betriebssysteme
- A Anhang
- Literaturhinweise
- Index