Aufgaben eines Betriebssystems - PowerPoint PPT Presentation

1 / 51
About This Presentation
Title:

Aufgaben eines Betriebssystems

Description:

Title: Aufgaben eines Betriebssystems Author: Pierre Bayerl Last modified by: Pierre Bayerl Created Date: 9/10/2002 7:05:53 PM Document presentation format – PowerPoint PPT presentation

Number of Views:207
Avg rating:3.0/5.0
Slides: 52
Provided by: Pierre236
Category:

less

Transcript and Presenter's Notes

Title: Aufgaben eines Betriebssystems


1
Teil II Benutzerebene eines Rechners
  • Das Betriebssystem UNIX
  • Internet
  • Texteditor

? Pierre Bayerl, Klaus Murmann Heiko Neumann,
Fakultät für Informatik, Universität Ulm, 2002/03
2
  1. Das Betriebssystem UNIX
  • Kurzeinführung Was ist UNIX
  • Rechnersitzungen An- und Abmeldung
  • Dateien und Dateisystem
  • Kommando-Interpreterebene (Shell) und Prozesse

3
Aufgaben eines Betriebssystems
  • Generell Verwaltung und Zuteilung
  • der Ressourcen eines Rechners
  • Kontrolle und Verwaltung der Betriebsmittel
  • Ausführen von Benutzerprogrammen (Rechenzeit und
    Speicher)
  • Speicherung von Daten (Plattenplatz)
  • Drucken von Dokumenten (Drucker)
  • Bereitstellung einer logischen Sicht auf die
    Betriebsmittel
  • Zugriff auf Dokumente, Drucker, periphere Geräte
    (Dateisystem)
  • Prozesssteuerung (Prozess-Subsystem, Rechenzeit)

4
Kennzeichen von UNIX
  • Mehrbenutzer-Betriebssystem (multi-user)
  • Time-sharing Betriebssystem (Verwaltung mehrerer
    asynchroner Prozesse)
  • Geräteunabhängiges, hierarchisches Dateikonzept
  • Gute Portabilität (hohe Verfügbarkeit von
    Software)
  • Dialogorientierung (Kommandointerpreter)
  • Fließband-Technik (pipelining)

5
Aktuelle UNIX-Derivate
Erste UNIX Version (ATT 1969)
Linux
BSD/FreeBSD
Sun Solaris
Darwin/Mac OS X
Im Pool Sun Solaris Zuhause z.B. Linux
6
Strukturierung von UNIX Schalen-/Schichtenkonzept
  • Hardware
  • Betriebssystem-Kern (kernel)
  • (Prozessverwaltung und kommunikation,
    Speicherverwaltung, Ein-/Ausgabe-Verwaltung,
    Gerätetreiber, ...)
  • Dienst- und Anwenderprogramme
  • (Bibliothek mit Standardfunktionen (in C),
    Compiler, Editoren, ...)
  • Kommandointerpreter (shell)

shell
7
Was ist eine Shell(Kommandointerpreter) ?
Befehl
Ausgabe
  • Textuelle Eingabe von Befehlen
  • Textuelle Ausgabe von Befehlsergebnissen
  • Dialog/Kommunikation mit dem System
  • Eingabe von Kommandos am Prompt

Prompt
Rechnername evtl. weitere Informationen
  • Variable visuelle Darstellung von Shells
  • Basisfunktionalität ist in jedem Fall identisch
  • Eingabe Kommando(s)
  • Ausgabe Ergebnis

8
Anmeldung an ein UNIX-System (1)
  • Benutzer-Account
  • Zugang über Benutzername (login) Passwort
  • Ermöglicht Zugriff auf Ressourcen (Plattenplatz,
    Drucker, ...)
  • Graphisches Login an einem X-Terminal (im
    WiMa-Pool)
  • Eröffnet eine UNIX-Sitzung an einem graphischen
    UNIX-Computerarbeitsplatz
  • Graphische Oberfläche ermöglicht das Öffnen
    verschiedener Fenster

RECHNERNAME
Beispiel
Login pierre Password
9
Anmeldung an ein UNIX-System (2)
  • Remote Login von einem anderen Rechner
  • Möglich von UNIX-Rechnern und Windows-Rechnern
  • Die Verwendung von graphischen Programmen hängt
    davon ab ob der Verwendete Arbeitplatz dies
    ermöglicht
  • Am besten und am sichersten ist die Verwendung
    der Secure Shell
  • Von einem beliebigen UNIX-Rechner (z.B. im
    E-Techniker Pool)
  • ssh -l loginname turing.mathematik.uni-ulm.de
  • (Statt des Rechners turing kann auch thales oder
    theseus verwendet werden)

10
Anmeldung an ein UNIX-System (3)
  • Um sich von einer Windows-Maschine aus
    einzuwählen ist ein entsprechendes Programm nötig
    (z.B. PuTTY)
  • http//ssh.mathematik.uni-ulm.de/install/putty.htm
    l
  • http//www.chiark.greenend.org.uk/sgtatham/putty/

11
Arbeiten mit einem UNIX-System (Shell)
  • Kommandozeile (Shell) um mit dem Betriebssystem
    zu kommunizieren
  • Kommando ausführen ltBefehlgt ltParametergt
  • Vorsicht Groß/Klein-Schreibung beachten!
  • Bei einem X-Terminal muß zuvor eine Shell
    geöffnet werden
  • Mit der rechten Maustaste auf den Hintergrund
    klicken
  • Es erscheint ein Menü. Wählen Sie
  • Hosts - Xterm - thales
  • Beim Remote Login (mit ssh) bekommt man
    automatisch eine Shell

12
Abmelden von einem UNIX-System
  • Abmelden zum Schutz der eigenen Daten (Texte,
    Mails, Ressourcen!)
  • Abmelden von der Kommandozeile
  • Befehl exit oder logout
  • Abmelden von X-Terminal
  • Knopf/Menüpunkt exit oder logout drücken

NIEMALS DIE X-TERMINALS AUSSCHALTEN!!
13
Zusammenfassung Anmelden Abmelden
  • Anmelden (login)
  • Am X-Terminal
  • Per ssh von einem anderen UNIX System
  • Per ssh von einem Windows-Rechner
  • Abmelden
  • exit an der Kommandozeile (Shell) eingeben
  • exit-Knopf drücken (X-Terminal)
  • Rechner im WiMa-Pool (X-Terminals) nie
    ausschalten !!

14
Demonstration
DEMO
15
Dateien und Dateisystem
Datei
  • Dateikonzept
  • Datei sequentielle Folge von Datenworten (Bytes)
  • Dateiarten
  • Normale Dateien (files Texte, Programme,
    Daten,...)
  • Dateiverzeichnisse (directories auch Kataloge)
  • Gerätedateien (special files, für physik. Geräte)

Nahezu alle Ressourcen werden bei UNIX-Systemen
auf Dateien abgebildet
16
Datei-Hierarchie
  • UNIX-Dateisystem Hierarchie von Dateien
  • Jede Datei besitzt eine eindeutige Adresse
  • Verzeichnis(-Dateien) können wiederum Dateien
    enthalten
  • Standard-Verzeichnisse gliedern das System auf
  • /dev Physikalische Geräte (Drucker, Festplatte,
    ...)
  • /usr Anwendungen (Programme, Bibliotheken, ...)
  • /home Benutzerverzeichnisse
  • Heimatverzeichnis
  • /home/name
  • enthält alle
  • persönlichen
  • Dateien

z.B. /home/pierre/datei1.txt
17
Datei Adressierung
  • Vollständiger Name (ausgehend von / )
  • /home/pierre/datei1.txt
  • Relativer Name (ausgehen vom aktuellen
    Verzeichnis)
  • datei1.txt
  • ./datei1.txt
  • ../klaus/datei3.txt
  • Besondere Verzeichnisnamen
  • . Aktuelles Verzeichnis
  • .. Verzeichnis eine Ebene höher
  • / Wurzel des Dateisystems (root)

Aktuelles Verzeichnis
18
Verzeichnis Kommandos (1)
  • pwd Name/Pfad des aktuellen Verzeichnisses
    anzeigen
  • (print working directory)
  • cd Ändern des Arbeitsverzeichnisses
    (change directory)
  • cd Wechsel ins Heimatverzeichnis
  • cd ltnamegt zum angegebenen Unterverzeichnis
  • mkdir ltnamegt Anlegen eines neuen
    Unterverzeichnisses
  • rmdir ltnamegt Löschen eines Unterverzeichnisses
  • (das angesprochene Verzeichnis muss leer
    sein)

19
Verzeichnis Kommandos (2)
  • ls Anzeige eines Verzeichnisinhaltes
  • ls -l Ausführliche Anzeige des Inhalts
    (Dateigröße...)
  • Platzhalter für Dateinamen (beliebig viele
    Zeichen) ? (ein Zeichen)
  • ls d Alle Dateien deren Namen mit d beginnt
  • ls 2 Alle Dateien in deren Namen eine 2
    vorkommt
  • Alternativ können Dateien auch einzeln aufgeführt
    werden
  • ls d f Listet alle Dateien die mit d oder mit
    f beginnen

20
Dateiausgabe Kommandos (1)
  • cat Ausgabe oder Konkatenation von Dateien auf
    Monitor
  • more Seitenweise (formatierte) Ausgabe von
    Dateien auf Monitor
  • head, tail Ausgabe der ersten/letzen Zeilen
    von Dateien auf Monitor
  • grep Suchen einer gegebenen Zeichenfolge in
    einer Datei
  • Format grep ltsuch-stringgt datei1
    datei2...

Inhalt von datei1.txt
Inhalt von datei2.txt
Inhalt von file2.txt
Suchergebnisse Welche Dateien enthalten den
Text datei?
21
Dateiausgabe Kommandos (2)
  • a2ps Ausgabe von Textdateien (ASCII-Dateien) auf
    dem Drucker
  • lp Ausgabe von Postscript-Dateien auf Drucker
  • (MIT lp NUR POSTSCRIPTDATEIEN DRUCKEN)

Druckerausgabe auf bestimmten Druckern lp
-dltDruckernamegt ltDateigt.ps a2ps -PltDruckernamegt
ltDateigt.txt Drucker garamond gutenberg Bsp.
a2ps -Pgutenberg datei1.txt
22
Kopieren / Verschieben von Dateien
  • cp Kopieren von Dateien (cp quelldatei zieldatei
    oder cp quelldatei zielordner)
  • cp datei1.txt example2/kopie1.txt
  • cp datei1.txt example2
  • mv Verschieben von Dateien
  • mv example2/kopie1.txt datei3.txt
  • rm Löschen von Dateien (Vorsicht Was weg ist
    ist weg!)
  • rm datei3.txt

23
Dateien - Besitzer und Rechte (1)
  • Dateien gehören dem Benutzer der sie angelegt hat
  • (Benutzer teilen sich wiederum in verschiedene
    Gruppen auf)
  • Der Besitzer darf sog. Rechte an seinen Dateien
    vergeben
  • Lesen (r) Wer darf diese Datei betrachten
  • Schreiben (w) Wer darf diese Datei verändern
  • Ausführen (x) Handelt es sich um eine
    Ausführbare Datei
  • Rechte können vergeben werden an
  • Sich selbst
  • Anderen Benutzern aus der selben Gruppe
  • Allen anderen Benutzern

Befehl zum Anzeigen Des aktuellen Verzeichnisses
Benutzer/Gruppe
Dateigröße
Rechte
Dateiname
24
Dateien - Besitzer und Rechte (2)
  • chmod Verändern der Zugriffsrechte auf Dateien
  • Syntax chmod ltParametergt ltDatei(en)gt
  • Parameter (siehe man chmod)
  • w oder r (ermöglicht schreibenden bzw.
    lesenden Zugriff)
  • -w oder -r (verhindert schreibenden bzw.
    lesenden Zugriff)

Kein Zugriff ohne Lese-Recht!
25
Kommandozeile (Shell) und UNIX-Kommandos
  • Übersicht über einige UNIX-Befehle
  • Was ist die Standarteingabe bzw. Standartausgabe
  • Kombinieren von UNIX-Kommandos
  • Umlenken der Eingabe/Ausgabe
  • Pipes

26
Nützliche UNIX-Kommandos (1)
27
Nützliche UNIX-Kommandos (2)
Ausgabe der ersten n Zeilen
Textsuche in Dateien
1 4567 890 2 TEST ABC 3 Xxxx xxx 4 4567
890 5 4567 890 6 ABCD EFG 7 4567 890 8 Allg
Inf 9 4567 890 10 4567 ABC 11 4567 890 12 4567
890
theseus head -n 3 abc.txt 1 4567 890 2 TEST
ABC 3 Xxxx xxx
theseus grep ABC abc.txt 2 TEST ABC 6 ABCD
EFG 10 4567 ABC
Ausgabe der letzten n Zeilen
Zeilenweise sortieren
theseus tail -n 3 abc.txt 10 4567 ABC 11 4567
890 12 4567 890
theseus sort abc.txt 1 4567 890 10 4567 ABC 11
4567 890 12 4567 890 2 TEST ABC 3 Xxxx xxx 4
4567 890 5 4567 890 6 ABCD EFG 7 4567 890 8
Allg Inf 9 4567 890
Datei abc.txt Bestehen aus 12 Zeilen à 12
Zeichen (11 Zeichen Zeilenumbruch) bzw. 36
Wörter
Zeilen/Wort/Zeichen-Anzahl
theseus wc abc.txt 12 36 144
abc.txt
28
Standarteingabe und Standartausgabe
  • Die Shell stellt Ein- und Ausgabekanäle für
    Prozesse zur Verfügung
  • Kommandos können von der Standarteingabe lesen
    und schreiben ihre Ergebnisse in die
    Standartausgabe
  • Fehlermeldungen werden zu Diagnoseausgabe
    weitergeleitet

29
UNIX-Kommandos und die Standarteingabe
  • Bei den meißten UNIX-Befehlen kann man den
    Dateinamen weglassen.
  • Statt aus einer Datei zu lesen wird von der
    Standarteingabe gelesen.
  • (normalerweise Standarteingabe Tastatureingabe)
  • Falls nötig kann das Dateiende mit CTRL-D
    signalisiert werden.
  • Beispiele

localhost pi sort Pierre Bayerl Klaus
Murmann Heiko Neumann D Heiko Neumann Klaus
Murmann Pierre Bayerl localhost pi
localhost pi tail -n 1 Pierre Bayerl D Bayer
l localhost pi
30
Umleiten der Ein/Ausgabe in/aus eine(r) Datei
  • gt Umlenken der Standardausgabe in eine
    angegebene Datei.
  • existiert die Datei nicht, wird diese angelegt.
  • existiert die Datei, so wird deren Inhalt
    überschrieben!
  • Bsp. ls gtinhalt.txt
  • gtgt hängt neuen Inhalt am Dateiende an!
  • Bsp. ls order1 gtgt inhalt.txt
  • 2gt Umlenken der
  • Diagnoseausgabe
  • Bsp wc x datei1.txt 2gt err.txt
  • (-x als Option ungültig!)
  • lt Umlenken der Eingabe aus
  • einer Datei

localhost pi sort gtout.txt Pierre
Bayerl Klaus Murmann Heiko Neumann D localhost
pi tail -n 1 ltout.txt Pierre
Bayerl localhost pi
31
Verknüpfen mehrer Kommandos über Pipes
  • Direkte Verknüpfung der Ausgabe eines Prozesses
    mit der Eingabe eines anderen Prozesses
  • Syntax Befehl1 Befehl2 Befehl3 ...
  • Bsp. ls /usr/bin grep ail (ohne
    Dateiangabe ließt grep von stdin)

localhost pi sort tail -n 1 Pierre
Bayerl Klaus Murmann Heiko Neumann D Pierre
Bayerl localhost pi
Pipe
32
  1. Internet
  • Prinzip und Organisation
  • Dienste und Adressen
  • WWW (World wide web)
  • E-Mail

33
Prinzip und Organisation Nachrichten-Übermittlung
  • Netze von Rechnern
  • Vermittlungsrechner (Router)
  • Zielrechner
  • Vermittlung und Betrieb (Paketvermittlung)
  • Nachricht von A nach B
  • Zerlegung in Pakete mit Zieladdresse B
  • Versendung der Pakete über möglicherweise
    verschiedene Verbindungen

34
Prinzip und Organisation Protokolle
  • Protokolle Konventionen und Regeln für den
    Austausch von Informationen zwischen Computern im
    Internet
  • Ziel vollständige, fehlerfreie und möglichst
    effektive Datenübertragung
  • TCP/IP heute Standard
  • TCP Transmission Control Protocol
  • IP Internet Protocol

35
Prinzip und Organisation Client-Server-Prinzip
  • Client-Server Prinzip
  • Server (Diener, Anbieter)
  • Programm auf einem Rechner A, das einen
    bestimmten Dienst anbietet und der von einem
    anderen Nutzer abgerufen werden kann.
  • Client (Klient, Kunde)
  • (Anwender-)Programm auf einem Rechner B, das
    den Dienst anfordert.

36
Dienste
  • TELNET oder SSH
  • Zugriff auf andere Rechner (Dialogzugriff).
  • FTP
  • Übertragen (Kopieren) von Dateien zwischen
    verschieden Rechnern.
  • E-MAIL
  • Austausch von Nachrichten.
  • NEWS
  • Diskussion- und Informationsmedium zu vielen
    verschiedenen Themen.
  • HTTP
  • Multimediales hyperlink-basiertes
    Informationssystem und Schnittstelle
  • den anderen Internet-Diensten.
  • DNS
  • Domain Name Service, spezieller Dienst um
    Internetadressen korrekt zu handhaben

37
Internet Adressen
  • Jeder Rechner im Internet besitzt eine aus vier
    Bytes (Zahlen) bestehenden eindeutigen Adresse
    (IP-Adresse), z.B. 134.60.74.81
  • Symbolische Adressen werden von einem speziellen
    Dienst (DNS, Domain Name Service) in IP-Adressen
    umwandelt,
  • z.B. allgemeine.informatik.uni-ulm.de ?
    134.60.74.81.

Rechner A möchte mit Rechner B in Kontakt treten
A
DNS-Server
B
Client
Ziel-Rechner (Server) z.B. allgemeine.informatik.u
ni-ulm.de
38
Internetadressen IP-Adressen
  • Länge 32 Bit 4 Byte à 8 Bit
  • Format von IP-Adressen a.b.c.d
  • a,b,c,d ? 1,254
  • 0 und 255 haben
    Sonderrolle
  • Beispiele gültiger Internet-Adressen
  • 141.41.49.2
  • 194.163.245.145
  • Mit 127.0.0.1 oder localhost kann stets der
    Rechner auf dem gerade gerabeitet wird
    angesprochen werden.

39
Internetadressen Symbolische Adressen (1)
  • Jede an das Internet angeschlossene Einrichtung
    betreibt einen eigenen Namens-Server (DNS, Domain
    Name Server)
  • In jedem Land gibt es einen Haupt-Domain-Name-Serv
    er (verteilte Rechnerdatenbank mit
    Namen/Adresseinträgern)
  • Aufbau der Domain-Namen

Beispiel axon.informatik.uni-ulm.de
40
Internetadressen Symbolische Adressen (2)
  • Adressierungsschema URL (Uniform Resource
    Locator)
  • Beispiel
  • http//www.informatik.uni-ulm.de
  • http//allgemeine.informatik.uni-ulm.de

Vor dem Doppelpunkt steht das zu verwendende
Protokoll (z.B. ftp, http,..).
41
Email
  • Einsatz Verschicken von Nachrichten an
    verschiedene Benutzer des (UNIX)-Systems.
  • verschickte Nachrichten landen in einem
    Briefkasten. (MAIL-BOX)
  • Der Inhalt ist vom jeweiligen Adressaten
    abrufbar.
  • Das Vorhandensein von (neuen) Nachrichten wird
    nach dem Anmelden (login) angezeigt You have
    mail oder You have new mail.
  • Zum lesen der Mails wird ein spezielles Programm
    benötigt (z.B. pine, netscape, ...)

42
Pine (1)
  • ASCII-orientiertes Programm zum lesen und
    schreiben von Mails
  • Wichtigste Menüpunkte
  • - Compose Message (neue Mail schreiben)
  • - Folder List (zeigt Mailverzeichnisse)
  • gt INBOX (hier sind die
    neuen Mails drin)
  • gt sent-mail (die Mails die
    man selber verschickt hat)
  • im unteren Teil des Fensters sieht man welche
    Tasten für welchen Befehl gedrückt werden müssen
    ( bedeutet die ctrl-Taste)
  • wichtige Befehle
  • m zum Hauptmenue
  • q Beenden
    (mit y(es) bestätigen)
  • Control X versenden der Mail
  • (in
    Compose Message)

43
Pine (2)
Hauptmenü
Mögliche Befehle
44
Pine (3)
45
Pine (4)
DEMO
46
  1. Editoren
  • Übersicht
  • vi
  • pico
  • nedit
  • emacs

47
Übersicht
  • Editoren dienen zum Erzeugen und Modifizieren von
    Dateien
  • Textdateien / Dokumente (z.B. ein Reisebericht)
  • Programm-Dateien (z.B. Modula-2 Quellcode)
  • ...
  • Verbreitete UNIX-Editoren
  • vi (sehr spartanisch, aber immer verfügbar und
    sehr mächtig)
  • pico (wird von pine verwendet um mails zu
    editieren)
  • nedit (graphischer Editor à la Windows. Start
    nedit )
  • emacs (sehr mächtiger Editor, graphische Version
    xemacs)

48
Editor vi
  • Auf allen UNIX-Systemen verfügbar, jedoch sehr
    spartanisch
  • Sehr mächtig
  • Auch verfügbar für Windows-Systeme
  • Wichtige Funktionen
  • Editor aufrufen vi Datei
  • Text speichern ltESCgt w
  • Text speichern Editor verlassen ltESCgt wq
  • Editor verlassen ohne zu speichern ltESCgt q!
  • Alternative vim (vi-improved)
  • Lernen den vi oder vim zu bedienen
  • Shell-Kommando vimtutor

49
Editor pico
  • Bedienung ähnlich pine
  • Wichtige Funktionen
  • Editor aufrufen pico Datei
  • Text speichern ctrl-o
  • Text speichern Editor verlassen ctrl-x y
    (y yes für Speichern)
  • Editor verlassen ohne zu speichern ctrl-x n
    (n no für Speichern)
  • Ähnlich wie bei pine werden in der untersten
    Zeile stets mögliche Tastenkombinationen
    angezeigt.

50
Editor nedit
  • Graphischer Editor, benötigt einen graphischen
    Arbeitsplatz
  • (per ssh von einem Windowsrechner steht dieser
    Editor unter Umständen nicht zur Verfügung)
  • Bedienung ähnlich wie Windows-Applikationen
  • Sehr leicht zu bedienen
  • Alle Funktionen sind per Menü-Zeile mit der Maus
    erreichbar
  • Wichtige Funktionen
  • Editor aufrufen nedit Datei ( startet das
    Programm und kehrt zur Kommandozeile zurück)
  • Text speichern ctrl-s
  • Editor verlassen ctrl-q

51
Editor emacs / xemacs
  • Sehr verbreitet, auf nahezu allen UNIX-Systemen
    verfügbar
  • Sehr mächtig
  • Auch verfügbar für Windows-Systeme
  • Wichtige Funktionen
  • Editor aufrufen emacs Datei oder xemacs Datei
  • Text speichern ctrl-x ctrl-s (nacheinander
    ctrlx und ctrls drücken)
  • Editor verlassen ctrl-x ctrl-c
  • Editor-Befehl abbrechen ctrl-g
  • Zeile n anspringen ltESCgt g n
  • Undo (Rückgänig) ctrl-x u (nacheinander ctrlx
    und u drücken)
  • Lernen den emacs oder xemacs zu bedienen
  • Editor-Kommando ctrl-h t (nacheinander ctrlx
    und u drücken)
Write a Comment
User Comments (0)
About PowerShow.com