diff options
| author | Franklin Wei <git@fwei.tk> | 2016-01-17 20:15:31 -0500 |
|---|---|---|
| committer | Franklin Wei <git@fwei.tk> | 2016-01-17 20:15:31 -0500 |
| commit | 7c98d81dafd9b8bc8745d897603a424aee328c1c (patch) | |
| tree | 01986b70644af5a80f963fcfc8d99b5239d6718d /README.md | |
| parent | 9a98c157ebdc6e400f076485a4d78e9026ea1a16 (diff) | |
| download | netcosm-7c98d81dafd9b8bc8745d897603a424aee328c1c.zip netcosm-7c98d81dafd9b8bc8745d897603a424aee328c1c.tar.gz netcosm-7c98d81dafd9b8bc8745d897603a424aee328c1c.tar.bz2 netcosm-7c98d81dafd9b8bc8745d897603a424aee328c1c.tar.xz | |
rewrite message-passing, no signals needed!
Diffstat (limited to 'README.md')
| -rw-r--r-- | README.md | 19 |
1 files changed, 12 insertions, 7 deletions
@@ -6,7 +6,7 @@ features might drift out of existence without prior warning! ## Installation -### Prerequisities: +### Prerequisites: * libgcrypt * libev @@ -48,13 +48,18 @@ follows: The master polls child pipes for data, and processes any requests it finds. The master then writes it's data to the pipes of any children -involved in the request, signals them with SIGRTMIN+0, and waits for -all of them to signal back with SIGRTMIN+1. The children read the data -from the master, and handle it accordingly. +involved in the request. -TODO: the signal-based ACK framework is really flakey. A better idea -would be to have the child poll for data from the master at intervals, -so the whole mess of signal handling can be avoided. +Child processes that serve connected clients poll for input from the +master process while waiting for client input. The format of these +requests is as follows: + + | Request Code | Data (if any) | + +Child requests (that is, requests a child sends to the master) are +very reliable. However, requests from the master process to its child +processes are not so reliable. The child process may not be polling +for data, and so would not receive the request. ## Design Goals |