12. Sicherheit. A, B3, B2, B1, C2, C1, D sicher unsicher. Betriebssysteme, Sommer 2005, Verteilte Systeme, Universität Ulm, M.

Größe: px
Ab Seite anzeigen:

Download "12. Sicherheit. A, B3, B2, B1, C2, C1, D sicher unsicher. Betriebssysteme, Sommer 2005, Verteilte Systeme, Universität Ulm, M."

Transkript

1 12. Sicherheit 12.1 Einleitung Ziel: Schutz vor Fehlern & Eindringlingen. Objekt: passive Ressource (z.b. Datei) Subjekt: aktive Einheiten (Proz. & Benutzer) Sicherheit: Fähigkeit eines BS, für seine Objekte Vertraulichkeit & Integrität zu garantieren. Anfordernungen: - nur berechtigte Subjekte dürfen mit Objekten arbeiten. - Subjekte müssen sich zunächst authentisieren. - Zugriffe sollen protokollierbar sein. A, B3, B2, B1, C2, C1, D sicher unsicher Orange Book (DoD) def. Klassen für die Sicherheit von Computersystemen: - A: Verified Design, B3: Security Domains, B2: Structured Protection, - B1: Labeled Security Protection, C2: Controlled Access Protection, - C1: Discretionary Security Protection, D: Minimal Protection. 288

2 12.2 Zugangskontrolle Nur bestimmte Subjekte dürfen das System nutzen. Voraussetzung für die Nutzung ist eine: - Identifikation (Angabe, welcher Nutzer) und - Authentisierung (Nachweis, der Nutzerangabe). Nicht Aufgabe des BS-Kerns, sondern durch Systemprozeß. Authentisierung durch: Paßwort, Chipkarte oder biometrische Merkmale. NT u. Linux verwenden einen Benutzernamen zusammen mit einem Paßwort. Passwörter in Unix: Verschlüsselung sofort nach Passworteingabe: - Vergleich mit Passwortdatei. - niemand (inkl. root) sieht Passwörter im Klartext. - aber Verschlüsselungsalgorithmus ist bekannt Angriff per trial and error mit Wörterbuch Probleme früherer Versionen: - Passwortdatei (/etc/passwd) für Benutzer lesbar Angriff: Datei kopieren und Ausprobieren. - jetzt getrennte Speicherung der Passwörter in nicht lesbarer Shadow-Datei (/etc/shadow). 289

3 12.3 Zugriffskontrolle Zugriffsmatrix Zuordnung von Benutzerrechten und Objekten in einer Matrix: - Matrix nur dünn besetzt, - Einträge sind sehr dynamisch A R RW RW B R RWX R C R X Alternativen: - Zugriffskontrollisten (access control lists). - Berechtigungslisten (capability lists). D R R 290

4 " " " " " " " " ' % $ Zugriffskontrollisten Engl. Access Control Lists. Zugriffsmatrix: Speicherung & Verarbeitung nach Spalten. Sicherheitsmanager prüft Berechtigung eines Subjektes bei Zugriff auf Obj. Verwendet in Windows NT/2000 und Unix. Bewertung: + Überblick beim Objekt, + Rechte leicht widerrufbar, (- Delegation von Rechten umständlich.)!!!! # # # #!!!! Beispiel: Windows NT Arbeitet mir Zugriffskontrollisten. Sicherheitstoken besteht aus 128-Bit IDs. & 291

5 Berechtigungslisten Engl. Capabilities. Zugriffsmatrix: Speicherung & Verarbeitung nach Zeilen. Beim Zugriff auf Obj. muß Subjekt die passende Berechtigung vorweisen. Berechtigungen müssen separat geschützt werden. Bisher nur in der Forschung verwendet (z.b. Hydra). Bewertung: + kompletter Überblick beim Subjekt + Delegation von Rechten einfach - Rechte schwierig widerrufbar 292

6 12.4 Fallstudie: IA32 Protected Mode Intel Protected Mode Adressierung Segmentierung & Paging kombinierbar: GDTR LDTR Segmentselektor Virtuelle 32 Bit Adresse Lokale Deskriptortabelle Globale Deskriptortabelle Segment-Basis + Lineare Adresse CR3 Page Directory Deskriptor- Deskriptor- Deskriptor- Page tabelle Tables tabelle tabelle Page + Physikalische Adresse! 293

7 Arbeitsregister ab i386 Arbeitsregister verknüpft mit best. Segmentregister, aber umsteuerbar. Für Anwendungsprogramme SS ESP SP zugänglich, CS EIP IP Funktionsbezogene Arbeitsregister: DS EAX AX AL - Stack, Code, EBX BX BL - Daten, Extra-Daten, - Flags (mit IO-Privilege Level). ECX CX CL EDX DL DX ES FS GS ESI EDI EBP Eflags SI DI BP Flags 294

8 Steuer- & Kontrollregister Verwendung: - Erw. Adressierung im Protected Mode, - Zugriffsschutz & Maschinenzustand - Prozessorsteuerung (Control [0..3]).. Segmentregister bzw. -selektor hält einen Index in die globale oder die lokale Deskriptortabelle. Gleichzeitig mit dem Segmentregister wird implizit der Segmentdeskriptorcache geladen. Dabei geschehen unter Umständen mehrere Hauptspeicherzugriffe. Auch für aktuelles Task State Segment und lokale Deskriptortabelle werden Deskr. gepuffert/cached. SS CS DS ES FS GS TR LDTR IDTR GDTR CR0 CR1 CR2 CR3 SS-Basis/-Limit CS-Basis/-Limit DS-Basis/-Limit Segment- Deskriptor- ES-Basis/-Limit caches FS-Basis/-Limit GS-Basis/-Limit TSS-Basis/-Limit LDT-Basis/-Limit IDT-Basis/-Limit GDT-Basis/-Limit Debug, Test 295

9 Segmentdeskriptorcache ist nicht zugreifbar. 4(5) Kontrollregister: CR0 CR1 CR2 CR3 CR4 PG... PE, WP, CD, NW reserviert Lin. Pagefault-Adresse PageDirectory Adr. CPU Erweiterungen CR0: - PG: Paging an/aus - PE: Protected Mode an/aus - WP: Write Protected auf Page-Ebene. - CD: Cache Disable Cache evt. spülen - NW: Not Write Through Writes puffern. 296

10 Segmentselektoren Originaldeskriptoren in lokaler oder globaler Deskriptortabelle. Schutzfunktion bei Segmentierung: - Protection Level (0..3)=(privileged.. non-priv.) - Zugriffsmodus (exec, read, write ), - Segmentlänge im Deskriptor. Die alten Segmentregister arbeiten im PM als 16 Bit Segmentselektoren: - Tabellenindex: 13-Bit max Segmente - jeweils in lokaler bzw. globaler Deksriptortabelle. Privilegierungscode: - Requested Privilege Level (RPL) im Selektorargument, - Current Privilege Level (CPL) im akt. Codesegment, - Descriptor Privilege Level (DPL) im Deskriptor. Falls RPL > CPL wird RPL verwendet, also weniger Rechte. Tabellenindex LDT GDT Requ. Priv. Level

11 Deskriptor für Applikationssegmente Applikationssegment, S-Bit=true. Granularität der Länge: - 1 Byte / 4K Page. 32 Bit oder 16 Bit Instruktionen & Adressen. Beim Zugriff auf ausgelagertes Segment Granularität erfolgt ein Interrupt an OS. 32/16 Bit, Bem.: Segment darf geladen Reserve, werden, falls CPL <= DPL. OS use, Present, DPL: 0-3, Application-Deskr., Typ Basis Limit

12 Kennung für Applikationssegmente Bit#11=true (EXE-Bit): Code - Codesegment, darf ausgeführt werden, - darf auch gelesen werden, falls Bit9=true (W/R), - falls Bit#10=true (conforming), ist Ausführung durch ein unterprivilegiertes Segment gestattet. Bit#11=false (EXE-Bit): Data - Datensegment, nicht ausführbar, - schreiben erlaubt, falls Bit9=true (W/R), Bit#8=true (Access-Bit): - dieses Segment wurde benützt, #11: EXE (code/not data) - verwendet für Speicher- #10: E/C (downward,conforming), auslagerungsstrategie. #9: W/R (write data, read code), #8: A (accessed). 1 Typ 299

13 Zugriffsschutz Zugang zur privilegierteren Ebene nur über ein Gate: - Call, Trap, Interrupt, Task (TSS) - Ausnahme: Conforming Deskriptors. Vier Privilegierungsebenen möglich: 3: Anwendungsprogramme, 2: Laufzeitumgebungen, GUI... 1: Gerätetreiber, 0: Kernel Privilegierungscode: - Current Privilege Level (CPL) im akt. Codesegment (RPL Bits im cs-register). - Requested Privilege Level (RPL) im Selektor, zum Abschwächen von CPL. - Descriptor Privilege Level (DPL) im jeweiligen Deskriptor. - IOPL (2-Bits) in EFlag-Register: legen fest welche Privilegstufe zum Ausführen von I/O-Befehlen notwendig ist. Privilegierte Instruktionen nur im Ring-0 ausführbar (z.b. mov cr3, 0x4711). Verletzungen führen zu einer General Protection Fault. 300

14 System-Segmente - Gates Call-Gate Deskriptor (Typ = 12): - beschreibt den Einsprung in eine geschützte Routine, - normalerweise in einem anderen Segment (far call), - DPL definiert benötigte Privilegstufe für Gate, - referenziert Zielseg. mit höherer Privilegstufe, - ändert kurzzeitig die Privilegierungsebene, - evt. mehrere Gates pro Code-Segment, - Stack wird umgeschaltet (siehe TSS), - kopiert bis zu 128 Parameterbytes (DWcnt). present, DPL, typ12 Zieloffset Zielsegment # Zieloffset DWcnt 301

15 Interrupt-Gate Deskriptoren (Typ = 14): - Beschreibt den Einsprung in eine Interruptroutine, - 8 Byte Einträge in der Interrupt-Deskriptortabelle, - IDT-Basis/Limit geladen über LIDT-Instruktion, present, privilege, typ14/15 Zieloffset Zielsegm ent # Zieloffset Weitere Trap Gate & LDT Segmentdeskriptor. 302

16 Beispiel: Systemaufruf per Call Gate - Code Segment K hier non-conforming. - falls conforming Bit gesetzt, würde CPL nicht angepasst. Selektor B RPL=3 Code Segment A CPL=3 max(cpl,rpl) <= Gate DPL? Call Gate B DPL=3 CPL>DPL CPL wird durch Gate auf 0 gesetzt Code Segment K DPL=0 RPL kann durch Software geändert werden: - dient der freiwilligen Abschwächung Privilegstufe = max(cpl, RPL). - Falls BS-Code die Segmente von Anwendungen verwendet, sollte der zugehörige RPL mit dem ARPL Befehl sicherheitshalber immer geprüft und ggf. anpasst werden. - Sonst wird evt. ein Index auf einen Ring-0 Selektor auf dem Stack übergeben, um unerlaubten Zugriff zu erlangen mit ARPL kann dies verhindert werden. - Bem.: cs-register nur per FAR-Jump änderbar CPL nicht manipulierbar. 303

17 System-Segment für Taskwechsel Task-Gate Deskriptor (Typ = 5): - zur Unterstützung eines Taskwechsels (Register sichern), - referenziert ein Task-State Segment (TSS), - evtl. mehrere Task-Gates für ein TSS, - enthält Privilegierungsstufe. present, privilege, typ=5 Tables TSS Zielsegment # Ein Task-Switch erfolgt bei einem: - Interrupt oder Exception, falls zugehöriger IDT-Eintrag auf Task-Gate verweist. - Far-Call, Far-Jump mit Task-Gate als Sprungzielselektor, - IRET von. nested Task. 304

18 Task-State Segment Deskriptor (Typ = 9/11): - enthält aktuellen/geretteten Prozessorzustand (TSS), - Segmentsel. für lokale Deskriptortab. (optional), - Basisadresse für Seitentabellendirectory, - Stacks der Privilegierungstufen 0,1,2, - aktuell sichttbare Prozessorregister, - Zugriffsmaske für die E/A-Ports, - inaktives/aktives TSS Typ=9/11. (Task darf nicht sich selbst rufen). - PrevTSS: Link zum alten TSS. NT-Bit in EFlags zeigt Gültigkeit an. NT=0 nur bei Top-Level Task. Schritte beim Taskwechsel: - Kontext in aktuellem TSS sichern (aktuelles TSS steht in TR-Register), - neuen Kontext aus dem Ziel-TSS laden (identifiziert durch Task Gate Deskriptor). - TR Register mit neuem TSS laden. Task-State Segment IO-Bitmap IO-Permission Bitmap OS Zeux Register Stacks 0,1,2 Task-Register PrevTSS TSS-Base TSS-Limit 305

19 Bemerkungen Windows NT & Linux nutzen viele IA32 Features nicht - nur zwei Ringe: Kernel-Mode (Ring-0) und User-Mode (Ring-3) - Segmentierung zur Trennung von Kern und Anwendungen: - User-Mode: 0-3 GB (privat) - Kernel-Mode 3-4 GB (shared) - jeweils zwei Segmente (Code und Daten) ausreichend. - Systemaufruf per Interrupt-Gate: o Segmente wechseln, o Daten werden bei einem Systemaufruf von Hand umkopiert, o User-Segmente werden im Kern nicht verwendet, 4 GB 3 GB o Seitentabellen werden nicht umgeschaltet TLB & Cache nicht spülen. 0 virtueller Adreßraum Kern User 306

20 12.5 Angriffsformen Ziel: Versuch, bestimmten Programmcode in Rechtebereich auszuführen, in dem das nicht vorgesehen war. Einschleusen von: - kompletten Programmen, - Code in Quellprogrammen, - Code in ausführbaren Dateien, - Code während der Programmausführung. Einschleusen von kompletten Programmen Vorgehen: Komplettes Programm so platzieren, dass Rechteinhaber X es (bewusst oder unbewusst) startet und ausführt. Bewusste Ausführung durch Rechteinhaber: - Attraktives Prg. anbieten, das Rechteinhaber ggf. selbst auf den Rechner überträgt und dort ausführt. - "Trojanisches Pferd": Erbringt möglicherweise die erwartete Leistung, enthält aber zusätzlich Codeteile, die Manipulationen vornehmen. - Gegenmaßnahmen kaum möglich. 307

21 Unbewusste Ausführung: - Platzierung so, dass der Rechteinhaber das Prg. unbewusst an Stelle eines anderen Prgs. ausführt. - Z.B. Mißbrauch der PATH-Umgebungsvariable. - Gegenmaßnahmen kaum möglich. Platzierung in Daten: - Nutzung von "Makro"-Mechanismen: in Daten einbettbare Programme, die bei Bearbeitung der Daten ausgeführt werden. "Makroviren". - Die meisten weltweiten Virusangriffe der letzten Jahre waren Makroviren. - Gegenmaßnahme: Makros deaktivieren. Einschleusen von Code in Quellprogrammen Programmquelle modifizieren oder erweitern. Relativ einfach und verwendbar für unterschiedl. Zielplattformen. Voraussetzung: Zugang zur Programmquelle. Z.B. best. Eingabe wird speziell behandelt erlaubt Programmierer später Zugang zu allen Systemen, die das Programm einsetzen. Maßnahme: Begutachtung des Quellcodes durch mehrere Programmierer. 308

22 Ausführbare Dateien modifizieren Ausführbares Programm modifizieren oder erweitern. Voraussetzung: Schreibzugriff auf Programmdatei und gewisse Kenntnisse über Struktur des ausführbaren Programms. Prinzip der klassischen "Viren". Maßnahme: Virenscanner. Einschleusen von Code während der Programmausführung Programmcode modifizieren oder erweitern im Hauptspeicher, während Programm durch Prozess ausgeführt wird. Voraussetzung: Zugang zum Codebereich des Prozesses im Hauptspeicher. Normalerweise nur Datenbereich zugänglich. In gewissen (fehlerhaften) Fällen aber auch Codebereich. Gegenmaßnahme: Prävention durch korrekte sichere Programmierung. 309

23 12.6 Zusammenfassung Zugangskontrolle: Identifikation + Authentisierung. Zugriffskontrollisten: - Speicherung der Rechte von Subjekten am Objekt, - verwendet in Linux und Windows XP. Protected Mode: - Segmentselektor (Index in GDT/LDT), - Deskriptoren für Applikationen: Code, Data (R/W) & Descriptor Privilege Level (DPL), - Deskriptoren für System-Segmente: o Gates: Übergang zw. Ringe, z.b. JMP, CALL oder INT; haben ebenfalls DPL. - Current Privilege Level (CPL) im aktuellen Codesegment-Selektor, - Deskriptor-Zugriff nur erlaubt, falls CPL<=DPL, - privilegierte Instruktionen nur im Ring-0 zulaessig. Systemaufruf bei Linux & Windows XP per Interrupt-Gate: - Segmente wechseln (User-Segmente werden im Kern nicht verwendet), - Daten werden bei einem Systemaufruf von Hand umkopiert (getrennte Adressräume), - Seitentabellen werden nicht umgeschaltet TLB & Cache nicht spülen. 310

Kompatibilitätsmodi: Real Mode: - Segmentregister*16+Offset => Adresse - Keine Segmentdeskriptoren, kein Paging, - ~ 1 MB Adressraum.

Kompatibilitätsmodi: Real Mode: - Segmentregister*16+Offset => Adresse - Keine Segmentdeskriptoren, kein Paging, - ~ 1 MB Adressraum. 15.1.1 Kompatibilitätsmodi: Real Mode: - Segmentregister*16+Offset => Adresse - Keine Segmentdeskriptoren, kein Paging, - ~ 1 MB Adressraum. - 15. Hauptspeicher-Adressierung 15.1 Adressierungsmodi Virtual

Mehr

5.6 Segmentierter virtueller Speicher

5.6 Segmentierter virtueller Speicher 5.6 Segmentierter virtueller Speicher Zur Erinnerung: Virtueller Speicher ermöglicht effiziente und komfortable Nutzung des realen Speichers; Sharing ist problematisch. Segmentierung erleichtert Sharing,

Mehr

Realisierung: virtueller Prozessor: der reale Prozessor wird periodisch dem Programm zugewiesen Im Prozessor: durch Task-Status Segment (TSS)

Realisierung: virtueller Prozessor: der reale Prozessor wird periodisch dem Programm zugewiesen Im Prozessor: durch Task-Status Segment (TSS) 1.2 Multitasking Damit ein Computer mehrere Aufgaben gleichzeitig erledigen kann, die jede für sich oder die auch gemeinsam arbeiten, z.b. Daten lesen Berechnungen ausführen Netzwerkkontakt abarbeiten

Mehr

Betriebssysteme (BS) IA-32. Überblick: Vorlesungen. das Programmiermodell der Intel-Architektur. Agenda. Historie der Intel x86-prozessoren

Betriebssysteme (BS) IA-32. Überblick: Vorlesungen. das Programmiermodell der Intel-Architektur. Agenda. Historie der Intel x86-prozessoren Betriebssysteme (BS) Überblick: Vorlesungen Daniel Lohmann IA-32 das Programmiermodell der Intel-Architektur Lehrstuhl für Informatik 4 Verteilte Systeme und Betriebssysteme Gerätezugriff (Treiber) Anwendung(en)

Mehr

Übung zu Betriebssystembau (Ü BS)

Übung zu Betriebssystembau (Ü BS) Übung zu Betriebssystembau (Ü BS) Interruptbehandlung in OOStuBS Wanja Hofer Lehrstuhl für Informatik IV WS 07/08 1 Agenda: IRQ-Behandlung in OOStuBS Interrupts und Traps beim x86 Die Interrupt-Deskriptor-Tabelle

Mehr

Betriebssysteme BS-V SS 2015. Hans-Georg Eßer. Foliensatz V: Ulix: Interrupts und Faults Ulix: System Calls. Dipl.-Math., Dipl.-Inform.

Betriebssysteme BS-V SS 2015. Hans-Georg Eßer. Foliensatz V: Ulix: Interrupts und Faults Ulix: System Calls. Dipl.-Math., Dipl.-Inform. BS-V Betriebssysteme SS 2015 Dipl.-Math., Dipl.-Inform. Foliensatz V: Ulix: Interrupts und Faults Ulix: System Calls v1.0, 2015/05/28 (klassische Dokumentation) Folie V-1 Übersicht: BS Praxis und BS Theorie

Mehr

Echtzeit-Multitasking

Echtzeit-Multitasking Technische Informatik Klaus-Dieter Thies Echtzeit-Multitasking Memory Management und System Design im Protected Mode der x86/pentium-architektur. Shaker Verlag Aachen 2002 Die Deutsche Bibliothek - CIP-Einheitsaufnahme

Mehr

Wie groß ist die Page Table?

Wie groß ist die Page Table? Wie groß ist die Page Table? Im vorigen (typischen) Beispiel verwenden wir 20 Bits zum indizieren der Page Table. Typischerweise spendiert man 32 Bits pro Tabellen Zeile (im Vorigen Beispiel brauchten

Mehr

Betriebssystembau. 3. Übung. Michael Engel Arbeitsgruppe Eingebettete Systemsoftware. Lehrstuhl für Informatik 12 TU Dortmund

Betriebssystembau. 3. Übung. Michael Engel Arbeitsgruppe Eingebettete Systemsoftware. Lehrstuhl für Informatik 12 TU Dortmund Betriebssystembau 3. Übung Michael Engel Arbeitsgruppe Eingebettete Systemsoftware Lehrstuhl für Informatik 12 TU Dortmund michael.engel@tu-dortmund.de http://ess.cs.uni-dortmund.de/~me/ 1 Agenda: IRQ-Behandlung

Mehr

Übersicht. Virtuelle Maschinen Erlaubnisse (Permission, Rechte) Ringe. AVS SS Teil 12/Protection

Übersicht. Virtuelle Maschinen Erlaubnisse (Permission, Rechte) Ringe. AVS SS Teil 12/Protection Übersicht Virtuelle Maschinen Erlaubnisse (Permission, Rechte) Ringe 2 Behandelter Bereich: Virtualisierung Syscall-Schnittstelle Ports Server Apps Server Apps Betriebssystem Protokolle Betriebssystem

Mehr

Intel x86 Bootstrapping

Intel x86 Bootstrapping Intel x86 Bootstrapping Meine CPU, mein Code! Andreas Galauner SigInt 2010 Democode Es gibt Democode: http://github.com/g33katwork/ SigInt10OSWorkshop git clone git://github.com/g33katwork/ SigInt10OSWorkshop.git

Mehr

Rechnerarchitekturen und Betriebssysteme (CS201): Sicherheit: ACM und Passworte, OS-Timeline

Rechnerarchitekturen und Betriebssysteme (CS201): Sicherheit: ACM und Passworte, OS-Timeline Rechnerarchitekturen und Betriebssysteme (CS201): Sicherheit: ACM und Passworte, OS-Timeline 12. Dezember 2014 Prof. Dr. Christian Tschudin Departement Mathematik und Informatik, Universität Basel Wiederholung

Mehr

Echtzeitbetriebssysteme

Echtzeitbetriebssysteme Speicherverwaltung (Memory Management) Aufgaben der Memory-Management-Unit ist l der Speicherschutz und l die Adressumsetzung Wird durch Hardware unterstützt l Memory Management Unit (MMU) l MMU wird vom

Mehr

Virtueller Speicher. SS 2012 Grundlagen der Rechnerarchitektur Speicher 44

Virtueller Speicher. SS 2012 Grundlagen der Rechnerarchitektur Speicher 44 Virtueller Speicher SS 2012 Grundlagen der Rechnerarchitektur Speicher 44 Die Idee Virtuelle Adressen Prozess 1 Speicherblock 0 Speicherblock 1 Speicherblock 2 Speicherblock 3 Speicherblock 4 Speicherblock

Mehr

Systeme 1. Kapitel 9.2. Interaktion von Hardware und Betriebssystem Linux-Kernel und x86 Systeme

Systeme 1. Kapitel 9.2. Interaktion von Hardware und Betriebssystem Linux-Kernel und x86 Systeme Systeme 1 Kapitel 9.2 Interaktion von Hardware und Betriebssystem Linux-Kernel und x86 Systeme Speicherzugriffe auf x86 Systemen Auf x86 Systemen existieren drei Arten von Speicheradressen Logische Adresse

Mehr

Einführung in die technische Informatik

Einführung in die technische Informatik Einführung in die technische Informatik Christopher Kruegel chris@auto.tuwien.ac.at http://www.auto.tuwien.ac.at/~chris Betriebssysteme Aufgaben Management von Ressourcen Präsentation einer einheitlichen

Mehr

7. Speicherverwaltung

7. Speicherverwaltung 7. Speicherverwaltung Ziele Zuteilung des Arbeitsspeicher Abbildung der symbolischen Adresse auf die physikalische Adresse Adress-Transformation Symbolische Adresse verschiebbare Adresse physikalische

Mehr

Aufgabe 2 - Erweiterung um PIC und Interrupts

Aufgabe 2 - Erweiterung um PIC und Interrupts Aufgabe 2 - Erweiterung um PIC und Interrupts Rainer Müller Department Informatik 4 Verteilte Systeme und Betriebssysteme Friedrich-Alexander-Universität Erlangen-Nürnberg WS 2014/2015 R. Müller Erweiterung

Mehr

Linker: Adreßräume verknüpfen. Informationen über einen Prozeß. Prozeß-Erzeugung: Verwandtschaft

Linker: Adreßräume verknüpfen. Informationen über einen Prozeß. Prozeß-Erzeugung: Verwandtschaft Prozeß: drei häufigste Zustände Prozeß: anatomische Betrachtung jeder Prozeß verfügt über seinen eigenen Adreßraum Sourcecode enthält Anweisungen und Variablen Compiler überträgt in Assembler bzw. Binärcode

Mehr

Klausur zur Mikroprozessortechnik

Klausur zur Mikroprozessortechnik Prof. Dr. K. Wüst WS 2001 FH Gießen Friedberg, FB MNI Studiengang Informatik Klausur zur Mikroprozessortechnik Nachname: Vorname: Matrikelnummer: 7.3.2001 Punkteverteilung Aufgabe Punkte erreicht 1 3 2

Mehr

Übung 1 - Betriebssysteme I

Übung 1 - Betriebssysteme I Prof. Dr. Th. Letschert FB MNI 13. März 2002 Aufgabe 0: Basiswissen Rechnerarchitektur: Übung 1 - Betriebssysteme I Aus welchen Komponenten besteht ein Rechner mit Von-Neumann Architektur? Was sind Bits

Mehr

Technische Informatik 1

Technische Informatik 1 Technische Informatik 1 7 Prozesse und Threads Lothar Thiele Computer Engineering and Networks Laboratory Betriebssystem 7 2 7 3 Betriebssystem Anwendung Anwendung Anwendung Systemaufruf (syscall) Betriebssystem

Mehr

Tutorium Rechnerorganisation

Tutorium Rechnerorganisation Woche 11 Tutorien 3 und 4 zur Vorlesung Rechnerorganisation 1 Christian A. Mandery: KIT Universität des Landes Baden-Württemberg und nationales Grossforschungszentrum in der Helmholtz-Gemeinschaft www.kit.edu

Mehr

Systeme I: Betriebssysteme Kapitel 8 Speicherverwaltung

Systeme I: Betriebssysteme Kapitel 8 Speicherverwaltung Systeme I: Betriebssysteme Kapitel 8 Speicherverwaltung Version 21.12.2016 1 Inhalt Vorlesung Aufbau einfacher Rechner Überblick: Aufgabe, Historische Entwicklung, unterschiedliche Arten von Betriebssystemen

Mehr

Bibliotheks-basierte Virtualisierung

Bibliotheks-basierte Virtualisierung Dr.-Ing. Volkmar Sieh Department Informatik 4 Verteilte Systeme und Betriebssysteme Friedrich-Alexander-Universität Erlangen-Nürnberg WS 2015/2016 V. Sieh Bibliotheks-basierte Virtualisierung (WS15/16)

Mehr

Bootvorgang des DSM-Systems Systems Plurix

Bootvorgang des DSM-Systems Systems Plurix Bootvorgang des DSM-Systems Systems Plurix Stefan Frenz Vortrag im Rahmen der Abteilungsbesprechung Voraussetzungen: CPU CPU-Modi Voraussetzungen: BIOS Rechner-Initialisierung durch das BIOS Interrupt

Mehr

Überlegungen beim Entwurf eines Betriebssystems

Überlegungen beim Entwurf eines Betriebssystems Überlegungen beim Entwurf eines Betriebssystems Schnelligkeit Schutz und Sicherheit Korrektheit Wartbarkeit Kommerzielle Faktoren Standards und offene Systeme Schnelligkeit Es ist schwierig, Kenngrößen

Mehr

Assembler - Variablen

Assembler - Variablen Assembler - Variablen Dr.-Ing. Volkmar Sieh Department Informatik 3: Rechnerarchitektur Friedrich-Alexander-Universität Erlangen-Nürnberg SS 2008 Assembler - Variablen 1/30 2008-04-21 Variablen Variablen

Mehr

Computeranwendung in der Chemie Informatik für Chemiker(innen) 3. Software

Computeranwendung in der Chemie Informatik für Chemiker(innen) 3. Software Computeranwendung in der Chemie Informatik für Chemiker(innen) 3. Software Jens Döbler 2003 "Computer in der Chemie", WS 2003-04, Humboldt-Universität VL3 Folie 1 Grundlagen Software steuert Computersysteme

Mehr

Assembler - Adressierungsarten

Assembler - Adressierungsarten Assembler - Adressierungsarten Dr.-Ing. Volkmar Sieh Department Informatik 3: Rechnerarchitektur Friedrich-Alexander-Universität Erlangen-Nürnberg SS 2008 Assembler - Adressierungsarten 1/31 2008-04-01

Mehr

Aufgabe 2 - Erweiterung um PIC und Interrupts

Aufgabe 2 - Erweiterung um PIC und Interrupts Aufgabe 2 - Erweiterung um PIC und Interrupts Dr.-Ing. Volkmar Sieh Department Informatik 3: Rechnerarchitektur Friedrich-Alexander-Universität Erlangen-Nürnberg WS2010/2011 Aufgabe 2 - Erweiterung um

Mehr

Betriebssysteme KU - Einführungstutorium

Betriebssysteme KU - Einführungstutorium Betriebssysteme KU - Einführungstutorium SWEB-Tutoren 5. Oktober 2008 1 Grundlagen 2 SWEB 3 Kernel Basics Memory Management Details 4 Userspace 5 Hacking 6 Beispiele 7 Assignment 0 Aufgaben eines Betriebssystems

Mehr

Optimierung der Schnittstelle zwischen Hypervisor und Betriebssystemkern bei virtuellen Maschinen

Optimierung der Schnittstelle zwischen Hypervisor und Betriebssystemkern bei virtuellen Maschinen Optimierung der Schnittstelle zwischen Hypervisor und Betriebssystemkern bei virtuellen Maschinen Der Technischen Fakultät der Universität Erlangen-Nürnberg zur Erlangung des Grades DOKTOR-INGENIEUR vorgelegt

Mehr

<mail@carstengrohmann.de>

<mail@carstengrohmann.de> Security Enhanced Linux Eine Einführung Tom Vogt Carsten Grohmann Überblick Was ist SELinux? Erweiterung des Kernels Was bietet SELinux? Kapslung von Programmen

Mehr

Einführung. Übungen zur Vorlesung Virtuelle Maschinen. Stefan Potyra. SoSe 2009

Einführung. Übungen zur Vorlesung Virtuelle Maschinen. Stefan Potyra. SoSe 2009 Einführung Übungen zur Vorlesung Virtuelle Maschinen Stefan Potyra Lehrstuhl für Informatik 3 (Rechnerarchitektur) Friedrich-Alexander-Universität Erlangen-Nürnberg SoSe 2009 Übungsaufgaben 1 Entwickeln

Mehr

Paging. Einfaches Paging. Paging mit virtuellem Speicher

Paging. Einfaches Paging. Paging mit virtuellem Speicher Paging Einfaches Paging Paging mit virtuellem Speicher Einfaches Paging Wie bisher (im Gegensatz zu virtuellem Speicherkonzept): Prozesse sind entweder ganz im Speicher oder komplett ausgelagert. Im Gegensatz

Mehr

Was machen wir heute? Betriebssysteme Tutorium 2. Organisatorisches. Frage 2.1.a. Theorieblätter Abgabe. Antwort. Probleme mit OS/161?

Was machen wir heute? Betriebssysteme Tutorium 2. Organisatorisches. Frage 2.1.a. Theorieblätter Abgabe. Antwort. Probleme mit OS/161? Was machen wir heute? Betriebssysteme Tutorium 2 Philipp Kirchhofer philipp.kirchhofer@student.kit.edu http://www.stud.uni-karlsruhe.de/~uxbtt/ Lehrstuhl Systemarchitektur Universität Karlsruhe (TH) 1

Mehr

x86 Assembler Praktische Einführung Sebastian Lackner Michael Müller 3. Juni 2013

x86 Assembler Praktische Einführung Sebastian Lackner Michael Müller 3. Juni 2013 x86 Assembler Praktische Einführung Sebastian Lackner Michael Müller 3. Juni 2013 1 / 53 Inhaltsverzeichnis 1 Einführung 2 Assembler Syntax, Register und Flags 3 Hauptspeicher 4 Stack 5 Assemblerbefehle

Mehr

Tasks I. Andreas Görzen Benjamin Kotke Fabian Mierendorff Jonas Kemper Sebastian Wolf Timo Lorenz Wolfgang Laut. 16. Juli 2013

Tasks I. Andreas Görzen Benjamin Kotke Fabian Mierendorff Jonas Kemper Sebastian Wolf Timo Lorenz Wolfgang Laut. 16. Juli 2013 Tasks I Andreas Görzen Benjamin Kotke Fabian Mierendorff Jonas Kemper Sebastian Wolf Timo Lorenz Wolfgang Laut 16. Juli 2013 1 Inhaltsverzeichnis 1 Analyse 3 1.1 Task State Segment...........................

Mehr

VT und Pacifica. Vortrag zum Seminar Virtuelle Maschinen und Emulatoren. Alexander Würstlein arw@arw.name

VT und Pacifica. Vortrag zum Seminar Virtuelle Maschinen und Emulatoren. Alexander Würstlein arw@arw.name VT und Pacifica Vortrag zum Seminar Virtuelle Maschinen und Emulatoren Alexander Würstlein arw@arw.name Friedrich-Alexander-Universität Erlangen-Nürnberg 28. Mai 2007 arw (FAU) VT & SVM 28. Mai 2007 1

Mehr

Karlsruher Institut für Technologie

Karlsruher Institut für Technologie Karlsruher Institut für Technologie Lehrstuhl für Programmierparadigmen Sprachtechnologie und Compiler WS 2010/2011 Dozent: Prof. Dr.-Ing. G. Snelting Übungsleiter: Matthias Braun Lösung zu Übungsblatt

Mehr

Kapitel 6 Speicherverwaltung Seite 1 zum Teil nach: Silberschatz&Galbin, Operating System Concepts, Addison-Wesley)

Kapitel 6 Speicherverwaltung Seite 1 zum Teil nach: Silberschatz&Galbin, Operating System Concepts, Addison-Wesley) Kapitel 6 Speicherverwaltung Seite 1 6 Speicherverwaltung 6.1 Hintergrund Ein Programm muß zur Ausführung in den Hauptspeicher gebracht werden und in die Prozeßstruktur eingefügt werden. Dabei ist es in

Mehr

6.6 Persistenter virtueller Speicher

6.6 Persistenter virtueller Speicher 6.6 Persistenter virtueller Speicher Idee: alle Segmente sind persistent Datei -Begriff überflüssig! Aber: Segment hat erweiterten Deskriptor. bs-6.6 1 Segment überdauert Tod des erzeugenden Prozesses,

Mehr

Linux Paging, Caching und Swapping

Linux Paging, Caching und Swapping Linux Paging, Caching und Swapping Inhalte Paging Das Virtuelle Speichermodell Die Page Table im Detail Page Allocation und Page Deallocation Memory Mapping & Demand Paging Caching Die verschiedenen Caches

Mehr

Computer-Systeme Teil 15: Virtueller Speicher

Computer-Systeme Teil 15: Virtueller Speicher Computer-Systeme Teil 15: Virtueller Speicher Computer-Systeme WS 12/13 - Teil 15/Virtueller Speicher 14.01.2013 1 Übersicht Segmente Systemaufrufe Swapping Paging Computer-Systeme WS 12/13 - Teil 15/Virtueller

Mehr

4.2 Autorisierung eines Prozesses

4.2 Autorisierung eines Prozesses 4.2 Autorisierung eines Prozesses - auch Sicherheitsprofil, Autorisierungsprofil, Privilegierung - (authorization, privileges, credentials)! Autorisierung nicht mit Authentisierung verwechseln! gehört

Mehr

Sicheres C Programmieren in Embedded Systemen ARM II (ARM7TMDI [1] ) Wintersemester 2010-2011

Sicheres C Programmieren in Embedded Systemen ARM II (ARM7TMDI [1] ) Wintersemester 2010-2011 Sicheres C in Embedded Systemen ARM II (ARM7TMDI [1] ) Wintersemester 2010-2011 Dipl. Ing. (FH) Ebrecht Roland, Infineon Technologies AG M.Eng (Electronic Systems) Güller Markus, Infineon Technologies

Mehr

Rechnergrundlagen SS Vorlesung

Rechnergrundlagen SS Vorlesung Rechnergrundlagen SS 2007 13. Vorlesung Inhalt Cache Lesen Schreiben Überschreiben Memory Management Unit (MMU) Translation Lookaside Buffer (TLB) Klausurvorbereitung Inhalte der Klausur Rechnergrundlagen

Mehr

Wie benutzt der NetWorker Remote Procedure Calls (RPC)?

Wie benutzt der NetWorker Remote Procedure Calls (RPC)? NetWorker - Allgemein Tip 298, Seite 1/7 Wie benutzt der NetWorker Remote Procedure Calls (RPC)? Der NetWorker - wie jede andere Client/Server (Backup) Software - benutzt immer diese zwei grundlegenden

Mehr

x86-assemblerprogrammierung

x86-assemblerprogrammierung x86-assemblerprogrammierung von Michael Röhrs (Ergänzend zum Vortrag am 25.04.01) Einleitung Die Familie der x86-prozessoren gehört zur Klasse der CISC-Prozessoren ( Complex Instruction Set Computer ).

Mehr

Betriebssysteme Kap A: Grundlagen

Betriebssysteme Kap A: Grundlagen Betriebssysteme Kap A: Grundlagen 1 Betriebssystem Definition DIN 44300 Die Programme eines digitalen Rechensystems, die zusammen mit den Eigenschaften dieser Rechenanlage die Basis der möglichen Betriebsarten

Mehr

Aufgabe 1 Entwicklung einer Virtuellen Maschine

Aufgabe 1 Entwicklung einer Virtuellen Maschine Aufgabe 1 Entwicklung einer Virtuellen Maschine Rainer Müller Department Informatik 4 Verteilte Systeme und Betriebssysteme Friedrich-Alexander-Universität Erlangen-Nürnberg WS 2014/2015 R. Müller Entwicklung

Mehr

Assembler - Einleitung

Assembler - Einleitung Assembler - Einleitung Dr.-Ing. Volkmar Sieh Department Informatik 3: Rechnerarchitektur Friedrich-Alexander-Universität Erlangen-Nürnberg SS 2008 Assembler - Einleitung 1/19 2008-04-01 Teil 1: Hochsprache

Mehr

Rootkits. Windows-Kernel unterwandern. Greg Hoglung, James Butler. An imprint of Pearson Education

Rootkits. Windows-Kernel unterwandern. Greg Hoglung, James Butler. An imprint of Pearson Education Greg Hoglung, James Butler Rootkits Windows-Kernel unterwandern An imprint of Pearson Education München Boston San Francisco Harlow, England Don Mills, Ontario Sydney Mexico City Madrid Amsterdam Inhaltsverzeichnis

Mehr

Betriebssysteme 13/14

Betriebssysteme 13/14 Betriebssysteme 13/14 Prozesse und Threads 2 Oktober 2013 1/72 Was ist ein Prozess? Was ist ein Thread? typischer Bootvorgang Bootloader (Grub,...) Kernel und initramfs Filesysteme, Devices init-prozess

Mehr

1.7 Assembler Programmierung

1.7 Assembler Programmierung 1.7 Assembler Programmierung Die nach außen sichtbare Programmierschnittstelle eines Prozessors ist der Befehlscode. Dies ist eine binäre Dateninformation, die vom Prozessor Byte für Byte abgearbeitet

Mehr

Sequentielle Programm- / Funktionsausführung innerhalb eines Prozesses ( thread = Ausführungsfaden )

Sequentielle Programm- / Funktionsausführung innerhalb eines Prozesses ( thread = Ausführungsfaden ) Threads Sequentielle Programm- / Funktionsausführung innerhalb eines Prozesses ( thread = Ausführungsfaden ) Ein thread bearbeitet eine sequentielle Teilaufgabe innerhalb eines Prozesses Mehrere nebenläufige

Mehr

Betriebssysteme Übung 2. Tutorium System Calls & Multiprogramming

Betriebssysteme Übung 2. Tutorium System Calls & Multiprogramming Betriebssysteme Übung 2. Tutorium System Calls & Multiprogramming Task Wiederholung 1 System SysCalls (1) Wozu? Sicherheit Stabilität Erfordert verschiedene modes of execution: user mode privileged mode

Mehr

IT-Sicherheit BS 2008/09 IAIK 1

IT-Sicherheit BS 2008/09 IAIK 1 IT-Sicherheit BS 2008/09 IAIK 1 Motivation Rechner enthalten Informationen Informationen haben Wert Manche Firmen: gesamter Wert in elektronischer Form Aufgabe von Betriebssystemen: Information vor unautorisierter

Mehr

Betriebssysteme - Benutzerverwaltung

Betriebssysteme - Benutzerverwaltung Betriebssysteme - Benutzerverwaltung... alois.schuette@h-da.de Version: (8c45d65) ARSnova 19226584 Alois Schütte 23. März 2016 1 / 11 Inhaltsverzeichnis Hier wird die Systematik der Unix-Benutzerverwaltung

Mehr

Die Architektur von UNIX/Linux- Betriebssystemen. Mag. Lukas Feiler, SSCP lukas.feiler@lukasfeiler.com http://www.lukasfeiler.

Die Architektur von UNIX/Linux- Betriebssystemen. Mag. Lukas Feiler, SSCP lukas.feiler@lukasfeiler.com http://www.lukasfeiler. Die Architektur von UNIX/Linux- Betriebssystemen Mag. Lukas Feiler, SSCP lukas.feiler@lukasfeiler.com http://www.lukasfeiler.com/lectures_brg9 1977: Berkeley Software Distribution/BSD (U.C. Berkeley) 1986:

Mehr

Anwendungen. Tom Vogt. <tom@lemuria.org>

Anwendungen. Tom Vogt. <tom@lemuria.org> Security Enhanced Linux Einführung Architektur Anwendungen Tom Vogt Der Autor beschäftigt sich seit ca. 10 Jahren mit Linux. hat an verschiedensten Free Software Projekten mitgearbeitet,

Mehr

XIII. Inhaltsverzeichnis

XIII. Inhaltsverzeichnis Inhaltsverzeichnis 1 Aufbau und Funktion eines Personal Computers.......... 1 1.1 Einführung... 1 1.1.1 Aktuelle Computersysteme........................ 1 1.1.2 Arten von Computern 2 1.1.3 Entwicklungstrends...............................

Mehr

Dynamische Web-Anwendung

Dynamische Web-Anwendung Dynamische Web-Anwendung Christiane Lacmago Seminar Betriebssysteme und Sicherheit Universität Dortmund WS 02/03 Gliederung Einleitung Definition und Erläuterung Probleme der Sicherheit Ziele des Computersysteme

Mehr

Hinweise 80x86-Architektur

Hinweise 80x86-Architektur Hinweise 80x86-Architektur Rainer Müller Department Informatik 4 Verteilte Systeme und Betriebssysteme Friedrich-Alexander-Universität Erlangen-Nürnberg WS 2014/2015 R. Müller Hinweise 80x86-Architektur

Mehr

x86 Open Source Virtualisierungstechniken Thomas Glanzmann <thomas@glanzmann.de>

x86 Open Source Virtualisierungstechniken Thomas Glanzmann <thomas@glanzmann.de> x86 Open Source Virtualisierungstechniken März 2006 Zu meiner Person Informatik Student an der Universität Erlangen im 9. Semester 4 jährige Mitarbeit an dem Projekt FAUmachine der

Mehr

Übersicht. Virtueller Speicher CPU-Modi Virtuelle Maschinen. ISM SS 2015 - Teil 4/ProtectionI

Übersicht. Virtueller Speicher CPU-Modi Virtuelle Maschinen. ISM SS 2015 - Teil 4/ProtectionI Übersicht Virtueller Speicher CPU-Modi Virtuelle Maschinen 2 Behandelter Bereich: Virtualisierung Syscall-Schnittstelle Ports Server Apps Server Apps Betriebssystem Protokolle Betriebssystem Medien Hardware

Mehr

01744 PC-Technologie Prüfungsprotokoll (Note 1,3) vom 20.06.16 bei Dr. Lenhardt, Protokollführer Dr. Bähring

01744 PC-Technologie Prüfungsprotokoll (Note 1,3) vom 20.06.16 bei Dr. Lenhardt, Protokollführer Dr. Bähring 01744 PC-Technologie Prüfungsprotokoll (Note 1,3) vom 20.06.16 bei Dr. Lenhardt, Protokollführer Dr. Bähring Dr. Lenhardt legt Wert darauf, dass man kurz und ohne ausschweifen Antwortet. Abkürzungen sollen

Mehr

4D Server v12 64-bit Version BETA VERSION

4D Server v12 64-bit Version BETA VERSION 4D Server v12 64-bit Version BETA VERSION 4D Server v12 unterstützt jetzt das Windows 64-bit Betriebssystem. Hauptvorteil der 64-bit Technologie ist die rundum verbesserte Performance der Anwendungen und

Mehr

Betriebssysteme SS 2013. Hans-Georg Eßer Dipl.-Math., Dipl.-Inform. Foliensatz E SB 5 (11.04.2013) ACLs und Capabilities

Betriebssysteme SS 2013. Hans-Georg Eßer Dipl.-Math., Dipl.-Inform. Foliensatz E SB 5 (11.04.2013) ACLs und Capabilities Betriebssysteme SS 2013 Hans-Georg Eßer Dipl.-Math., Dipl.-Inform. Foliensatz E SB 5 (11.04.2013) ACLs und Capabilities 11.04.2013 Modul 6: Betriebssysteme, SS 2013, Hans-Georg Eßer Folie E-1 ACLs und

Mehr

Erlangen von Administrator-Privilegien unter Microsoft Windows NT 4.0 durch Ausnutzung einer Sicherheitslücke im Systemcache

Erlangen von Administrator-Privilegien unter Microsoft Windows NT 4.0 durch Ausnutzung einer Sicherheitslücke im Systemcache Erlangen von Administrator-Privilegien unter Microsoft Windows NT 4.0 durch Ausnutzung einer Sicherheitslücke im Systemcache Ein Bericht aus der Projektarbeit im Rahmen der Vorlesung Informationssicherheit

Mehr

Konzepte von Betriebssystemkomponenten (KVBK) Schwerpunkt Linux

Konzepte von Betriebssystemkomponenten (KVBK) Schwerpunkt Linux Konzepte von Betriebssystemkomponenten (KVBK) Schwerpunkt Linux Adressräume, Page Faults, Demand Paging, Copy on Write Seminar am 24.11.2003, Referent: Johannes Werner Speicherverwaltung ist bei heutigen

Mehr

Kapitel VI. Speicherverwaltung. Speicherverwaltung

Kapitel VI. Speicherverwaltung. Speicherverwaltung Kapitel VI Speicherverwaltung 1 Speicherverwaltung Computer exekutiert Programme (mit Daten) im Hauptspeicher. Hauptspeicher: Großes Array von Wörtern (1 oder mehrere Bytes) Jedes Wort hat eine eigene

Mehr

Konzepte und Methoden der Systemsoftware. Aufgabe 1: Polling vs Interrupts. SoSe bis P

Konzepte und Methoden der Systemsoftware. Aufgabe 1: Polling vs Interrupts. SoSe bis P SoSe 2014 Konzepte und Methoden der Systemsoftware Universität Paderborn Fachgebiet Rechnernetze Präsenzübung 3(Musterlösung) 2014-05-05 bis 2014-05-09 Aufgabe 1: Polling vs Interrupts (a) Erläutern Sie

Mehr

Was machen wir heute? Betriebssysteme Tutorium 10. Frage 10.1.a. Frage 10.1.a

Was machen wir heute? Betriebssysteme Tutorium 10. Frage 10.1.a. Frage 10.1.a Was machen wir heute? Betriebssysteme Tutorium 10 Philipp Kirchhofer philipp.kirchhofer@student.kit.edu http://www.stud.uni-karlsruhe.de/~uxbtt/ Lehrstuhl Systemarchitektur Universität Karlsruhe (TH) 1

Mehr

2. Aufgabenblatt Musterlösung

2. Aufgabenblatt Musterlösung 2. Aufgabenblatt Musterlösung Technische Informatik II Sommersemester 2011 Problem 2: Assembler Syntax Register eines 32-bit Intel-Prozessors: 16 bits 8 bits 8 bits general purpose registers EAX Accumulator

Mehr

Vortrag zum Seminar Konzepte und Techniken virtueller Maschinen und Emulatoren. Bruno Kleinert fuddl@gmx.de. 20. Juni 2007

Vortrag zum Seminar Konzepte und Techniken virtueller Maschinen und Emulatoren. Bruno Kleinert fuddl@gmx.de. 20. Juni 2007 User Mode Linux (UML) Vortrag zum Seminar Konzepte und Techniken virtueller Maschinen und Emulatoren Friedrich-Alexander-Universität Erlangen-Nürnberg Bruno Kleinert fuddl@gmx.de 20. Juni 2007 Überblick

Mehr

Technische Informatik II Wintersemester 2002/03 Sommersemester 2001. Heiko Holtkamp Heiko@rvs.uni-bielefeld.de

Technische Informatik II Wintersemester 2002/03 Sommersemester 2001. Heiko Holtkamp Heiko@rvs.uni-bielefeld.de Technische Informatik II Wintersemester 2002/03 Sommersemester 2001 Heiko Holtkamp Heiko@rvs.uni-bielefeld.de Speicher ist eine wichtige Ressource, die sorgfältig verwaltet werden muss. In der Vorlesung

Mehr

Der MS-DOS Standardmonitor und Debugger DEBUG

Der MS-DOS Standardmonitor und Debugger DEBUG Einfache Assemblerprogrammierung mit DOS-DEBUG 1/7 Auf Personalcomputern kann in der Regel leicht eine einfache Umgebung zur Software-Entwicklung für die Intel Rechnerfamilie 80x86 eingerichtet werden.

Mehr

Pentium. Die Intel-Pentium CPU. AK Pentium. Packaging. Pentium Busse. RISC oder CISC?

Pentium. Die Intel-Pentium CPU. AK Pentium. Packaging. Pentium Busse. RISC oder CISC? Pentium Die Intel-Pentium CPU Äußerst komplexes Ding IA-32 Intel Architecture Software Developer s Manual Vol 1: Basic Architecture: 426 Seiten Vol 2: Instruction Set Reference: 976 Seiten Vol 3: System

Mehr

TIn 1: Feedback Laboratories. Lecture 4 Data transfer. Question: What is the IP? Institut für Embedded Systems. Institut für Embedded Systems

TIn 1: Feedback Laboratories. Lecture 4 Data transfer. Question: What is the IP? Institut für Embedded Systems. Institut für Embedded Systems Mitglied der Zürcher Fachhochschule TIn 1: Lecture 4 Data transfer Feedback Laboratories Question: What is the IP? Why do we NEED an IP? Lecture 3: Lernziele Moving data, the why s and wherefores Moving

Mehr

Betriebssysteme Teil 10: Virtueller Speicher

Betriebssysteme Teil 10: Virtueller Speicher Betriebssysteme Teil 10: Virtueller Speicher 11.12.15 1 Übersicht Segmente Systemaufrufe Swapping Paging 2 Physikalischer Adressraum I - Wiederholung 3 Physikalischer Adressraum II - Wiederholung Es wird

Mehr

Projekt für Systemprogrammierung WS 06/07

Projekt für Systemprogrammierung WS 06/07 Dienstag 30.01.2007 Projekt für Systemprogrammierung WS 06/07 Von: Hassan Bellamin E-Mail: h_bellamin@web.de Gliederung: 1. Geschichte und Definition 2. Was ist Virtualisierung? 3. Welche Virtualisierungssoftware

Mehr

das neue Webserverkonzept

das neue Webserverkonzept tubit Stammtisch das neue Webserverkonzept Stefanie Wenig (wenig@tubit.tu-berlin.de) Roland Hager (hager@tubit.tu-berlin.de) IT Dienstleistungszentrum der TU Berlin tubit Stammtisch vom 19.06.2008 1 Inhalt

Mehr

Sichere Virtualisierung auf dem Fiasco-Mikrokern

Sichere Virtualisierung auf dem Fiasco-Mikrokern Sichere Virtualisierung auf dem Fiasco-Mikrokern Diplomverteidigung Henning Schild Technische Universität Dresden Fakultät Informatik Institut für Systemarchitektur Professur Betriebssysteme Betreuender

Mehr

Technische Informatik 2 Speichersysteme, Teil 3

Technische Informatik 2 Speichersysteme, Teil 3 Technische Informatik 2 Speichersysteme, Teil 3 Prof. Dr. Miroslaw Malek Sommersemester 2004 www.informatik.hu-berlin.de/rok/ca Thema heute Virtueller Speicher (Fortsetzung) Translation Lookaside Buffer

Mehr

Betriebssysteme K_Kap11B: Files, Filesysteme Datenstrukturen

Betriebssysteme K_Kap11B: Files, Filesysteme Datenstrukturen Betriebssysteme K_Kap11B: Files, Filesysteme Datenstrukturen 1 Files als lineare Liste File angeordnet als verkette Liste von Blöcken Jeder Block enthält Zeiger zum Nachfolger Zeiger = Adresse des Blocks

Mehr

Enterprise Computing Einführung in das Betriebssystem z/os. Prof. Dr. Martin Bogdan Prof. Dr.-Ing. Wilhelm G. Spruth WS2012/13

Enterprise Computing Einführung in das Betriebssystem z/os. Prof. Dr. Martin Bogdan Prof. Dr.-Ing. Wilhelm G. Spruth WS2012/13 UNIVERSITÄT LEIPZIG Enterprise Computing Einführung in das Betriebssystem z/os Prof. Dr. Martin Bogdan Prof. Dr.-Ing. Wilhelm G. Spruth WS2012/13 Verarbeitungsgrundlagen Teil 3 Betriebssystem Überwacher

Mehr

Zugriff zum Datenaustausch per scponly

Zugriff zum Datenaustausch per scponly Zugriff zum Datenaustausch per scponly Warum scponly? In der Grundkonfiguration der Musterlösung ist es notwendig, dass ein Benutzer, der die Möglichkeit haben soll von außen Dateien mit dem Server auszutauschen,

Mehr

UNIX Dateirechte. Michael Hartmann. 7. Oktober 2015. Linux User Group Augsburg

UNIX Dateirechte. Michael Hartmann. 7. Oktober 2015. Linux User Group Augsburg UNIX Dateirechte Michael Hartmann Linux User Group Augsburg 7. Oktober 2015 Sicherheitskonzept Wie funktioniert eigentlich Sicherheit auf Computern? Sicherheitskonzept https://de.wikipedia.org/wiki/ring_%28cpu%29

Mehr

Maschinencode Dateiformat und Stackframes

Maschinencode Dateiformat und Stackframes Maschinencode Dateiformat und Stackframes Proseminar C-Programmierung - Grundlagen und Konzepte Julian M. Kunkel julian.martin.kunkel@informatik.uni-hamburg.de Wissenschaftliches Rechnen Fachbereich Informatik

Mehr

5 Speicherverwaltung. bs-5.1 1

5 Speicherverwaltung. bs-5.1 1 5 Speicherverwaltung bs-5.1 1 Pufferspeicher (cache) realer Speicher Primärspeicher/Arbeitsspeicher (memory) Sekundärspeicher/Hintergrundspeicher (backing store) (Tertiärspeicher/Archivspeicher) versus

Mehr

Enterprise Computing Einführung in das Betriebssystem z/os. Prof. Dr. Martin Bogdan Prof. Dr.-Ing. Wilhelm G. Spruth WS2012/13

Enterprise Computing Einführung in das Betriebssystem z/os. Prof. Dr. Martin Bogdan Prof. Dr.-Ing. Wilhelm G. Spruth WS2012/13 UNIVERSITÄT LEIPZIG Enterprise Computing Einführung in das Betriebssystem z/os Prof. Dr. Martin Bogdan Prof. Dr.-Ing. Wilhelm G. Spruth WS2012/13 Verarbeitungsgrundlagen Teil 2 Virtual Storage el0100 copyright

Mehr

6 Speicherverwaltung

6 Speicherverwaltung 6 Speicherverwaltung 6.1 Hintergrund Ein Programm muß zur Ausführung in den Hauptspeicher gebracht werden und in die Prozeßstruktur eingefügt werden. Dabei ist es in mehreren Schritten zu modifizieren.

Mehr

cs106 Informatiklabor Teil 1: Java-Installation

cs106 Informatiklabor Teil 1: Java-Installation Herbstsemester 2009 cs106 Informatiklabor Teil 1: Java-Installation Florian Zeller Vorgehen und Ziele Wöchentlich eine Übung Unterstützte Bearbeitung während den Übungsstunden Austausch mit älteren Semestern

Mehr

Hobby-Betriebssysteme unter Linux entwickeln

Hobby-Betriebssysteme unter Linux entwickeln Hobby-Betriebssysteme unter Linux entwickeln Hans-Georg Eßer Univ. Erlangen-Nürnberg h.g.esser@cs.fau.de Linux-Infotag 2013 Linux User Group Augsburg 23.03.2013 Was? Und warum? (1/2) Zahlreiche Projekte,

Mehr

Gymnasium Marktoberdorf

Gymnasium Marktoberdorf Gymnasium Marktoberdorf Abiturjahrgang 2006/08 FACHARBEIT Name des Verfassers: Leistungskurs: Kursleiter: Thema der Facharbeit: Stefan Linke Physik Betriebssystementwicklung Bewertung Datum:... Notenpunkte:...

Mehr

5 Kernaufgaben eines Betriebssystems (BS)

5 Kernaufgaben eines Betriebssystems (BS) 5 Kernaufgaben eines Betriebssystems (BS) Betriebssystem ist eine Menge von Programmen, die die Abarbeitung anderer Programme auf einem Rechner steuern und überwachen, insbesondere verwaltet es die Hardware-Ressourcen

Mehr

5. Mikroprozessoren für PCs: die X86-Familie. 5.1 Einführung

5. Mikroprozessoren für PCs: die X86-Familie. 5.1 Einführung 5. Mikroprozessoren für PCs: die X86-Familie 5.1 Einführung Die heute in PCs und Workstations sind, aus der Sicht der Rechnerarchitektur, gesehen, Kinder zwei verschiedener Familien. Die ersten Mitglieder

Mehr