Difference between revisions of "Architecture/Lecture"

From Apache OpenOffice Wiki
Jump to: navigation, search
m
 
(6 intermediate revisions by one other user not shown)
Line 1: Line 1:
 
Owner: [[SZ|Stefan Zimmermann]] mentored by [[KR|Kay Ramme]] Type: visions State: draft
 
Owner: [[SZ|Stefan Zimmermann]] mentored by [[KR|Kay Ramme]] Type: visions State: draft
  
'''''"On a way to enforced and consequent event-based programming."
+
'''''"On a way to enforced consequent event-based programming."
 
'''''
 
'''''
  
 
==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
 
**1.3 Terminals
 
**1.3 Terminals
 
**Tasks
 
**Tasks
*** What is the difference between read/write vs. send/recv
+
***1.a
*** Write a small server programm that can be connected by telnet terminals
+
**** What is the [[Architecture/Lecture/read_write_vs_send_receive | difference between read/write vs. send/recv]]
 +
***1.b
 +
**** 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.Simple concurrency and synchronisation
+
*2. '''Nested I/O with "poll/select"'''
**2.1 processes
+
**2.1 Files
**2.2 pthreads
+
**2.2 Sockets (accept, connect)
 +
**2.3 Terminals
 +
**Tasks
 +
***2.a
 +
**** 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 signal handling
+
*3. '''Simple concurrency and synchronisation'''
**3.1 sending signals
+
**3.1 processes
**3.2 asynchronous receive of signals
+
**3.2 pthreads
**3.3 synchronous receive of signals
+
**Tasks
**3.4 realtine signals
+
***3.a
 +
**** 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
  
*4. Nested I/O with "poll/select"
+
*4. '''Simple signal handling'''
**4.1 Files
+
**4.1 sending signals
**4.2 Sockets (accept, connect)
+
**4.2 asynchronous receive of signals
**4.3 Terminals
+
**4.3 synchronous receive of 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