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 5: Line 5:
  
 
==Software architecture and event driven programming==
 
==Software architecture and event driven programming==
*1. Simple I/O with read/write, recv/send
+
*1. '''Simple I/O with read/write, recv/send'''
 
**1.1 Sockets
 
**1.1 Sockets
 
**1.2 Files
 
**1.2 Files
Line 15: Line 15:
 
**** 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 [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
  
*2. Nested I/O with "poll/select"
+
*2. '''Nested I/O with "poll/select"'''
 
**2.1 Files
 
**2.1 Files
 
**2.2 Sockets (accept, connect)
 
**2.2 Sockets (accept, connect)
Line 23: Line 23:
 
**** 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 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'''
 
**3.1 processes
 
**3.1 processes
 
**3.2 pthreads
 
**3.2 pthreads
Line 31: Line 31:
 
**** 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
  
*4. Simple signal handling  
+
*4. '''Simple signal handling'''
 
**4.1 sending signals
 
**4.1 sending signals
 
**4.2 asynchronous receive of signals
 
**4.2 asynchronous receive of signals
Line 37: Line 37:
 
**4.4 realtine signals
 
**4.4 realtine signals
  
*5. Concurrent I/O with AIO (Asynchronous I/O)
+
*5. '''Concurrent I/O with AIO (Asynchronous I/O)'''
 
**5.1 Files
 
**5.1 Files
 
**5.2 Sockets (accept, connect)
 
**5.2 Sockets (accept, connect)
 
**5.3 Terminals
 
**5.3 Terminals
  
*6. Concurrent I/O with "pthreads"
+
*6. '''Concurrent I/O with "pthreads"'''
*7. Nested I/O with synch signals
+
*7. '''Nested I/O with synch signals'''
*8. Concurrent and nested I/O and receive of signals: evemt driven programming
+
*8. '''Concurrent and nested I/O and receive of signals: evemt driven programming'''
*9. Exact of event driven programming
+
*9. '''Exact of event driven programming'''

Revision as of 10:14, 19 May 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