Schlüsseltechnologie

STP020: Bootstrap


Listen Later

Strom an und Ohren auf! In dieser Episode nähern wir uns Computern im Dornröschenschlaf.

Genauer sehen wir uns an, was beim Erwachen geschieht.

Shownotes
  • Zustand bei frühen Rechenmaschinen und Computern

    • kein Bootstrap: Strom an -> Programm starten, Programm beenden -> Strom aus (siehe Konrad-Zuse-Clip)
    • Programme waren spezifisch für die Hardware, auf der sie laufen
    • siehe auch: damals (TM) Podcast
    • und ChaosRadioExpress193 Old School Computing
    • Zustand bei heutigen Computern

      • Programme benötigen Funktionen des Betriebssystems, Betriebssystem muss sich mit der Hardware vertraut machen -> separate Startphase notwendig
      • Bootstrap (oder kurz Boot): sich selbst an den Schnürsenkeln aus dem Sumpf ziehen; aus einem einfachen System heraus ein komplexeres System aktivieren
      • Konzept taucht mehrmals in verschiedenen Kontexten auf ("Wie stellt man einen Hobel her, wenn man keinen Hobel hat?"), siehe z.B. Bootstrapping von Programmiersprachen
      • Hardware-Bootvorgang meist in mehreren aufeinanderfolgenden Phasen
      • Phase 1: Firmware

        • minimales Startprogramm
        • in einen separaten Flash-Speicher im Chip fest verbaut
        • Aufgabe: Hardware in einen definierten Zustand bringen (z.B. interne Speicher initialisieren), nächste Stufe finden und laden
        • heute mitunter alles andere als minimal: siehe UEFI und Intel ME/AMD PSP
        • bei x86 früher BIOS; heute ersetzt durch UEFI, dessen definierter Endzustand modernen Konventionen folgt
        • Phase 2: Bootloader

          • immer noch ziemlich minimal
          • liegt auf einem Massenspeicher (Festplatte, USB-Stick)
          • Aufgabe: Massenspeicher nach Betriebssystemen durchsuchen, Auswahldialog anbieten, gewähltes Betriebssystem starten
          • unter Linux meistens GRUB oder systemd-boot
          • Alternativen zum klassischen Bootloader

            • UEFI-Firmware kann direkt das Betriebssystem starten, sofern keine interaktive Auswahl erforderlich ist
            • Netzwerk-Boot (entweder durch die Firmware oder als Option in Bootloadern wie GRUB)
            • Phase 3: Betriebssystem

              • Erinnerung (siehe STP019): Kernel = Betriebssystemteile in höchster Privilegenstufe, Userspace = alle Programme in niedrigerer Privilegienstufe
              • Bootloader lädt und startet den Basisteil des Kernels
              • Kernel erkennt die verfügbare Hardware, lädt von der Festplatte die benötigten Kernel-Module nach und startet den System-Manager
              • Phase 4: System-Manager

                • unter Unix meist als "PID 1" benannt, weil dieser erste Prozess mit der Prozess-ID (PID) 1 läuft

                • klassischerweise sysvinit, heute unter Linux meist systemd

                • startet alle Userspace-Programme, die als Teil des Betriebssystems aufgefasst werden können (im Unix-Sprech "Daemons": Disk And Execution MONitors)

                • auf Systemebene z.B. Druckwarteschlange, Bluetooth-Dienst, Netzwerk-Konfigurationsdienst, Zeitsynchronisation

                • auf der Ebene einer grafischen Sitzung z.B. Dienste zum Auswählen von Tastaturlayout/Netzwerk, Einstellen der Lautstärke, Screen-Reader

                • ChaosRadioExpress209 Das Linux System

                • Phase 5: Display-Manager

                  • bietet auf grafischen Systemen den Anmeldedialog
                  • im Prinzip selbst eine komplette grafische Sitzung (Anekdote: GDM vs. LightDM)
                  • startet nach erfolgreicher Anmeldung die entsprechende grafische Sitzung
                  • Phase 6: grafische Sitzung

                    • Strukturierung je nach Desktopoberfläche
                    • immer mit dabei: ein Window-Manager, der die einzelnen Fenster in ein Gesamtbild zusammensetzt (heutzutage auf der GPU, dann heißt der Window-Manager "Compositor")
                    • unter Windows ist der Window-Manager aus historischen Gründen Teil von explorer.exe
                    • wie besprochen: unter Linux Bootvorgang visualisieren mit systemd-analyze plot > output.svg
                    • ...more
                      View all episodesView all episodes
                      Download on the App Store

                      SchlüsseltechnologieBy Xyrillian Noises


                      More shows like Schlüsseltechnologie

                      View all
                      Bits und so by Undsoversum GmbH

                      Bits und so

                      25 Listeners

                      WRINT: Wer redet ist nicht tot by Holger Klein

                      WRINT: Wer redet ist nicht tot

                      15 Listeners

                      Methodisch inkorrekt! by Methodisch inkorrekt!

                      Methodisch inkorrekt!

                      13 Listeners

                      Apfelfunk by Malte Kirchner & Jean-Claude Frick

                      Apfelfunk

                      8 Listeners

                      Das Wissen | SWR by SWR

                      Das Wissen | SWR

                      113 Listeners

                      c’t uplink - der IT-Podcast aus Nerdistan by c’t Magazin

                      c’t uplink - der IT-Podcast aus Nerdistan

                      6 Listeners

                      Stay Forever - Retrogames & Technik by Stay Forever Team

                      Stay Forever - Retrogames & Technik

                      34 Listeners

                      Logbuch:Netzpolitik by Metaebene Personal Media - Tim Pritlove

                      Logbuch:Netzpolitik

                      5 Listeners

                      Computer und Kommunikation by Deutschlandfunk

                      Computer und Kommunikation

                      10 Listeners

                      Der KI-Podcast by ARD

                      Der KI-Podcast

                      12 Listeners

                      KI-Update – ein heise-Podcast by Isabel Grünewald, heise online

                      KI-Update – ein heise-Podcast

                      2 Listeners

                      Passwort - der Podcast von heise security by Dr. Christopher Kunz, Sylvester Tremmel

                      Passwort - der Podcast von heise security

                      3 Listeners

                      Geschichten aus der Mathematik by detektor.fm – Das Podcast-Radio

                      Geschichten aus der Mathematik

                      2 Listeners

                      UNFASSBAR – ein Simplicissimus Podcast by Simplicissimus

                      UNFASSBAR – ein Simplicissimus Podcast

                      25 Listeners

                      Darknet Diaries Deutsch by heise online

                      Darknet Diaries Deutsch

                      0 Listeners