WoTUG - The place for concurrent processes

Paper Details


%T Blocking System Calls in KRoC/Linux
%A Frederick R. M. Barnes
%E Peter H. Welch, André W. P. Bakkers
%B Communicating Process Architectures 2000
%X This paper describes an extension to Kent Retargetable occam
   Compiler (KRoC), which enables the execution of a blocking
   call, without blocking the occam\-kernel. This allows a
   process to make a blocking system call (eg, read, write),
   without blocking processes running in parallel with it.
   Blocking calls are implemented using Linux clones which
   communicate using shared memory, and synchronise using
   kernel level semaphores. The usefulness of this is apparent
   in server applications with a need to handle multiple
   clients simultaneously. An implementation of an occam
   web\-server is described, which uses standard TCP sockets
   via an occam socket library. The web\-server comes with the
   ability to execute CGI scripts as well as dispensing static
   pages, which demonstrates some level of OS process
   management from within occam. However, this mechanism is not
   limited to blocking in the Linux kernel. On multi\-processor
   machines, the clones are quite free to be scheduled on
   different processors, allowing computationally heavy
   processing to be performed aside the occam world, but still
   with a reasonable level of interaction with it. Using them
   in this way provides a coarse\-grained level of parallelism
   from within the fine\-grained occam world.


If you have any comments on this database, including inaccuracies, requests to remove or add information, or suggestions for improvement, the WoTUG web team are happy to hear of them. We will do our best to resolve problems to everyone's satisfaction.

Copyright for the papers presented in this database normally resides with the authors; please contact them directly for more information. Addresses are normally presented in the full paper.

Pages © WoTUG, or the indicated author. All Rights Reserved.
Comments on these web pages should be addressed to: www at wotug.org

Valid HTML 4.01!