Betriebssysteme
Kartei zur Vorlesung Bsys
Kartei zur Vorlesung Bsys
-
- 1 / 196
-
Flashcards
Welche Möglichkeiten zum Kontrollfluss gibt es bei BAT-Dateien
- GOTO
- IF
- FOR
Geben Sie ein Beispiel für eine If-Anweisung an (BAT-Datei)
if exist test.c echo Datei test.c gefunden
Geben sie ein Beispiel für eine For-Anweisung an (BAT-Datei)
for %i in (1,2,3,a,cc,ddd) do echo %i
Was ist der Windows Scripting-Host?
Es ist ein Host der meherer Programmiersprachen unterstützt/beherbergt mit denen es möglich ist zu Scripten.
Eingeführt wurde er da die Möglichkeiten von Kontrollstrukturen in BAT Dateien begrenzt ist
Worin unterscheider sich die Powershell con anderen Shells/Kommandointerpretern?
- Integration von Kontrollkontrukten auf Kommandozeilenebene
- Verwendet die .NEt Technologie somit ist Typisierung der Variablen vorhanden anstatt nur String zu verwenden
Geben Sie ein Beispiel einer Anweisung in der Powershell an
C:\> "hello world" | Get-Member
Gibt den Objekttyp der String zurück
Was passiert bei der Anweisung:
dir |% { $_.Name }
(Powershell
Erklären sie den genauen Ablauf
Liste aller Dateinamen:
% ist alias für foreach
Nennen sie die Expansions der BASH
(6 Stück)
- Brace Expansion
- PathExpansion
- Tilde Expansion
- Parameter und Variablen Expansion
- Arithmetische Expansion
- Command Expansion
Was bewirkt die Brace-Expansion? (BASH)
Geben Sie ein Beispiel an
Mit Hilfe der Brace-Expansion können Alternativen von String gebildet werden. Die Unterschiede werden dazu in "{}" angegeben
echo xxxx{1,2,3}oooo
ergibt
xxxx10000 xxxx20000 xxxx30000
Was bewirkt die Path-Expansion? Geben sie ein Beispiel an (BASH)
Die Path-Expansion erzeugt eine Menge von Dateinamen mit Hilfe von Wildcards
echo /bin/a*
erzeugt eine liste aller elemente in bin die mit a anfangen
/bin/alsacard /bin/alsaunmute ...
* steht für belibieg viele elemente
? für genau eins
Was bewirkt die Tilde-Expansion? Geben sie ein Beispiel an (BASH)
Dsa Tildesymbol ~ dient als Abküürzung für das Heimatverzeichnis eines Benutzers. Es wird wie folgt epandiert.
- ~ expandiert zum HVZ des aktuellen benutzers
- ~ name zu dem HVZ des Benutzers name.
Wizu ist eine Arithmetische Expansion gut? Geben sie ein Beispiel dafür an (BASH)
Umgebungsvariablen werden als Strings angesehen und man kann mit ihnen nicht rechnen.
Die Arithmetische Expansion macht dies möglich! $((Ausdruck))
Beispiel:
x=1
echo x+1
echo $x+1
echo $((x+1))
lliefert
x+1
1+1
2
Wann werden die Expansions der Bash ausgeführt?
Expansion werden eingesetzt bevor ein Kommando ausgeführt wird
Wie viele Parameter werden einem Programm übergeben, wenn in der Kommandozeile der Parameter * angegeben wird?
Anzahl der Datei im aktuellen Verzeichnis
Welche möglichkeiten gibt es, um mehrere Kommandos in einer Zeile zu kombinieren?
(3 Stück)
- K1;K2 - Alle Kommandos werden Ausgeführt
- K1 && - K2 K2 wird gestartet wenn 1 funktioniert hat
- K1 || K2 - K2 wird gestartet wenn K1 nicht funktioniert hat
Welche Formen der if-Bedingung kennen Sie?
if <ausdruck>
then
<Befehle bei True>
else
<Befehle bei False>
fi
Alternativ in einer Zeile
if <Ausdruck>; then <Befehle True>; else <Befehle False>; fi
Welche Bedeutung hat das Schlüsselwort test? Geben sie eine alternative Schreibweise an
In der Bash sind viele Bedingungen schon eingebaut. Diese internen Bedingungen werden mit Hilfe des Schlüsselwortes test eingeleitet. Folgendes Beispiel prüft ob eine Datei existiert und gibt dann Meldung aus:
if test -f myTest.c; then echo Datei wurde gefunden; fi
anstelle von test -f kann man auch eine Art Klammerschreibweise verwenden:
if [ -f myTest.c ]; then...
wichtig sind die leerzeichen in der Klammer
Was ist ein Alias?
Aliase sind Abkürzungen für Befehlsfolgen, die man sich selbst definieren kann, um Tipparbeit zu sparen
alias key='Befehle..."
Was ist ein Job?
Als Job bezeichnet man i.d.R eine Menge von Prozessen, die eine Aufgabe bearbeiten. Dies kann z.B. eine Skriptdatei sein, in der mehrere Aufgaben ausgeführt werden. Es kann aber auch nur ein einzelner Prozess sein. Jobs arbeiten im "Hintergrund" ohne auf weitere Eingabenn zu warten.
Welche Möglichkeiten bietet ihnen unix um jobs zu kontrollieren?
(6 Stück)
- & am Ende der Zeile.. die Bash kehrt nach dem Start des Prozesses sofort wieder zurück für weitere Eingaben
- ctrl-c Abbruch des aktuellen im Vordergrund laufenden Prozesses
- ctrl-z Anhalten des aktuellen Prozesses und rpckkehr zur Bash
- jobs Anzeige aller Hintergrundjobs
- fg <nummer> Jobnummer <nummer> wird in den Vordergrund geholt, Bash wartet wieder
- bg <nummer> Weiterlaufenlassen des angehaltenen Jobs im Hintergrund
- kill <pid oder job> Beenden des Jobs oder Prozesses
Was ist die History?
Die Bash merkt sich Befehle in der datei ~/.bash_history
Mit hilfe des Befehls history kann man sich alle bisher eingegebenen Befehle anzeigen lassen.
Was bedeutet der ! Operator (BASH)?
Mit Hilfe des Operators ! am Anfang einer Zeile lässt sich ein Befehl wiederholen
Dabei liefert !! den letzen verwendeten Befehl und !<nummer> den Befehl aus der Hostorie mit der jeweiligen nummer.
Welche Möglichkeiten bietet ihnen die TAB-Taste in der Eingabe? (BASH)
Dient der automatischen Ergänzung von Befehlen oder Dateinamen
Wozu dient der source Befehl?
Wird ein Script gestartet, wird dieses in einer neuen Instanz der Bash ausgeführt. source oder "." verhindert das.
Dies bedeutet dass ein Skript das mit Hilfe von Source ausgeüführt wird im selben Prozess existiert (in der BASH dies ausgeführt hat).
Was sind Startupdateien und wozu sind sie gut?
Alle Einstellungen (Variablen, Aliase etc.) gelten nur in der Bash, in der man diese definiert und evtl. in weiteren durch diese Bash gestarteten Shells. Nach Beendigung sind alle Einstellungen verschwunden. Will man diese dauerhaft erhalten, so kann man Startup-Skripte verwenden und alle einstellungen in diesen Skripten vornehmen.
Welche Startupdateien der BASH sind ihnen bekannt?
- ~/.bashrc
- ~/.profile
Welches Script wird beim Anmelden an Linux ausgeführt?
~/.profile
Welches Script wird beim ausführen der BASH ausgeführt?
~/.bashrc
Welches Programm ist bei Windows für die Darstellung des Desktops zuständig?
Windows Explorer
Welches System wird in UNIX verbreitet als grafische Oberfläche verwendet?
X-Windows
Welche Aufgaben hat ein X-Server und wie funktioniert er?
Der X-Server ist der Teil, der für die grafische Ausgabe der Daten auf einem Bildschirm zuständig ist. Ein Benutzer startet auf einem Client-PC einen X-Server. Dieses Server empfängt über das Netz Zeichenkommandos vom X-Client und stellt diese am Bildschirm dar. Die Kommunikation mit dem X-Client erfolgt über das X11-Protokoll, das heutzutage über TCP/IP übertragen wird.
Was ist ein X-Client?
Ein X-Client ist jedes Programm, das eine grafische Ausgabe erzeugen möchte. Ein X-Client läuft i.d.R. auf einem UNIX-Server und sendet seine Zeichenbefehle zu einem X_Server, der diese dann am Bildschirm darstellt. Damit der X-Client seinen Server auch findet, muss ihm die Adresse des Servers mitgeteilt werden.
Auf welche Arten kann man dem X-Client seinen jeweiligen X-Server mitteilen?
(2 Arten)
- Als Kommandozeilenoptionen beim Start des X-Clients "-display x-server-dns-name:0"
- Mit Hilfe der Umgebungsvariablen "export Display=x-server-dns-name:0"
Was ist der Windowmanager bei UNIX Systemen (hängt mit X-Windows zusammen).
Ein X-Client stellt nur den Inhalt eines Fensters auf dem X-Server dar. Was noch fehlt sind die sogen. Fensterdekorationen (Rahmen, Knöpfe, Desktopmenüs...) Die Fensterdekos werden bei X von einem seperaten Prozess, dem Window-Manager erstellt.
der WM ist wiederum ein X-Client.
Wozu dient das XDMCP Protokoll? (X-Windows)
Startet eine komplette X-Sitzung mit allen notwendigen X-Client-Programmen
(aufbau der Sitzung per Hand ist aufwendig)
Welches Programm ist bei Mac-OS für die Darstellung des Dateisystems (Ordner etc.) zuständig?
MAC-OS Finder
Wie ist ein grafisches Programm im innersten (Hauptschleife) aufgebaut?
while(!EndeNachrichtErhalten) {
m = getNextEvent();
processEvent(m);
}
Nach welchem Prinzip (Programmierart) arbeiten die meisten grapischen Oberflächen?
Ereignisorientiert
wartet auf Ereignisse z.b Drücken einer Maustaste, Ablauf eines Timers etc.
Nennen Sie einige Programmierbibliotheken für X-Windows
(6 Stück)
- X-Lib
- Xt
- Xaw
- Motif
- Gtk+
- Qt