CS计算机代考程序代写 ER 1 Prozesse und Scheduling (16 Punkte)

1 Prozesse und Scheduling (16 Punkte)
a) UNIX Shell (insgesamt 5 Punkte)
1) „$ ls > Dateien.txt“ (2 Punkte) Was bewirkt die Ausführung dieses Kommandos in einer UNIX-Shell?
2) „$ cat Dateien.txt | grep txt“ (3 Punkte) Was bewirkt die Ausführung dieses Kommandos in einer UNIX-Shell?
b) Prozess-Scheduling (FCFS) (5 Punkte) Ein Betriebssystem verwaltet drei zyklisch-arbeitende Pro- zesse P1, P2 und P3. Die Prozesse treffen zum Zeitpunkt der in der Tabelle angegebenen Ankunftszeit ein. In der folgenden Tabelle sind alle Zeitangaben in ms angegeben.
Prozess Ankunftszeit CPU-Zeit E/A-Zeit P1 20 40 20 P2 30 20 10 P3 0 30 40
Zeichnen Sie in das folgende Gantt-Diagramm ein, wie die drei Prozesse P1, P2 und P3 abgearbeitet werden, wenn das Scheduling nach der First-Come First-Served-Strategie vorgenommen wird. Jeder Prozess ist nach erfolgreicher Abarbeitung von je einem CPU- und einem E/A-Stoß wieder rechen- bereit. Auf einen CPU-Stoß folgt immer ein E/A-Stoß. Die Prozessumschaltzeit kann vernachlässigt werden. E/A-Vorgänge können parallel zu anderen E/A-Vorgängen und CPU-Stößen ausgeführt wer- den. Markieren Sie in dem folgenden Diagramm die Prozesszustände entsprechend der Legende. Es genügt die ersten 200ms anzugeben.
Hinweis: Die ersten drei Zeiteinheiten sind bereits fertig ausgefüllt.
P1 P2 P3
(Ersatzdiagramm auf dem Reserveblatt: Streichen Sie ungültige Lösungen deutlich durch!)
t[ms]
Legende:
Running Ready Blocked
0 100 200
Probeklausur Betriebssysteme, 25.06.2018 Seite 1 von 6

c) Prozesserzeugung (6 Punkte) Was gibt das folgende C-Programm aus? Was bewirken die Funktionen fork und pthread_create?
Hinweis: Fehlerabfragen und die #include-Zeilen zur Einbindung der Systemheader wurden der Einfachheit halber weggelassen.
1 #define GALAXIES_BOUND 10
2 int worlds , galaxies ;
3 pthread_t demiurge ;
4
5 void∗ populateGalaxies(void∗ param) { 6inti;
7 8 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
for ( i =0;i