PROGRAMMIEREN MIT UNIX/LINUX-SYSTEMAUFRUFEN
|
|
- Anke Geiger
- vor 6 Jahren
- Abrufe
Transkript
1 PROGRAMMIEREN MIT UNIX/LINUX-SYSTEMAUFRUFEN UNIX/Linux-Interprozesskommunikation, zugehörige Systemaufrufe und Kommandos 12. UNIX/Linux-Sockets Wintersemester 2016/17
2 UNIX/Linux-IPC-Mechanismen Nachrichtenbasierter Informationsaustausch: Nachrichten(warte)schlangen ( message queues ) System V IPC Sockets BSD-UNIX Speicherbasierter Informationsaustausch: Gemeinsame Speicherbereiche( shared memory ) System V IPC 5. Pipes (Named Pipes und FIFOs) Version 7 Signale: 6. Asynchrone UNIX-Signale Version 7 Synchronisationsmechanismen: UNIX-Semaphore System V IPC ws2016/17 H.-A. Schindler Folie: 12-2
3 Nachrichtenbasierter Informationsaustausch Prozess 1 Prozess 2 Befehle Befehle Daten Daten Datentransport (Nachrichten) Expliziter Datentransport in Form von Botschaften (= messages) Aus einem Datenbereich wird in den anderen kopiert. Sendender Prozess: benutzt (Variante einer) Send-Funktion Empfangender Prozess: benutzt (Variante einer) Receive-Funktion ws2016/17 H.-A. Schindler Folie: 12-3
4 Sockets -Grundsätzliches Ursprung: erstmalig in BSD-UNIX 4.2 Bedeutung: sind rechnerübergreifend verwendbar (Internet!!), d.h. zur Kommunikation zwischen Prozessen auf verschiedenen (vernetzten) Rechnern (sog. verteilte Systeme) aber auch für IPC innerhalb nur eines Rechners damit universellster Kommunikationsmechanismus auch in anderen BS implementiert ws2016/17 H.-A. Schindler Folie: 12-4
5 Sockets zugehörige Systemaufrufe Umfang: Zu Sockets existiert das umfangreichste Sortiment an Systemaufrufen und Parametern. Da von UNIX-Systemen Sockets als (spezielle) Dateien angesehen werden, kann auch ein Teil der Funktionen für die Dateiarbeit verwendet werden. Beschränkung: wir beschränken uns zunächst auf die Funktionen: 1. socket(6) - Erzeugen eines Sockets 2. bind(6) - Anbinden einer zugehörigen Datenstruktur 3. connect() - Verbinden von 2 Sockets 4. send() - Senden einer Nachricht (bei verbundenen Sockets) 5. sendto(6) - wie send() auch ohne vorheriges connect() 6. recv() - Empfangen (bei verbundenen Sockets) 7. recvfrom() - Empfangen auch ohne vorheriges connect() ws2016/17 H.-A. Schindler Folie: 12-5
6 Zur Benutzung der Systemaufrufe Socket Prozess 1 (z.b. Client) Variante2a: ohne Verbinden: sendto(..) Erzeugen: socket(..) Anbinden: bind(..) Socket- Datenstruktur Variante1: Verbinden: connect(..) +send(..) +recv(..) Erzeugen: socket(..) bind(..) Prozess 2 (z.b. Server) Variante2b: ohne Verbinden: recvfrom(..) ws2016/17 H.-A. Schindler Folie: 12-6
7 Systemaufruf socket(..) erzeugt Socket und typisiert diesen Verwendung im Programm (Prinzip): int <id_sock; <id_sock = socket(<domain, <type, <protocol); Konkretes Beispiel: int id; id = socket(af_inet, SOCK_STREAM, 0); Parameter Symbol Typ Bedeutung Interpretation <id_sock int Rückkehrwert Identifikator des Sockets (auch: Socket-Handle) <domain int <type int <protocol int Zugehörigkeit zu bestimmter Gruppe Protokoll Adress-Familie oder Protokoll-Familie (20) AF_INET oder PF_INET: Internet-Socket AF_UNIX oder PF_UNIX: lokaler UNIX-Socket... Datenmodell + Verlässlichkeitseigenschaften SOCK_DGRAM:unzuverlässige, verbindungslose Kommunikation (normalerweise UDP) SOCK_STREAM:zuverlässige, verbindungsorient. Kommunikation (normalerweise TCP/IP) spezifisches Protokoll (meist System überlassen: 0) ws2016/17 H.-A. Schindler Folie: 12-7
8 verknüpft Socket-Datenstruktur mit erzeugtem Socket Systemaufruf bind(..) Verwendung im Programm (Prinzip): int <rb; <rb= bind(<id_sock, &<my_socketaddr, <socketaddress_length); Parameter Symbol Typ Bedeutung <rb int Rückkehrwert Konkretes Beispiel: int rw; rw=bind(id_socket1, &client_socketaddr, sizeof(client_socketaddr)); Interpretation Rückkehrwert des Systemaufrufs socket(..) <id_sock int Identifikator <my_ socketaddr <socketaddress _length &(struct sockaddr) int Adresse der Datenstruktur, die mit Socket verknüpft wird Länge dieser Datenstruktur ws2016/17 H.-A. Schindler Folie: 12-8
9 Datenstruktur sockaddr Für unterschiedliche Adressfamilien unterschiedliche Datenstrukturen verwenden: Adressfamilie AF_UNIX: #define UNIX_PATH_MAX 108 struct sockaddr_un{ sa_family_t sun_family; /* AF_UNIX */ char sun_path[unix_path_max] /* UNIX-Pfadname */ }; Adressfamilie AF_INET: struct sockaddr_in{ sa_family_t sin_family; /* AF_INET */ unsigned short sin_port; /* 16-Bit TCP- oder UDP-Port-Nr. */ struct in_addr sin_addr; /* 32-Bit IP-Adresse */ char sin_zero[8]; /* nur zum Auffüllen der Struktur */ }; /* einheitlich 16 Byte ( padding ) */ ws2016/17 H.-A. Schindler Folie: 12-9
10 Systemaufruf connect(..) Verbinden mit Socket des Kommunikationspartners (verbindungsorientierte Kommunikation) Verwendung im Programm (Prinzip): int <r; <r= connect(<id_sock, &<server_socketaddr, <socketaddr_length); Konkretes Beispiel: int rx; rx=connect(id_socket1, server_socketaddr, sizeof(struct sockaddr)); Parameter Symbol Typ Bedeutung Interpretation <r int <id_sock int Rückkehrwert Identifikator Rückkehrwert des Systemaufrufs socket(..) <server_ socket_addr &(struct sockaddr) Adresse der Datenstruktur des Sockets der Gegenstelle <socketaddr _length int Länge Länge der Datenstruktur ws2016/17 H.-A. Schindler Folie: 12-10
11 Systemaufruf send(..) Senden einer Botschaft (message) Verwendung im Programm (Prinzip): int <rs; <rs= send(<id_sock, &<message, <message_length, flags); Parameter Symbol <rs int Typ Bedeutung Rückkehrwert Konkretes Beispiel: int rw; rw = send(id_socket1, request, requestlength, 0); Interpretation <id_sock int Socket- Identifikator Rückkehrwert des Systemaufrufs socket(..) <message &char[ ] Anfangsadresse des Speicherbereichs im Programm, in welchem message spezifiziert <message _length int Länge Länge der message <flags zur Spezifikation spezieller Eigenschaften ws2016/17 H.-A. Schindler Folie: 12-11
12 Systemaufruf recv(..) Empfangen einer Botschaft (message) Verwendung im Programm (Prinzip): int <r; <r= recv(<id_sock, &<receive_buffer, <message_length, <flags); Konkretes Beispiel: int rw; rw = recv(id_socket1, buffer, bufferlength, 0); Parameter Symbol <rs int <id_sock int Typ Bedeutung Rückkehrwert Socket- Identifikator Interpretation Anzahl der tatsächlich empfangenen Byte Rückkehrwert des Systemaufrufs socket(..) <receive _buffer &char[ ] Anfangsadresse des Speicherbereichs im Programm, wo message zu deponieren <message _length int Länge Länge der message <flags zur Spezifikation spezieller Eigenschaften ws2016/17 H.-A. Schindler Folie: 12-12
13 Systemaufruf recvfrom(..) Empfangen einer Botschaft (message) und Abspeichern der Quelladresse Verwendung im Programm (Prinzip): int <r; <r = recvfrom(<id_sock, &<receive_buffer, <message_length, <flags, <source_address, <source_address_length); Konkretes Beispiel: int rw; rw = recvfrom(id_socket1, buffer, bufferlength, 0,...); Parameter Symbol <source address <source_ address_ length Typ struct sockaddr* socklen_t Bedeutung / Interpretation Wenn (<source_address NULL) wird Adresse der Quelle einer empfangenen Botschaft auf Paramter<source_address bereitgestellt, falls diese durch das verwendete Transportprotokoll zur Verfügung gestellt wird. Länge der Quell-Adresse Restliche Parameter: siehe recv()! ws2016/17 H.-A. Schindler Folie: 12-13
14 Systemaufrufe read( ) und write( ) Anstelle von send() kann auch write(),anstelle von recv() auch read() verwendet werden, beide aber ohne Parameter flags. Es gilt exakt die Syntax (= Aufruf im Programm ) von write()und read() für Arbeit mit Dateien. Verwendung im Programm (Prinzip): <x= read(<id_sock, &<receive_buffer, <message_length); <y= write(<id_sock, &<message, <message_length); Konkretes Beispiel: int u, v; u = read(id_socket1, buffer, bufferlength); v = write(id_socket2, &message, message_length); Parameter Symbol Typ Bedeutung <x, <y int Rückkehrwerte Interpretation Restliche Parameter: siehe send() bzw. recv()! ws2016/17 H.-A. Schindler Folie: 12-14
15 Beispielprogramm: server1.c #include <stdio.h #include <stdlib.h #include <sys/socket.h #include <sys/types.h #include <string.h #define socket_name_length 14 #define request_length 16 #define message_length 128 main() { int id_server_socket; // Socket-Handle (= Identifizierer) int rv_bind; // Rueckkehrwert von bind() int rv_connect; // Rueckkehrwert von connect() char server_socketname[socket_name_length] = /tmp/svsocket"; struct sockaddr server_socketaddr; char client_socketname[socket_name_length] = /tmp/clsocket"; struct sockaddr client_socketaddr; ws2016/17 H.-A. Schindler Folie: 12-15
16 N // zum Senden int rv_send; // Rueckkehrwert vom Senden char answer_buffer[message_length] = "Elbe"; // zum Empfangen int rv_receive; //Rueckkehrwert beim Empfangen char receive_buffer[request_length]; // Server-Socket erzeugen id_server_socket = socket(af_unix, SOCK_DGRAM, 0 ); N // Anbinden des Namens an Server-Socket server_socketaddress.sa_family = AF_UNIX; strcpy(server_socketaddress.sa_data, server_socket_name); rv_bind= bind(id_server_socket, &server_socket_address, sizeof(server_socket_address)); N ws2016/17 H.-A. Schindler Folie: 12-16
17 N // Warten auf Anfrage rv_receive=recv(id_server_socket, receive_buffer, request_length, 0); N // Nach einer Anfrage: Vorbereiten zum Antwort senden client_socketaddr.sa_family = AF_UNIX; strcpy(client_socketaddress.sa_data, client_socket_name); // Verbinden mit Server-Socket rv_connect= connect(id_server_socket, &client_socket_address, sizeof(struct sockaddr)); N // Senden rv_send = send( id_server_socket, answer_buffer, message_length,0); N // Sauber abschließen, Socket-Name entfernen unlink(server_socket_name); } ws2016/17 H.-A. Schindler Folie: 12-17
18 Sockets weitere Systemaufrufe weitere wichtige Aufrufe: listen(6) accept(6) zu Datenstruktur sockaddr für AF_INET Include-Dateien: #include <sys/socket.h #include <netinet/in.h ws2016/17 H.-A. Schindler Folie: 12-18
19 Datenstruktur sockaddr für AF_INET unterschiedliche Datenstrukturen für unterschiedliche Adressfamilien!! Adressfamilie AF_INET: struct sockaddr_in { sa_family_t sin_family; // AF_INET unsigned short sin_port; // 16-Bit TCP- oder UDP-Port-Nr. struct in_addr sin_addr; // 32-Bit IP-Adresse char sin_zero[8]; // nur zum Auffüllen der Struktur }; // einheitlich 16 Byte ( padding ) Beispiel: #define SERVER_PORT 4711 // Port-Nr. für Socket struct sockaddr_in ssock; // Einrichten der Datenstruktur ssock vom Typ sockaddr_in ssock.sin_family = AF_INET; // siehe oben ssock.sin_port = htons(server_port); // htons: konvertiert SERVER_PORT geeignet ssock.sin_addr.s_addr = INADDR_ANY; ws2016/17 H.-A. Schindler Folie: 12-19
20 Systemaufruf listen(..) legt Warteschlange für Server-Aufrufe an Verwendung im Programm (Prinzip): int <rl; <rl = listen(<id_sock, <number); Parameter Symbol Typ Bedeutung <rl int Rückkehrwert Konkretes Beispiel: int rw; rw = listen(id_socket1, 5); Interpretation <id_sock int <number int Beschreibung: Identifikator Rückkehrwert des Systemaufrufs socket(..) Anzahl gleichzeitig möglicher Anforderungen Über <number wird spezifiziert, wie viele Verbindungsanforderungen gleichzeitig akzeptiert werden. Dazu wird Warteschlange mit entsprechender Platzanzahl eingerichtet. Werden mehr als <number Verbindungen gleichzeitig gefordert, werden alle Anforderungen ab (<number + 1) zurückgewiesen ws2016/17 H.-A. Schindler Folie: 12-20
21 Stellt Empfangsbereitschaft eines Sever-Prozesses her Systemaufruf accept(..) Verwendung im Programm (Prinzip): int <r; <connect_id= accept(<id_serversocket, &<client_socket, &<clientsocket_length); Konkretes Beispiel: int xz; rw = accept(id_ssock, cl_socketaddr, &sizeof(struct sockaddr); Parameter Symbol Typ Bedeutung / Interpretation <connect_id int Rückkehrwert(Erfolgkontrolle und Verbindungd-ID) <id_ serversocket &<client _socket &<clientsocket _length int &(struct sockaddr) int Rückkehrwert des Systemaufrufs socket(..) Adresse der sockaddr-datenstruktur der Gegenstelle Länge einer Socket-Adresse accept() blockiert bis tatsächlich ein Aufruf stattfindet ws2016/17 H.-A. Schindler Folie: 12-21
22 Aufgabenstellung (Anregungen) 1. Analysieren Sie server1.c und client1.c. Lesen Sie dabei auch die Kommentare. Übersetzen Sie beide Programme und beobachten Sie deren Arbeit. (Server und Client dazu in jeweils eigenen Kommandofenstern starten! Reihenfolge beachten!) Die angelegten Sockets sind ähnlich wie benannte Pipes im Dateisystem sichtbar (bevor sie wieder gelöscht werden). Analysieren Sie z.b. nach dem Serverstart die entsprechenden Stellen im Dateisystem. Bei server2.c wurden recv() durch read() und send() durch write() ersetzt. 2. Übersetzen Sie server2.c und überprüfen Sie, ob auch dieser mit dem ungeänderten client1.c zusammenarbeiten kann. In server2b.c wurde als einzige Änderung gegenüber server1.c das Datenmodell des Sockets von SOCK_DGRAM auf SOCK_STREAM gesetzt. 3. Übersetzen Sie server2b.c und beobachten Sie! (Es reicht den Server zu starten.) ws2016/17 H.-A. Schindler Folie: 12-22
23 Auch server3.c ist eine Modifikation von server1.c. Es wurde eine einfache Schleife implementiert, so dass der Server wiederholt auf Anfragen antworten kann. (Für einen echten Server fehlt jedoch noch die Fähigkeit, die Anfragen zu analysieren und zur jeweiligen Anfrage passend zu antworten.) 4. Übersetzen Sie server3.c. Starten Sie verschiedene Clients, die Anfragen an den Server stellen und beobachten Sie. Ursprung aller Clients kann natürlich immer das Programm client1.c sein. ws2016/17 H.-A. Schindler Folie: 12-23
24 server4.c ist eine Modifikation von server3.c, wobei jetzt Internet-Sockets und eine Port-Nummer Anwendung finden. Anstelle von bind() und connect() werden jetzt listen() und accept() verwendet, die eine ähnliche Funktion haben. 5. Analysieren Sie server4.c. Übersetzen und starten Sie danach dieses Programm. Ein funktionsfähiges Programm muss blockieren, bis eine Anfrage kommt. Ob server4wirklich am Port 4711lauscht, kann durch das Kommando netstat a grep 4711 untersucht werden. Ein simpler Client kann dann mittels Kommando telnet<server_name 4711simuliert werden. (Wird das Kommando auf der gleichen Maschine eingegeben, auf der auch der Server läuft, ist telnetlocalhost4711 zu verwenden). Es werden dann die an der Tastatur eingegebenen Zeichen als Anfrage an server4übertragen. ws2016/17 H.-A. Schindler Folie: 12-24
Tafelübung zu BS 4. Interprozesskommunikation
Tafelübung zu BS 4. Interprozesskommunikation Olaf Spinczyk Arbeitsgruppe Eingebettete Systemsoftware Lehrstuhl für Informatik 12 TU Dortmund olaf.spinczyk@tu-dortmund.de http://ess.cs.uni-dortmund.de/~os/
MehrProjekt: Web-Server. Foliensatz 9: Projekt Folie 1. Hans-Georg Eßer, TH Nürnberg Systemprogrammierung, Sommersemester 2014
Sep 19 14:20:18 amd64 sshd[20494]: Accepted rsa for esser from ::ffff:87.234.201.207 port 61557 Sep 19 14:27:41 amd64 syslog-ng[7653]: STATS: dropped 0 Sep 20 01:00:01 amd64 /usr/sbin/cron[29278]: (root)
MehrProjekt: Web-Proxy. Foliensatz 9: Projekt Folie 1. Hans-Georg Eßer, TH Nürnberg Systemprogrammierung, Sommersemester 2015
Sep 19 14:20:18 amd64 sshd[20494]: Accepted rsa for esser from ::ffff:87.234.201.207 port 61557 Sep 19 14:27:41 amd64 syslog-ng[7653]: STATS: dropped 0 Sep 20 01:00:01 amd64 /usr/sbin/cron[29278]: (root)
MehrComputer and Communication Systems (Lehrstuhl für Technische Informatik) Socket-Programmierung
Computer and Communication Systems (Lehrstuhl für Technische Informatik) Socket-Programmierung [RN] Sommer 2012 Socket - Programmierung 1 Überblick Allgemeine Grundlagen für die Socket-Programmierung Elementare
MehrOperating Systems Principles. Event Queue
Humboldt University Computer Science Department Operating Systems Principles Event Queue 1. Aufgabe 3 Wochen Zeit zum Lösen der Aufgaben Aufgabenstellung auf der SAR Website Abgabe über GOYA Abgabefrist:
MehrPROGRAMMIEREN MIT UNIX/Linux-SYSTEMAUFRUFEN
PROGRAMMIEREN MIT UNIX/Linux-SYSTEMAUFRUFEN UNIX/Linux-Interprozesskommunikation, zugehörige Systemaufrufe und Kommandos 7. UNIX/Linux-Shared Memory 8. (Benannte) Pipes UNIX/Linux-IPC-Mechanismen Nachrichtenbasierter
MehrJ-1 Überblick. 1 Binden von Sockets. Besprechung 6. Aufgabe (jsh) Domain, z. B. (PF_ = Protocol Family) Byteorder bei Netzwerkkommunikation
J 8. Übung J 8. Übung J-1 Überblick #include int socket(int domain, int type, int protocol); Besprechung 6. Aufgabe (jsh) Byteorder bei Netzwerkkommunikation Domain, z. B. (PF_ = Protocol
Mehr7. Tafelübung. Socket - Erzeugung. Netzwerkkommunikation und Byteorder. Binden von Sockets. Lösung der jsh-aufgabe. Erläuterung der rshd-aufgabe
7. Tafelübung Lösung der jsh-aufgabe Erläuterung der rshd-aufgabe Sockets Socket - Erzeugung s = socket(domain, type, protocol) Domain, z.b. AF_INET: Internet AF_UNIX: Unix Filesystem AF_APPLETALK: Appletalk
MehrByteorder bei Netzwerkkommunikation Netzwerkprogrammierung - Sockets Netzwerkprogrammierung - Verschiedenes
U9 9. Übung U9 9. Übung Besprechung Aufgabe 7 (lash) Informationen zu Aufgabe 8 (simail) Byteorder bei Netzwerkkommunikation Netzwerkprogrammierung - Sockets Netzwerkprogrammierung - Verschiedenes U9.1
MehrMichael Golm, Universität Erlangen-Nürnberg, IMMD 4, 1999/2000 1999-12-20 14.51 / Tafelübung 7. Netzwerkkommunikation und Byteorder
7. Tafelübung Lösung der jsh-aufgabe Erläuterung der rshd-aufgabe Sockets 83 Netzwerkkommunikation und Byteorder Wiederholung: Byteorder big endian little endian 0 1 2 3 11 aa bb cc cc bb aa 11 0x11aabbcc
MehrRechnernetze II SS 2015. Betriebssysteme / verteilte Systeme rolanda.dwismuellera@duni-siegena.de Tel.: 0271/740-4050, Büro: H-B 8404
Rechnernetze II SS 2015 Betriebssysteme / verteilte Systeme rolanda.dwismuellera@duni-siegena.de Tel.: 0271/740-4050, Büro: H-B 8404 Stand: 14. Juli 2015 Betriebssysteme / verteilte Systeme Rechnernetze
MehrRechnernetze II WS 2012/2013. Betriebssysteme / verteilte Systeme rolanda.dwismuellera@duni-siegena.de Tel.: 0271/740-4050, Büro: H-B 8404
Rechnernetze II WS 2012/2013 Betriebssysteme / verteilte Systeme rolanda.dwismuellera@duni-siegena.de Tel.: 0271/740-4050, Büro: H-B 8404 Stand: 5. Mai 2014 Betriebssysteme / verteilte Systeme Rechnernetze
Mehr1 Communication Domain und Protokoll
U9 9. Übung U9 9. Übung U9-1 Netzwerkkommunikation und Byteorder U9-1 Netzwerkkommunikation und Byteorder Besprechung Aufgabe 7 (lash) Wiederholung: Byteorder Informationen zu Aufgabe 8 (simail) Byteorder
MehrPROGRAMMIEREN MIT UNIX/LINUX-SYSTEMAUFRUFEN
PROGRAMMIEREN MIT UNIX/LINUX-SYSTEMAUFRUFEN 2. UNIX/Linux-Prozessverwaltung und zugehörige Systemaufrufe Wintersemester 2016/17 2. Die UNIX/LINUX-Prozessverwaltung Aufgaben: 1. Erzeugen neuer Prozesse
MehrRechnernetze & Verteilte Systeme (T) Netzprogrammierung/Sockets (P)
Systempraktikum im Wintersemester 2009/2010 (LMU): Vorlesung vom 07.01. Foliensatz 7 Rechnernetze & Verteilte Systeme (T) Netzprogrammierung/Sockets (P) Thomas Schaaf, Nils gentschen Felde Lehr- und Forschungseinheit
MehrInternetanwendungstechnik (Übung)
Internetanwendungstechnik (Übung) Sockets Stefan Bissell, Gero Mühl Technische Universität Berlin Fakultät IV Elektrotechnik und Informatik Kommunikations- und Betriebssysteme (KBS) Einsteinufer 17, Sekr.
MehrInterprozesskommunikation (IPC)
Gliederung 1. Einführung und Übersicht 2. Prozesse und Threads 3. Interrupts Interprozesskommunikation (IPC) 4. Scheduling 5. Synchronisation 6. Interprozesskommunikation 7. Speicherverwaltung IPC Cl.
MehrKommunikationsnetze. 2. Direkte TCP/IP-Verbindungen 2.1 Höhere Programmiersprachen
Kommunikationsnetze Gliederung 1. Socket-Programmierung unter C 2. Socket-Programmierung unter Java Gliederung Berkeley Sockets (Erste freie TCP/IP-Implementierung in Berkeley UNIX): SOCKET: Erzeugen eines
MehrLösung Übungszettel 6
Lösungen zur Vorlesung GRUNDLAGEN DER INFORMATIK I Studiengang Elektrotechnik SS 03 AG Betriebssysteme FB3 Kirsten Berkenkötter Lösung Übungszettel 6 1 Aufgabe 1: Parallel-Server 1.1 Client #include
MehrAttribute: Name (Zuweisung eines Namens durch Binding) Communication Domain Duplizieren von Filedeskriptoren. SoS I - Ü
U7 7. Übung U7 7. Übung U7-1 Überblick Endpunkte einer Kommunikationsverbindung Besprechung 4. Aufgabe (malloc) Arbeitsweise: FIFO, bidirektional Byteorder bei Netzwerkkommunikation Netzwerkprogrammierung
MehrU7-2 Netzwerkkommunikation und Byteorder
U7 7. Übung U7 7. Übung U7-1 Überblick Besprechung 4. Aufgabe (malloc) Byteorder bei Netzwerkkommunikation Netzwerkprogrammierung - Sockets Duplizieren von Filedeskriptoren Netzwerkprogrammierung - Verschiedenes
MehrNetzwerk-Programmierung in C
1 / 26 Netzwerk-Programmierung in C Oliver Bartels Fachbereich Informatik Universität Hamburg 2 Juli 2014 2 / 26 Inhaltsverzeichniss 1 IPv4 und IPv6 Wie werden Daten verschickt? 2 3 Verbindungsaufbau ohne
MehrClient/Server-Systeme
Client/Server-Systeme Prof. Dr.-Ing. Wilhelm G. Spruth WS 2006/2007 Teil 2 Sockets cs 0200 ww6 wgs 09-96 Literatur Socket-Schnittstelle J. Martin, J. Leben: TCP/IP Netzwerke. Prentice Hall, 1994, Kapitel
MehrClient/Server-Systeme
Client/Server-Systeme Prof. Dr.-Ing. Wilhelm G. Spruth WS 2005/2006 Teil 2 Sockets cs 0200 ww6 wgs 09-96 Literatur Socket-Schnittstelle J. Martin, J. Leben: TCP/IP Netzwerke. Prentice Hall, 1994, Kapitel
MehrU8-3 Netzwerkkommunikation und Byteorder. U8-2 Evaluation. U8-4 Sockets. U8-1 Überblick. Wiederholung: Byteorder. 0 1 2 3 14 a2 b5 c8 0x14a2b5c8
U8 8. Übung U8 8. Übung U8-3 Netzwerkkommunikation und Byteorder U8-3 Netzwerkkommunikation und Byteorder U8-1 Überblick Wiederholung: Byteorder Besprechung der Miniklausur Online-Evaluation big endian
MehrAn Open Interface for Network Programming under Microsoft Windows. DI. Dr. Peter René Dietmüller
Windows Sockets An Open Interface for Network Programming under Microsoft Windows DI. Dr. Peter René Dietmüller Institut für Informationsverarbeitung und Mikroprozessortechnik Johannes Kepler Universität
MehrBetriebssysteme. Kommunikation von Prozessen und Threads. Sommersemester Prof. Dr. Peter Mandl. Seite 1. Prof. Dr. Peter Mandl.
Kommunikation von Prozessen und Threads Sommersemester 2014 Seite 1 Gesamtüberblick 1. Einführung in 2. Betriebssystemarchitekturen und Betriebsarten 3. Interruptverarbeitung in n 4. Prozesse und Threads
Mehr1 Client-Server-Modell
U1 Interprozesskommunikation mit Sockets U1 Interprozesskommunikation mit Sockets U1-1 Organisatorisches U1-1 Organisatorisches Organisatorisches IPC-Grundlagen Adressierung in IP-Netzwerken Betriebssystemschnittstelle
MehrClient/Server-Systeme
Client/Server-Systeme Prof. Dr.-Ing. Wilhelm G. Spruth WS 2008/2009 Teil 2 Sockets cs 0200 ww6 wgs 09-96 Literatur Socket-Schnittstelle J. Martin, J. Leben: TCP/IP Netzwerke. Prentice Hall, 1994, Kapitel
MehrKommunikation von Prozessen und Threads
Kommunikation von Prozessen und Threads Sommersemester 2015 Prof. Dr. Peter Mandl Prof. Dr. Peter Mandl Seite 1 Gesamtüberblick 1. Einführung in Computersysteme 2. Entwicklung von Betriebssystemen 3. Architekturansätze
MehrNetzwerkprogrammierung mit Sockets und C. Ulrich Vogel
Netzwerkprogrammierung mit Sockets und C Ulrich Vogel Netzwerkprogrammierung mit Sockets und C von Ulrich Vogel Dieses Tutorial ist eine Einführung in die Netzwerkprogrammierung mit Hilfe von Sockets.
MehrUDP auf Basis der BSD-Sockets 273
UDP auf Basis der BSD-Sockets 273 Bei socket lässt sich SOCK_DGRAM als zweiter Parameter angeben. Der Netzwerkdienst kann dann wie gewohnt setsockopt und bind aufrufen. Der Systemaufruf listen fällt weg,
MehrEinführung in die Netzwerkprogrammierung mit Sockets und C
Einführung in die Netzwerkprogrammierung mit Sockets und C 1 BrB/V0.1 1 Vorwort Dieses Tutorial ist eine Einführung in die Netzwerkprogrammierung mit Hilfe von Sockets und der Programmiersprache C. Als
MehrPROGRAMMIEREN MIT UNIX/LINUX-SYSTEMAUFRUFEN
PROGRAMMIEREN MIT UNIX/LINUX-SYSTEMAUFRUFEN 3. UNIX/Linux-Dateisysteme und zugehörige Systemaufrufe und Kommandos (Teil I) Wintersemester 206/7 UNIX/Linux-Dateisystem(e) Systemaufrufe zur Dateiarbeit:
MehrVerteilte Systeme - Java Networking (Sockets) -
Verteilte Systeme - Java Networking (Sockets) - Prof. Dr. Michael Cebulla 30. Oktober 2014 Fachhochschule Schmalkalden Wintersemester 2014/15 1 / 36 M. Cebulla Verteilte Systeme Gliederung Grundlagen TCP/IP
Mehr21 Netzwerkprogrammierung mit Sockets
302 21 Netzwerkprogrammierung mit Sockets Das Socket-API liegt zwischen den transportorientierten und den anwendungsorientierten Netzwerkschichten und tritt in der Praxis in 2 Formen auf: Ursprünglich
MehrAdressauflösung. IP Adresse Physikalische Adresse 128.96.34.1 57:FF:AA:36:AB:11 128.96.34.16 85:48:A4:28:AA:18
Adressauflösung IP Adresse Physikalische Adresse 128.96.34.1 57:FF:AA:36:AB:11 128.96.34.16 85:48:A4:28:AA:18 IP Adresse Physikalische Adresse 128.96.34.15??? 128.96.34.16 85:48:A4:28:AA:18 128.96.34.15
MehrBlatt 2, Kommunikationskanäle. Betriebssysteme. Deadlocks. Kommunikationskanäle. y=12; recv(k2, y); y = y+4; send(k1, y);
Blatt 2, Kommunikationskanäle Betriebssysteme Übung 7 Martin Alt Gruppe PVS Institut für Informatik Gegeben sind die beiden folgenden Prozesse: P 1 : P 2 : send(k2, x); recv(k1,z); recv(k2, y); send(k1,
MehrLinux Prinzipien und Programmierung
Linux Prinzipien und Programmierung Dr. Klaus Höppner Hochschule Darmstadt Wintersemester 2012/2013 1 / 25 Netzwerkkonfiguration TCP (Forts.) UDP IPC über Unix Domain Sockets 2 / 25 Grundlagen Netzwerk
MehrProgrammieren mit sockets
Netzwerk-Programmierung Programmieren mit sockets Sven Hartmeier shartmei@techfak.uni-bielefeld.de Übersicht Datentypen und Konversionsfunktionen minimaler Client minimaler Server Netzwerk-Programmierung
MehrClient/Server-Systeme
Client/Server-Systeme Prof. Dr.-Ing. Wilhelm G. Spruth WS 2003/2004 Teil 2 Sockets cs 0200 ww6 wgs 09-96 Literatur Socket-Schnittstelle J. Martin, J. Leben: TCP/IP Netzwerke. Prentice Hall, 1994, Kapitel
MehrU7-1 Hinweise zur Evaluation. U7-2 Netzwerkkommunikation und Byteorder. U7-3 Sockets. Evaluation. Frage "eigener Aufwand zur Vor- und Nachbereitung"
U7 Interprozesskommunikation mit Sockets U7 Interprozesskommunikation mit Sockets U7-1 Hinweise zur Evaluation U7-1 Hinweise zur Evaluation Evaluation Frage "eigener Aufwand zur Vor- und Nachbereitung"
Mehr10. Vorlesung Betriebssysteme
Dr. Christian Baun 10. Vorlesung Betriebssysteme Hochschule Mannheim WS1213 1/63 10. Vorlesung Betriebssysteme Dr. Christian Baun Hochschule Mannheim Fakultät für Informatik wolkenrechnen@gmail.com Dr.
MehrClient/Server-Systeme
Client/Server-Systeme Prof. Dr.-Ing. Wilhelm G. Spruth WS 2004 / 2005 Teil 2 Sockets cs 0200 ww6 wgs 09-96 Literatur Socket-Schnittstelle J. Martin, J. Leben: TCP/IP Netzwerke. Prentice Hall, 1994, Kapitel
MehrThemen. Transportschicht. Internet TCP/UDP. Stefan Szalowski Rechnernetze Transportschicht
Themen Transportschicht Internet TCP/UDP Transportschicht Schicht 4 des OSI-Modells Schicht 3 des TCP/IP-Modells Aufgaben / Dienste: Kommunikation von Anwendungsprogrammen über ein Netzwerk Aufteilung
Mehr1.) Nennen Sie Aufgaben und mögliche Dienste der Transportschicht (Transport Layer) des ISO/OSI-Schichtenmodells.
Übung 7 1.) Nennen Sie Aufgaben und mögliche Dienste der Transportschicht (Transport Layer) des ISO/OSI-Schichtenmodells. 2.) Charakterisieren Sie kurz das User Datagram Protokoll (UDP) aus der Internetprotokollfamilie
MehrNetzwerkprogrammierung unter Linux und UNIX
Netzwerkprogrammierung unter Linux und UNIX Bearbeitet von Stefan Fischer, Walter Müller 2. Auflage 1999. Buch. XII, 228 S. Hardcover ISBN 978 3 446 21093 6 Format (B x L): 14 x 20,9 cm Gewicht: 329 g
MehrTheoretische Aspekte
Webserver mit Win32 API Datum: 04.02.03 Autor: Michael Hielscher Homepage: www.genesis-x7.de Theoretische Aspekte Aufbau eines Webservers Als erstes sollte man im Abschnitt Multithreaded SocketServer nachlesen
Mehr6.1 Verbindungsorientiert, Verbindunslos
Kapitel 6 client server Bisher wurden Methoden besprochen, die auf einem Rechner funktionieren. Dabei wurde bei threads bereits wirklich parallel gerechnet, sofern mehrere Prozessoren vorhanden waren.
MehrTransmission Control Protocol (TCP)
Transmission Control Protocol (TCP) Verbindungsorientiertes Protokoll, zuverlässig, paketvermittelt stream-orientiert bidirektional gehört zur Transportschicht, OSI-Layer 4 spezifiziert in RFC 793 Mobile
MehrPROGRAMMIEREN MIT UNIX/LINUX-SYSTEMAUFRUFEN
PROGRAMMIEREN MIT UNIX/LINUX-SYSTEMAUFRUFEN 10. UNIX/Linux: Reaktion auf Fehler Wintersemester 2016/17 Reaktion auf Fehler: Übersicht Systemaufrufe: 1. Rückkehrwert: in den meisten (aber nicht in allen!)
MehrLabor Nachrichtentechnik, Versuch 11 Teil 2: Socket-Programmierung
Labor Nachrichtentechnik, Versuch 11 Teil 2: Socket-Programmierung 1. Hintergrundliteratur Ausgewählte Vorlesungskapitel zur Socket-Programmierung. Linksammlung zu auf jochenkoegel.de/dhbw mit Anleitung
MehrKapitel 4: Design von Client/Server-Software. Middleware in Java vieweg 2005 Steffen Heinzl, Markus Mathes
Kapitel 4: Design von Client/Server-Software Definition: Client und Server Client Ein Client ist ein Dienstnutzer, der von einem Server aktiv einen Dienst anfordert und anschließend darauf wartet, dass
MehrTCP-Sockets in Java und C. Verteilte Systeme Hochschule Regensburg Vorlesung 4, 25.04.2012 Universitätsstraße 31, 93053 Regensburg
TCP-Sockets in Java und C Hochschule Regensburg Vorlesung 4, 25.04.2012 Universitätsstraße 31, 93053 Regensburg Prof. Dr. Jan Dünnweber Ziel: Threads sollen unabhängig von ihrer Position kommunizieren
MehrVerbessertes Konzept: Monitore
Verbessertes Konzept: Monitore Ein Nachteil von Semaphoren ist die Notwendigkeit zur expliziten Anforderung P und Freigabe V des kritischen Bereiches durch den Programmierer Vergißt der Entwickler z.b.
MehrProgrammieren von UNIX-Netzen
W. R. Stevens Programmieren von UNIX-Netzen Grundlagen, Programmierung, Anwendung aus dem Englischen übersetzt von Michael Frese, Werner Maisch, Eberhard Trautwein Eine Coedition der Verlage Carl Hanser
MehrVerteilte Systeme. Organisatorisches. Secure Identity Research Group
Verteilte Systeme Organisatorisches Tutorium Do, 8:30-10:00 Philipp Schmidt (ab 28.4.) Fr, 14:15-16:00 Andreas Nüßlein (ab 29.4.) Verteilte Systeme Klassifizierung von Kommunikationsdiensten II Fehlertypen
MehrSpeicherbasierte Kommunikation (T) Realisierung von Semaphoren (T) Shared Memory (P) Synchronisation mittels Semaphoren (P)
Systempraktikum im Wintersemester 2009/2010 (LMU): Vorlesung vom 26.11. Foliensatz 5 Speicherbasierte Kommunikation (T) Realisierung von Semaphoren (T) Shared Memory (P) Synchronisation mittels Semaphoren
MehrBeispiel für einen IPC-Server, der seinen Dienst über den Global Name Service im Netzwerk bekannt gibt. Header-Dateien einbinden
Dokument: gns_ipc_server.c, 1 - Seite 1 - - 1: 1 von 1 - Beispiel für einen IPC-Server, der seinen Dienst über den Global Name Service im Netzwerk bekannt gibt. Header-Dateien einbinden int main(int argc,
MehrEinführung in die Systemprogrammierung unter Linux
Einführung in die Systemprogrammierung unter Linux Systemsoftware Praktikum Inhalt Übersicht über benötigte Systemfunktionen Programmieren unter Linux Grundlegendes Message-Queue Shared Memory Semaphore
MehrDienstspezifikation nach RFC 2396 193
Dienstspezifikation nach RFC 2396 193 Für die Kombination aus Rechnernamen (oder alternativ einer IP-Adresse) und einer Portnummer gibt es mit RFC 2396 einen Standard: hostport host [ : port ] host hostname
MehrKommunikation im Netzwerk
Kommunikation im Netzwerk Die Client-Server Beziehung Der Client stellt eine Frage (Request) an den Server, dieser sendet eine Antworte (Response) zurück. Grundlage ist die Verfügbarkeit von Sockets, die
MehrTCP/UDP. Transport Layer
TCP/UDP Transport Layer Lernziele 1. Wozu dient die Transportschicht? 2. Was passiert in der Transportschicht? 3. Was sind die wichtigsten Protkolle der Transportschicht? 4. Wofür wird TCP eingesetzt?
MehrBetriebssysteme Teil 11: Interprozess-Kommunikation
Betriebssysteme Teil 11: Interprozess-Kommunikation 19.12.15 1 Übersicht Grundbegriffe Shared Memory Pipelines Messages Ports Sockets 2 Grundbegriffe Interprocess-Kommunikation = Austausch von Daten über
MehrPROGRAMMIEREN MIT UNIX/LINUX-SYSTEMAUFRUFEN
PROGRAMMIEREN MIT UNIX/LINUX-SYSTEMAUFRUFEN 2. UNIX/Linux-Prozessverwaltung und zugehörige Systemaufrufe Wintersemester 2015/16 2. Die UNIX/LINUX-Prozessverwaltung Aufgaben: 1. Erzeugen neuer Prozesse
MehrJava und Netzwerkkommunikation
Java und Netzwerkkommunikation Ziel: Kommunikation über Rechnergrenzen hinweg Grundlagen Sockets in Java Java-Netzwerk-Einführung Seite 1 Grundbegriffe Senden und Empfangen von Daten! Frau B Herr A Sender
MehrC - Grundlagen und Konzepte
C - Grundlagen und Konzepte Networking in C Arbeitsbereich Wissenschaftliches Rechnen Fachbereich Informatik Fakultät für Mathematik, Informatik und Naturwissenschaften Universität Hamburg Vorgelegt von:
MehrProbeklausur zu Systemnahe Software II SS 2012 Dr. Andreas Borchert mit Markus Schnalke
Probeklausur zu Systemnahe Software II SS 2012 Dr. Andreas Borchert mit Markus Schnalke 1 Aufgabe 1 (15 Punkte) Prozesse, Signale und Interprozesskommunikation (a) 3 Punkte Was wird von dem folgenden Programm
MehrProgrammierung mit sockets
Netzwerk-Programmierung Programmierung mit sockets Jan Krueger jkrueger@cebitec.uni-bielefeld.de Alexander Sczyrba asczyrba@cebitec.uni-bielefeld.de Übersicht Datentypen und Konvertierung Minimaler Client
MehrI. Interprozesskommunikation
I. Interprozesskommunikation I.1 Überblick Konkurrenz zw. Prozessen und Threads bzgl. gemeinsamer Ressourcen Synchronisierung. Kooperation zw. Prozessen u. Threads, um Aufgaben gemeinsam zu bearbeiten
MehrVerteilte Systeme Kapitel 4: Realisierung von Netzwerkdiensten
Verteilte Systeme Kapitel 4: Realisierung von Netzwerkdiensten Prof. Dr. Stefan Fischer Institut für Telematik, Universität zu Lübeck http://www.itm.uni-luebeck.de/people/fischer Inhaltsüberblick der Vorlesung
MehrSockets - Eine Programmierschnittstelle für Kommunikation im Netz
Sockets - Eine Programmierschnittstelle für Kommunikation im Netz M. Jäger - FB MNI - FH Gießen-Friedberg 24. November 2002 Inhaltsverzeichnis 1 Socket-Konzept 2 2 Internet-Sockets 2 2.1 Socket-Aufruf...................................
MehrLinux Prinzipien und Programmierung
Linux Prinzipien und Programmierung Dr. Klaus Höppner Hochschule Darmstadt Wintersemester 2012/2013 1 / 24 RPMs Socket-Programmierung TCP 2 / 24 RPMs: Grundlagen Die meisten Linux-Distributionen benutzen
MehrLinux Prinzipien und Programmierung
Linux Prinzipien und Programmierung Dr. Klaus Höppner Hochschule Darmstadt Wintersemester 2011/2012 1 / 24 RPMs Socket-Programmierung TCP 2 / 24 RPMs: Grundlagen Die meisten Linux-Distributionen benutzen
MehrNetzwerkprogrammierung mit C++
Netzwerkprogrammierung mit C++ Bernhard Trummer Linux User Group Graz für die Linuxtage03 bernhard.trummer@gmx.at 24. April 2003 Typeset by FoilTEX Übersicht System Calls: Wie erzeugt man Sockets? Wie
MehrProgrammierschnittstellen
Programmierschnittstellen Dr. Hannes P. Lubich Bank Julius Bär Zürich IP Next Generation - Programmierschnittstellen (1) Die Internet-Programmierschnittstelle: Sockets Unterstützung verschiedener Protokolle
Mehrshri Raw Sockets Prof. Dr. Ch. Reich
shri Raw Sockets Prof. Dr. Ch. Reich Szenario: Verschicken einer gespooften Ping-Message IP-Source-Adresse ist Adresse des Opfers Nachrichtenformat: IP-Header (normal, außer IP-Source-Address ist einstellbar)
MehrG.1 Überblick (2) G.1 Überblick (2) G.1 Überblick
G Rechnerkommunikation (TCP/IP) G Rechnerkommunikation (TCP/IP) G.1 Überblick (2) G.1 Überblick G.1 Überblick Ende der 70er Jahre in den USA Entwicklung neuer Netzwerkprotokolle, gefördert durch DARPA
MehrVorlesung "Verteilte Systeme" Wintersemester 2000/2001. Verteilte Systeme. Internet-Protokolle: FTP, TELNET, SMTP, DNS, NSP, NTP, HTTP,...
Verteilte Systeme 3. Protokollfamilie TCP/IP Einordnung in OSI-Modell Internet-Protokolle: FTP, TELNET, SMTP, DNS, NSP, NTP, HTTP,... Ebene 4-7 RPC-Protokolle PVM, MPI, Corba,... UDP TCP Ebene 3 IP / ICMP
MehrEine Mini-Shell als Literate Program
Eine Mini-Shell als Literate Program Hans-Georg Eßer 16.10.2013 Inhaltsverzeichnis 1 Eine Mini-Shell 1 1.1 Einen Befehl parsen......................... 2 1.2 Was tun mit dem Kommando?...................
MehrIPv6 in der Praxis. Felix von Leitner CCC Berlin felix@ccc.de. Dezember 2000. IPv6 in der Praxis
IPv6 in der Praxis Felix von Leitner CCC Berlin felix@ccc.de Dezember 2000 IPv6 in der Praxis Agenda 1. Autoconfiguration, Neighbor Discovery 2. Router Discovery, Router Renumbering 3. BSD socket API Erweiterungen
MehrAlles Text Sockets à la Plan 9
Alles Text Sockets à la Plan 9 Petra Gremeyer, Axel-Tobias Schreiner, Fachbereich Mathematik/Informatik, Universität Osnabrück Plan 9, das neue verteilte Betriebssystem der UNIX-Schöpfer, hat bekanntlich
MehrVorwort. Martin Gräfe. C und Linux. Die Möglichkeiten des Betriebssystems mit eigenen Programmen nutzen ISBN:
Vorwort Martin Gräfe C und Linux Die Möglichkeiten des Betriebssystems mit eigenen Programmen nutzen ISBN: 978-3-446-42176-9 Weitere Informationen oder Bestellungen unter http://www.hanser.de/978-3-446-42176-9
MehrVerteilte Systeme - Java Networking (Sockets) 2 -
Verteilte Systeme - Java Networking (Sockets) 2 - Prof. Dr. Michael Cebulla 06. November 2014 Fachhochschule Schmalkalden Wintersemester 2014/15 1 / 30 Michael Cebulla Verteilte Systeme Gliederung Wiederholung:
MehrClient/Server Programmierung mit Sockets
1 Client/Server Programmierung mit Sockets 1 ZUGRUNDELIEGENDE PROTOKOLLE... 2 1.1 EINFÜHRUNG... 2 1.2 PROTOKOLLSTAPEL... 2 1.3 DIE ETHERNETSCHICHT... 4 1.4 VERPACKEN VON NUTZDATEN... 4 1.5 DIE IP-SCHICHT...
MehrUnterschiede zu Pipelines 165
Netzwerkdienste 164 Ein Netzwerkdienst ist ein Prozess, der unter einer Netzwerkadresse einen Dienst anbietet. Ein Klient, der die Netzwerkadresse kennt, kann einen bidirektionalen Kommunikationskanal
MehrProgrammiertechnik. Teil 4. C++ Funktionen: Prototypen Overloading Parameter. C++ Funktionen: Eigenschaften
Programmiertechnik Teil 4 C++ Funktionen: Prototypen Overloading Parameter C++ Funktionen: Eigenschaften Funktionen (Unterprogramme, Prozeduren) fassen Folgen von Anweisungen zusammen, die immer wieder
MehrPROGRAMMIEREN MIT UNIX/LINUX-SYSTEMAUFRUFEN
PROGRAMMIEREN MIT UNIX/LINUX-SYSTEMAUFRUFEN UNIX/Linux-Interprozesskommunikation 8. UNIX/Linux-Signale Wintersemester 2015/16 UNIX/Linux-IPC-Mechanismen Nachrichtenbasierter Informationsaustausch: 5. 1.
MehrNetzwerksicherheit Musterlösung Übungsblatt 5: Firewalls
Institut für Informatik Philipp Hagemeister Netzwerksicherheit Musterlösung Übungsblatt 5: Firewalls 1 Virus-Konstruktion Erstellen Sie nun ein Programm in einer Programmiersprache Ihrer Wahl, welches
MehrMODBUS/TCP und Beckhoff Steuerelemente
MODBUS/TCP und Beckhoff Steuerelemente Die 1.7.5 Version wurde zum DOMIQ/Base Modul die Funktion der Bedienung des MOD- BUS/TCP und MODBUS/UDP Protokolls hinzugefügt. Das Base Modul erfüllt die Rolle des
MehrHintergrundinformationen/Begriffe. Netzwerkverbindungen. Virtuelle Kreise. Sockettypen. Inhalt, vorige Seite, nächste Seite
Hintergrundinformationen/Begriffe Inhalt, vorige Seite, nächste Seite Hintergrundinformationen/Begriffe Netzwerkverbindungen Netzwerkverbindungen können entweder verbindungsorientiert oder verbindungsfrei
MehrEinreihung in eine einfach verkettete Liste Elementaroperation zum Anhängen eines Kettenglieds
Koordination durch Kommunikation Interprozesskommunikation (engl. inter-process communication, IPC) Interaktion von Prozessen ist zwingend, um in einem Mehrprozesssystem Fortschritte in der Programmverarbeitung
MehrLeseprobe. Martin Gräfe. C und Linux. Die Möglichkeiten des Betriebssystems mit eigenen Programmen nutzen ISBN: 978-3-446-42176-9
Leseprobe Martin Gräfe C und Linux Die Möglichkeiten des Betriebssystems mit eigenen Programmen nutzen ISBN: 978-3-446-42176-9 Weitere Informationen oder Bestellungen unter http://www.hanser.de/978-3-446-42176-9
MehrPraktikum Rechnernetze Aufgabe 3: Messung mit dem Protokollanalyzer
Praktikum Rechnernetze Aufgabe 3: Messung mit dem Protokollanalyzer 16. Mai 2001 Niels-Peter de Witt Matrikelnr. 2083921 Karsten Wolke Matrikelnr. 2083967 Helge Janicke Matrikelnr. 2083973 1 Rechnernetze
Mehr7.5 Maskerade. (spoofing)
7.5 Maskerade (spoofing) Angreifer tritt mit gefälschter Absender-Adresse auf, entweder mit eigenen Nachrichten oder mit entsprechend modifizierten Nachrichten anderer (man-in-the-middle attack) IP: TCP/UDP:
MehrUDP User Datagramm Protokoll
UDP User Datagramm Protokoll Marco Gerland Janina de Jong Internet Protokolle WS 03 / 04 1/31 Einführung IP Datagramme werden durchs Internet geroutet abh. von der IP Adresse Anhand der Ziel IP Adresse
MehrÜbungspaket 29 Dynamische Speicherverwaltung: malloc() und free()
Übungspaket 29 Dynamische Speicherverwaltung malloc() und free() Übungsziele Skript In diesem Übungspaket üben wir das dynamische Alloziieren 1. und Freigeben von Speicherbereichen 2. von Zeichenketten
MehrVorlesung Betriebssysteme II
1 / 15 Vorlesung Betriebssysteme II Thema 3: IPC Robert Baumgartl 20. April 2015 2 / 15 Message Passing (Nachrichtenaustausch) Prinzip 2 grundlegende Operationen: send(), receive() notwendig, wenn kein
MehrBetriebssysteme (BS) Interprozesskommunikation. Olaf Spinczyk.
Betriebssysteme (BS) Interprozesskommunikation http://ess.cs.tu-dortmund.de/de/teaching/ss2017/bs/ Olaf Spinczyk olaf.spinczyk@tu-dortmund.de http://ess.cs.tu-dortmund.de/~os AG Eingebettete Systemsoftware
Mehr