🎧 New: AI-Generated Podcasts Turn your study notes into engaging audio conversations. Learn more

Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...

Full Transcript

BETRIEBSSYSTEME (BS) I. EINFÃœHRUNG IN LINUX DISTRIBUTIONEN PROF. DR.-ING. RAINER KELLER PROF. DR. DENNIS GREWE 1 HISTORIE Quelle: [Image by vwalakte on Freepik] 4 QUIZ https://...

BETRIEBSSYSTEME (BS) I. EINFÜHRUNG IN LINUX DISTRIBUTIONEN PROF. DR.-ING. RAINER KELLER PROF. DR. DENNIS GREWE 1 HISTORIE Quelle: [Image by vwalakte on Freepik] 4 QUIZ https://partici.fi/54815345 [Bild von vecstock auf Freepik] 25.09.2024 Profs. Grewe & Keller | Betriebssysteme | Einführung 14 MIKROPROZESSORENTWICKLUNG 60 MB L3, AXV−512 40 cores Wenn wir von Prozessorentwicklung et al l 6 1×10 6500 AVX2 6000 AVX 37,5 sprechen sind meist Mikro- 8 cores L3 MB 5500 5000 prozessoren aus dem Bereich der Multi−core (Base−)Frequency [MHz] Hyper−threading 4500 Performance [MFlops] 10000 Long pipelines „Consumer Electronics“ von Laptop, 2xclock arithm. 4000 Level−2 cache Pentium D with full clock SandyHas− Broadwell Core i7 Bridge well Skylake 3500 Pentium Xeon Bloomfield Tablet, Smartphone wie Intel x86, MMX−Instructions Core 2 3000 Speculative out−of−order execution Ice 2500 AMD oder auch ARM. 100 Lake Multiple− Instructions 2000 per cycle Pentium 4 1500 l Entwicklung von Prozessoren Integrated Cache 1000 Instruction Pentium 3 war/ist exorbitant. 500 pipeline Pentium Pentium Pro MMX 80386 80486 Pentium 1 0 1986 1991 1996 2001 2006 2011 2016 2021 Year Quelle: Keller08 25.09.2024 Profs. Grewe & Keller | Betriebssysteme | Einführung 15 MIKROPROZESSORENTWICKLUNG l Es gibt auch Prozessoren anderer Hersteller meist mit speziellem Anwendungsfall: l IBM Mainframe System/Z l IBM Power Prozessoren (Server) l NEC SX Vektorprozessoren l Low Power: RISC-V l ARM Prozessoren in Handy, Smart Watches, Apple Mx-Serie l Weitere Anwendungsfälle: l Grafikprozessoren (GPUs) wie NVIDIA GeForce, AMD Radeon l KI Hardwarebeschleuniger wie Google TPU, NVIDIA Tensor Core l Anwendungsspezifische ICs (ASICs) für speziell eine Aufgabe (z.B.: Crypto-Mining) l Netzwerkprozessoren für schnelle Paketverarbeitung wie Intel IXP Serie l Echtzeitfähige Prozessoren wie ARM Cortex-R, z.B.: für Kontrollsysteme l … Quelle: Rainer Keller 25.09.2024 Profs. Grewe & Keller | Betriebssysteme | Einführung 16 MIKROPROZESSORENTWICKLUNG l Cache: Zwischenspeicher für Daten die aus dem Arbeitsspeicher geholt und in kleinen Blöcken vorgehalten werden. Eine moderne CPU hat meist 3 Ebenen (engl. Level) von Caches (1-3). Je kleiner die “Zahl“ desto schneller der Zugriff, aber geringer der Speicher. l Beispiel: Intel Xeon „Sandy Bridge“ (Q4/2011) mit bis zu 2,27 Mrd. Transistoren l Riesiger „L3 Cache“, für jeden Core zusätzlich noch L1 und L2 Cache l Großer Bereich für “Memory Controller“ l 2 CPU Cores stehen nicht zur Verfügung. Sind aber in Hardware umgesetzt. l Haben Sie eine Idee warum? Quelle: Intel Quelle: Rainer Keller 25.09.2024 Profs. Grewe & Keller | Betriebssysteme | Einführung 17 KOMPONENTEN EINES PERSONAL COMPUTER (PC) l Ein Standard PC ist wie folgt aufgebaut: l 1. Motherboard / Hauptplatine l 2. Prozessor l 3. Kühlkörper mit Radiallüfter l 4. Hauptspeicher (hier: 4 Steckplätze) l 5. Erweiterungskarten wie z.B.: Netzwerkkarte, etc. l 6. Netzteil für Stromversorgung l 7. Festplatte (z.B.: 3 ½ Zoll oder Solid State Disk (SSD)) l 8. CD-ROM / DVD / BlueRay Laufwerk l 9. Bildschirm l 10. Tastatur l 11. Maus l Das ist ausschließlich die Hardware. Es fehlt die Software. Quelle: Wikipedia 25.09.2024 Profs. Grewe & Keller | Betriebssysteme | Einführung 18 DEFINITION BETRIEBSSYSTEM Quelle: [Image by rawpixel.com on Freepik] 20 HERLEITUNG DEFINITION „BETRIEBSSYSTEM“ l DIN 44300: l “Die Programme eines digitalen Rechensystems, die zusammen mit den Eigenschaften dieser Rechenanlage die Basis der möglichen Betriebsarten des Rechensystems bilde und die insbesondere die Abwicklung von Programmen steuern und überwachen.“ l Duden Informatik: l “Zusammenfassende Bezeichnung für alle Programme, […] und die Aufrechterhaltung der Betriebsart steuern und überwachen.“ l Rembold „Einführung in die Informatik“: l “Der Zweck eines Betriebssystems liegt darin, Fähigkeiten zur Verfügung zu stellen, um eine Rechenanlage möglichst durch mehrere Anwender nutzen zu können. Diese Nutzung soll einfach, zuverlässig und wirtschaftlich sein.“ 25.09.2024 Profs. Grewe & Keller | Betriebssysteme | Einführung 21 DEFINITION: „BETRIEBSSYSTEM“ l “Ein Betriebssystem ist eine Software, die auf effiziente Weise die … l … Komplexität eines Computers vor dem Benutzer und dem Programmierer versteckt (abstrahiert), sowie l … einer Gruppe von Benutzern und Programmen l … gemeinsamen, sicheren Zugriff auf Rechen-, Speicher-, Kommunikationsmittel l … zur Verfügung stellt.“ 01.10.2024 Profs. Grewe & Keller | Betriebssysteme | Bash Programmierung 22 WAS MACHT EIN BETRIEBSSYSTEM? l Ein Betriebssystem abstrahiert von der Anwendungsprogramme tatsächlichen, physikalischen Hardware und Grafische Benutzeroberfläche verwaltet die verfügbaren Ressourcen. System-nahe Programme l Beispiele: Bibliotheken l Es gibt Programmen Zugriff auf CPU, Speicher, etc. und Betriebssystem entzieht diesen Zugriff gegebenenfalls. Software Treiber l Es verwaltet Dateien. Hardware l Es stellt einheitliche Programmierschnittstellen zur RAM Entwicklung und dem Betrieb von Programmen zur Verfügung, sogenannten Application Programming GPU CPU Interfaces (APIs). l Gerade UNIX hat hier seit 1970 – heute Maßstäbe gesetzt. HDD- Chipsatz USB controller 25.09.2024 Profs. Grewe & Keller | Betriebssysteme | Einführung 23 WAS GEHÖRT NICHT ZU EINEM BETRIEBSSYSTEM? l Zu einem Betriebssystem gehören nicht: l Das BIOS. l Dies ist eine “Firmware“ die für den Start der Komponenten eines Rechners, aber nicht für den Betrieb, benötigt wird. l Ein Übersetzter (Compiler) l Zum Übersetzen von Programmcode in Maschinencode. l Ein Editor l Wichtig zur Entwicklung von Programmen, aber ein Rechner funktioniert auch ohne solche Werkzeuge. l Fallen Ihnen weiter ein? [Bild von vecstock auf Freepik] 25.09.2024 Profs. Grewe & Keller | Betriebssysteme | Einführung 24 BEISPIELE VON BETRIEBSSYSTEMEN l Eine Auflistung von Betriebssystemen lautet (u.a. auch für sehr spezielle Anwendungsfälle): l Mainframes (besonders hohe Stabilität) l IBM z/OS, Siemens Fujitsu BS 2000/OSD l Server l Microsoft Windows Server, Red Hat Enterprise Linux, CentOS l Personal Computer (PC) l Microsoft Windows 10/11, Apple macOS, Ubuntu Linux l Handheld und Smartphones l Apple iOS, Google Android, Huawei HarmonyOS, Samsung Tizen l Embedded Geräte l Embedded Linux, Windows IoT l Echtzeitfähige Betriebssyteme l FreeRTOS, QNX, VxWorks 25.09.2024 Profs. Grewe & Keller | Betriebssysteme | Einführung 25 HISTORIE VON UNIX 25.09.2024 Profs. Grewe & Keller | Betriebssysteme | Einführung 26 HISTORIE VON UNIX 25.09.2024 Profs. Grewe & Keller | Betriebssysteme | Einführung 27 HISTORIE VON UNIX Historie sehr unübersichtlich Prinzipiell gibt es 2 Strömungen: Ø AT&T Unix Ø BSD Unix Und natürlich: Ø Linux! Linux versucht beide Lager zu vereinen... 25.09.2024 Profs. Grewe & Keller | Betriebssysteme | Einführung 28 KURZÜBERSICHT MICROSOFT WINDOWS Quelle: [Image by rawpixel.com on Freepik] 29 MICROSOFT WINDOWS KING OF DESKTOP OS l Microsoft Windows ist das meist genutzte Betriebssystem auf dem Desktop PC: l Für Firmen ist Windows/x86 so interessant, weil l die Mitarbeiter meist privat auch Windows nutzen und sich somit selber schulen (in Freizeit!), l Microsoft „garantiert“ Rückwärtskompatibilität“, d.h. Programme (von alter Hardware oder Windows Versionen) laufen weiterhin auf neuen Versionen l Viel Geld in Mircosoft und dessen Produkte investiert wurde Quelle: Daten von NetmarketShare, w3techs, Top500 25.09.2024 Profs. Grewe & Keller | Betriebssysteme | Einführung 30 MICROSOFT WINDOWS ABGESCHLAGEN IM SERVER / HPC BEREICH l Microsoft Windows ist im Web-Server Bereich zwar vertreten, allerdings wird kommt hier vermehrt das Linux Betriebssystem zum Einsatz. l Im Bereich der Hochleistungsrechner / Supercomputer (engl. High Perfomance Computer – HPC) spielt das Windows Betriebssystem keine Rolle Quelle: Daten von NetmarketShare, w3techs, Top500 25.09.2024 Profs. Grewe & Keller | Betriebssysteme | Einführung 31 MICROSOFT WINDOWS ODER: WARUM WIR LINUX BEHANDELN l Microsoft Windows kennen Sie ja schon … l Es erlaubt uns nicht wirklich herauszufinden, wie das System arbeitet, da viele Quellen nicht öffentlich zugänglich sind (Geheimnis Microsoft und Partner) l Rückwärtskompatibilität: Segen & Fluch zugleich! l Es gibt viele Wege, um an bestimmte Eingabemasken zu kommen l Welcher ist der richtige (keiner!), welche soll man lernen (alle?) l Kommandozeile gibt es, allerdings ist diese nicht wirklich gut zu nutzen l Welches Betriebssystem finden Sie später im Job vor? l Jobs als Administrator für Microsoft Windows sind nicht Ziel eines Studiums … 25.09.2024 Profs. Grewe & Keller | Betriebssysteme | Einführung 32 STATTDESSEN ARBEITEN WIR MIT UND AN LINUX! l Linux ist “Open Source“: alle Informationen, Programmcode sind öffentlich zugänglich l Erlaubt den Einblick wie das System arbeitet l Man kann selbst Änderungen vornehmen l Wir werden Linux Quellcode anschauen & Kernel übersetzen l Kostenlos Treiber programmieren (Windows-Quellen kosten!!) l Sie nutzen (wahrsch.) Linux täglich l Sie in Zukunft viel mit unterschiedlicher Hardware- und Betriebssystem Umgebungen arbeiten werden. 25.09.2024 Profs. Grewe & Keller | Betriebssysteme | Einführung 33 WO FINDET MAN HEUTE LINUX ÜBERALL? l Sie nutzen ziemlich sicher Dienste und Geräte die mit Linux betrieben werden l Google Android basiert auf dem Linux Betriebssystem l Im Vergleich: Apple iOS nutzt XNU / FreeBSD als Kern l Embedded Geräte, oder Industrierechner in der Produktion l Viele DSL-Router zu Hause nutzen Linux (z.B.: AVM FritzBox) l Alle Webdienste die wir täglich nutzen laufen auf Servern die mit dem Linux betrieben werden Bilderquellen: Google, HLRS, AVM, X, Dropbox, TikTok 25.09.2024 Profs. Grewe & Keller | Betriebssysteme | Einführung 34 BEISPIEL: RASPBERRY PI l Der Raspberry PI eignet sich super für: l IoT-Überwachung/Smart-Home Yocto Linux bietet hierfür beste Voraussetzung (für Pi Zero) l Günstiger Desktop, oder als Thinclient l Medienserver (Kodi/OpenELEC) 25.09.2024 Profs. Grewe & Keller | Betriebssysteme | Einführung 35 LINUX DISTRIBUTIONEN Quelle: [Image by rawpixel.com on Freepik] 36 WAS IST EINE DISTRIBUTION l Ein Linux-Betriebssystem (hier: Kernel) ohne zusätzliche Software macht keinen Sinn! l Eine Distribution (engl. to distribute – verteilen) beschreibt einen bestimmten Umfang von Software die bereitgestellt wird und… l … enthält weitere Software-Pakete, l … strukturiert das Software-Angebot, l … besitzt eine eigene Paketverwaltung, l … besitzt evtl. eine eigene grafische Benutzeroberfläche l … unterliegt meist einer bestimmten Philosophie J l … und ist sehr viel Arbeit zu erstellen! Bilderquellen: Ubuntu, Fedora, Kali, ArchLinux, Mint, Raspbian 25.09.2024 Profs. Grewe & Keller | Betriebssysteme | Einführung 37 LISTE VON LINUX DISTRIBUTIONEN l In 2024 existieren existieren mehr als 300 aktive Projekte die auf Linux basieren. l Hinweis: Grafik mittels Link öffnen! Quelle: https://upload.wikimedia.org/wikipedia/commons/a/ad/2023_Linux_Distributions_Timeline.svg 25.09.2024 Profs. Grewe & Keller | Betriebssysteme | Einführung 38 BEKANNTESTE LINUX DISTRIBUTIONEN l Debian ist die „älteste“ Distribution und legt großen Wert auf Stabilität. Viele Distributionen stammen von Debian ab. l Ubuntu basiert auf Debian, sowohl im kommerziellen als auch im privaten Bereich. l OpenSUSE ist eine Distribution die Ihre Wurzeln in Deutschland hat. Wird von SUSE entwickelt und gewartet. l RedHat im kommerziellen Bereich und Fedora für den Privatgebrauch. 25.09.2024 Profs. Grewe & Keller | Betriebssysteme | Einführung 39 „SPEZIELLE“ LINUX DISTRIBUTIONEN l Debian: Durch breite SW-Unterstützung und langfristige (konservative) Politik hat Debian eine spezielle Rolle. l Talis: Bekannt für Sicherheitsfeatures wie Verschlüsselung, TOR-Browser, VPN, und mehr. l Gentoo: SW-Komponenten werden regelmäßig aus Quellen neu gebaut. Basis für Google ChromeOS l YoctoLinux: Keine Distribution sondern ein Framework um Distributionen zu bauen. Wird im IoT/Embedded Bereich genutzt, z.B.: Autobranche 25.09.2024 Profs. Grewe & Keller | Betriebssysteme | Einführung 40 SHELL DIE KOMMANDOZEILE Quelle: [Image by rawpixel.com on Freepik] 41 GRAFISCHE OBERFLÄCHE (GUI) VS. KOMMANDOZEILE (SHELL) Anwendungsprogramme (1) Grafische Benutzeroberfläche (1) l Grafische Programme Systemnahe Programme(1/8) Bibliotheken (3) erlauben eine intuitive und Betriebssystem API (2) Ubuntu Software effiziente Arbeitsweise. Desktop Hardware l Systemdetails und systemnahe Anwendungsprogramme (1) Informationen bekommt man Grafische Benutzeroberfläche (1) Systemnahe Programme(1/8) aber meist nur über Bibliotheken (3) Terminal Betriebssystem API (2) Programme die von der Shell Software Hardware gestartet werden, indem man über die Kommandozeile (Terminal) interagiert. 25.09.2024 Profs. Grewe & Keller | Betriebssysteme | Einführung 42 UNIX SHELL l Eine Shell ist die Kommandozeile mit der man Programme startet l Die Shell ist somit die niedrigste, systemnahe Software, mit der ein Benutzer (engl. user) interagiert. l Shells haben Eigenschaften von Programmiersprachen. Es gibt folgende bekannte Shells: l Bourne Shell (Kommando: sh) l C-Shell (csh) l Korn Shell (ksh) Anwendungsprogramme (1) Grafische Benutzeroberfläche (1) l Z-Shell (zsh) Systemnahe Programme(1/8) l Es sind nicht alle genannten Shells automatisch in Linux installiert. Auf jeden Fall ist die bash Bibliotheken (3) fester Bestandteil aller verbreiteter Linux Distributionen. Betriebssystem API (2) Software Hardware 25.09.2024 Profs. Grewe & Keller | Betriebssysteme | Einführung 43 UNIX BASH l Mit der UNIX bash können wir: l Systemnahe Programme starten l Grafische Programme starten l Programme stoppen (engl. terminate / kill) l Komplexe Shell-Skripte erstellen und ausführen! l In der Kommandozeile steht die Eingabeaufforderung: l dgrewe@bs-vm:~$| l Hier können Sie Programme starten … Anwendungsprogramme (1) Grafische Benutzeroberfläche (1) l Programme pausieren (STRG/CTRL+Z) und beenden (STRG/CTRL+C) Systemnahe Programme(1/8) Bibliotheken (3) Betriebssystem API (2) Software Hardware 25.09.2024 Profs. Grewe & Keller | Betriebssysteme | Einführung 44 ÜBUNGEN l Sie sollten sich mit dem Terminal anfreunden l In Moodle finden Sie folgende Übungsaufgaben: l BS_Aufgabe_01.pdf l Installieren Sie eine VM l Erste Schritte mit der Bash – Bourne Again Shell l Cheat Sheet Bash 25.09.2024 Profs. Grewe & Keller | Betriebssysteme | Einführung 45 ZUSAMMENFASSUNG l Wiederholung Aufbau von Rechnern l Verstehen der Historie und Entwicklung zu Rechnern und Betriebssysteme l Definition eines Betriebssystem l Verstehen was eine Linux Distribution ausmacht 25.09.2024 Profs. Grewe & Keller | Betriebssysteme | Einführung 46

Use Quizgecko on...
Browser
Browser