Last modified by Thomas Schwotzer on 2025/04/09 12:44

From version 200.1
edited by Thomas Schwotzer
on 2024/12/04 09:17
Change comment: There is no comment for this version
To version 203.3
edited by Thomas Schwotzer
on 2025/04/09 12:38
Change comment: There is no comment for this version

Summary

Details

Page properties
Content
... ... @@ -1,12 +1,12 @@
1 1  Es ist enorm hilfreich, wenn Sie zuvor die Veranstaltung [[Praktische Grundlagen der Informatik>>url:http://christianherta.de/lehre/praktischeInformatik/praktischeInformatik.php||shape="rect"]] erfolgreich abschlossen. Ich gehe davon aus, dass Sie mit einen Rechner auch auf der Shell-Ebene arbeiten können.
2 2  
3 -Betriebssysteme und Netzwerke werden in vielen Studiengängen in zwei getrennten Kursen gegeben. Dabei wurden die Betriebssysteme, mit denen wir arbeiten sehr stark von den Netzwerken beeinflusst. Den ersten [[drahtlosen Telegrafen entwickelte Gauss bereits 1833>>url:https://de.wikipedia.org/wiki/Carl_Friedrich_Gau%C3%9F#Magnetismus,_Elektrizit%C3%A4t_und_Telegrafie||shape="rect"]]. In der Zeit diskutierte und entwickelte man auch Programmiersprachen. Die Grundlagen unserer Betriebssysteme wurden aber 1940er Jahren gelegt. Multitaskingsysteme waren zwingend notwendig, um gleichzeitig Netzwerkverkehr und Eingaben von Menschen zu bearbeiten. Wir folgen in diesem Kurs daher auch dieser Historie, fangen mit Netzwerken an und beschäftigen uns dann mit Betriebssystemen, wenn wir merken, dass single-threaded nicht ausreicht für das was wir tun wollen.
3 +Betriebssysteme und Netzwerke werden in vielen Studiengängen in zwei getrennten Kursen gegeben. Dabei wurden die Betriebssysteme, mit denen wir arbeiten sehr stark von den Netzwerken beeinflusst. Den ersten [[drahtlosen Telegrafen entwickelte Gauss bereits 1833>>url:https://de.wikipedia.org/wiki/Carl_Friedrich_Gau%C3%9F#Magnetismus,_Elektrizit%C3%A4t_und_Telegrafie||shape="rect"]]. In der Zeit diskutierte und entwickelte man auch Programmiersprachen. Die Grundlagen unserer Betriebssysteme wurden aber 1940er Jahren gelegt. Multitaskingsysteme waren zwingend notwendig, um gleichzeitig Netzwerkverkehr und Eingaben von Menschen zu bearbeiten.
4 4  
5 5  == {{id name="B23BetriebssystemeundNetzwerke-Prüfungsleistungen"/}}Prüfungsleistungen ==
6 6  
7 7  Am Ende der Veranstaltung steht eine **Klausur**. Sie werden eine schriftliche Arbeit schreiben.
8 8  
9 -Als** semesterbegleitende Leistung** implementieren Sie ein kleines dezentrales Programm. Die Arbeit daran beginnt in der 1. Übung. Das Programm unterstützt Sie beim Lernen der Konzepte und zeigt umgekehrt, ob Sie sich mit den Themen während des Semesters beschäftigten. Am Ende des Semester sind Sie in der Lage, ein Programm zu schreiben, dass eine TCP-Verbindung zu einem anderen Prozess herstellt und mit diesem wohl definierte PDUs austauscht. Das wird am Ende der Vorlesungszeit in einem kleinen Programmiertest geprüft. **Diesen Test müssen Sie bestehen. Erst dann gibt es Punkte. Es gibt keine Punkte für eine nicht fertige Lösung.** Bestehen Sie den Test nicht, sind Sie auch nicht zur Klausur zugelassen. Der Test wird aus zwei Teilen bestehen. Der erste findet im ersten dritten des Semester statt (zählt 1/3), der letzte Test am Ende der Vorlesungszeit (2/3)
9 +Als** semesterbegleitende Leistung** implementieren Sie ein kleines dezentrales Programm. Die Arbeit daran beginnt in der 1. Übung. Das Programm unterstützt Sie beim Lernen der Konzepte und zeigt umgekehrt, ob Sie sich mit den Themen während des Semesters beschäftigten. Am Ende des Semester sind Sie in der Lage, ein Programm zu schreiben, dass eine TCP-Verbindung zu einem anderen Prozess herstellt und mit diesem wohl definierte PDUs austauscht. Ihre Fortschritte in der Übung werden durch einen Programmiertest geprüft werden. Diese Test wird aus mehrere Teilen (also wenigstens zwei) bestehen. Diese Test
10 10  
11 11  Wir sind eine Hochschule für angewandte (!) Wissenschaften. Sie müssen grundlegende Dinge praktisch umsetzen können. Das ist auch gar kein Problem, wenn Sie sich aktiv an den Übungen beteiligen. Wirklich gar kein Problem. Es kann ein ernsthaftes Problem werden, wenn Sie die Übungen ignorieren.
12 12  
... ... @@ -36,7 +36,7 @@
36 36  
37 37  [[Einige Foliensätze habe ich kommentiert auch in die Mediathek gestellt>>url:https://mediathek.htw-berlin.de/album/view/aid/334||shape="rect"]].
38 38  
39 -(% class="wrapped relative-table" style="width: 100.0%;" %)
39 +(% class="relative-table wrapped" style="width:100.0%" %)
40 40  |=(((
41 41  #
42 42  )))|=(((
... ... @@ -51,8 +51,7 @@
51 51  |(((
52 52  1
53 53  )))|(((
54 -**Betriebssysteme - Einstieg
55 -**
54 +**Betriebssysteme - Einstieg**
56 56  )))|(((
57 57  Betriebssysteme - wozu dient alle das und wer hats erfunden. Wir beginnen mit der Keilschrift und hören bei UNIX auf.
58 58  )))|(((
... ... @@ -86,10 +86,10 @@
86 86  )))|(((
87 87  (% class="content-wrapper" %)
88 88  (((
89 -\\
88 +
90 90  
91 91  
92 -\\
91 +
93 93  )))
94 94  )))
95 95  |(((
... ... @@ -103,7 +103,7 @@
103 103  
104 104  [[LN:Threads mit Java>>url:http://www.sharksystem.net/htw/GMA/LN/Threads_Java_Android.pdf||shape="rect"]]
105 105  )))|(((
106 -\\
105 +
107 107  )))
108 108  |(((
109 109  4
... ... @@ -118,7 +118,7 @@
118 118  
119 119  [[Codebeispiel: Synchronisation>>url:https://github.com/thsc42/OperatingSystems/tree/master/src/raceConditions||shape="rect"]]
120 120  )))|(((
121 -\\
120 +
122 122  )))
123 123  |(((
124 124  5
... ... @@ -133,7 +133,7 @@
133 133  
134 134  [[Mediathek: Fehlerkorrektur und -erkennung>>url:https://mediathek.htw-berlin.de/album/video/Fehlererkennung-behebung-Hamming-Frames-Synchronisation-OSI-Layer-2/9d682f6b9ef2cac57be9795f35a57a29/334||shape="rect"]]
135 135  )))|(((
136 -\\
135 +
137 137  )))
138 138  |(((
139 139  6
... ... @@ -148,7 +148,7 @@
148 148  
149 149  [[Mediathek:CSMA>>url:https://mediathek.htw-berlin.de/video/Carrier-Sense-Multiple-Access-CSMA/dc16139e4522ef04e708c69ae0000abf||shape="rect"]]
150 150  )))|(((
151 -\\
150 +
152 152  )))
153 153  |(((
154 154  7
... ... @@ -167,7 +167,7 @@
167 167  )))|(((
168 168  (% class="content-wrapper" %)
169 169  (((
170 -\\
169 +
171 171  )))
172 172  )))
173 173  |(((
... ... @@ -187,7 +187,7 @@
187 187  
188 188  [[Mediathek:IP>>url:https://mediathek.htw-berlin.de/album/video/Internet-Protocol-IP/dccfad000b93bacfe0d4563f583a42c5/334||shape="rect"]]
189 189  )))|(((
190 -\\
189 +
191 191  )))
192 192  |(((
193 193  9
... ... @@ -200,15 +200,16 @@
200 200  
201 201  [7]
202 202  
202 +[[Mediathek>>url:https://mediathek.htw-berlin.de/album/video/tcp-udp/817fbf28e183c4fcc36a2cf914713285/334||shape="rect"]]
203 +
203 203  [[Mediathek: Layer1-4>>url:https://mediathek.htw-berlin.de/album/video/OSI-Layer-1-4/cfe6541e4a0ecb5092a4ffd650334182/334||shape="rect"]]
204 204  )))|(((
205 -\\
206 +
206 206  )))
207 207  |(((
208 208  10
209 209  )))|(((
210 -**Scheduling / Deadlocks
211 -**
211 +**Scheduling / Deadlocks**
212 212  )))|(((
213 213  Scheduler. Vielleicht kommen wir soweit und Sie wissen, was sich hinter dem Kommando shell Kommando //nice// auf verbirgt.
214 214  
... ... @@ -218,9 +218,11 @@
218 218  
219 219  [2] S.93-99, 150-166 + S.181, 186ff
220 220  
221 -[[Mediathek>>url:https://mediathek.htw-berlin.de/video/Betriebssysteme-und-Netzwerke-Scheduling/394e546de01c41a388ac2afc2d9cdd6c||shape="rect"]] [[Mediathek>>url:https://mediathek.htw-berlin.de/album/video/deadlocks/a74ffe24a122016f66a28e377b4de5ab/334||shape="rect"]]
221 +[[Mediathek:Scheduling>>url:https://mediathek.htw-berlin.de/video/Betriebssysteme-und-Netzwerke-Scheduling/394e546de01c41a388ac2afc2d9cdd6c||shape="rect"]]
222 +
223 +[[Mediathek:Deadlocks>>url:https://mediathek.htw-berlin.de/album/video/deadlocks/a74ffe24a122016f66a28e377b4de5ab/334||shape="rect"]]
222 222  )))|(((
223 -\\
225 +
224 224  )))
225 225  |(((
226 226  11
... ... @@ -239,16 +239,14 @@
239 239  
240 240  [[Mediathek>>url:https://mediathek.htw-berlin.de/album/video/domain-name-service-dns/c411b9faba8a704eea698beef3254227/334||shape="rect"]]
241 241  )))|(((
242 -\\
244 +
243 243  )))
244 244  |(((
245 245  12
246 246  )))|(((
247 -**E-Mail
248 -**
249 +**E-Mail**
249 249  )))|(((
250 -Wir schauen uns SMTP und ein wenig POP und IMAP an. Wir werfen aber vor allem auch einen Blick in das Format einer Mail; in dem Kontext entstand nämlich MIME was man dann auch in HTTP nutzte.**
251 -**
251 +Wir schauen uns SMTP und ein wenig POP und IMAP an. Wir werfen aber vor allem auch einen Blick in das Format einer Mail; in dem Kontext entstand nämlich MIME was man dann auch in HTTP nutzte.
252 252  )))|(((
253 253  [[~[8~]>>url:http://www.sharksystem.net/paper/diplom_schwotzer.pdf||shape="rect"]] 2.2 (POP und IMAP)
254 254  
... ... @@ -259,7 +259,7 @@
259 259  
260 260  [[Mediathek>>url:https://mediathek.htw-berlin.de/album/video/e-mail-pop-imap-smtp-base64-mime/c53f7fe8b966f7dd17068a2add09060c/334||shape="rect"]]
261 261  )))|(((
262 -\\
262 +
263 263  )))
264 264  |(((
265 265  13
... ... @@ -270,7 +270,7 @@
270 270  )))|(((
271 271  [[Mediathek>>url:https://mediathek.htw-berlin.de/album/video/http/2fd5decaa8938d672bd8bcc1f64472b9/334||shape="rect"]]
272 272  )))|(((
273 -\\
273 +
274 274  )))
275 275  |(((
276 276  13
... ... @@ -281,10 +281,10 @@
281 281  )))|(((
282 282  [[LN:Funktionsstack>>url:http://www.sharksystem.net/htw/Prog1/MethodenUndStack.pdf||shape="rect"]] , [[LN:Rekursion / Stack und Heap>>url:http://www.sharksystem.net/htw/Prog1/RekursionUndStack.pdf||shape="rect"]], [[LN:eindimensionale Arrays>>url:http://www.sharksystem.net/htw/Prog1/EindimensionaleArrays.pdf||shape="rect"]], [[LN:mehrdimensionale Arrays>>url:http://www.sharksystem.net/htw/Prog1/MehrdimensionaleArrays.pdf||shape="rect"]],
283 283  )))|(((
284 -\\
284 +
285 285  )))
286 286  |(((
287 -\\
287 +
288 288  )))|(((
289 289  Inter Process Communications (IPC): Shared Memory
290 290  
... ... @@ -294,12 +294,12 @@
294 294  )))|(((
295 295  [2] 2.3
296 296  
297 -\\
297 +
298 298  )))|(((
299 -\\
299 +
300 300  )))
301 301  |(((
302 -\\
302 +
303 303  )))|(((
304 304  Dateinsysteme, Speicherverwaltung / Paging / Caching
305 305  )))|(((
... ... @@ -307,21 +307,21 @@
307 307  )))|(((
308 308  [2] 6
309 309  )))|(((
310 -\\
310 +
311 311  )))
312 312  |(((
313 -\\
313 +
314 314  )))|(((
315 315  Virtualisierung
316 316  )))|(((
317 317  optional
318 318  )))|(((
319 -\\
319 +
320 320  )))|(((
321 -\\
321 +
322 322  )))
323 323  |(((
324 -\\
324 +
325 325  )))|(((
326 326  Architekturen
327 327  )))|(((
... ... @@ -335,10 +335,10 @@
335 335  
336 336  [[Mediathek:Distributed Systems>>url:https://mediathek.htw-berlin.de/album/video/Verteilte-Anwendungsmuster-P2P-Client-Server-Agenten-SharkASAP/db6b10a1014fbda7eeb9b49eadead34b/329||shape="rect"]]
337 337  )))|(((
338 -\\
338 +
339 339  )))
340 340  |(((
341 -\\
341 +
342 342  )))|(((
343 343  //Grundlagen der Verschlüsselung//
344 344  
... ... @@ -352,18 +352,18 @@
352 352  
353 353  [[Mediathek: Schlüsselverfahren PKI und Zertifikate>>url:https://mediathek.htw-berlin.de/album/video/SEPrinzipienKryptografie/20ac30ae9d0301ebc1e5c66b9c33bf18/253||shape="rect"]]
354 354  )))|(((
355 -\\
355 +
356 356  )))
357 357  |(((
358 -\\
358 +
359 359  )))|(((
360 360  Virtuelle (private) Netze, TOR
361 361  )))|(((
362 362  optional
363 363  )))|(((
364 -\\
364 +
365 365  )))|(((
366 -\\
366 +
367 367  )))
368 368  
369 369  == {{id name="B23BetriebssystemeundNetzwerke-Literatur"/}}Literatur ==
... ... @@ -403,7 +403,6 @@
403 403  
404 404  == {{id name="B23BetriebssystemeundNetzwerke-KlausurenvonVorsemestern"/}}Klausuren von Vorsemestern ==
405 405  
406 -\\
407 407  
408 408  {{view-file att--filename="BS_NW_22_1.pdf" display="thumbnail" height="250"/}}{{view-file att--filename="BS_NW_22_2.pdf" display="thumbnail" height="250"/}}{{view-file att--filename="BS_NW_22_23_1.pdf" display="thumbnail" height="250"/}}
409 409  
... ... @@ -411,34 +411,19 @@
411 411  
412 412  {{view-file att--filename="BS_NW_23_1.pdf" display="thumbnail" height="250"/}}
413 413  
414 -\\
415 415  
416 -\\
417 417  
418 -\\
419 419  
420 -\\
421 421  
422 -\\
423 423  
424 -\\
425 425  
426 -\\
427 427  
428 -\\
429 429  
430 -\\
431 431  
432 -\\
433 433  
434 -\\
435 435  
436 -\\
437 437  
438 -\\
439 439  
440 -\\
441 441  
442 -\\
443 443  
444 -\\
428 +
AdderProtocolEngine.zip
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.schwotze
Size
... ... @@ -1,0 +1,1 @@
1 +19.4 KB
Content
BN_23_24_1.pdf
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.schwotze
Size
... ... @@ -1,0 +1,1 @@
1 +58.6 KB
Content
BN_23_24_2.pdf
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.schwotze
Size
... ... @@ -1,0 +1,1 @@
1 +60.1 KB
Content
BS_NW_22_1.pdf
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.schwotze
Size
... ... @@ -1,0 +1,1 @@
1 +41.5 KB
Content
BS_NW_22_2.pdf
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.schwotze
Size
... ... @@ -1,0 +1,1 @@
1 +41.5 KB
Content
BS_NW_22_23_1.pdf
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.schwotze
Size
... ... @@ -1,0 +1,1 @@
1 +41.5 KB
Content
BS_NW_23_1.pdf
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.schwotze
Size
... ... @@ -1,0 +1,1 @@
1 +42.4 KB
Content
BS_NW_24_1.pdf
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.schwotze
Size
... ... @@ -1,0 +1,1 @@
1 +58.6 KB
Content
CLISkeletonWithConnection.zip
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.schwotze
Size
... ... @@ -1,0 +1,1 @@
1 +30.7 KB
Content
FragenBS_NW.txt
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.schwotze
Size
... ... @@ -1,0 +1,1 @@
1 +3.7 KB
Content
... ... @@ -1,0 +1,87 @@
1 +(10‘) Was ist Maschinencode? Erläutern Sie!
2 +- spezifisch für einen Prozessor.
3 +- kann direkt abgearbeitet werden in der CPU
4 +- Zusatz: Ziel des Compilers.
5 +
6 +Was ist ein Compiler?
7 +
8 +Worin unterscheiden sich der Output der Compiler von C und Java gründsätzlich?
9 +
10 +(10‘) Welche Elemente sind einem Prozess zugeordnet? Anders gefragt: Woraus besteht ein Prozess und welche Dinge ordnet das Betriebssystem zu?
11 +- Freispeicher (Heap), Stack(),
12 +- Instruction Pointer ggf
13 +- Teil der Prozessortabelle
14 +
15 +Welche Aufgaben hat ein Scheduler?
16 +
17 +Was ist ein Betriebssystem?
18 +
19 +Was ist ein Thread?
20 +
21 +Wozu dient der Stack in einem Prozess?
22 +
23 +(5‘) Nennen und beschreiben Sie zwei Prozesszustände!
24 +- wait: Prozess wartet auf externe Eingaben
25 +- running: Prozess wird abgearbeitet
26 +- bereit: Prozess ist bereit, ist aber gerade nicht zur Abarbeitung eingeteilt.
27 +
28 +Beschreiben Sie das Schedulingverfahren First-In-First-Out (FIFO)!
29 +
30 +Beschreiben Sie das Schedulingverfahren Round-Robin!
31 +
32 +(15‘) Schedulingverfahren lassen sich u.a. klassifizieren als in Batch-, Multitask- und Echtzeitverfahren. Nennen Sie für jedes Verfahren ein mögliches Einsatzgebiet und beschreiben Sie grob dessen Prinzip.
33 +- Batch: Banken. Job after Job wird ohne(!) Unterbrechung abgearbeitet.
34 +- Multitask: Rechnern mit Usern davor: Unterbrechbare Jobs
35 +- Echtzeit: Industrieanlagen: Garantie der Zeiten, setzte Kenntnis der Prozesse voraus.
36 +
37 +Nennen Sie eine Bedingung, die erfüllt sein muss, um einen Deadlock zu erzeugen.
38 +Begründen Sie, warum kein Deadlock eintreten kann, wenn eine solche Bedingung nicht
39 +vorliegt.
40 +
41 +Was ist ein Spooler? Nennen Sie ein Beispiel für einen Einsatz.
42 +
43 +(5‘) Wozu dienen Prüfsbits?
44 +
45 +(10‘) Was beschreibt die Hamming-Distanz?
46 +
47 +Wie groß muss die Hammingdistanz wenigstens sein, um Ein-Bit-Fehler zu erkennen?
48 +
49 +Was ist ein Frame im Kontext der unteren zwei ISO-OSI-Layer?
50 +
51 +(10‘) Aloha ist das wohl bekannteste ein Multiple-Access (MA) Verfahren: Mehrere Geräte greifen gleichzeitig auf das gleiche Medium zur Datenübertragung zu. MA-Verfahren wurden um die Fähigkeit Carrier-Sense und damit zu CSMA Verfahren erweitert. Beschreiben Sie diese Erweiterung und wozu sie dient!
52 +- erkennt ob das Medium in Nutzung ist
53 +- erlaubt damit das Warten des Sendens und verringert damit die Wahrscheinlichkeit der Kollision
54 +- erlaubt Erkennung von Kollisionen und damit eine mögliche Reaktion
55 +
56 +Es gibt Varianten mit Kollisionen im Layer 2 umzugehen:
57 +Ignorieren, Collission Detection (CD) und Collision Avoidance (CA).
58 +Beschreiben Sie wahlweise CSMA/CD oder CSMA/CA. Nennen Sie eine Einsatzgebiet.
59 +
60 +Beschreiben Sie ein|e [Hub | Bridge | Repeater | Switch], ordnen Sie diese Infrastrukturelemente einem
61 +OSI-Layer zu und begründen Sie diese Zuordnung!
62 +
63 +(15‘) Wozu dient das Address-Resolution-Protocol (ARP)? Beschreiben Sie wie es funktioniert?
64 +- Zuweisung einer logische (Layer3) Adresse zu Rechnern.
65 +- ARP erlaubt diese Rechner innerhalb eines Layer 2 Netzes zu finden.
66 +- Sendet BC und wartet auf Antwort
67 +
68 +(10‘) Was ist das Internet?
69 +- weltweiter Verbund von Layer3-Routern.
70 +
71 +Der OSI-Layer 3 kann prinzipiell auf zwei Arten realisiert werden: Virtual Circuit oder
72 +Datagramm. Beschreiben Sie ein Verfahren.
73 +Welcher Klasse kann man das Internet Protocol (IP) zuordnen?
74 +
75 +(10‘) Welche Aufgaben hat ein Layer-3 Router?
76 +- Entscheidung, wohin ein Paket gesendet werden soll - in das Layer2 Netz oder weiter routen?
77 +- Zusatz: Adaption an die Netzauslastung.
78 +
79 +TCP realisiert zwei Arten der Flusskontrolle: 1) Die Geschwindigkeit in die beiden
80 +Anwendungen Daten in den Layer 3 sende und 2) es passt die Datenmenge
81 +an den aktuellen Durchsatz des Layer 3 Netzes an. Beschreiben wie eine der Varianten realisiert wird.
82 +
83 +
84 +
85 +
86 +
87 +
ThreadTemplate.zip
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.schwotze
Size
... ... @@ -1,0 +1,1 @@
1 +7.9 KB
Content
Confluence.Code.ConfluencePageClass[0]
id
... ... @@ -1,1 +1,1 @@
1 -255199378
1 +139399664
url
... ... @@ -1,1 +1,1 @@
1 -https://wiki.htw-berlin.de/spaces/fb4mobileapplicatio/pages/255199378/B23 Betriebssysteme und Netzwerke
1 +https://wiki.htw-berlin.de/spaces/fb4mobileapplicatio/pages/139399664/B23 Betriebssysteme und Netzwerke
XWiki.XWikiRights[0]
allow
... ... @@ -1,0 +1,1 @@
1 +Allow
levels
... ... @@ -1,0 +1,1 @@
1 +edit
users
... ... @@ -1,0 +1,1 @@
1 +XWiki.schwotze