02.11.2013 Aufrufe

Technische Praxis der Computersysteme Teil 1 - Universität Wien

Technische Praxis der Computersysteme Teil 1 - Universität Wien

Technische Praxis der Computersysteme Teil 1 - Universität Wien

MEHR ANZEIGEN
WENIGER ANZEIGEN

Erfolgreiche ePaper selbst erstellen

Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.

6.3 Prozeßkontrolle 6 BENUTZUNG 2<br />

Benutzerumgebung<br />

beim Einloggen werden folgenden Dateien abgearbeitet:<br />

– /etc/profile<br />

– $HOME/.bash\_profile<br />

– $HOME/.bashrc<br />

– /etc/bashrc<br />

beim Ausloggen:<br />

– $HOME/.bash\_logout<br />

systemweite Einstellungen in /etc/<br />

benutzerspezifische Einstellungen in $HOME<br />

Folie 98<br />

Hat man z.B. rm als Alias für rm -i gesetzt, was durchaus empfehlenswert ist, so kann<br />

man das Kommando rm normal ausführen, wenn man den ganzen Pfad angibt; in diesem Fall<br />

wird also mit /bin/rm die Rückfrage, ob das File wirklich gelöscht werden soll, unterdrückt.<br />

Seine Aliases definiert man sinnvollerweise nicht in je<strong>der</strong> Session neu, son<strong>der</strong>n speichert<br />

sie in $HOME/.bashrc ab. Dann stehen sie immer zur Verfügung. Falls man seinen Suchpfad<br />

dauerhaft abän<strong>der</strong>n will, so empfiehlt es sich auch, die entsprechende Definition in <strong>der</strong><br />

.bashrc abzulegen.<br />

6.3 Prozeßkontrolle<br />

Wie wir bereits (aus Kapitel 0) wissen, ist ein Prozeß ein laufendes Programm; vom System<br />

werden ihm verschiedene Ressourcen zur Verfügung gestellt und verschiedene Rechte eingeräumt.<br />

Etwas detaillierter verfügt ein Prozeß über eine Prozeßumgebung; ihre wichtigsten<br />

Bestandteile sind auf Folie 99 aufgelistet, Folie 100 zeigt ein Beispiel.<br />

Prozesse werden systemintern über eine eindeutige Nummer, die Prozeß ID (PID) identifiziert,<br />

die beim Prozeßstart vom Kernel vergeben wird. Prozesse existieren in einer Eltern-<br />

Kind Hierarchie. Startet ein Prozeß einen neuen, so ist dieser sein Child-Prozeß; umgekehrt<br />

ist <strong>der</strong> Ursprüngliche Prozeß <strong>der</strong> Parent-Prozeß (wichtiges Bsp: Subshell).<br />

Aus einer Shell kann man neue Prozesse auf verschiedene Arten aufrufen. Man kann sie<br />

im Vor<strong>der</strong>grund starten, so wie wir das bisher immer getan haben, wir können sie aber auch<br />

im Hintergrund starten; dann bleibt die Shell für weitere Eingaben frei. Sinnvoll ist das vor<br />

allem, wenn wir aus einer Shell o<strong>der</strong> einer Terminal Emulation Programme aufrufen, die<br />

dann auf einem GUI laufen (z.B. netscape). Die Syntax ist auf Folie 101 erklärt.<br />

Informationen über die Umgebung laufen<strong>der</strong> Prozesse können mit ps abgefragt werden,<br />

ps aux zeigt z.B. alle am System laufenden Prozesse an. Die Porzeßhierarchie kann mittels<br />

pstree angezeigt werden. Mit dem Kommando kill [- signal] PID können Signale an<br />

einen Prozeß geschickt werden, um diesen (vor allem—wie schon zu vermuten war—) zu<br />

beenden. Weiters können Prozesse vom Vor<strong>der</strong>grund in den Hintergrund beför<strong>der</strong>t werden<br />

und vice versa. Die Folien 102, 103 geben Auskunft über die Syntax <strong>der</strong> entsprechenden<br />

Befehle.<br />

Schließlich erwähnen wir an dieser Stelle die sogenannten Daemons (Disk And Execution<br />

MONitors); diese sind Prozesse, die dauerhaft im Hintergrund laufen und wichtige System-<br />

85

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!