Technische Informatik 2 Software (inklusiv Betriebssysteme)



Ähnliche Dokumente
Technische Informatik 2 Software

Technische Informatik 2 Betriebssystem

4D Server v12 64-bit Version BETA VERSION

Technische Informatik 2 Betriebssystem

Verwendung des Terminalservers der MUG

TeamSpeak3 Einrichten

gibt es verschiedene Betriebssysteme die je nach Gerät und Nutzer installiert werden können.

B.4. B.4 Betriebssysteme Prof. Dr. Rainer Manthey Informatik II 1

VMware als virtuelle Plattform

Systemprogramme bezeichnen alle Programme, die bestimmte Aufgaben unterstützen, die unabhängig von einer konkreten Anwendung sind

Leitfaden zur Installation von Bitbyters.WinShutdown

Scheduling in Echtzeitbetriebssystemen. Prof. Dr. Margarita Esponda Freie Universität Berlin

Einrichtung des Cisco VPN Clients (IPSEC) in Windows7

Internet online Update (Internet Explorer)

MetaQuotes Empfehlungen zum Gebrauch von

Windows Verbindung mit WLAN BZPflege trennen Verbindung mit WLAN EDU-BZPflege automatisch erstellen... 30

Liesmich zum Kurs: Programmieren in der Bioinformatik mit Perl Konfigurierung der Programmierumgebung

Lexware professional und premium setzen bis einschließlich Version 2012 den Sybase SQL-Datenbankserver

Grundlagen Windows 7. W i n d o w s 7 - W o r k s h o p tk

Tipps und Tricks zu Netop Vision und Vision Pro

Facharbeit Informatik. Thema:

Diplomarbeit. Konzeption und Implementierung einer automatisierten Testumgebung. Thomas Wehrspann. 10. Dezember 2008

Rillsoft Project - Installation der Software

A1 Desktop Security Installationshilfe. Symantec Endpoint Protection 12.1 für Windows/Mac

Kurzanleitung zur Softwareverteilung von BitDefender Produkten...2

Anleitung zum Extranet-Portal des BBZ Solothurn-Grenchen

Informatik I Tutorial

schnell und portofrei erhältlich bei beck-shop.de DIE FACHBUCHHANDLUNG mitp/bhv

In 15 einfachen Schritten zum mobilen PC mit Paragon Drive Copy 10 und Microsoft Windows Virtual PC

Einführung in PHP. (mit Aufgaben)

Fragen zur GridVis MSSQL-Server

Systeme I: Betriebssysteme Kapitel 4 Prozesse. Maren Bennewitz

Computeria Solothurn

Merkmale des Betriebssystems Windows XP

Installationsvoraussetzungen

Proseminar Technische Informatik A survey of virtualization technologies

NEWSLETTER // AUGUST 2015

Workshop: Eigenes Image ohne VMware-Programme erstellen

Handbuch B4000+ Preset Manager

ObjectBridge Java Edition

IBM Software Demos Tivoli Provisioning Manager for OS Deployment

Computer Algebra Plan der Vorlesung. erstes Drittel: linux, emacs, L A TEX zweites Drittel: Sage als Taschenrechner letztes Drittel: Python für Sage

Schritt-Schritt-Anleitung zum mobilen PC mit Paragon Drive Copy 10 und VMware Player

Eigenen WSUS Server mit dem UNI WSUS Server Synchronisieren

Matrix42. Use Case - Sicherung und Rücksicherung persönlicher Einstellungen über Personal Backup. Version September

Folgende Einstellungen sind notwendig, damit die Kommunikation zwischen Server und Client funktioniert:

2.1 Lightning herunterladen Lightning können Sie herunterladen über:

Update von Campus-Datenbanken (FireBird) mit einer Version kleiner 9.6 auf eine Version größer 9.6

Rechnernutzung in der Physik. Betriebssysteme

Formular»Fragenkatalog BIM-Server«

NTT DATA Helpdesk Benutzerhandbuch

Wo finde ich die Software? - Jedem ProLiant Server liegt eine Management CD bei. - Über die Internetseite

Client-Systemanforderungen für Brainloop Secure Dataroom ab Version 8.30

Persona-SVS e-sync GUI/Client Installation

Anleitung zur Einrichtung einer ODBC Verbindung zu den Übungsdatenbanken

KURZANLEITUNG CYBERDUCK MIT CLOUD OBJECT STORAGE

Datenbank-Verschlüsselung mit DbDefence und Webanwendungen.

BitDefender Client Security Kurzanleitung

Virtual Desktop Infrasstructure - VDI

Fassade. Objektbasiertes Strukturmuster. C. Restorff & M. Rohlfing

C++11 C++14 Kapitel Doppelseite Übungen Musterlösungen Anhang

In 15 Schritten zum mobilen PC mit Paragon Drive Copy 11 und VMware Player

mysql - Clients MySQL - Abfragen eine serverbasierenden Datenbank

WINDOWS 7 (32 o 64 bit)

Monitore. Klicken bearbeiten

1 Voraussetzungen für Einsatz des FRITZ! LAN Assistenten

Software zur Anbindung Ihrer Maschinen über Wireless- (GPRS/EDGE) und Breitbandanbindungen (DSL, LAN)

Anleitung zur Nutzung des SharePort Plus

ANLEITUNG EBOOKS. 1. Der Kauf von ebooks über den Onlineshop

In 12 Schritten zum mobilen PC mit Paragon Drive Copy 11 und Microsoft Windows Virtual PC

2. ERSTELLEN VON APPS MIT DEM ADT PLUGIN VON ECLIPSE

Meldung Lokale Anwendung inkompatibel oder Microsoft Silverlight ist nicht aktuell bei Anmeldung an lokal gespeicherter RWE SmartHome Anwendung

Inhalt. 1 Einleitung AUTOMATISCHE DATENSICHERUNG AUF EINEN CLOUDSPEICHER

2. Einrichtung der ODBC-Schnittstelle aus orgamax (für 32-bit-Anwendungen)

Einrichtung eines VPN-Zugangs

Grundlagen der Informatik

Modul Windows XP Professional

Lizenzierung von Windows Server 2012

Übung - Freigabe eines Ordners und Zuordnung eines Netzwerlaufwerks in Windows XP

Übersicht. Nebenläufige Programmierung. Praxis und Semantik. Einleitung. Sequentielle und nebenläufige Programmierung. Warum ist. interessant?

Die DeskCenter Management Suite veröffentlicht neue Version 8.1

Installation der 4Dv12sql Software für Verbindungen zum T.Base Server

Alle Jahre wieder... Eckard Brandt. Regionales Rechenzentrum für Niedersachsen Eckard Brandt Gruppe Systemtechnik

Nutzung des mymmx Web Clients von Tess

Fachbericht zum Thema: Anforderungen an ein Datenbanksystem

Im Folgenden wird Ihnen an einem Beispiel erklärt, wie Sie Excel-Anlagen und Excel-Vorlagen erstellen können.

transfer.net Erste Schritte mit transfer.net

Was ist neu in Sage CRM 6.1

Mikrocontroller Grundlagen. Markus Koch April 2011

Es kann maximal ein Prozess die Umladestelle benutzen.

! " # $ " % & Nicki Wruck worldwidewruck

Ordner Berechtigung vergeben Zugriffsrechte unter Windows einrichten

Windows 7 ist da! Der Nachfolger von Vista kommt noch vor dem Sommer

Videoüberwachung als Virtuelle Maschine. auf Ihrem Server, PC oder Mac. Peter Steinhilber

Was ist PDF? Portable Document Format, von Adobe Systems entwickelt Multiplattformfähigkeit,

Führen Sie zum Einstieg in die Materie einige Systemdiagnosen durch. Benutzen Sie dabei winmsd.exe.

Computeria Urdorf. Treff vom 28. März Tipps und Tricks

Parallels Mac Management 3.5

Systeme 1. Kapitel 5. Scheduling

Schulpaket 2015 / 2016 Installation

Transkript:

Technische Informatik 2 Software (inklusiv Betriebssysteme) Prof. Dr. Miroslaw Malek Sommersemester 2009 www.informatik.hu-berlin.de/rok/ca

Thema heute Evolution der Software Schichten Übersetzer Assembler AL ML Compiler HLL ML Lader (Manuell, Bootstrap, Programm im ROM) Linker Programmabarbeitung (Stapelverarbeitung und Multiprogrammierung Spooling Betriebssystem TI2 Betriebssystem - 2

Allgemeiner Überblick Anwendungs Software und Dienste: Textverarbeitung Flugzeugreservierungssystem Computerspiele Middleware Betriebssystem Hardware TI2 Betriebssystem - 3

Software Systemsoftware Compiler (Sprachprozessoren) Betriebssysteme Bibliotheken Benutzerprogramme Tools (Linker, Lader (Manuell, Bootstrap, Programm im ROM), Systemverwaltung, Monitoring) Dienste Anwendungssysteme (Sky is the limit) Behandlung von Fehlern und Programmausnahmen TI2 Betriebssystem - 4

Evolution von Software Hardware Software Hardware Software Anwendungen Betriebs- Systeme Hardware Software Assembler Compiler Betriebssystem Utilities Debugging Programme Dateiverarbeitende Programme Middleware Firmware Mikroprogrammierung & Mikroprogrammierte Systeme Liveware System Designer System Analytiker Entwickler Operatoren Wartungspersonal Benutzer Hardware CPUs E/A Geräte Speicher Verbindende Netze TI2 Betriebssystem - 5

Lebenszyklus von Hard- und Software Liveware Vorbereitung nützliche Arbeit teilweise nützliche Arbeit Hardware/ Software Fehlerverwaltung untätig TI2 Betriebssystem - 6

TI2 Betriebssystem - 7 Sprachen und Übersetzer Maschinensprache (binär, oktal, hexadezimal) Assembler (Directiven, Assembler) Hochsprache (HLL High-Level Language) Betriebssteuerangaben Compiler übersetzen Quellprogramm (Syntax der Sprache) und erzeugen das Objektprogramm o Zwischensprache (Interpreter) o Maschinenprogramm Eine Hochsprachenanweisung entspricht typisch 1-20 Maschinencodeanweisungen. Eine Assembleranweisung entspricht typisch einer Maschinencodeanweisung, selten deutlich mehr (z.b. Floating Point)

Sprachen und Übersetzer (2) Hochsprachen Assemblersprache Kompilation Assemblierung Maschinencode Hardware TI2 Betriebssystem - 8

Lader Wie laden wir ein Maschinenspracheprogramm in den Speicher? Wie veranlassen wir einen Computer, ein Programm auszuführen? Rechner einschalten: 1) Manuelles Laden eines Programms durch eine Konsole und Schalter. a. Bootstrap (einfacher Lader) b. Komplexere Lader (Paritätsprüfung, usw.) 2) Nach Reset arbeitet der Computer ein ROM-Programm ab, das weitere Programme lädt (als Basic Input Output System (BIOS) bezeichnet man die Firmware des Laders) TI2 Betriebssystem - 9

Linker Objektmodule sind assemblierte Versionen von verschiedenen Routinen Der Linker ist ein Programm, das mehrere Objektmodule zu einem Lademodul verbinden kann. Statischer Linker Einmaliges Linken nach Kompilation Dynamischer Linker Linken nach Bedarf zur Laufzeit TI2 Betriebssystem - 10

Programmabarbeitung: Typen Stapelverarbeitung Stapelverarbeitung (Batch Processing): Jobs werden nacheinander in sequentieller Abarbeitung ausgeführt. Multiprogrammierung Das Konzept der Multiprogrammierung ist es, mehrere Programme im Hauptspeicher zu haben. Wenn die Ausführung eines Programms für E/A-Operationen ausgesetzt werden muß, wird die CPU veranlasst, eines der anderen Programme im Speicher auszuführen. Generelles Problem: Ein/Ausgabe ist deutlich langsamer als Prozessor

Vergleich: Mit und ohne Multiprogrammierung Keine Multiprogrammierung JOB1 IDLE JOB1 IDL JOB1 JOB2 IDL JOB2 Mit Multiprogrammierung JOB1 JOB2 JOB1 JOB2 JOB1 T m T n Zeit TI2 Betriebssystem - 12

Multithreading Abarbeitung von parallelen Programmsträngen innerhalb eines Programms um die Wartezyklen der CPU effizient auszunutzen. Diese voneinander unabhängigen Programmteile, die simultan ausgeführt werden können, werden Threads genannt. Diese Unabhängigkeit kann nur durch den Entwickler durch umsichtiges Programmieren sichergestellt werden. Multithreading erhöht die Geschwindigkeit um 20% bis 50% auf einer CPU TI2 Betriebssystem - 13

Spooling Ziele: 1) Überwinden des Geschwindigkeitsunterschiedes von Hauptspeicher und Festplatte 2) Erhöhung der Geschwindigkeit und Glätten von E/A-Operationen Hauptspeicher E/A Puffer Festplatte Zeitliche Entkopplung Oft besitzt das Disk- Speicher-Interface eigene Speicher und Prozessoren TI2 Betriebssystem - 14

Betriebssystem Betriebssystem Funktionalität Analogien Betriebssystementwicklung Scheduling von Prozessen Speichermanagement Systemsicht des Betriebssystems TI2 Betriebssystem - 15

Allgemeiner Überblick Anwendungen und Dienste: Textverarbeitung Flugzeugreservierungssystem Computerspiele Middleware Betriebssystem Hardware TI2 Betriebssystem - 16

Betriebssysteme Integraler Bestandteil des Computerdesigns Laden Linken Speicherverwaltung CPU-Verwaltung (Scheduling und Speicheranforderung) Verwaltung der Ein/Ausgabe Betriebssysteme sind Programme, die die Ausführung von Programmen handhaben. Das Betriebssystem handhabt die CPU bezüglich der verfügbaren E/A Ressourcen. Ressource- Teilung kann Kosten reduzieren, wenn dies zu einer Erhöhung des Systemdurchsatzes führt, z.b. mehr laufende Benutzerprogramme pro Zeiteinheit. TI2 Betriebssystem - 17

Analogien BS = Regierung, es führt das Management der Ressourcen durch, aber es produziert nichts, da die Produktion den Anwendungsprogrammen obliegt BS = Fabrikmanager, ein Fabrikmanager erleichtert den Fluss zwischen den einzelnen Arbeitsschritten, produziert jedoch keine Güter BS ist ein Magier, es versteckt Software- und Hardwareressourcen und gibt dem Benutzer das Gefühl, einer problemfreien Welt, ohne typische Hardwaregrenzen TI2 Betriebssystem - 18

Einige weitere Sichten eines Betriebssystems BS als Verkehrsampel, die Verkehrsampel reguliert den Fluss der Autos, das BS reguliert den Fluss der Prozessausführung (Eingabe/Ausgabe Operationen, Interrupts, Speicherschutz, usw.) BS als Wertpapierspekulant, Lernen aus Fehlern die in der Vergangenheit gemacht wurden, um den Profit (Performance) in der Zukunft zu maximieren BS als Stellglied (controller) - verbindet Benutzer, Programme und Prozesse, die Hardware benutzen BS als Mittler dient als Vermittler zwischen Hardware und der Anwendungssoftware TI2 Betriebssystem - 19

Betriebssysteme 1. Erschaffen und Beenden von Prozessen 2. Überblick über die und Kontrolle des Fortschritts der Ausführung der Prozesse 3. Laden und linken der Programme 4. Speicherverwaltung 5. Scheduling, z.b.: definiert, in welcher Reihenfolge die Prozesse ausgeführt werden 6. Behandlung von Ausnahmen, Fehlern oder Schutzverletzungen 7. Zuordnung von Hardware- und Software- Ressourcen zu Prozessen TI2 Betriebssystem - 20

Betriebssysteme (2) 8. Bieten Zugriffe zur Software und Daten, z.b.: Compiler und Assembler, Bibliotheksprogramme, Text Dateien, Bilder, Musik 9. Sichert benötigte Qualitätseigenschaften (QoS) unter Beachtung von Sicherheits-, Echtzeit-, Zuverlässigkeit- und anderen Aspekten 10.Unterstützende Kommunikation und Dienste - auch ein Browser kann als Teil eines Betriebssystems angesehen werden Ein Prozeß ist eine Routine, die als Teil der Abarbeitung eines geplanten Jobs ausgeführt wird. Beinhaltet Informationen, die die Unterbrechung und folgende Wiederaufnahme der Ausführung eines Programms erlaubt. TI2 Betriebssystem - 21

Betriebssystementwicklung 55 60 IOCS DOS/360 IBSYS OS/360 CTSS MULTICS erweiterte Übersicht basierend auf Wolfgang Coy "Aufbau und Arbeitsweise von Rechenanlagen: Einführung in Rechnerarchitektur und Rechnerorganisation", Vieweg 1992 70 TSO CP/CMS UNIX RSX-11M 80 90 00 05 DOS/VDSE MVS/370 VM/370 UNIX V7 System III 4.1 BSD VS MVS/XA VM/XA System V AIX SUN OS 4.2 BSD Minix POSIX 4.3 BSD AIX/370 System V.4 OSF/1 Solaris VSE/ESA MVS/ES VM/ESA AIX/ESA 4.4 BSD Linux 1.0 OS/390 Palm OS 1 Linux 2.0 Linux 2.2 z/os Palm OS 5 Symbian OS 5.0 Linux 2.4 Palm OS 6 Symbian OS 7.0 Linux 2.6 TI2 Betriebssystem - 22 Symbian OS 9.5 Xenix Apple DOS VMS Apple ProDOS MACH DR-DOS NeXTSTEP MAC System 7 OPENSTEP MAC OS X MAC OS 7.6 MAC OS 9 CP/M Apple CP/M Windows 1 Windows 3 Windows NT 3 Windows 95 Windows NT 4 Win CE Windows 98 Windows 2000 Windows ME Windows XP Windows Vista MS-DOS

Scheduling von Prozessen Der Prozess wird in eine (oder mehrere) Warteschlange(n), in der auch die anderen, vom Betriebssystem auszuführenden Prozesse zu finden sind, eingereiht. Priorität als Mittel, Position in Warteschlange zu beeinflussen Information über den Zustand des Prozesses Prozessnummer (id) Prozesszustand Schutz Scheduling-Information Statusinformation TI2 Betriebssystem - 23

Scheduling von Prozessen (2) Kriterien für das Auswählen eines Prozesses: CPU Ausnutzung Durchsatz Antwortzeit Responsivität (Echtzeit System) Priorität TI2 Betriebssystem - 24

Scheduling Strategien 1. First-In-First-Out (FIFO) 2. Kürzester Job Zuerst [Shortest-Job-First (SJF)] 3. Prioritäten Scheduling (Priority Scheduling) 4. Round Robin Scheduling 5. Früheste Deadline zuerst [Earliest Deadline First (EDF)] 6. Monotones Scheduling [Rate Monotonic Scheduling (RMS) Algorithm ] 7. Minimalster Überhang (Least Laxity Scheduling) (Differenz zwischen Deadline und Ausführungszeit) Kleinerer Überhang = höhere Prioriät TI2 Betriebssystem - 25

Zustandsdiagramm Ein Prozess durchläuft eine Anzahl von Zuständen: ausführbar blockiert in Ausführung Das Zustandsdiagramm illustriert die Steueraktivitäten, die für die Prozessverwaltung nötig sind. Die Beschriftungen entlang der Pfeile zeigen die Gründe der Änderung von einem Zustand in den anderen. Interrupts können Zustandsänderungen hervorrufen. Programme mit höherer Priorität können laufende Programme unterbrechen. TI2 Betriebssystem - 26

Zustandsdiagramm (2) Wartend Abarbeiten Anhalten (z.b. wenn E/A hält) Bereit Zurückstellen Laufend Beenden TI2 Betriebssystem - 27

Arten der Verarbeitung: Arten der Verarbeitung, die vom BS unterstützt werden: 1. Batch-Verarbeitung (Jobs werden gruppiert) 2. Transaktionenbasierte Verarbeitung (Operationen, wie Einkaufen mittels E-Commerce oder Banktransfers werden unterstützt) 3. Interaktive Verarbeitung (z.b.: Browsen im Internet oder Spiele gehören dieser Kategorie an.) TI2 Betriebssystem - 28

Einige Aufgaben des OS aus Benutzersicht Übersetzer Prozessverwaltung Editoren Assembler Speicherverwaltung Tabellenkalkulation Compiler Datenverwaltung Datenbank Interpreter Ein-/ Ausgabeverwaltung Jobverwaltung Diagnose und Test Betriebsmittelverwaltung Anwendungsprogramme Systembefehlsinterpreter Mehrprozessorverwaltung Linker-/ Ladeprogramme Dateibearbeitung Abrechnung lokale Netzverwaltung Telekommunikation Makrointerpreter TI2 Betriebssystem - 29

Systemsicht des Betriebssystems: Schichtmodell Schichtname Typische Objekte Typische Operationen Schaltkreise Register, Gatter, Busse NAND, NOR, XOR Maschinensprache Befehlszähler, ALU Add, Move Prozedurblock, Stack Call, JSR, RTS Interrupts Fehlerroutinen Busfehler, Reset einfache Prozesse Semaphor, Puffer warten, bereitstellen, ausführen lokaler Zusatzspeicher Datenblock, E/A-Kanal lesen, schreiben, öffnen, schließen virtueller Speicher Seiten lesen, schreiben, austauschen Unterprogrammverwaltung Prozesskommunikation Übergabekanal (Pipe) lesen, schreiben, öffnen TI2 Betriebssystem - 30

Systemsicht des Betriebssystems: Schichtmodell (2) Schichtname Typische Objekte Typische Operationen...weiter... Dateiverwaltung Dateien lesen, schreiben, öffnen, kopieren Geräteverwaltung Zusatzspeicher, Terminals lesen, schreiben Ein-/Ausgabeströme Datenströme lesen, schreiben, öffnen, schließen Benutzerprozesse Benutzerprozesse einloggen, ausloggen, Verzweigungen Verzeichnisverwaltung interne Tabellen erstellen, löschen, ändern Benutzeroberfläche Fenster, Menüs, Icons Betriebssystembefehle TI2 Betriebssystem - 31

Services und Serviceorientierte Architektur (SOA) Services sind selbstbeschreibende, offene Komponenten, die eine kostengünstige Entwicklung und einen kostengünstigen Einsatz von verteilten Anwendungen erlauben Das Hauptziel serviceorientierter Architekturen ist die Unterstützung von transparenten, flexiblen und dynamischen Interaktionen zwischen Services und ihren Clients in vernetzten Domänen SOA - Leistungsmerkmale: verbesserte Effizienz durch Auslagerung von Aufgaben/Geschäftsprozessen (outsourcing) und Wiederverwendung von Komponenten erhöhte Flexibilität and Mobilität auf Geschäfts- und IT- Ebene, einfachere Integration Ermöglichung von herstellerunabhängiger Standardsoftware

Software Zusammenfassung Neue Anwendungsgebiete entwickeln sich ständig Middleware nimmt zu Betriebssysteme werden immer komplexer beeinflussen die Leistungsfähigkeit, Zuverlässigkeit und Einfachheit der Benutzung eines Systems Komplexität und Funktionalität sind fast außer Kontrolle und häufig von der Verständlichkeit entfernt. Computersysteme gehören einer Klasse der komplexesten und komplizierten Geräte an, die jemals von der Menschheit erschaffen wurden. Verschiebung von Leistung zu Zuverlässigkeit und Sicherheit wird zunehmen. TI2 Betriebssystem - 33