Version 204.11 by Thomas Schwotzer on 2025/04/09 12:43

Hide last authors
Thomas Schwotzer 185.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
Thomas Schwotzer 203.1 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.
Thomas Schwotzer 185.1 4
5 == {{id name="B23BetriebssystemeundNetzwerke-Prüfungsleistungen"/}}Prüfungsleistungen ==
6
7 Am Ende der Veranstaltung steht eine **Klausur**. Sie werden eine schriftliche Arbeit schreiben.
8
Thomas Schwotzer 203.5 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 Teile werden jeweils einzeln bewertet und am Ende des Semester zusammen gefasst. Details gibt es am Semesteranfang.
Thomas Schwotzer 185.1 10
Thomas Schwotzer 204.2 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.
Thomas Schwotzer 185.1 12
13 Es gilt:
14
Thomas Schwotzer 204.2 15 * Sobald Sie am ersten Teil des Tests im Semester teilnahmen, habe Sie sich auch zur Teilnahme an der Prüfung verpflichtet. Sie erhalten also eine Note.
Thomas Schwotzer 204.4 16 * Das Gesamtergebnis der Teiltests geht mit 30% in die Endnote ein.
Thomas Schwotzer 204.11 17 * In jedem Fall können Sie an der Klausur teilnehmen. Die Programmier-Teiltests sind keine Klausurzulassung.
Thomas Schwotzer 185.1 18 * Die Tests unterscheiden sich je Semester. Möglicherweise werden weitere Kriterien zur Bewertung genutzt wie z.B. Einhaltung von Regeln für gutes Programmieren, die Dauer, die zum Implementieren benötigt wurde o.ä. Erfüllen Sie alle Kriterien perfekt, erhalten Sie 100 Prozentpunkte.
19
20 Die Klausur in diesem Modul erfolgt schriftlich ohne weitere Hilfsmittel. Für die Klausur werden Punkte vergegen. Erreichen Sie alle Punkte in der Klausur haben Sie damit 100% erreicht, haben Sie keine Punkte entsprechend 0%. Meisten liegen die Ergebnisse dazwischen.
21
Thomas Schwotzer 187.1 22 Das prozentuale **Endergebnis** dieses Kurses ergibt sich so: (Prozentzahl der semesterbegleitenden Leistung (das ist der Test) * 0,30) + (Prozentzahl der Klausur * 0,7). Ab 50% haben Sie bestanden. Die Klausur hat damit nahezu das doppelte Gewicht des Programmes. Sie können den Kurs ohne Punkte in der Klausur nicht bestehen.
Thomas Schwotzer 185.1 23
24 Beispiele:
25
26 1. Perfekter Test, keine Klausur: 100*0,3 + 0*0,7 = 30% → nicht bestanden
27 1. Perfekter Test, eher schlechte Klausur: (100*0,3 + 50*0,7) = 65% → bestanden mit 3,0
28 1. Perfekter Test, schlechte Klausur mit der man gerade noch besteht: (100*0,3 + 30*0,7) = 51% → bestanden mit 4,0
29 1. Perfekter Test, perfekte Klausur (100*0,3 + 100*0,7) = 100% → bestanden mit 1,0
30
31 Denkvorschlag: Sie machen einen perfekten Test und dann brauchen Sie minimal noch 30 Prozent in der Klausur. Dann haben Sie bestanden. Aber tatsächlich wollen Sie 100 Prozentpunkte in der Klausur, weil Sie sehr gut sind und das auch auf Ihren Zeugnis sehen wollen. Und im übrigen sind das sehr grundsätzliche Dinge der IT mit denen wir uns hier beschäftigen. Als zukünftige:r IT-Expert:in wollen Sie das beherrschen.
32
33 Beispiele von Klausurfragen finden Sie am Ende dieser Seite.
34
35 Die folgende Tabelle beschreibt den geplanten Ablauf. Aber wie wir [[alle wissen, haben Pläne die Tendenz, sich ständig zu ändern>>url:https://www.lyrikline.org/de/gedichte/ballade-von-der-unzulaenglichkeit-menschlichen-planens-770||shape="rect"]]; das kann auch diesem geschehen.
36
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
Thomas Schwotzer 203.1 39 (% class="relative-table wrapped" style="width:100.0%" %)
Thomas Schwotzer 185.1 40 |=(((
41 #
42 )))|=(((
43 Lehreinheit
44 )))|=(((
45 Inhalt
46 )))|=(((
47 Kapitel zum Selbststudium
48 )))|=(((
49 Übung
50 )))
51 |(((
52 1
53 )))|(((
Thomas Schwotzer 203.1 54 **Betriebssysteme - Einstieg**
Thomas Schwotzer 191.1 55 )))|(((
56 Betriebssysteme - wozu dient alle das und wer hats erfunden. Wir beginnen mit der Keilschrift und hören bei UNIX auf.
57 )))|(((
58 [2] 1.1 - 1.4
59
60 [[Algorithmen und Genies>>url:http://www.sharksystem.net/htw/Prog1/ImperativesProgrammierenVonNeumann.pdf||shape="rect"]]
61
62 [[Mediathek>>url:https://mediathek.htw-berlin.de/album/video/Betriebssysteme-und-Netzwerke-Einstieg-Betriebssysteme/1cc396fd6ac3354b598b93915297a83a/334||shape="rect"]]
63 )))|(((
Thomas Schwotzer 195.1 64 (% class="content-wrapper" %)
65 (((
Thomas Schwotzer 194.1 66 Wir fangen an mit dem Bau einer verteilten Anwendung. Ein Spiel, ein Chat, mal schauen. Das wird das semesterbegleitende Projekt. Sie müssen immer mit machen, dann lernen Sie sicherlich eine Menge.
Thomas Schwotzer 191.1 67 )))
Thomas Schwotzer 195.1 68 )))
Thomas Schwotzer 191.1 69 |(((
70 2
71 )))|(((
72 **Von Programmcode zum laufenden Prozess**
73 )))|(((
74 Ein Programm ist laufender Maschinecode. Den können wir im Prinzip direkt implementieren. Das ist nur enorm zeitaufwendig. Wir können mit Assembler anfangen. Liest sich besser, löst kein Problem. Wir können mit einer //Hochsprache// wie C anfangen. Gute Idee. Wie aber wird aus dem C-Code Maschinencode? Was ist ein Compiler und ein Compiler-Compiler? Was ist eine Shell, wie passt die Java Virtuelle Maschine (JVM) in all das ... und die Frage aller Fragen: was ist die Matrix? (Okay, die Matrix diskutieren wir leider nicht). Wir lernen aber bereits den Scheduler kennen, über den wir später noch einmal wieder treffen werden.
75 )))|(((
76 [2] 1.5.1, 2.1
77
78 [[Assember, Maschinencode, Java und JVM>>url:http://www.sharksystem.net/htw/Prog1/Java.pdf||shape="rect"]]
79
80 [[Mediathek>>url:https://mediathek.htw-berlin.de/video/Betriebssysteme-und-Netzwerke-Vom-Programmcode-zum-laufenden-Prozess/51827ebfe20ed06ba810758d1b71dbef||shape="rect"]]
81
82 [11] start command
83
84 [12] am Ende der Zeile "&" - launch background process
85 )))|(((
86 (% class="content-wrapper" %)
87 (((
Thomas Schwotzer 203.1 88
Thomas Schwotzer 191.1 89
90
Thomas Schwotzer 203.1 91
Thomas Schwotzer 191.1 92 )))
93 )))
94 |(((
95 3
96 )))|(((
97 **Threads + Race Conditions** (Problembeschreibung)
98 )))|(((
99 Betriebssysteme sind schon sehr sehr lange in der Lage mehrere Prozesse (quasi-) parallel auszuführen. Anwendungsentwickler:innen kommen häufiger mit Threads in Kontakt, weshalb wir in den Übungen mit Threads arbeiten. Schnell aber kommt treten //Race Conditions (Wettlaufbedingungen)// auf. Die sind oft gar nicht so schnell zu erkennen. Es gibt einen Grund warum //Multithreading// schon eine Herausforderung ist. Wir beschäftigen uns mit Threads, wie wir die programmieren und welche Probleme dabei entstehen können, bis hin zum Deadlock. Wir erfahren was ein kritischer Abschnitt (//critical section//) ist.
100 )))|(((
101 [[Codebeispiel: Account Example (bad)>>url:https://github.com/thsc42/OperatingSystems/tree/master/src/raceConditions/accountExample/bad||shape="rect"]]
102
Thomas Schwotzer 194.1 103 [[LN:Threads mit Java>>url:http://www.sharksystem.net/htw/GMA/LN/Threads_Java_Android.pdf||shape="rect"]]
104 )))|(((
Thomas Schwotzer 203.1 105
Thomas Schwotzer 191.1 106 )))
107 |(((
108 4
109 )))|(((
110 **Synchronisation von Prozessen und Threads**
111 )))|(((
112 Nachdem wir uns mit den Herausforderungen gleichzeitig laufender Kontrollflüsse beschäftigten, kommen wir zu Lösungen. Wir reden über Semaphoren, Signale (technisch Interrupts), Mutex.
113 )))|(((
114 [2] 2.3.1 - 2.3.9, 2.4
115
116 [2] 1.5.2, 3
117
118 [[Codebeispiel: Synchronisation>>url:https://github.com/thsc42/OperatingSystems/tree/master/src/raceConditions||shape="rect"]]
119 )))|(((
Thomas Schwotzer 203.1 120
Thomas Schwotzer 191.1 121 )))
122 |(((
123 5
124 )))|(((
Thomas Schwotzer 185.1 125 **Punkt-zu-Punkt Datenübertragung**
126 )))|(((
127 Wir fangen mit den Netzwerken an. Und der Anfang ist prosaisch: Man nehme ein Kabel und verbinden zwei Parteien, die darüber nun Daten austauschen. Und damit fangen die interessanten Fragen bereits an.
128
129 Wir nutzen physikalische Effekte, um Daten zu übertragen. Solche Effekte können gestört werden sodass die Signale nicht mehr in Informationen umgewandelt werden können. Wir stehen hier vor Raten von manchmal 50%. Wir diskutieren wie wir damit umgehen können. Das ist nichts, was Sie im täglichen Leben als Entwickler:in betreffen wird. Sollte man als Träger: in eines Bachelor of Science (⚠️) trotzdem wissen.
130 )))|(((
131 [4] 1.4 + 2
132
133 [[Mediathek: Fehlerkorrektur und -erkennung>>url:https://mediathek.htw-berlin.de/album/video/Fehlererkennung-behebung-Hamming-Frames-Synchronisation-OSI-Layer-2/9d682f6b9ef2cac57be9795f35a57a29/334||shape="rect"]]
134 )))|(((
Thomas Schwotzer 203.1 135
Thomas Schwotzer 185.1 136 )))
137 |(((
Thomas Schwotzer 191.1 138 6
Thomas Schwotzer 185.1 139 )))|(((
140 **Layer 2 (Medienzugriff, Fehlererkennung / - korrektur)**
141 )))|(((
142 ALOHA,CSMA / CD und CA. Hidden sender problem, Repeater. Wir beschäftigen uns mit vorrangig mit drahtgebundenen Protokollen. Die drahtlosen werden im aufbauenden Modul mobile Betriebssysteme und Netze sein.
143 )))|(((
144 [3]: 2.11
145
146 [4] 3, 4.2
147
148 [[Mediathek:CSMA>>url:https://mediathek.htw-berlin.de/video/Carrier-Sense-Multiple-Access-CSMA/dc16139e4522ef04e708c69ae0000abf||shape="rect"]]
149 )))|(((
Thomas Schwotzer 203.1 150
Thomas Schwotzer 185.1 151 )))
152 |(((
Thomas Schwotzer 191.1 153 7
Thomas Schwotzer 185.1 154 )))|(((
155 **Layer 2 (Ethernet)**
156 )))|(((
157 Wir sprechen über Layer2 Topologien und die Infrastruktur von drahtbasierten Layer 2 Netzwerken (Ethernetframes, Bridges & Switches. Geht schnell. Wir sparen uns zu vielen Details. Wir reden über ARP (vielleicht auch DHCP) aber noch nicht IP.
158 )))|(((
159 [3]: 3.2 - 3.6, 3.8
160
161 [4] 4.3, 4.8
162
163 [[~[10~]>>url:https://datatracker.ietf.org/doc/html/rfc826||shape="rect"]]
164
165 [[Mediathek:IEEE 802.3 / Ethernet>>url:https://mediathek.htw-berlin.de/video/IEEE-8023-Ethernet/b3dbf8aa99e6251a51e5a1e875f48b9c||shape="rect"]]
166 )))|(((
167 (% class="content-wrapper" %)
168 (((
Thomas Schwotzer 203.1 169
Thomas Schwotzer 185.1 170 )))
171 )))
172 |(((
Thomas Schwotzer 191.1 173 8
Thomas Schwotzer 185.1 174 )))|(((
175 **Layer 3 (Internet Protocol)**
176 )))|(((
177 Internet Protocol (IP) Ab dieser Einheit sagen Sie nie wieder //Internetseite// (das ist das falscheste Wort das mir derzeit bekannt ist.) Bitte. Nie nie wieder.. Adressschema, Subnetze, adressbasiertes Routing. Vielleicht brauchen wir auch zwei Einheiten dafür.
178
179 Lässt sich super programmieren - UDP-Socket.
180
181 Wir müssen hier ein wenig über Geschichte reden.. Lesen Sie unbedingt einmal in [[~[6~]>>url:https://www.rand.org/content/dam/rand/pubs/research_memoranda/2006/RM3420.pdf||shape="rect"]] einfach die ersten vier Sätze auf Seite 15. Das war die Motivation für das Internet. Glasklar.
182 )))|(((
183 [3] 3.1.1, [4] 5.6, [13]
184
185 Ich hörte einmal folgenden weisen Hinweis: //Vor Erfolgen, die "über Nacht" entstehen liegen Jahre der Vorbereitung.// Sie lesen daher in tiefer Andacht [[~[5~]>>url:https://datatracker.ietf.org/doc/html/rfc791||shape="rect"]] und [[~[6~]>>url:https://www.rand.org/content/dam/rand/pubs/research_memoranda/2006/RM3420.pdf||shape="rect"]].
186
187 [[Mediathek:IP>>url:https://mediathek.htw-berlin.de/album/video/Internet-Protocol-IP/dccfad000b93bacfe0d4563f583a42c5/334||shape="rect"]]
188 )))|(((
Thomas Schwotzer 203.1 189
Thomas Schwotzer 185.1 190 )))
191 |(((
Thomas Schwotzer 191.1 192 9
Thomas Schwotzer 185.1 193 )))|(((
194 **Layer 4 (TCP)**
195 )))|(((
196 Wir beschäftigen uns ausschließlich mit TCP. Die übergroße Mehrheit aller Dienste, die aktuell via Internet laufen nutzen TCP. Dieses Protokoll ist tatsächlich die wahre Basis programmiertechnische Basis von all den Diensten die wir //im Netz// heute kennen. Das lässt sich hervorragend programmieren und zwar mit dem Streamkonzept das wir bereits von dem Betriebssystemen kennen.
197 )))|(((
198 [4] 6.4 (UDP) 6.5. (TCP)
199
200 [7]
201
Thomas Schwotzer 201.1 202 [[Mediathek>>url:https://mediathek.htw-berlin.de/album/video/tcp-udp/817fbf28e183c4fcc36a2cf914713285/334||shape="rect"]]
203
Thomas Schwotzer 185.1 204 [[Mediathek: Layer1-4>>url:https://mediathek.htw-berlin.de/album/video/OSI-Layer-1-4/cfe6541e4a0ecb5092a4ffd650334182/334||shape="rect"]]
205 )))|(((
Thomas Schwotzer 203.1 206
Thomas Schwotzer 185.1 207 )))
208 |(((
Thomas Schwotzer 191.1 209 10
210 )))|(((
Thomas Schwotzer 203.1 211 **Scheduling / Deadlocks**
Thomas Schwotzer 191.1 212 )))|(((
213 Scheduler. Vielleicht kommen wir soweit und Sie wissen, was sich hinter dem Kommando shell Kommando //nice// auf verbirgt.
214
215 Wir reden über verhungernde Philosophen etc.
216 )))|(((
217 [1] S.151, 158ff + S. 192ff, 214, 239, 242ff
218
219 [2] S.93-99, 150-166 + S.181, 186ff
220
Thomas Schwotzer 202.1 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"]]
Thomas Schwotzer 191.1 224 )))|(((
Thomas Schwotzer 203.1 225
Thomas Schwotzer 191.1 226 )))
227 |(((
Thomas Schwotzer 197.1 228 11
Thomas Schwotzer 185.1 229 )))|(((
Thomas Schwotzer 197.1 230 **Verzeichnisdienste**
Thomas Schwotzer 185.1 231 )))|(((
Thomas Schwotzer 197.1 232 Wir diskutieren den **Domain Name Service (DNS)**
Thomas Schwotzer 185.1 233 )))|(((
Thomas Schwotzer 197.1 234 [4] S. 690ff
235
236 [[https:~~/~~/www.icann.org/>>url:https://www.icann.org/||shape="rect"]]
237 [[https:~~/~~/www.iana.org/>>url:https://www.iana.org/||rel="nofollow" shape="rect" class="external-link"]]
238 [[https:~~/~~/datatracker.ietf.org/doc/html/rfc1035>>url:https://datatracker.ietf.org/doc/html/rfc1035||rel="nofollow" shape="rect" class="external-link"]]
239 [[https:~~/~~/de.wikipedia.org/wiki/Nslookup>>url:https://de.wikipedia.org/wiki/Nslookup||rel="nofollow" shape="rect" class="external-link"]]
240 [[https:~~/~~/www.denic.de/>>url:https://www.denic.de/||rel="nofollow" shape="rect" class="external-link"]]
Thomas Schwotzer 200.1 241
242 [[Mediathek>>url:https://mediathek.htw-berlin.de/album/video/domain-name-service-dns/c411b9faba8a704eea698beef3254227/334||shape="rect"]]
Thomas Schwotzer 185.1 243 )))|(((
Thomas Schwotzer 203.1 244
Thomas Schwotzer 185.1 245 )))
246 |(((
Thomas Schwotzer 197.1 247 12
Thomas Schwotzer 185.1 248 )))|(((
Thomas Schwotzer 203.1 249 **E-Mail**
Thomas Schwotzer 185.1 250 )))|(((
Thomas Schwotzer 203.1 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.
Thomas Schwotzer 185.1 252 )))|(((
Thomas Schwotzer 192.1 253 [[~[8~]>>url:http://www.sharksystem.net/paper/diplom_schwotzer.pdf||shape="rect"]] 2.2 (POP und IMAP)
254
255 [4] S.708ff
256
257 [[https:~~/~~/www.rfc-editor.org/rfc/rfc5322>>url:https://www.rfc-editor.org/rfc/rfc5322#page-8||shape="rect"]]
258 [[https:~~/~~/www.rfc-editor.org/rfc/rfc5321.html>>url:https://www.rfc-editor.org/rfc/rfc5321.html#page-10||shape="rect"]]
Thomas Schwotzer 200.1 259
260 [[Mediathek>>url:https://mediathek.htw-berlin.de/album/video/e-mail-pop-imap-smtp-base64-mime/c53f7fe8b966f7dd17068a2add09060c/334||shape="rect"]]
Thomas Schwotzer 185.1 261 )))|(((
Thomas Schwotzer 203.1 262
Thomas Schwotzer 185.1 263 )))
264 |(((
Thomas Schwotzer 200.1 265 13
Thomas Schwotzer 185.1 266 )))|(((
Thomas Schwotzer 200.1 267 **HTTP**
Thomas Schwotzer 185.1 268 )))|(((
Thomas Schwotzer 200.1 269 HTTP
Thomas Schwotzer 185.1 270 )))|(((
Thomas Schwotzer 200.1 271 [[Mediathek>>url:https://mediathek.htw-berlin.de/album/video/http/2fd5decaa8938d672bd8bcc1f64472b9/334||shape="rect"]]
Thomas Schwotzer 192.1 272 )))|(((
Thomas Schwotzer 203.1 273
Thomas Schwotzer 185.1 274 )))
275 |(((
Thomas Schwotzer 198.1 276 13
Thomas Schwotzer 185.1 277 )))|(((
Thomas Schwotzer 198.1 278 **Speichermanagement**
Thomas Schwotzer 197.1 279 )))|(((
280 Wir sprechen über Daten, der Speicherung und Verwaltung in einem laufenden Programm. Und endlich wissen wir was dieser legendäre Stackoverflow ist. Und wir werden sehen, dass wir es mit einer Stackmaschine zu tun haben. Und dann verstehen wir auch, warum wir ITler:innen als ersten Index immer die 0 nehmen und nicht die 1 wie diese eigenartigen anderen Menschen...
281 )))|(((
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 )))|(((
Thomas Schwotzer 203.1 284
Thomas Schwotzer 197.1 285 )))
286 |(((
Thomas Schwotzer 203.1 287
Thomas Schwotzer 197.1 288 )))|(((
Thomas Schwotzer 185.1 289 Inter Process Communications (IPC): Shared Memory
290
291 (optional)
292 )))|(((
293 Man muss Dinge opfern, wenn man Betriebssysteme UND Netzwerke in einem Modul bearbeitet. Ich ernenne IPC konkret Shared Memory und Pipes zum optionalen Thema. Wir werden aber aber mit TCP-Stream arbeiten und programmieren, was in der Praxis auch deutlich häufiger vorkommt. Sie verstehen also wie man mit Pipes programmiert und arbeitet, müssten sich bei Bedarf aber selber in die konkreten OS-Calls reinlesen.
294 )))|(((
295 [2] 2.3
296
Thomas Schwotzer 203.1 297
Thomas Schwotzer 185.1 298 )))|(((
Thomas Schwotzer 203.1 299
Thomas Schwotzer 185.1 300 )))
301 |(((
Thomas Schwotzer 203.1 302
Thomas Schwotzer 185.1 303 )))|(((
304 Dateinsysteme, Speicherverwaltung / Paging / Caching
305 )))|(((
306 spannend, aber optional
307 )))|(((
308 [2] 6
309 )))|(((
Thomas Schwotzer 203.1 310
Thomas Schwotzer 185.1 311 )))
312 |(((
Thomas Schwotzer 203.1 313
Thomas Schwotzer 185.1 314 )))|(((
315 Virtualisierung
316 )))|(((
317 optional
318 )))|(((
Thomas Schwotzer 203.1 319
Thomas Schwotzer 185.1 320 )))|(((
Thomas Schwotzer 203.1 321
Thomas Schwotzer 185.1 322 )))
323 |(((
Thomas Schwotzer 203.1 324
Thomas Schwotzer 185.1 325 )))|(((
326 Architekturen
327 )))|(((
328 monolithisch, zentralisiert, verteilt, wenigstens 3 Arten von P2P, Agenten.
329
330 Wir müssen einmal über DDoS Attacken reden.
331 )))|(((
332 [2]: 1.7
333
334 [[~[9~]>>url:http://www.sharksystem.net/paper/Dissertationsschrift_Thomas_Schwotzer.pdf||shape="rect"]]: 2.3 (Agenten)
335
336 [[Mediathek:Distributed Systems>>url:https://mediathek.htw-berlin.de/album/video/Verteilte-Anwendungsmuster-P2P-Client-Server-Agenten-SharkASAP/db6b10a1014fbda7eeb9b49eadead34b/329||shape="rect"]]
337 )))|(((
Thomas Schwotzer 203.1 338
Thomas Schwotzer 185.1 339 )))
340 |(((
Thomas Schwotzer 203.1 341
Thomas Schwotzer 185.1 342 )))|(((
343 //Grundlagen der Verschlüsselung//
344
345 //(Bereits im Kurs davor..)//
346 )))|(((
347 TODO: Wir sollten die Verschlüsselung einmal praktisch üben....
348
349 //Wir sprechen über symmetrische, asymmetrische Verschlüsselung. Wir gehen nicht auf die mathematischen Grundlagen ein (oder vielleicht doch, wenn Sie unbedingt wollen). Asymmetrische Schlüssel sind die Basis von Public Key Infrastrukturen (PKI) und damit Zertifikaten. Das wird uns beschäftigen.//
350 )))|(((
351 [2] 9.2
352
353 [[Mediathek: Schlüsselverfahren PKI und Zertifikate>>url:https://mediathek.htw-berlin.de/album/video/SEPrinzipienKryptografie/20ac30ae9d0301ebc1e5c66b9c33bf18/253||shape="rect"]]
354 )))|(((
Thomas Schwotzer 203.1 355
Thomas Schwotzer 185.1 356 )))
357 |(((
Thomas Schwotzer 203.1 358
Thomas Schwotzer 185.1 359 )))|(((
360 Virtuelle (private) Netze, TOR
361 )))|(((
362 optional
363 )))|(((
Thomas Schwotzer 203.1 364
Thomas Schwotzer 185.1 365 )))|(((
Thomas Schwotzer 203.1 366
Thomas Schwotzer 185.1 367 )))
368
369 == {{id name="B23BetriebssystemeundNetzwerke-Literatur"/}}Literatur ==
370
371 [1] Eduard Glatz: //Betriebssysteme//, dpunkt Verlag
372
373 [2] Andrew S. Tanenbaum: //Moderne Betriebssysteme (2. aktualisierte Auflage)//, Prentice Hall (2002)
374
375 [3] Rüdiger Schreiner: //Computer-Netzwerke (7. Auflage)//, Hanser Verlag
376
377 [4] Andrew S. Tanenbaum, David J. Wetherall: //Computernetzwerke (5. aktualisierte Auflage)//, Pearson (2012) - deutlich genauer als [3]
378
379 [5] John Postel (editor): [[//RFC 791: Internet Protocol//>>url:https://datatracker.ietf.org/doc/html/rfc791||shape="rect"]]  (1981)
380
381 [6] [[Paul Baran>>url:https://de.wikipedia.org/wiki/Paul_Baran||shape="rect"]]//: //[[//On Distributed Communications (I. Introduction..)//>>url:https://www.rand.org/content/dam/rand/pubs/research_memoranda/2006/RM3420.pdf||shape="rect"]]  (1964)
382
383 [7] John Postel (editor): [[//RFC 793: Transmission//>>url:https://datatracker.ietf.org/doc/html/rfc791||shape="rect"]][[ Control Protocol>>url:https://datatracker.ietf.org/doc/html/rfc793||shape="rect"]]  (1981)
384
385 [8] Thomas Schwotzer: //[[Entfernter Postzugriff auf RPC-Basis>>url:http://www.sharksystem.net/paper/diplom_schwotzer.pdf||shape="rect"]] (Diplomarbeit, TU Chemnitz-Zwickau)// (1994)
386
387 [9] Thomas Schwotzer: //[[E>>url:http://www.sharksystem.net/paper/diplom_schwotzer.pdf||shape="rect"]][[in Peer-to-Peer Knowledge Management System...>>url:http://www.sharksystem.net/paper/Dissertationsschrift_Thomas_Schwotzer.pdf||shape="rect"]] (Doktorarbeit, TU Berlin)// (2006)
388
389 [10] David C. Plummer: [[//RFC 826: //An Ethernet Address Resolution Protocol>>url:https://datatracker.ietf.org/doc/html/rfc826||shape="rect"]]  (1982)
390
391 [11] [[Windows command shell reference>>url:https://docs.microsoft.com/en-us/windows-server/administration/windows-commands/windows-commands||shape="rect"]]
392
393 [12] [[Bash build-in command>>url:https://manpages.ubuntu.com/manpages/trusty/man1/bash.1.html#shell%20builtin%20commands||shape="rect"]]
394
395 [13] [[ISO: Open Systems Interconnection (OSI)>>url:https://www.iso.org/ics/35.100/x/||shape="rect"]]
396
397 == {{id name="B23BetriebssystemeundNetzwerke-weiterführende(s)Literatur/Material"/}}weiterführende(s) Literatur / Material ==
398
399 * Georg Dyson: //Turings Kathedrale//, Ullstein Verlag (verborge ich auch)
400 * [[Tron (der Film)>>url:https://de.wikipedia.org/wiki/Tron_%28Film%29||shape="rect"]]
401 * [[Edward Snowden>>url:https://de.wikipedia.org/wiki/Edward_Snowden||shape="rect"]]
402 * [[Das Dilemma der sozialen Medien>>url:https://de.wikipedia.org/wiki/Das_Dilemma_mit_den_sozialen_Medien||shape="rect"]]
403
404 == {{id name="B23BetriebssystemeundNetzwerke-KlausurenvonVorsemestern"/}}Klausuren von Vorsemestern ==
405
406
407 {{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"/}}
408
Thomas Schwotzer 190.1 409 {{view-file att--filename="BN_23_24_2.pdf" display="thumbnail" height="250"/}}{{view-file att--filename="BN_23_24_1.pdf" display="thumbnail" height="250"/}}
410
Thomas Schwotzer 185.1 411 {{view-file att--filename="BS_NW_23_1.pdf" display="thumbnail" height="250"/}}
412
Thomas Schwotzer 188.1 413
Thomas Schwotzer 185.1 414
415
416
417
418
419
420
Thomas Schwotzer 188.1 421
Thomas Schwotzer 189.1 422
423
424
Thomas Schwotzer 190.1 425
426
427
Thomas Schwotzer 203.1 428