diff options
author | Mattias Andrée <maandree@kth.se> | 2017-06-09 22:17:24 +0200 |
---|---|---|
committer | Mattias Andrée <maandree@kth.se> | 2017-06-09 22:17:24 +0200 |
commit | 80f97d0eb306330d46cd3583906043ab50f519dd (patch) | |
tree | 19a986d36e1a7b74effe2039c519ba102b980ce2 | |
parent | first commit (diff) | |
download | pipes-are-slow-80f97d0eb306330d46cd3583906043ab50f519dd.tar.gz pipes-are-slow-80f97d0eb306330d46cd3583906043ab50f519dd.tar.bz2 pipes-are-slow-80f97d0eb306330d46cd3583906043ab50f519dd.tar.xz |
Add readme
Signed-off-by: Mattias Andrée <maandree@kth.se>
-rw-r--r-- | .gitignore | 2 | ||||
-rw-r--r-- | README.md | 13 |
2 files changed, 15 insertions, 0 deletions
diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..8da825a --- /dev/null +++ b/.gitignore @@ -0,0 +1,2 @@ +*~ +/a.out diff --git a/README.md b/README.md new file mode 100644 index 0000000..f8f1eb0 --- /dev/null +++ b/README.md @@ -0,0 +1,13 @@ +Despite unix(7) offering much more features than pipe(7), +it is much faster. There is however two features unix(7) +does not have: there is no guarantee that small writes are +atomic, there is not support for splice(2)/tee(2) which +is extremely efficient, and file descriptor hijacking is +not support. The latter is a double-sided sword: it [the +lack of support] increases security, but other processes' +file cannot be opened and programs must treat /dev/fd/ +paths especially. + +![](graph.svg) + +send(3)/recv(3) is marginally faster than write(3)/read(3). |