PROKODA Gmbh

      Oracle - SI-365-S10: Die inneren Strukturen der Betriebssystemumgebung Solaris 10

      PROKODA Gmbh
      In Berlin, Stuttgart und Hamburg

      3.150 
      Möchten Sie den Bildungsanbieter lieber direkt anrufen?

      Wichtige informationen

      Tipologie Seminar
      Ort An 4 Standorten
      Dauer 5 Tage
      Beginn nach Wahl
      Beschreibung

      Oracle - SI-365-S10: Die inneren Strukturen der Betriebssystemumgebung Solaris 10: Der Kurs richtet sich an Programmierer, Systemingenieure, erfahrene Systemadministratoren und Supportmitarbeiter.
      Zielsetzung Dieser Kurs vermittelt folgende Kenntnisse und Fähigkeiten: Schrittweise Erläuterung, wie eine Sperre erzielt wird Erläutern der Gründe für..
      Gerichtet an: Der Kurs richtet sich an Programmierer, Systemingenieure, erfahrene Systemadministratoren und Supportmitarbeiter.
      Zielsetzung Dieser Kurs vermittelt folgende Kenntnisse und Fähigkeiten: Schrittweise Erläuterung, wie eine Sperre erzielt wird Erläutern der Gründe für die Prioritätsvererbung und ihre Implementierung Identifizieren der Schritte bei der Adressumsetzung vom virtuellen zum physischen Hauptspeicher Auflisten von Prozessstrukturen und...

      Einrichtungen (4)
      Wo und wann
      Beginn Lage
      nach Wahl
      Berlin
      Zimmerstr. 79/80, 10117, Berlin, Deutschland
      Karte ansehen
      nach Wahl
      Hamburg
      Nagelsweg 55, 20097, Hamburg, Deutschland
      Karte ansehen
      nach Wahl
      Stuttgart
      Löffelstr. 40, 70597, Baden-Württemberg, Deutschland
      Karte ansehen
      nach Wahl
      Stuttgart
      Wankelstraße 1, 70563, Baden-Württemberg, Deutschland
      Karte ansehen
      Beginn nach Wahl
      Lage
      Berlin
      Zimmerstr. 79/80, 10117, Berlin, Deutschland
      Karte ansehen
      Beginn nach Wahl
      Lage
      Hamburg
      Nagelsweg 55, 20097, Hamburg, Deutschland
      Karte ansehen
      Beginn nach Wahl
      Lage
      Stuttgart
      Löffelstr. 40, 70597, Baden-Württemberg, Deutschland
      Karte ansehen
      Beginn nach Wahl
      Lage
      Stuttgart
      Wankelstraße 1, 70563, Baden-Württemberg, Deutschland
      Karte ansehen

      Zu berücksichtigen

      · Voraussetzungen

      Voraussetzungen Um diesen Kurs erfolgreich absolvieren zu können, sollten Sie über folgende Vorkenntnisse verfügen: Lesen von C-Programmen und Erläutern der Bedeutung von "a = (struct foo *) b" und "int func(int)". Kenntnis und Erläutern der Konzepte von Zeigern (Pointer), Strukturen, Vereinigungen (Union), Verknüpfungslisten, Hashing und binären...

      Fragen & Antworten

      Teilen Sie Ihre Fragen und andere User können Ihnen antworten

      Was lernen Sie in diesem Kurs?

      Solaris
      Kernel
      Software
      Server

      Themenkreis

      KURSZIEL
      Oracle - SI-365-S10: Die inneren Strukturen der Betriebssystemumgebung Solaris 10: Der Kurs richtet sich an Programmierer, Systemingenieure, erfahrene Systemadministratoren und Supportmitarbeiter.

      Zielsetzung

      Dieser Kurs vermittelt folgende Kenntnisse und Fähigkeiten:

      • Schrittweise Erläuterung, wie eine Sperre erzielt wird
      • Erläutern der Gründe für die Prioritätsvererbung und ihre Implementierung
      • Identifizieren der Schritte bei der Adressumsetzung vom virtuellen zum physischen Hauptspeicher
      • Auflisten von Prozessstrukturen und Routinen für die Implementierung einer Scheduling-Klasse
      • Auflisten von Prozessstrukturen für die Implementierung mehrerer Scheduling-Klassen und der Felder in den Timesharing- und Echtzeit-Dispatch-Parametertabellen
      • Darstellen der Paging- und Swap-Algorithmen für die Verwaltung des physischen Hauptspeichers als Cache-Speicher
      • Beschreiben der Prozesserstellung, -ausführung und -beendigung
      • Darstellen des Kernel-Thread-Scheduling und der Präemption
      • Einsetzen von kmdb, mdb und DTrace zum Lokalisieren und Anzeigen der Systemstrukturen für eine offene Datei in einem vorgegebenen Prozess, zum Beispiel Dateideskriptor, Dateistruktur, vnode-Struktur, Inode-Struktur, Seitenstruktur und Superblock
      • Beschreiben der Platzierungsstrategien des UNIX®-Dateisystems (UFS) für die Anordnung von Inodes und Datenblöcken


      ZIELGRUPPE
      Der Kurs richtet sich an Programmierer, Systemingenieure, erfahrene Systemadministratoren und Supportmitarbeiter.

      Zielsetzung

      Dieser Kurs vermittelt folgende Kenntnisse und Fähigkeiten:

      • Schrittweise Erläuterung, wie eine Sperre erzielt wird
      • Erläutern der Gründe für die Prioritätsvererbung und ihre Implementierung
      • Identifizieren der Schritte bei der Adressumsetzung vom virtuellen zum physischen Hauptspeicher
      • Auflisten von Prozessstrukturen und Routinen für die Implementierung einer Scheduling-Klasse
      • Auflisten von Prozessstrukturen für die Implementierung mehrerer Scheduling-Klassen und der Felder in den Timesharing- und Echtzeit-Dispatch-Parametertabellen
      • Darstellen der Paging- und Swap-Algorithmen für die Verwaltung des physischen Hauptspeichers als Cache-Speicher
      • Beschreiben der Prozesserstellung, -ausführung und -beendigung
      • Darstellen des Kernel-Thread-Scheduling und der Präemption
      • Einsetzen von kmdb, mdb und DTrace zum Lokalisieren und Anzeigen der Systemstrukturen für eine offene Datei in einem vorgegebenen Prozess, zum Beispiel Dateideskriptor, Dateistruktur, vnode-Struktur, Inode-Struktur, Seitenstruktur und Superblock
      • Beschreiben der Platzierungsstrategien des UNIX®-Dateisystems (UFS) für die Anordnung von Inodes und Datenblöcken

      KURSINHALT
      Übersicht

      Dieser Kurs vermittelt den Teilnehmern Kenntnisse über die verschiedenen Kernel-Subsysteme, Routinen und Strukturen, die das Betriebssystem Solaris 10 bilden. Die Teilnehmer werden mithilfe von Solaris Dynamic Tracing (DTrace) schrittweise das Erstellen, Ausführen, die Signalübermittlung sowie die Zeitplanung von Prozessen durchlaufen, wobei Beobachtungen mit dem über OpenSolaris verfügbaren Code in Beziehung gesetzt werden. In den praktischen Übungen kommen die Befehle dtrace, kmdb und mdb für die Untersuchung der Systemstrukturen auf Live-Systemen intensiv zum Einsatz. Darüber hinaus wird in den Übungen anhand des OpenSolaris-Internetzugriffs die Funktionsweise des Betriebssystems dargestellt. Zu den behandelten Kernel-Subsystemen gehören die Multithread-Architektur, virtuelle Speicher, Zeitplanung, Prozesslebensdauer, Signalverwaltung, die vnode-Schicht und Dateisysteme wie UFS, ZFS und swapfs.

      Inhalt
      Einführung in das Betriebssystem Solaris 10

      • Darlegen von Sinn und Zweck des Betriebssystems, Erläutern der Konzepts der Kernel-Schichten.
      • Erläutern und grafisches Darstellen der Segmente, die den Prozessadressraum bilden.
      • Erläutern des Trap-Mechanismus.
      • Unterscheidung zwischen Hardware- und Software-Interrupts.
      • Auflisten der neuen Leistungsmerkmale in den jüngsten Versionen von Solaris 10
      • Einführung in die Verwendung von Tools wie mdb, kmdb und DTrace zum Untersuchen von Kernel-Datenstrukturen.
      • Einführung in die Verwendung von opensolaris zum Untersuchen des Quellcodes.


      Multithread-Architektur

      • Erläutern des Unterschieds zwischen symmetrischem Multiprocessing (SMP) und asymmetrischem Multiprocessing (ASMP)
      • Definieren von Anwendungs- und Kernel-Threads
      • Definieren von LWP (Lightweight Process)
      • Erläutern des Unterschieds zwischen Thread und LWP
      • Auflisten der Strukturen, die den Status eines Kernel-Thread, LWP bzw. Prozesses beschreiben
      • Erläutern der Funktionsweise einer Mutex-Sperre
      • Definieren von Bedingungsvariablen
      • Beschreiben der Implementierung von Zähl-Semaphoren
      • Erläutern der Funktionsweise einer Sperre, die mehrmaliges Lesen, aber nur einmaliges Schreiben erlaubt
      • Erläutern der Vorzüge von mehreren LWPs für einen vorgegebenen Prozess

      Hardwarespeichermanagement

      • Beschreiben, wie die MMU-Tabellen für die Umsetzung von virtuellen in physische Adressen verwendet werden.
      • Auflisten der Unterschiede zwischen der x86/x64-MMU (Memory Management Unit) und der SFMMU (SPARC-Referenz-MMU).
      • Beschreiben der in Sun-Systemen implementierten Cache-Typen
      • Erläutern des Zwecks der HAT-Schicht (Hardware Address Translation, Hardwareadressumsetzung).

      Softwarespeichermanagement

      • Auflisten der Schichten im VM-System (Virtual Memory, virtueller Speicher) von SunOS 5.x und Definieren der Funktion jeder einzelnen Schicht
      • Auflisten der Mapping-Strukturen, die einen Prozessadressraum bilden
      • Lokalisieren der Seitenstrukturen und Prozessadressraumstrukturen in mdb oder dtrace und Identifizieren der Felder in diesen Strukturen
      • Erläutern, wie ein Anwendungsprogrammierer mithilfe von Systemaufrufen für Speicher-Mapping und Speichersteuerung eine effektive Prozessspeicherverwaltung erzielen kann

      Paging und Swapping

      • Erläutern des Schichtenprinzips bei der Seitenfehlerbehandlung
      • Auflisten der Bedingungen, unter denen der Paging-Dämon läuft
      • Auflisten der Funktionen des Paging-Dämons
      • Auflisten der Bedingungen, unter denen der Swapper läuft

      Das Dateisystem swapfs

      • Auflisten der Schwachpunkte beim Swap-Management von SunOS 4.x.
      • Beschreiben der Änderungen an der Anonymous-Memory-Schicht, um die Implementierung des Dateisystems swapfs zu ermöglichen
      • Auflisten von zwei Vorteilen, die das Dateisystem swapfs in SunOS 5.x mit sich bringt.

      Zeitplanung

      • Auflisten von mindestens zwei Haupthindernissen für die Echtzeitverarbeitung in herkömmlichen UNIX-Architekturen, zum Beispiel dem System V Release 3 (SVR3), der 4.3 BSD-Version (Berkeley Software Distribution) von UNIX und der SunOS 4.x-Software
      • Erläutern der Unterschiede zwischen einem vollständig unterbrechbaren (fully preemptable) Kernel und einem Kernel mit Präemptionspunkten (Unterbrechungspunkten)
      • Angeben einer Routine, mit der sich ein Thread in eine Dispatch-Warteschlange einreihen lässt
      • Beschreiben, wann ein Thread an den Anfang einer Dispatch-Warteschlange gestellt wird
      • Beschreiben der Reihenfolge, in der die Sleep-Warteschlangen angeordnet sind
      • Definieren von Präemption auf Benutzerebene
      • Definieren von Präemption auf Kernel-Ebene
      • Definieren der deterministischen Dispatch-Antwort (Dispatch-Latenz)
      • Definieren von Prioritätsumkehrung

      Prozesslebensdauer

      • Erläutern der Unterschiede zwischen den zum Erstellen eines neuen Prozesses verwendeten Systemaufrufe.
      • Beschreiben der Kernel-Routinen zur Implementierung der Prozesserstellung
      • Auflisten der unterschiedlichen Typen ausführbarer Dateien, die in Solaris 10 unterstützt werden
      • Erläutern der Routinen zur Implementierung ausführbarer Dateien im ELF-Format (Executable and Linking Format)
      • Auflisten der Vorzüge des ELF-Formats
      • Beschreiben der Aktionen eines Prozesses bei der Beendigung
      • Erläutern des Systemaufrufs waitid(2) und seiner Implementierung


      Signale

      • Auflisten der unterschiedlichen Typen von Signalen, die an einen Prozess oder Thread übergeben werden können
      • Erläutern der Unterschiede zwischen einem Trap-Signal und einem Unterbrechungssignal
      • Auflisten der Routinen zum Signalmanagement und Beschreiben ihrer Funktionen
      • Beschreiben der Signalfunktion und der Art und Weise, wie ein Signal übergeben wird

      Dateisysteme

      • Beschreiben der vnode-Schnittstellenschicht in Bezug auf ein Dateisystem
      • Auflisten der vier Felder in einem Verzeichniseintrag
      • Erläutern der Vorzüge des 4.3 BSD-Dateisystems
      • Beschreiben der Funktion von Superblock- und Zylindergruppenstrukturen
      • Auflisten der Felder in der Inode-Struktur der Festplatte und Erläutern ihrer Einsatzweise
      • Benennen der Routinen, die bei der Bestimmung der globalen Platzierungsstrategien benutzt werden
      • Erläutern der Zuordnungsroutinen unter Verwendung von Flussdiagrammen und Beschreiben, wie sich die Fragmente schnell lokalisieren lassen


      Kurssprache deutsch, Unterrichtsmaterial überwiegend in englischer Sprache.

      VORRAUSSETZUNG
      Voraussetzungen
      Um diesen Kurs erfolgreich absolvieren zu können, sollten Sie über folgende Vorkenntnisse verfügen:

      • Lesen von C-Programmen und Erläutern der Bedeutung von "a = (struct foo *) b" und "int func(int)".
      • Kenntnis und Erläutern der Konzepte von Zeigern (Pointer), Strukturen, Vereinigungen (Union), Verknüpfungslisten, Hashing und binären Strukturen.

      Zugehörige Seminare
      Im Anschluss

      SI-375: Writing Device Drivers for the Solaris Operating Environment (SI-375)
      ST-375: Einführung in die Analyse von Crash Dumps und den SunOS-Kernel (ST-375)