A machine independent interface for lightweight threads
- 1 January 1994
- journal article
- Published by Association for Computing Machinery (ACM) in ACM SIGOPS Operating Systems Review
- Vol. 28 (1) , 33-47
- https://doi.org/10.1145/164853.164864
Abstract
Recently, lightweight thread libraries have become a common entity to support concurrent programming on shared memory multiprocessors. However, the disparity between primitives offered by operating systems creates a challenge for those who wish to create portable lightweight thread packages. What should be the interface between the machine-independent and machine-dependent parts of the thread library? We have implemented a portable lightweight thread library on top of Unix on a KSR-1 supercomputer, BBN Butterfly multiprocessor, SGI multiprocessor, Sequent multiprocessor and Sun 3/4 family of uniprocessors. This paper first compares the nature and performance of the OS primitives offered by these machines. We then present procedure-level abstraction that is efficiently implementable on all the architectures and is a sufficient base upon which a user-level thread package can be built.Keywords
This publication has 8 references indexed in Scilit:
- Scheduler activationsACM Transactions on Computer Systems, 1992
- The implications of cache affinity on processor scheduling for multiprogrammed, shared memory multiprocessorsPublished by Association for Computing Machinery (ACM) ,1991
- The impact of operating system scheduling policies and synchronization methods of performance of parallel applicationsPublished by Association for Computing Machinery (ACM) ,1991
- Scheduling support for concurrency and parallelism in the Mach operating systemComputer, 1990
- The performance of multiprogrammed multiprocessor scheduling algorithmsPublished by Association for Computing Machinery (ACM) ,1990
- Processor scheduling in shared memory multiprocessorsPublished by Association for Computing Machinery (ACM) ,1990
- The performance implications of thread management alternatives for shared-memory multiprocessorsIEEE Transactions on Computers, 1989
- The integration of virtual memory management and interprocess communication in AccentACM Transactions on Computer Systems, 1986