Difference between revisions of "Architecture/Lecture"

From Apache OpenOffice Wiki
Jump to: navigation, search
m (Software architecture and event driven programming)
m (Software architecture and event driven programming)
Line 11: Line 11:
 
**Tasks
 
**Tasks
 
***1.a
 
***1.a
**** What is the [http://wiki.services.openoffice.org/wiki/Architecture/Lecture/read_write_vs_send_receive difference between read/write vs. send/recv]
+
**** What is the [[Architecture/Lecture/read_write_vs_send_receive | difference between read/write vs. send/recv]]
 
***1.b
 
***1.b
**** Implement a [http://wiki.services.openoffice.org/wiki/Architecture/Lecture/tcpsrv0.1 simple server programm] (vers.0.1) that accepts and administrates multiple network connections e.g. can be connected by telnet terminals
+
**** Implement a [[Architecture/Lecture/tcpsrv0.1 | simple server programm]] (vers.0.1) that accepts and administrates multiple network connections e.g. can be connected by telnet terminals
  
 
*2. '''Nested I/O with "poll/select"'''
 
*2. '''Nested I/O with "poll/select"'''
Line 21: Line 21:
 
**Tasks
 
**Tasks
 
***2.a
 
***2.a
**** Implement a simple server programm (vers.0.2) that accepts and administrates multiple network connections e.g. can be connected by multiple telnet terminals. Take care that no client is able to block the server (hang). Use "poll/"select", to read/write data asynchronously.
+
**** Implement a [[Architecture/Lecture/tcpsrv0.2 | simple server programm]] (vers.0.2) that accepts and administrates multiple network connections e.g. can be connected by multiple telnet terminals. Take care that no client is able to block the server (hang). Use "poll/"select", to read/write data asynchronously.
  
 
*3. '''Simple concurrency and synchronisation'''
 
*3. '''Simple concurrency and synchronisation'''
Line 28: Line 28:
 
**Tasks
 
**Tasks
 
***3.a
 
***3.a
**** Implement a simple server programm (vers.0.3) that accepts and administrates multiple network connections e.g. can be connected by multiple telnet terminals. Take care that no client is able to block the server (hang). Do *NOT* Use "poll/"select", but pthread.
+
**** Implement a [[Architecture/Lecture/tcpsrv0.3 | simple server programm]] (vers.0.3) that accepts and administrates multiple network connections e.g. can be connected by multiple telnet terminals. Take care that no client is able to block the server (hang). Do *NOT* Use "poll/"select", but pthread.
 
**** Compare the implementations of 2.a and 3.a according to simplicity and robustness
 
**** Compare the implementations of 2.a and 3.a according to simplicity and robustness
  

Revision as of 14:42, 12 June 2008

Owner: Stefan Zimmermann mentored by Kay Ramme Type: visions State: draft

"On a way to enforced consequent event-based programming."


Software architecture and event driven programming

  • 2. Nested I/O with "poll/select"
    • 2.1 Files
    • 2.2 Sockets (accept, connect)
    • 2.3 Terminals
    • Tasks
      • 2.a
        • Implement a simple server programm (vers.0.2) that accepts and administrates multiple network connections e.g. can be connected by multiple telnet terminals. Take care that no client is able to block the server (hang). Use "poll/"select", to read/write data asynchronously.
  • 3. Simple concurrency and synchronisation
    • 3.1 processes
    • 3.2 pthreads
    • Tasks
      • 3.a
        • Implement a simple server programm (vers.0.3) that accepts and administrates multiple network connections e.g. can be connected by multiple telnet terminals. Take care that no client is able to block the server (hang). Do *NOT* Use "poll/"select", but pthread.
        • Compare the implementations of 2.a and 3.a according to simplicity and robustness
  • 4. Simple signal handling
    • 4.1 sending signals
    • 4.2 asynchronous receive of signals
    • 4.3 synchronous receive of signals
    • 4.4 realtine signals
  • 5. Concurrent I/O with AIO (Asynchronous I/O)
    • 5.1 Files
    • 5.2 Sockets (accept, connect)
    • 5.3 Terminals
  • 6. Concurrent I/O with "pthreads"
  • 7. Nested I/O with synch signals
  • 8. Concurrent and nested I/O and receive of signals: evemt driven programming
  • 9. Exact of event driven programming
Personal tools