|
|
Slide 9 of 19
Before turning to the benchmark results, let me walk through the design of the EROS versions of these facilities. The programs are not quite identical to their POSIX equivalents, but I've gone to some length to make sure that where there is any doubt about comparisons the EROS test is doing more than the POSIX test.
The pipe test cases uses a single intermediate process to implement a unidirection data stream. This is actually a native implementation; in a POSIX emulator we would probably implement the pipe functionality directly within the kernel emulation. The key point here is that the pipe service actually involves the same number of context switches and the same copying overhead that the POSIX emulator would employ. We're limited by the effective cache bandwidth.