NEBEN - LÄUFIGE PROG RAM -
|
|
- Gotthilf Scholz
- vor 8 Jahren
- Abrufe
Transkript
1 carsten VOGT NEBEN - LÄUFIGE PROG RAM - M IERUNG EIN ARBEITSBUCH MIT UNIX/LINUX UND JAVA EXTRA: Mit kostenlosem E-Book Im Internet: Programmbeispiele, Lösungen zu den Aufgaben und Zusatzmaterialien
2 Inhalt 1 Einführung Basistechniken Formen der Nebenläufigkeit Hard- und Software eine Kurzeinführung Computer-Hardware Computer-Software Nebenläufigkeit in Hardware Nebenläufigkeit in Software Die Rolle des Betriebssystems Systemarchitekturen Aufgaben und Schnittstellen Virtualisierung Netzdienste und verteilte Systeme Betriebsarten Prozesse und Threads Prozesse Threads Der Lebenszyklus Implementierungsaspekte Buchführung Dispatching Scheduling Prozesse und Threads in UNIX/Linux Kommandos der Benutzerschnittstelle Grundlegende API-Funktionen für Prozesse Die Funktion fork() Weitere Funktionen Programmbeispiele Grundlegende API-Funktionen für Threads Pthreads: pthread_create(), pthread_exit() Pthreads: pthread_join(), pthread_cancel() vfork() und clone()...59
3 8 Inhalt 2.4 Threads in Java Die Klasse Thread run() und start() join() Weitere Methoden Grundlegende Programmiertechniken Zugriff auf gemeinsame Variablen Beenden von Threads Zusammenfassung und Ausblick A Basistechniken: Aufgaben A.1 Wissens- und Verständnisfragen A.2 Sprachunabhängige Anwendungsaufgaben A.3 Programmierung unter UNIX/Linux A.4 Programmierung in Java Synchronisation Synchronisationsbedingungen Elementare Bedingungen Wechselseitiger Ausschluss Reihenfolgebedingung Komplexere Probleme Erzeuger-Verbraucher-Problem Leser-Schreiber-Problem Philosophenproblem Einfache Synchronisationsmechanismen Grundlegende Eigenschaften Interruptsperren Spinlocks Signale und Events Synchronisation durch Semaphore Arbeitsprinzip von Semaphoren Datenstrukturen und Operationen Semaphoroperationen in Bild und Notation Varianten und Erweiterungen Einsatz bei Standardproblemen Wechselseitiger Ausschluss...96
4 Inhalt Reihenfolgebedingung Erzeuger-Verbraucher-Problem Leser-Schreiber-Problem Philosophenproblem Systematische Lösung von Problemen Fehlerquellen Deadlocks: Problematik Deadlocks: Lösungen Missachtung der Atomarität Einsatz von sleep() Mangelnde Fairness Synchronisation durch Monitore Grundprinzip von Monitoren Definition des Monitorbegriffs Beispiel: Einfacher Ringpuffer mit Überschreiben Bedingungsvariablen Zweck und Einsatz Beispiel: Ringpuffer für Erzeuger/Verbraucher Lösung weiterer Standardprobleme Reihenfolgebedingung Leser-Schreiber-Problem Philosophenproblem Mechanismen in UNIX/Linux Signale Lock-Dateien Semaphore Erzeugen von Semaphorgruppen Initialisieren und Löschen P- und V-Operationen Programmstrukturen und -beispiele Mutexe mit Bedingungsvariablen Mutexe Bedingungsvariablen Beispiel: Erzeuger-Verbraucher mit Ringpuffer Mechanismen in Java Atomare Operationen Basistypen Collections...136
5 10 Inhalt Semaphore Die Klasse Semaphore Beispiel: Reihenfolgebeziehung Monitore synchronized wait() und notify() Die Interfaces Lock und Condition Weitere Mechanismen Zusammenfassung und Ausblick A Synchronisation: Aufgaben A.1 Wissens- und Verständnisfragen A.2 Sprachunabhängige Anwendungsaufgaben A.3 Programmierung unter UNIX/Linux A.4 Programmierung in Java Kommunikation Grundlegende Begriffe Arten der Kommunikation Sender-Empfänger-Beziehungen Ein oder mehrere Sender und Empfänger Direkte vs. indirekte Kommunikation Enge vs. lose zeitliche Kopplung Kommunikation in Rechnernetzen Schnittstellen: Sockets Protokolle und Protokollstacks Der Protokollstack des Internets Techniken in UNIX/Linux Shared Memory API-Funktionen Programmbeispiel: Erzeuger-Verbraucher-System Pipes Benannte Pipes Unbenannte Pipes Message Queues API-Funktionen: Erzeugen und Löschen API-Funktionen: Senden und Empfangen Programmbeispiel: Erzeuger-Verbraucher-System...181
6 Inhalt Sockets Domains und Typen API-Funktionen: Übersicht API-Funktionen: Erzeugen und Schließen API-Funktionen: Verbinden und Kommunizieren Programmbeispiel: Stream-Sockets Programmbeispiel: Datagram-Sockets Techniken in Java Übersicht Piped Streams Sockets Stream-Sockets Datagram-Sockets Zusammenfassung und Ausblick A Kommunikation: Aufgaben A.1 Wissens- und Verständnisfragen A.2 Sprachunabhängige Anwendungsaufgaben A.3 Programmierung unter UNIX/Linux A.4 Programmierung in Java Kooperation Modelle und Techniken Das Client-Server-Modell Grundlegende Struktur Zeitliche Abläufe Implementierungsaspekte Das Peer-to-Peer-Modell Programmiertechniken Prozedurorientierte Kooperation Objektorientierte Kooperation Webbasierte Kooperation Techniken in UNIX/Linux Kooperation über Sockets Remote Procedure Call (RPC) Komponenten und ihr Zusammenspiel Schritte der Programmierung...230
7 12 Inhalt 5.3 Techniken in Java Remote Method Invocation (RMI) Komponenten und ihr Zusammenspiel Schritte der Programmierung Dynamische Webseiten Applets Servlets und Java Server Pages Web Services Zusammenfassung A Kooperation: Aufgaben A.1 Wissens- und Verständnisfragen A.2 Sprachunabhängige Anwendungsaufgaben A.3 Programmierung unter UNIX/Linux A.4 Programmierung in Java Literatur und Internet Index
8 2A Basistechniken: Aufgaben Die Lösungen und weitere Aufgaben findet man auf der Webseite zum Buch. 2A.1 Wissens- und Verständnisfragen 1. Kreuzen Sie die richtige(n) Aussage(n) an: a.) API ist die Abkürzung für O Automated Process Interrupt. O Advanced Programming Interface. O Application Programming Interface. b.) Wenn ein Prozessor zwischen Prozessen hin- und hergeschaltet wird, so ist das O Microprogramming. O Multiprogramming. O Verteilte Programmierung. c.) Ein Multiprozessorsystem ist ein System mit O einem Prozessor, der besonders schnell zwischen den Prozessen umgeschaltet wird. O mehreren Prozessoren, die über einen Bus miteinander verbunden sind. O mehreren Computern, die z.b. über das Internet miteinander verbunden sind. d.) Nebenläufigkeit gibt es in O jedem Stapelverarbeitungssystem. O Stapelverarbeitungssystemen mit Spooling. O Clustern. e.) Ein Prozess O ist ein Programm, das gerade ausgeführt wird. O hat in UNIX/Linux eine eindeutige Nummer. O ist dasselbe wie ein Thread. f.) Die UNIX/Linux-Funktion fork() O liefert an den Sohnprozess die PID des Vaters zurück und an den Vaterprozess eine 0. O liefert an den Vaterprozess die PID des Sohns zurück und an den Sohnprozess eine 0. O liefert an den Sohnprozess die PID des Vaters zurück und an den Vaterprozess die PID des Sohns.
9 70 2A Basistechniken: Aufgaben g.) Für das Verhältnis zwischen Prozessen und Threads gilt: O Ein Thread kann mehrere Prozesse enthalten. O Ein Prozess kann mehrere Threads enthalten. O Keins von beiden. h.) Ein Java-Thread wird ausgeführt nach Aufruf der Methode O start(). O init(). O Thread(). 2. Füllen Sie in den folgenden Aussagen die Lücken: a.) Ein Betriebssystem verwaltet den Computer, und es stellt bereit, über die Programmierer und Benutzer Dienste aufrufen können. b.) Bei der Betriebsart bearbeitet die CPU Aufträge streng hintereinander, Ein- und Ausgaben können aber nebenläufig dazu stattfinden. c.) Informationen über einen Prozess stehen in dessen (abgekürzt: ). d.) Speicherbereiche, Registerinhalte usw. gehören zum eines Prozesses. e.) Ein UNIX/Linux-Prozess wartet auf die Beendigung eines Sohns mit der Funktion. f.) Um einen UNIX/Linux-Prozess für eine bestimmte Anzahl von Sekunden warten zu lassen, benutzt man die C-Funktion. 3. Sind die folgenden Aussagen wahr oder falsch? Begründung! a.) Nebenläufigkeit setzt immer voraus, dass mehrere Prozessoren vorhanden sind. b.) Ein UNIX/Linux-Prozess kann mehrere Söhne haben. c.) Ein UNIX/Linux-Prozess kann mehrere Väter haben. d.) Wenn unter UNIX/Linux ein Vaterprozess eine Variable deklariert hat, so kann sein Sohnprozess ohne weiteres auf diese Variable seines Vaters zugreifen. e.) Die UNIX/Linux-Funktion waitpid() und die Java-Methode join() haben im Wesentlichen dieselbe Aufgabe und Wirkung. 4. Welcher Begriff passt jeweils nicht in die Reihe? Begründung! a.) Hardware-Schnittstelle, API, UI, CPU b.) Multiprozessorsystem, Multiprogrammingsystem, Mehrkernprozessor, Cluster c.) Einprogrammbetrieb, Mehrprogrammbetrieb, Scheduling, Spooling d.) synchronisiert, blockiert, rechnend, bereit e.) fork, exit, ps, getpid f.) kill, fork, getpid, start
10 2A.2 Sprachunabhängige Anwendungsaufgaben Auf der linken Seite sind Begriffe angegeben, rechts stehen Charakteristika. Welcher Begriff gehört zu welcher Charakteristik? Ziehen Sie genau fünf Pfeile von links nach rechts! Mehrkernprozessor Pseudo-Nebenläufigkeit Spooling Festlegung der Ausführungsreihenfolge Multiprogramming Kooperation mehrerer Computer Verteiltes System echte Nebenläufigkeit Scheduling Ein-/Ausgabe gleichzeitig mit Ausführung 6. Beantworten Sie die folgenden Fragen: a.) Welche Schnittstellen bietet ein Betriebssystem? Worin unterscheiden sie sich? b.) Was ist der Unterschied zwischen Pseudonebenläufigkeit und echter Nebenläufigkeit? Wo findet man diese beiden Formen der Nebenläufigkeit in einem Computer? c.) Aus welchen zwei (Haupt-)Komponenten besteht ein Prozess? d.) Was ist der Unterschied zwischen Prozessen und Threads? e.) Was gehört zum Kontext eines Prozesses? (mindestens drei Nennungen) f.) Wie sieht das Zustandsübergangsdiagramm eines Prozesses aus? Zeichnen Sie es aus dem Gedächtnis! g.) Welcher Zusammenhang besteht zwischen den Parametern der UNIX/Linux-Funktionen exit() und wait()? h.) Was ist der Unterschied zwischen den Java-Methoden run() und start()? 2A.2 Sprachunabhängige Anwendungsaufgaben 1. Gegeben ist ein System mit einem Prozessor, das drei Aufträge zu bearbeiten hat. Jeder der drei Aufträge besteht aus vier aufeinanderfolgenden Phasen: Zuerst werden Daten eingegeben, dann wird der erste Teil des Auftrags auf dem Prozessor bearbeitet, dann folgt eine zweite Eingabe und schließlich die Bearbeitung des zweiten Teils. Die Zeitdauern für die jeweiligen Eingaben und Bearbeitungen sind wie folgt festgelegt: Eingabe 1 Bearb. 1 Eingabe 2 Bearb. 2 Auftrag A Auftrag B Auftrag C Das Systemverhalten unter streng sequentiellem Einprogrammbetrieb soll mit dem Verhalten unter (pseudo-)nebenläufigem Mehrprogrammbetrieb verglichen werden. Dabei gelten die folgenden Annahmen: Die Eingaben für verschiedene Aufträge können gleichzeitig stattfinden (was allerdings nur für den Mehrprogrammbetrieb interessant ist). Es kann jedoch nur ein Auftrag gleichzeitig bearbeitet werden; andere Aufträge müssen gegebenenfalls warten, bis der Prozessor wieder frei ist.
11 72 2A Basistechniken: Aufgaben Die Aufträge sind in der Reihenfolge A > B > C priorisiert. Im Einprogrammbetrieb wird also zunächst A vollständig zu Ende bearbeitet, dann B und dann C (wobei die Eingabe des nächsten Auftrags erst beginnt, wenn der vorherige Auftrag ganz fertig ist). Im Mehrprogrammbetrieb kann ein Auftrag höherer Priorität die Ausführung eines Auftrags niedrigerer Priorität unterbrechen; der niederpriore Auftrag wird dann später fortgesetzt (wobei seine bisherige Bearbeitungszeit angerechnet wird). Das Umschalten des Prozessors zwischen Aufträgen verursacht keinen zusätzlichen Zeitaufwand. Zeichnen Sie, für Ein- und Mehrprogrammbetrieb gesondert, je eine Zeitlinie, die zeigt, wann der Prozessor welchen Auftrag bearbeitet und wann er unbeschäftigt ( idle ) ist. Ermitteln Sie für Ein- und Mehrprogrammbetrieb die folgenden Kennzahlen: Die Aufenthaltsdauern der einzelnen Aufträge also die Länge der Zeit zwischen dem Eintreffen des Auftrags im System (hier immer 0) und seiner Fertigstellung. Die mittlere ( durchschnittliche ) Aufenthaltsdauer der drei Aufträge. Die Auslastung des Prozessors also die Zeit, in der der Prozessor Aufträge bearbeitet hat, im prozentualen Verhältnis zur Gesamtzeit (Summe aller Bearbeitungs- und Idle-Zeiten). 2. Gegeben ist ein System mit einem Prozessor, das vier Aufträge zu bearbeiten hat. Die Aufträge treffen zu unterschiedlichen Zeitpunkten ein und sind dann sofort zur Bearbeitung bereit, müssen also keine weiteren Eingaben abwarten. Jeder Auftrag benötigt den Prozessor für eine bestimmte Gesamtzeitdauer: Auftrag Ankunftszeitpunkt Prozessorzeit A B C D Für dieses System sollen die folgenden Schedulingstrategien betrachtet werden: Prioritätengesteuert/nichtunterbrechend: Jeweils der ausführungsbereite Auftrag mit der höchsten Priorität erhält den Prozessor (Zur Beachtung: Aufträge, die noch nicht eingetroffen sind, sind auch nicht ausführungsbereit!). Ein Auftrag gibt den Prozessor erst wieder frei, wenn seine Bearbeitung beendet ist. Er wird also in einem Rutsch ausgeführt und kann nicht durch einen später eintreffenden höherprioren Auftrag unterbrochen werden. Auftrag C hat die höchste Priorität, dann folgt Auftrag B und schließlich die Aufträge A und D, die dieselbe Priorität haben. Bei gleicher Priorität wird der Auftrag mit der kürzeren (Rest-)bearbeitungszeit bevorzugt. Prioritätengesteuert/unterbrechend: Wie oben. Allerdings übernimmt ein neu eintreffender Auftrag sofort den Prozessor vom laufenden Auftrag, sofern dessen Priorität niedriger ist. Der unterbrochene Auftrag wird später fortgesetzt, wobei seine bisherige Prozessorzeit angerechnet wird (er muss also nicht von vorn beginnen). Zeitscheibenbasiert (Round Robin) mit Zeitscheibenlänge 100: Die Reihenfolge der Aufträge im Zyklus ist A, B, C, D. Wird ein Auftrag schon vor Ende der Zeitscheibe fertig, so wird der Prozessor sofort an den nächsten Auftrag weitergegeben.
12 2A.3 Programmierung unter UNIX/Linux 73 Zeitscheibenbasiert (Round Robin) mit Zeitscheibenlänge 50: Wie oben, nur mit kürzerer Zeitscheibe. Das Umschalten des Prozessors zu einem anderen Auftrag dauert eine Zeiteinheit, ebenso das Starten eines Auftrags auf dem bisher freien Prozessor. Zeichnen Sie, für jede der vier Strategien gesondert, eine Zeitlinie, die zeigt, wann der Prozessor welchen Auftrag bearbeitet, wann er unbeschäftigt ( idle ) ist und wann Umschaltungen stattfinden. Vergleichen Sie dann die Strategien anhand der Reihenfolge, in der die Aufträge beendet werden, und der Anzahl der Umschaltungen, die auftreten. 2A.3 Programmierung unter UNIX/Linux 1. Gegeben ist das folgende Programm für die UNIX/Linux-C-Schnittstelle: #include <stdio.h> main() { printf("prozess ist gestartet\n"); sleep(2); printf("prozess terminiert jetzt\n"); } Zeigen Sie durch das Zustandsübergangsdiagramm, welche Zustände der ausführende Prozess durchläuft. 2. Das C-Programm #include <stdlib.h> main() { int status; if (fork()==0) { sleep(5); exit(0); } wait(&status); } wird in eine Maschinenprogrammdatei prog übersetzt, die dann durch./prog & ausgeführt wird. Während dieser Ausführung erzeugt der Benutzer eine Bildschirmausgabe der Form UID PID PPID... CMD joe bash joe... prog joe... prog Welches UNIX/Linux-Benutzerkommando hat er dazu eingegeben? Welche Aufgabe hat hier der Prozess 2700? Füllen Sie die Leerstellen mit geeigneten Werten. 3. Gegeben ist das folgende Programmstück: int p, status; if ((p=fork())==0) { printf("%d %d ",getpid(),getppid()); exit(0); } wait(&status); printf("%d %d\n",getpid(),p);
13 Index A aktives Warten 85, 219 Aktivität 25 Alles-oder-nichts-Prinzip 95, 96, 102, 107 in UNIX/Linux 121, 127 Apache Axis 243 Applet 238 Application Programming Interface (API) 26 Atomarität 89 Fehler bei Missachtung 108 B Barriere in Java 143 Batch Mode 32 Bedingungsvariable 112 in UNIX/Linux 132 Belegungs-Anforderungs-Graph 106 Benutzerschnittstelle 26 Betriebsart 32 Betriebssystem 25 Aufgaben 25 Kern 26 Netzdienste 30 Schnittstellen 26 bidirektionale Kommunikation 167 Blocking Send/Receive 165 Broadcast 163 Bussperre 89 C Cigarette Smokers Problem 158 client-/serverseitige Ausführung 225 Client-Server-Modell 218 Client-Socket in Java 197 in UNIX/Linux 184 Cluster 23 CORBA 224 D Datagramm 185 Datagram-Socket 170 in Java 200 in UNIX/Linux 183, 191 Datenstrom 161 Deadlock 100, 106 Aufhebung 107 beim Philosophenproblem 101 Verhinderung 107 Vermeidung 107 Dispatching 40 Distributed Shared Memory (DSM) 163 Dynamic Port 186 dynamische Webseite 225, 238 E Einprogrammbetrieb 32 Eltern-Kind-Beziehung 42, 44, 46 Enterprise JavaBeans (EJB) 194 Erzeuger-Verbraucher-Problem 83 mit allgemeinen Semaphoren 98, 102 mit Java-Condition 143 mit Java-Piped-Streams 195 mit Java-wait()/notify() 141 mit Monitor 114 mit Pthreads-Bedingungsvariablen 133 mit UNIX/Linux-Pthreads 133 mit UNIX-Message-Queue 181 mit UNIX-Semaphoren 129, 173 mit UNIX-Shared-Memory 173 Event 90 in Java 141 F Fairness 109 Fat Client 221
14 256 Index G Gast-Betriebssystem 29 geordnete Ressourcenanforderung 107 H Hardware eines Computers 20 Hardware-Nebenläufigkeit 22 Host-Betriebssystem 29 Hypertext Transfer Protocol (HTTP) 170 in UNIX/Linux 226 I Interface Definition Language (IDL) 223 in UNIX/Linux 228, 230 Internet Protocol (IP) 169 Internet-Domain 182 Inter-Process Communication (IPC) 161 Interrupt 219 Interruptsperre 85 J Java Applet 238 Interrupt-Flag 66 Pipe 194 Remote Method Invocation (RMI) 234 Servlet 240 Shared Memory 64 Socket 196 Thread 60 Web Service 241 Java Message Service (JMS) 194 Java Server Pages (JSP) 240 Java Virtual Machine (JVM) 22, 29, 238 Java-Klassen/Interfaces Atomic 135 BlockingQueue 143 Collections 136 Condition 143 CountDownLatch 143 CyclicBarrier 143 DatagramPacket 200 DatagramSocket 200 Exchanger 144 InterruptedException 66, 140 LinkedBlockingQueue 141 Lock 142 PipedInputStream 194 PipedOutputStream 195 ReadWriteLock 143 ReentrantLock 142 Semaphore 136 ServerSocket 197 Socket 197 Thread 60 Java-Methoden currentthread() 64 getid()/getname()/setname() 64 getstate() 64 interrupt()/isinterrupted() 64, 66 isalive() 64 join() 63 notify() 140 notifyall() 140 run() 61 setpriority()/getpriority() 64 sleep() 64 start() 61 synchronized 138, 139 synchronizedxxx() 136 wait() 140 yield() 64 JAX-RS 243 JAX-WS 241 JSON 226 K Kern eines Betriebssystems 26 eines Prozessors 23 Kommunikation 161 direkte vs. indirekte 164 synchrone vs. asynchrone 166 Kommunikationsprotokoll 167 Kommunikationssystem 161, 166 Konkurrenz 80 Kontext 35 Kooperation 81, 217 objektorientierte 224
15 Index 257 prozedurorientierte 222 synchrone vs. asynchrone 219 Kopplung (enge vs. lose) 24 kritischer Abschnitt 80, 96 L Lebenszyklus 37 Leser-Schreiber-Problem 83 in Java 143 mit allgemeinen Semaphoren 99 mit Monitor 116 Lock-Datei 90 in UNIX/Linux 120 Lock-Variable 87 M Mailbox 164 in UNIX/Linux 177 Marshalling 223 Mehrprogrammbetrieb 33 Message Passing Interface (MPI) 194 Message Queue 177 Middleware 31 Monitor 110 Bedingungsvariable 112 in Java 138 Multicast 163 Multicomputer 23 Multiprogramming 33 Multiprozessorsystem 23 Multitasking 19, 33 Mutex 95 bei Java-Monitoren 139 in UNIX/Linux 132 N.NET 224 Nachricht 161, 185 nachrichtenbasierte Kommunikation 161 Nebenläufigkeit 13, 19, 25 durch Compiler 24 echte 24, 25 in Hardware 22 in Software 24 Pseudo- 25 Netzdienste 30 Nonblocking Send/Receive 165 O ONC RPC 228 Ortstransparenz 30 P Parallelisierung 24 passives Warten 85, 219 Peer-to-Peer-Modell (P2P) 221 Philosophenproblem 84 mit allgemeinen Semaphoren 101 mit Monitor 117 Pipe 174, 194 benannte 175 unbenannte 176 Polling 85, 166, 219 P-Operation 91 Port 164 in UNIX/Linux 177 Nummer 170, 186 Portmapper 232 Process Identifier (PID) 39 Programmierschnittstelle (API) 26 Protokoll 167 Protokollinstanz 167 Protokollstack 169 Proxy 224 Prozedurfernaufruf 222 Prozess 34, 36 in UNIX/Linux 42, 46 Kontext 35 Lebenszyklus 37, 38 Priorität 41 Terminierung 38 Prozesskontrollblock 39 Prozessorkern 23 Prozesstabelle 40 Pseudonebenläufigkeit 25 Pthread 55 Synchronisation 132 Pufferspeicher (siehe auch Ringpuffer) 83
16 258 Index R Race Condition 81 Rechnerknoten 23 Registry 235, 236 Reihenfolgebedingung 82 mit allgemeinen Semaphoren 97 mit Java-Semaphoren 137 mit Monitor 115 mit UNIX-Semaphoren 128 Remote Interface 235 Remote Method Invocation (RMI) 224 in Java 234 Remote Object 224, 235, 236 Remote Procedure Call (RPC) 222 in UNIX/Linux 228 Rendezvous 166 REST 226, 243 Ringpuffer als Monitor 111, 114, 139 in Java 139 in UNIX/Linux 133 mit Lese-/Schreiboperationen 114, 133 nur mit Schreiboperation 111, 139 RMI Registry 235, 236 Round Robin 41 RPC-Generator rpcgen 229, 230 S Scheduling 40 Scriptlet 240 Semaphor 91 Alles-oder-nichts-Prinzip 95, 96, 102, 107, 121 binärer 95 in Java 136 in UNIX/Linux 121 sequentielle Bearbeitung 32, 33 Server-Socket in Java 197 in UNIX/Linux 184 Servlet 240 Shared Memory 161 in Java 64 in UNIX/Linux 171 Signal 90 in UNIX/Linux 118 Signal Handler 119 Single Tasking Mode 32 Skeleton 224 Sleeping Barber Problem 153 SOAP 225 Socket 166, 170 Domains 182 in Java 196 in UNIX/Linux 182 Typen 183 Software eines Computers 21 Software-Nebenläufigkeit 24 speicherbasierte Kommunikation 161 Spinlock 86, 89 mit Lock-Dateien in UNIX/Linux 120 Spooling 33 Stapelverarbeitung 32 Stream-Socket 170 in Java 197 in UNIX/Linux 183, 188 strombasierte Kommunikation 161 Stub 222 Synchronisation 79 Synchronisationsbedingung 79 Synchronisationsmechanismus 79, 85 T Task 36 Terminierung 38 Thin Client 221 Thread 36, 37 in Java 60 in UNIX/Linux 55 Lebenszyklus 37, 38 thread-safe 135 Three Tier Model 220 Timesharing 34 Transmission Control Protocol (TCP) 170 U Unicast 163 unidirektionale Kommunikation 174 UNIX/Linux Bedingungsvariable 132 Benutzerkommandos 42
17 Index 259 Lock-Datei 120 Message Queue 177 Mutex 132 Pipe 174 Programmierschnittstelle (API) 26, 45 Prozess 42, 46 Semaphor 121 Shared Memory 171 Signal 118 Socket 182 Thread 55 UNIX/Linux-API 26, 45 accept() 184, 187 bind() 184, 185 callrpc() 229 clnt_create() 229 clone() 59 close() 185, 187 connect() 184, 187 errno 28 execv() 49, 54 exit() 48, 53 Fehlerabfrage 28 fork() 46, 50 getpid() 49, 52 getppid() 49, 52 kill() 50, 54, 118 listen() 184, 186 mkfifo() 175 msgctl() 178 msgget() 177 msgrcv() 179, 180 msgsnd() 179 pause() 119 perror() 28 pipe() 176 pthread_cancel() 58 pthread_cond_xxx() 132 pthread_create() 55 pthread_exit() 55 pthread_join() 58 pthread_mutex_xxx() 132 read() 185, 187 recv() 185 recvfrom() 185, 188 semctl() 123 semget() 121 semop() 125 send() 185 sendto() 185, 188 shmat() 172 shmctl() 172 shmget() 171 shutdown() 187 sigaction() 119 signal() 119 sigsuspend() 119 sleep() 49 socket() 184, 185 vfork() 59 wait() 48, 53 waitpid() 48 write() 185, 187 UNIX/Linux-Benutzerkommandos 42 ipcrm 124, 173, 178 ipcs 124, 173, 178 kill 45 ps 42 rpcgen 229, 230 sleep 45 wait 45 UNIX-Domain 183 User Datagram Protocol (UDP) 170 V Vater-Sohn-Beziehung 42, 44, 46 Verhungern 100 Verklemmung 106 Verteiltes System 23, 30, 32, 217 Virtualisierung 28 VMware 29 V-Operation 91 W Warten, aktives vs. passives 85 Web Service 225 in Java 241 Webseite 225, 238 wechselseitiger Ausschluss 80 in Java 138
18 260 Index mit allgemeinen Semaphoren 96 mit Monitor 110 mit UNIX-Semaphoren 129 WSDL 226 X XDR 228, 230 Xen 29 XML-RPC 226 Z Zombie-Zustand 39, 48 Zustandsübergangsdiagramm 38
Inhaltsverzeichnis. Carsten Vogt. Nebenläufige Programmierung. Ein Arbeitsbuch mit UNIX/Linux und Java ISBN:
Inhaltsverzeichnis Carsten Vogt Nebenläufige Programmierung Ein Arbeitsbuch mit UNIX/Linux und Java ISBN: 978-3-446-42755-6 Weitere Informationen oder Bestellungen unter http://www.hanser.de/978-3-446-42755-6
Mehrverzeichnis Carsten Vogt Nebenläufige Programmierung Ein Arbeitsbuch mit UNIX/Linux und Java ISBN:
verzeichnis Carsten Vogt Nebenläufige Programmierung Ein Arbeitsbuch mit UNIX/Linux und Java ISBN: 978-3-446-42755-6 Weitere Informationen oder Bestellungen unter http://www.hanser.de/978-3-446-42755-6
MehrNEBEN - LÄUFIGE PROG RAM -
carsten VOGT NEBEN - LÄUFIGE PROG RAM - M IERUNG EIN ARBEITSBUCH MIT UNIX/LINUX UND JAVA EXTRA: Mit kostenlosem E-Book Im Internet: Programmbeispiele, Lösungen zu den Aufgaben und Zusatzmaterialien Vogt
MehrVorwort. Carsten Vogt. Nebenläufige Programmierung. Ein Arbeitsbuch mit UNIX/Linux und Java ISBN: 978-3-446-42755-6
Vorwort Carsten Vogt Nebenläufige Programmierung Ein Arbeitsbuch mit UNIX/Linux und Java ISBN: 978-3-446-42755-6 Weitere Informationen oder Bestellungen unter http://www.hanser.de/978-3-446-42755-6 sowie
MehrMonitore. Klicken bearbeiten
Sascha Kretzschmann Institut für Informatik Monitore Formatvorlage und deren Umsetzung des Untertitelmasters durch Klicken bearbeiten Inhalt 1. Monitore und Concurrent Pascal 1.1 Warum Monitore? 1.2 Monitordefinition
Mehr2A Basistechniken: Weitere Aufgaben
2A Basistechniken: Weitere Aufgaben 2A.3 Programmierung unter UNIX/Linux 1. Gegeben sind einige Ausschnitte von C-Programmen, die unter UNIX/Linux ausgeführt werden sollen. Beantworten Sie die zugehörigen
MehrDomänenmodell: Fadenkommunikation und -synchronisation
Domänenmodell: Fadenkommunikation und -synchronisation Alexander Humphreys, Reinhard Rösch, Fabian Scheler 15. Mai 2003 Inhaltsverzeichnis 1 Domänendefinition 1 2 Domänenlexikon 1 3 Konzeptmodelle 4 4
MehrDämon-Prozesse ( deamon )
Prozesse unter UNIX - Prozessarten Interaktive Prozesse Shell-Prozesse arbeiten mit stdin ( Tastatur ) und stdout ( Bildschirm ) Dämon-Prozesse ( deamon ) arbeiten im Hintergrund ohne stdin und stdout
MehrSysteme 1. Kapitel 6. Nebenläufigkeit und wechselseitiger Ausschluss
Systeme 1 Kapitel 6 Nebenläufigkeit und wechselseitiger Ausschluss Threads Die Adressräume verschiedener Prozesse sind getrennt und geschützt gegen den Zugriff anderer Prozesse. Threads sind leichtgewichtige
MehrClient-Server mit Socket und API von Berkeley
Client-Server mit Socket und API von Berkeley L A TEX Projektbereich Deutsche Sprache Klasse 3F Schuljahr 2015/2016 Copyleft 3F Inhaltsverzeichnis 1 NETZWERKPROTOKOLLE 3 1.1 TCP/IP..................................................
MehrWiederholung: Beginn
B) Webserivces W3C Web Services Architecture Group: "Ein Web Service ist eine durch einen URI eindeutige identifizierte Softwareanwendung, deren Schnittstellen als XML Artefakte definiert, beschrieben
MehrKlausurvorbereitung VS1 (Prof. Brecht) (B0rg Edition)
Ein Prozess kann unmittelbar vom Zustand 1. Running in den Zustand Ready 2. Running in den Zustand Blocked 3. Ready in den Zustand Running Klausurvorbereitung VS1 (Prof. Brecht) (B0rg Edition) Der Adressraum
MehrGrundlagen verteilter Systeme
Universität Augsburg Insitut für Informatik Prof. Dr. Bernhard Bauer Wolf Fischer Christian Saad Wintersemester 08/09 Übungsblatt 3 12.11.08 Grundlagen verteilter Systeme Lösungsvorschlag Aufgabe 1: a)
MehrSoftwarelösungen: Versuch 4
Softwarelösungen: Versuch 4 Nichtstun in Schleife wird ersetzt durch zeitweilige Zurücknahme der Anforderung, um es anderen Prozessen zu erlauben, die Ressource zu belegen: /* Prozess 0 */ wiederhole flag[0]
MehrAGROPLUS Buchhaltung. Daten-Server und Sicherheitskopie. Version vom 21.10.2013b
AGROPLUS Buchhaltung Daten-Server und Sicherheitskopie Version vom 21.10.2013b 3a) Der Daten-Server Modus und der Tresor Der Daten-Server ist eine Betriebsart welche dem Nutzer eine grosse Flexibilität
MehrNebenläufige Programmierung
Nebenläufige Programmierung Perspektiven der Informatik 27. Januar 2003 Gert Smolka Telefon-Szenario Eine Telefonzelle Mehrere Personen wollen telefonieren Immer nur eine Person kann telefonieren Ressource
MehrFOPT 5: Eigenständige Client-Server-Anwendungen (Programmierung verteilter Anwendungen in Java 1)
1 FOPT 5: Eigenständige Client-Server-Anwendungen (Programmierung verteilter Anwendungen in Java 1) In dieser Kurseinheit geht es um verteilte Anwendungen, bei denen wir sowohl ein Client- als auch ein
MehrObjektorientierte Programmierung
Objektorientierte Programmierung 1 Geschichte Dahl, Nygaard: Simula 67 (Algol 60 + Objektorientierung) Kay et al.: Smalltalk (erste rein-objektorientierte Sprache) Object Pascal, Objective C, C++ (wiederum
MehrBetriebssysteme. Dipl.-Ing.(FH) Volker Schepper
1. Der Prozess beginnt im Zustand Erzeugt, nachdem sein Vaterprozess den Systemaufruf fork() (s.u.) abgesetzt hat. In diesem Zustand wird der Prozess-Kontext initialisiert. 2. Ist diese Aufbauphase abgeschlossen,
MehrÜbersicht. Nebenläufige Programmierung. Praxis und Semantik. Einleitung. Sequentielle und nebenläufige Programmierung. Warum ist. interessant?
Übersicht Aktuelle Themen zu Informatik der Systeme: Nebenläufige Programmierung: Praxis und Semantik Einleitung 1 2 der nebenläufigen Programmierung WS 2011/12 Stand der Folien: 18. Oktober 2011 1 TIDS
MehrEs kann maximal ein Prozess die Umladestelle benutzen.
SoSe 0 Konzepte und Methoden der Systemsoftware Universität Paderborn Fachgebiet Rechnernetze Präsenzübung (Musterlösung) 0-06-0 bis 0-06-06 Aufgabe : Erzeuger/Verbraucher-Pattern Ein Getränkemarkt hat
MehrAufgaben: (dazugehörige Kapitel / Seitenangaben in Kursiv: Kapitel Seite Seitennummern)
Klausur Verteilte Systeme 15.6. R120A 8:00-9:30 5 Aufgaben, 50 Punkte (8 12 pro Aufgabe) 45-50 1.0 44 1.1 35 2.0 25 3.0 15 4.0 http://www.bts.fh-mannheim.de Aufgaben: (dazugehörige Kapitel / Seitenangaben
MehrSystemsoftware (SYS) Fakultät für Informatik WS 2008/2009 Christian Baun. Übungsklausur
Hochschule Mannheim Systemsoftware (SYS) Fakultät für Informatik WS 2008/2009 Christian Baun Übungsklausur Aufgabe 1: Definieren Sie den Begriff der Systemsoftware. Nennen Sie die Aufgaben und Komponenten
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
MehrA Kompilieren des Kernels... 247. B Lineare Listen in Linux... 251. C Glossar... 257. Interessante WWW-Adressen... 277. Literaturverzeichnis...
1 Einführung................................................ 1 1.1 Was ist ein Betriebssystem?............................... 1 1.1.1 Betriebssystemkern................................ 2 1.1.2 Systemmodule....................................
MehrArchitektur Verteilter Systeme Teil 2: Prozesse und Threads
Architektur Verteilter Systeme Teil 2: Prozesse und Threads 21.10.15 1 Übersicht Prozess Thread Scheduler Time Sharing 2 Begriff Prozess und Thread I Prozess = Sequentiell ablaufendes Programm Thread =
MehrMORE Profile. Pass- und Lizenzverwaltungssystem. Stand: 19.02.2014 MORE Projects GmbH
MORE Profile Pass- und Lizenzverwaltungssystem erstellt von: Thorsten Schumann erreichbar unter: thorsten.schumann@more-projects.de Stand: MORE Projects GmbH Einführung Die in More Profile integrierte
Mehr1 topologisches Sortieren
Wolfgang Hönig / Andreas Ecke WS 09/0 topologisches Sortieren. Überblick. Solange noch Knoten vorhanden: a) Suche Knoten v, zu dem keine Kante führt (Falls nicht vorhanden keine topologische Sortierung
MehrBitte verwenden Sie nur dokumentenechtes Schreibmaterial!
VO 182.711 Prüfung Betriebssysteme 8. November 2013 KNr. MNr. Zuname, Vorname Ges.)(100) 1.)(35) 2.)(20) 3.)(45) Zusatzblätter: Bitte verwenden Sie nur dokumentenechtes Schreibmaterial! 1 Synchronisation
Mehr2A Basistechniken: Lösungen 2A.1 Wissens- und Verständnisfragen
2A Basistechniken: Lösungen 2A.1 Wissens- und Verständnisfragen 1.a.) Application Programming Interface 1.b.) Multiprogramming 1.c.) Mehreren Prozessoren, die über einen Bus miteinander verbunden sind
MehrSynchronisation in Java. Invisible Web
Synchronisation in Java Studienprojekt Invisible Web Tang Zhihong Synchronisation in Java Synchronisationsproblem Monitore Wait und notify PipedInputStream und PipedOutputStream Synchronisation von Collections
MehrDokumentation IBIS Monitor
Dokumentation IBIS Monitor Seite 1 von 16 11.01.06 Inhaltsverzeichnis 1. Allgemein 2. Installation und Programm starten 3. Programmkonfiguration 4. Aufzeichnung 4.1 Aufzeichnung mitschneiden 4.1.1 Inhalt
MehrBefehlssatz zum High Speed Interface-88-USB (HSI-88-USB) (ab Firmware 0.71) (Version 1.2)
Kurzbeschreibung: Befehlssatz zum High Speed Interface-88-USB (HSI-88-USB) (ab Firmware 0.71) (Version 1.2) Beim HSI-88-USB handelt es sich um ein Interface vom s88-rückmeldebus zum Universal Serial Bus
MehrLehrer: Einschreibemethoden
Lehrer: Einschreibemethoden Einschreibemethoden Für die Einschreibung in Ihren Kurs gibt es unterschiedliche Methoden. Sie können die Schüler über die Liste eingeschriebene Nutzer Ihrem Kurs zuweisen oder
MehrProfessionelle Seminare im Bereich MS-Office
Der Name BEREICH.VERSCHIEBEN() ist etwas unglücklich gewählt. Man kann mit der Funktion Bereiche zwar verschieben, man kann Bereiche aber auch verkleinern oder vergrößern. Besser wäre es, die Funktion
MehrSystemprogrammierung I - Aufgaben zur Erlangung der Klausurzulassung für Informatiker und Wirtschaftsinformatiker
Systemprogrammierung I - Aufgaben zur Erlangung der Klausurzulassung für Informatiker und Nachfolgend finden Sie die drei Aufgaben, die Sie als Zulassungsvoraussetzung für die Scheinklausur am 18.7.2001
MehrHandbuch ECDL 2003 Modul 2: Computermanagement und Dateiverwaltung Der Task-Manager
Handbuch ECDL 2003 Modul 2: Computermanagement und Dateiverwaltung Der Task-Manager Dateiname: ecdl2_03_05_documentation Speicherdatum: 22.11.2004 ECDL 2003 Modul 2 Computermanagement und Dateiverwaltung
MehrGEZIELT MEHR SICHERHEIT MIT 4I ACCESS SERVER & 4I CONNECT CLIENT
Seite 1/7 GEZIELT MEHR SICHERHEIT MIT 4I ACCESS SERVER & 4I CONNECT CLIENT ZENTRAL LOKALE MANAGEMENT-PLATTFORM FÜR EINE W ELTWEIT SICHERE INDUSTRIELLE KOMMUNIKATION. Seite 2/7 Auf den folgenden Seiten
MehrMSXFORUM - Exchange Server 2003 > SMTP Konfiguration von Exchange 2003
Page 1 of 8 SMTP Konfiguration von Exchange 2003 Kategorie : Exchange Server 2003 Veröffentlicht von webmaster am 25.02.2005 SMTP steht für Simple Mail Transport Protocol, welches ein Protokoll ist, womit
MehrMusterlösung Klausur SS 2004
Musterlösung Klausur SS 2004 Fachrichtung: Informatik Lehrveranstaltung: Verteilte Systeme Dozent: Prof. G. Bengel Tag: 15.6.04 Bearbeitungszeit: 90 Minuten Name:... Matr.Nr.:... Punkte:... Note:... Hilfsmittel:
MehrEinrichtung eines e-mail-konto mit Thunderbird
Einrichtung eines e-mail-konto mit Thunderbird In diesem Tutorial zeigen wir Ihnen, wie Sie im Mozilla Thunderbird E-Mailclient ein POP3- Konto einrichten. Wir haben bei der Erstellung des Tutorials die
MehrArbeiten mit UMLed und Delphi
Arbeiten mit UMLed und Delphi Diese Anleitung soll zeigen, wie man Klassen mit dem UML ( Unified Modeling Language ) Editor UMLed erstellt, in Delphi exportiert und dort so einbindet, dass diese (bis auf
MehrGefahren aus dem Internet 1 Grundwissen April 2010
1 Grundwissen Voraussetzungen Sie haben das Internet bereits zuhause oder an der Schule genutzt. Sie wissen, was ein Provider ist. Sie wissen, was eine URL ist. Lernziele Sie wissen, was es braucht, damit
MehrProgrammieren I. Kapitel 15. Ein und Ausgabe
Programmieren I Kapitel 15. Ein und Ausgabe Kapitel 15: Ein und Ausgabe Ziel: einen kleinen Einblick in die vielfältigen IO Klassen geben Grober Überblick Klasse File zur Verwaltung von Dateien Random
MehrLogging, Threaded Server
Netzwerk-Programmierung Logging, Threaded Server Alexander Sczyrba Michael Beckstette {asczyrba,mbeckste@techfak.uni-bielefeld.de 1 Übersicht Logging Varianten für concurrent server 2 current working directory
MehrSteffen Heinzl Markus Mathes. Middleware in Java
Steffen Heinzl Markus Mathes Middleware in Java Leitfaden zum Entwurf verteilter Anwendungen - Implementierung von verteilten Systemen über JMS - Verteilte Objekte über RMI und CORBA Mit 50 Abbildungen
MehrNutzung von GiS BasePac 8 im Netzwerk
Allgemeines Grundsätzlich kann das GiS BasePac Programm in allen Netzwerken eingesetzt werden, die Verbindungen als Laufwerk zu lassen (alle WINDOWS Versionen). Die GiS Software unterstützt nur den Zugriff
MehrWürfelt man dabei je genau 10 - mal eine 1, 2, 3, 4, 5 und 6, so beträgt die Anzahl. der verschiedenen Reihenfolgen, in denen man dies tun kann, 60!.
040304 Übung 9a Analysis, Abschnitt 4, Folie 8 Die Wahrscheinlichkeit, dass bei n - maliger Durchführung eines Zufallexperiments ein Ereignis A ( mit Wahrscheinlichkeit p p ( A ) ) für eine beliebige Anzahl
MehrAnbindung des eibport an das Internet
Anbindung des eibport an das Internet Ein eibport wird mit einem lokalen Router mit dem Internet verbunden. Um den eibport über diesen Router zu erreichen, muss die externe IP-Adresse des Routers bekannt
MehrVeröffentlichen von Apps, Arbeitsblättern und Storys. Qlik Sense 2.0.6 Copyright 1993-2015 QlikTech International AB. Alle Rechte vorbehalten.
Veröffentlichen von Apps, Arbeitsblättern und Storys Qlik Sense 2.0.6 Copyright 1993-2015 QlikTech International AB. Alle Rechte vorbehalten. Copyright 1993-2015 QlikTech International AB. Alle Rechte
Mehr9 Multithreading. 1 Idee des Multithreading
9 Multithreading Jörn Loviscach Versionsstand: 21. Juli 2015, 11:50 Die nummerierten Felder sind absichtlich leer, zum Ausfüllen beim Ansehen der Videos: http://www.j3l7h.de/videos.html This work is licensed
MehrSzenario 3: Service mit erweiterter Schnittstelle
2. Hintergrundverarbeitung in Android: Services und Notifications Szenarien für lokale Services Szenario 3: Service mit erweiterter Schnittstelle Ein Service bietet zusätzliche Methoden an, über die sich
MehrStundenerfassung Version 1.8 Anleitung Arbeiten mit Replikaten
Stundenerfassung Version 1.8 Anleitung Arbeiten mit Replikaten 2008 netcadservice GmbH netcadservice GmbH Augustinerstraße 3 D-83395 Freilassing Dieses Programm ist urheberrechtlich geschützt. Eine Weitergabe
MehrWeb Services stellen eine Integrationsarchitektur dar, die die Kommunikation zwischen verschiedenen Anwendungen
9 3 Web Services 3.1 Überblick Web Services stellen eine Integrationsarchitektur dar, die die Kommunikation zwischen verschiedenen Anwendungen mit Hilfe von XML über das Internet ermöglicht (siehe Abb.
MehrMan liest sich: POP3/IMAP
Man liest sich: POP3/IMAP Gliederung 1. Einführung 1.1 Allgemeiner Nachrichtenfluss beim Versenden von E-Mails 1.2 Client und Server 1.2.1 Client 1.2.2 Server 2. POP3 2.1 Definition 2.2 Geschichte und
MehrStep by Step Webserver unter Windows Server 2003. von Christian Bartl
Step by Step Webserver unter Windows Server 2003 von Webserver unter Windows Server 2003 Um den WWW-Server-Dienst IIS (Internet Information Service) zu nutzen muss dieser zunächst installiert werden (wird
MehrHandbuch. NAFI Online-Spezial. Kunden- / Datenverwaltung. 1. Auflage. (Stand: 24.09.2014)
Handbuch NAFI Online-Spezial 1. Auflage (Stand: 24.09.2014) Copyright 2016 by NAFI GmbH Unerlaubte Vervielfältigungen sind untersagt! Inhaltsangabe Einleitung... 3 Kundenauswahl... 3 Kunde hinzufügen...
MehrWinVetpro im Betriebsmodus Laptop
WinVetpro im Betriebsmodus Laptop Um Unterwegs Daten auf einem mobilen Gerät mit WinVetpro zu erfassen, ohne den Betrieb in der Praxis während dieser Zeit zu unterbrechen und ohne eine ständige Online
MehrFolgende Voraussetzungen für die Konfiguration müssen erfüllt sein: - Ein Bootimage ab Version 7.4.4. - Optional einen DHCP Server.
1. Dynamic Host Configuration Protocol 1.1 Einleitung Im Folgenden wird die Konfiguration von DHCP beschrieben. Sie setzen den Bintec Router entweder als DHCP Server, DHCP Client oder als DHCP Relay Agent
MehrSoftware Engineering. Zur Architektur der Applikation Data Repository. Franz-Josef Elmer, Universität Basel, HS 2015
Software Engineering Zur Architektur der Applikation Data Repository Franz-Josef Elmer, Universität Basel, HS 2015 Software Engineering: Mit acht bewährten Praktiken zu gutem Code 2 Schichtarchitektur
MehrTutorial - www.root13.de
Tutorial - www.root13.de Netzwerk unter Linux einrichten (SuSE 7.0 oder höher) Inhaltsverzeichnis: - Netzwerk einrichten - Apache einrichten - einfaches FTP einrichten - GRUB einrichten Seite 1 Netzwerk
MehrVerteilte Systeme - 1. Übung
Verteilte Systeme - 1. Übung Dr. Jens Brandt Sommersemester 2011 1. Rechnerverbünde Kommunikationsverbund: Beispiele: E-Mail (SMTP, POP/IMAP), Instant Messaging (XMPP, IRC, ICQ,...), Newsgroups (NNTP)
MehrProzeß P1 Prozeß P2. Zur Synchronisation stehen den beiden Prozessen binäre Semaphore und die beiden Funktionen
Seite 8 A UFGABE 11 INTERP ROZEßKOMMUNIKATION Das folgende Petrinetz zeigt zwei verkoppelte Prozesse P1 und P2. Die Transitionen a und b beschreiben Aktionen von P1, die Transitionen c und d Aktionen von
MehrMatrix42. Use Case - Sicherung und Rücksicherung persönlicher Einstellungen über Personal Backup. Version 1.0.0. 23. September 2015 - 1 -
Matrix42 Use Case - Sicherung und Rücksicherung persönlicher Version 1.0.0 23. September 2015-1 - Inhaltsverzeichnis 1 Einleitung 3 1.1 Beschreibung 3 1.2 Vorbereitung 3 1.3 Ziel 3 2 Use Case 4-2 - 1 Einleitung
Mehr1 Vom Problem zum Programm
Hintergrundinformationen zur Vorlesung GRUNDLAGEN DER INFORMATIK I Studiengang Elektrotechnik WS 02/03 AG Betriebssysteme FB3 Kirsten Berkenkötter 1 Vom Problem zum Programm Aufgabenstellung analysieren
MehrEinrichten einer DFÜ-Verbindung per USB
Einrichten einer DFÜ-Verbindung per USB Hier das U suchen Sie können das Palm Treo 750v-Smartphone und den Computer so einrichten, dass Sie das Smartphone als mobiles Modem verwenden und über ein USB-Synchronisierungskabel
MehrSpeicher in der Cloud
Speicher in der Cloud Kostenbremse, Sicherheitsrisiko oder Basis für die unternehmensweite Kollaboration? von Cornelius Höchel-Winter 2013 ComConsult Research GmbH, Aachen 3 SYNCHRONISATION TEUFELSZEUG
MehrStepperfocuser 2.0 mit Bootloader
Stepperfocuser 2.0 mit Bootloader Info Für den Stepperfocuser 2.0 gibt es einen Bootloader. Dieser ermöglicht es, die Firmware zu aktualisieren ohne dass man ein spezielles Programmiergerät benötigt. Die
MehrWiderrufsbelehrung der Free-Linked GmbH. Stand: Juni 2014
Widerrufsbelehrung der Stand: Juni 2014 www.free-linked.de www.buddy-watcher.de Inhaltsverzeichnis Widerrufsbelehrung Verträge für die Lieferung von Waren... 3 Muster-Widerrufsformular... 5 2 Widerrufsbelehrung
MehrIst Fernsehen schädlich für die eigene Meinung oder fördert es unabhängig zu denken?
UErörterung zu dem Thema Ist Fernsehen schädlich für die eigene Meinung oder fördert es unabhängig zu denken? 2000 by christoph hoffmann Seite I Gliederung 1. In zu großen Mengen ist alles schädlich. 2.
Mehr1 Mathematische Grundlagen
Mathematische Grundlagen - 1-1 Mathematische Grundlagen Der Begriff der Menge ist einer der grundlegenden Begriffe in der Mathematik. Mengen dienen dazu, Dinge oder Objekte zu einer Einheit zusammenzufassen.
MehrZeichen bei Zahlen entschlüsseln
Zeichen bei Zahlen entschlüsseln In diesem Kapitel... Verwendung des Zahlenstrahls Absolut richtige Bestimmung von absoluten Werten Operationen bei Zahlen mit Vorzeichen: Addieren, Subtrahieren, Multiplizieren
MehrMultimedia und Datenkommunikation
Multimedia und Datenkommunikation Einteilung in Unterpunkte Netzwerk Audioausgabe Internetzugang Basis des Projektes Büro 5 Mitarbeiter Datenaustausch via Diskette Kein Netzwerk Ein Nadeldrucker Netzwerke
MehrAnleitung zur Nutzung des SharePort Utility
Anleitung zur Nutzung des SharePort Utility Um die am USB Port des Routers angeschlossenen Geräte wie Drucker, Speicherstick oder Festplatte am Rechner zu nutzen, muss das SharePort Utility auf jedem Rechner
MehrVerteilte Systeme CS5001
Verteilte Systeme CS5001 Th. Letschert TH Mittelhessen Gießen University of Applied Sciences Client-Server-Anwendungen: Vom passiven (shared state) Monitor zum aktiven Monitor Monitor (Hoare, Brinch-Hansen,
MehrMusterlösung Prüfung SS 2002
Musterlösung Prüfung SS 2002 Fach: I4neu (SEE, KOS, GRS, BTS) Teilprüfung: Betriebssystem Tag: 2.7.2002 8:15 12:15 Raum 1006 Bearbeitungszeit: 72 Minuten Name:... Matr.Nr.:... Punkte:... Note:... Hilfsmittel:
MehrBereich METIS (Texte im Internet) Zählmarkenrecherche
Bereich METIS (Texte im Internet) Zählmarkenrecherche Über die Zählmarkenrecherche kann man nach der Eingabe des Privaten Identifikationscodes einer bestimmten Zählmarke, 1. Informationen zu dieser Zählmarke
MehrPocket KVM Switches USB + Audio
Handbuch Pocket KVM Switches USB + Audio deutsch Handbuch_Seite 2 Inhalt 1. Einleitung 4 2. Installation 4 3. Einfache Bedienung 6 3.1. KVM Switch Tasten 6 3.2. Keyboard Hotkeys 6 3.3. KVM Switch Software
MehrWenn man nach Beendigung der WINDOWS-SICHERUNG folgendes angezeigt bekommt
1. Für alle, die mit wenig zufrieden sind Wenn man nach Beendigung der WINDOWS-SICHERUNG folgendes angezeigt bekommt Bild 1 bekommt man erst mal einen Schreck. Die Meldung wurden nicht gesichert beunruhigt,
MehrA Lösungen zu Einführungsaufgaben zu QueueTraffic
A Lösungen zu Einführungsaufgaben zu QueueTraffic 1. Selber Phasen einstellen a) Wo im Alltag: Baustelle, vor einem Zebrastreifen, Unfall... 2. Ankunftsrate und Verteilungen a) poissonverteilt: b) konstant:
MehrImplementation of a Framework Component for Processing Tasks within Threads on the Application Level
Implementation of a Framework Component for Processing Tasks within Threads on the Application Level Deutsches Krebsforschungszentrum, for Processing Task within Threads on the Application Level Motivation
MehrBenutzerhandbuch - Elterliche Kontrolle
Benutzerhandbuch - Elterliche Kontrolle Verzeichnis Was ist die mymaga-startseite? 1. erste Anmeldung - Administrator 2. schnittstelle 2.1 Administrator - Hautbildschirm 2.2 Administrator - rechtes Menü
MehrCA Übung 30.01.2006. Christian kann heute nicht kommen => ich bin heute da, Christian das nächste Mal wieder
CA Übung 30.01.2006 Hallo zusammen! Christian kann heute nicht kommen => ich bin heute da, Christian das nächste Mal wieder Adrian Schüpbach: scadrian@student.ethz.ch Christian Fischlin: cfischli@student.ethz.ch
MehrErstellen von x-y-diagrammen in OpenOffice.calc
Erstellen von x-y-diagrammen in OpenOffice.calc In dieser kleinen Anleitung geht es nur darum, aus einer bestehenden Tabelle ein x-y-diagramm zu erzeugen. D.h. es müssen in der Tabelle mindestens zwei
MehrDaten-Synchronisation zwischen dem ZDV-Webmailer und Outlook (2002-2007) Zentrum für Datenverarbeitung der Universität Tübingen
Daten-Synchronisation zwischen dem ZDV-Webmailer und Outlook (2002-2007) Zentrum für Datenverarbeitung der Universität Tübingen Inhalt 1. Die Funambol Software... 3 2. Download und Installation... 3 3.
MehrÜbungen zum Fach Betriebssysteme Kapitel 3
Übungen zum Fach Betriebssysteme Kapitel 3 Prof. Dr. Kern & Prof. Dr. Wienkop Prozessverwaltung 1 Prozeßauslagerung Ein Betriebssystem, das die Zustände "rechnend", "bereit" und "wartend" sowie den künstlichen
MehrBANKETTprofi Telefonschnittstelle
BANKETTprofi Telefonschnittstelle Aufbau der BANKETTprofi Telefonschnittstelle BANKETTprofi 800 Anwendung Im BANKETTprofi wird eine Rufnummer angewählt BANKETTprofi TAPI-Plugin Dieser Befehl wird vom TAPI-Plugin
MehrStatuten in leichter Sprache
Statuten in leichter Sprache Zweck vom Verein Artikel 1: Zivil-Gesetz-Buch Es gibt einen Verein der selbstbestimmung.ch heisst. Der Verein ist so aufgebaut, wie es im Zivil-Gesetz-Buch steht. Im Zivil-Gesetz-Buch
MehrStundenerfassung Version 1.8
Stundenerfassung Version 1.8 Anleitung Überstunden Ein Modul der Plusversion 2008 netcadservice GmbH netcadservice GmbH Augustinerstraße 3 D-83395 Freilassing Dieses Programm ist urheberrechtlich geschützt.
MehrHandbuch ECDL 2003 Professional Modul 3: Kommunikation Kalender freigeben und andere Kalender aufrufen
Handbuch ECDL 2003 Professional Modul 3: Kommunikation Kalender freigeben und andere Kalender aufrufen Dateiname: ecdl_p3_02_03_documentation.doc Speicherdatum: 08.12.2004 ECDL 2003 Professional Modul
MehrWebalizer HOWTO. Stand: 18.06.2012
Webalizer HOWTO Stand: 18.06.2012 Copyright 2003 by manitu. Alle Rechte vorbehalten. Alle verwendeten Bezeichnungen dienen lediglich der Kennzeichnung und können z.t. eingetragene Warenzeichen sein, ohne
MehrPrimzahlen und RSA-Verschlüsselung
Primzahlen und RSA-Verschlüsselung Michael Fütterer und Jonathan Zachhuber 1 Einiges zu Primzahlen Ein paar Definitionen: Wir bezeichnen mit Z die Menge der positiven und negativen ganzen Zahlen, also
MehrLeseprobe. Bruno Augustoni. Professionell präsentieren. ISBN (Buch): 978-3-446-44285-6. ISBN (E-Book): 978-3-446-44335-8
Leseprobe Bruno Augustoni Professionell präsentieren ISBN (Buch): 978-3-446-44285-6 ISBN (E-Book): 978-3-446-44335-8 Weitere Informationen oder Bestellungen unter http://wwwhanser-fachbuchde/978-3-446-44285-6
MehrKonfiguration des Novell GroupWise Connectors
Konfiguration des Novell GroupWise Connectors Installation und Konfiguration Version 2013 Spring Release Status: 09. März 2013 Copyright Mindbreeze Software GmbH, A-4020 Linz, 2013. Alle Rechte vorbehalten.
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
MehrSynchronisierung. Kommunikationstechnik, SS 08, Prof. Dr. Stefan Brunthaler 73
Synchronisierung Kommunikationstechnik, SS 08, Prof. Dr. Stefan Brunthaler 73 Übertragungsprozeduren Die Übertragung einer Nachricht zwischen Sender und Empfänger erfordert die Übertragung des Nutzsignals
MehrDokumentation. Black- und Whitelists. Absenderadressen auf eine Blacklist oder eine Whitelist setzen. Zugriff per Webbrowser
Dokumentation Black- und Whitelists Absenderadressen auf eine Blacklist oder eine Whitelist setzen. Zugriff per Webbrowser Inhalt INHALT 1 Kategorie Black- und Whitelists... 2 1.1 Was sind Black- und Whitelists?...
Mehr2. Kommunikation und Synchronisation von Prozessen 2.2 Kommunikation zwischen Prozessen
2. Kommunikation und Synchronisation von Prozessen 2.2 Kommunikation zwischen Prozessen Dienste des Internets Das Internet bietet als riesiges Rechnernetz viele Nutzungsmöglichkeiten, wie etwa das World
MehrElternzeit Was ist das?
Elternzeit Was ist das? Wenn Eltern sich nach der Geburt ihres Kindes ausschließlich um ihr Kind kümmern möchten, können sie bei ihrem Arbeitgeber Elternzeit beantragen. Während der Elternzeit ruht das
MehrAbwesenheitsnotiz im Exchange Server 2010
Abwesenheitsnotiz im Exchange Server 2010 1.) Richten Sie die Abwesenheitsnotiz in Outlook 2010 ein und definieren Sie, an welche Absender diese gesendet werden soll. Klicken Sie dazu auf Datei -> Informationen
Mehr