Zweiter Fragebogen zu Unix1
Signale und JobControl
- 1.
-
Was sind Signale? Wie sieht die Repräsentation des Datentyps
,,Signal`` im Kern aus? Wo steht sie?
- 2.
-
Wie kann man auf Signale reagieren? Wo steht, welches Signal wie
behandelt wird?
- 3.
-
An welcher Stelle im Kernel wird abgeprüft, ob ein Signal eingetroffen
ist und eventuell dessen SignalHandler angesprungen?
- 4.
-
Was ist ein SignalHandler?
Wie wird er installiert?
- 5.
-
Welcher Unterschied bei der Installation von SignalHandlern besteht
zwischen System V und BSD?
- 6.
-
Ein Programm hat mit
close(0)
seine StandardEingabe geschlossen.
Wie kann man in diesem Programm die StandardEingabe vom
controllingtty
wieder öffnen?
- 7.
-
Wie kann ein Prozeß verhindern, daß er bei
Eingabe von CTRLC am Terminal terminiert?
Nenne mindestens 3 Möglichkeiten!
- 8.
-
Welcher Zusammenhang besteht zwischen Terminals, Signalen und
Prozeßgruppen?
- 9.
-
Was ist eine Session?
- 10.
-
Welcher Zusammenhang besteht zwischen den Begriffen Session und
Controlling TTY?
- 11.
-
Ist es einem Prozeß möglich, sein Controlling TTY zu wechseln? Wenn
ja, wie?
- 12.
-
Was geschieht, wenn ein Benutzer versucht, im Hintergrund einen Text
mit dem folgenden Kommando zu editieren:
vi text &
I/O und Synchronisation
- 13.
-
Wozu dient der Systemcall mknod(2)?
- 14.
-
Was ist in die Device Swich Tables eingetragen?
Wie sind sie aufgebaut?
Wieso gibt es zwei davon?
- 15.
-
Wie findet das UnixSystem an Hand des Special Device Files den
korrekten Gerätetreiber?
- 16.
-
Wozu dienen Major und
MinorDeviceNumber?
Wo sind sie abgelegt?
- 17.
-
In welchem Fall haben zwei Geräte zwar eine unterschiedliche
MinorDeviceNumber, aber die gleiche MajorDeviceNumber?
- 18.
-
Warum gibt es typischerweise für jeden BlockSpecialTreiber ein
CharacterSpecialFile?
- 19.
-
Unter welche Umständen ruft ein Prozeß die
interne KernelFunktion
sleep
auf?
Wann wird er wieder aufgeweckt, in welchem Zustand kann
der Prozeß sich dabei befinden?
- 20.
-
Warum muß ein Prozeß nach der Rückkehr aus dem Aufruf von
sleep
noch einmal prüfen, ob die Bedingung, für die er
sich schlafengelegt hat, auch wirklich eingetroffen ist?
Was muß er tun, wenn die Bedingung nicht eingetreten ist?
- 21.
-
Wieso ist Unix in seiner ursprünglichen Form nicht echtzeitfähig?
IPC
- 22.
-
Beschreibe kurz die Begriffe:
- Signale,
- Sockets,
- Named Pipes und
- Unnamed Pipes.
Gehe dabei auf Verwandschaftsgrad der Kommunikationspartner,
Art und Menge der ausgetauschten Daten, Richtung der Kommunikation und
Synchronität ein.
- 23.
-
Wozu benutzt man ,,Pseudo TTYs``?
Welche Anwendungen, die ,,Pseudo TTYs``
verwenden, sind Dir bekannt?
- 24.
-
Wie ermöglichen es telnet(1) und der telnetd(8), daß man an einem
virtuellen Terminal eines anderen Rechners arbeiten kann?
- 25.
-
Warum werden eine IPAdressen und Portnummern immer in
NetworkByteOrder übertragen?
Warum hat man überhaupt das Konzept einer einheitlichen
NetworkByteOrder eingeführt?
- 26.
-
Was bedeuten
die Begriffe Big Endian und Little
Endian?
Woher kommen sie?
Nenne je drei Beispiele für Big und
LittleEndianCPUs!
- 27.
-
Beschreibe kurz, welche Systemaufrufe auf beiden Seiten notwendig sind,
um eine Kommunikationsbeziehung zwischen einem Client und einem Server
aufzubauen, wenn TCPSockets in der InternetDomäne verwendet werden!
- 28.
-
Wozu dient der Parameter ,,type`` beim Systemcall socket(2)?
- 29.
-
Was genau ist die Aufgabe des bind(2)Systemcalls?
- 30.
-
Welche Daten enthält die Struktur sockaddr_un, die bind(2) bei
Verwendung von UnixDomainSockets übergeben
wird?
Was steht stattdessen in sockaddr_in bei InternetSockets?
- 31.
-
Welche Bedeutung hat der Parameter ,,backlog`` bei listen(2)?
- 32.
-
Wieso ist es sehr sinnvoll, daß accept(2) als Rückgabewert einen
neuen, fertig vorinitialisierten Socketdeskriptor liefert?
Was kann ein Server damit anfangen?
- 33.
-
Welche Auswirkungen hat der Aufruf von accept(2) auf die Empfangsqueue?
- 34.
-
Werden auch existierende Kommunikationsverbindungen über Sockets bei
der Prozeßtermination geschlossen, oder bleiben diese mit einem nun
leeren Ende bestehen, bis sie explizit abgebrochen werden? Warum?
- 35.
-
Welche Informationen sind in der InternetDomäne nötig, um eine
Kommunikationsbeziehung mit einem Server aufzubauen?
- 36.
-
Welche Funktionalität erbringt UDP?
Welche Unterschiede gibt es zu TCP?
Wann sollte das UDPProtokoll verwendet werden?
- 37.
-
Welcher Mechanismus wurde von TCP und UDP eingeführt, um Prozesse
auf einem Rechner eindeutig adressieren zu können? Warum sind die
PIDs hierfür ziemlich ungeeignet?
- 38.
-
Welche Funktionalität erbringt IP?
- 39.
-
Erläutere kurz den prinzipiellen Aufbau des Internet!
Was ist in diesem Zusammenhang ein Gateway?