Difference between revisions of "Architecture/Lecture"

From Apache OpenOffice Wiki
Jump to: navigation, search
m (Software architecture and event driven programming)
 
(2 intermediate revisions by one other user not shown)
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 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"'''
 
**2.1 Files
 
**2.1 Files
 
**2.2 Sockets (accept, connect)
 
**2.2 Sockets (accept, connect)
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'''
 
**3.1 processes
 
**3.1 processes
 
**3.2 pthreads
 
**3.2 pthreads
 
**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
  
*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'''
 +
[[Category:Architecture]]

Latest revision as of 16:00, 24 November 2009

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