Skip to main content
Back to USENIX
  • Conferences
  • Students
Sign in

USENIX Conference Policies

  • Event Code of Conduct
  • Conference Network Policy
  • Statement on Environmental Responsibility Policy

An Efficient Kernel-Based Implementation of POSIX Threads

Robert A. Alfieri, Unix Kernel Development, Data General Corporation

This paper describes the kernel-based implementation of POSIX Threads (Pthreads) in the DG/UX operating system. The implementation achieves time efficiency by using a general-purpose trap mechanism, known as a Kernel Function Call (KFC), that carries an order of magnitude less overhead than a traditional system call. On a 50 MHz Motorola MC88110, the implementation can create and exit a thread (with the associated context switch) in 8.1 microseconds and yield to another thread in 4.0 microseconds. The implementation also achieves space efficiency by paging and decoupling bulky data structures.

The advantages of a kernel-based implementation include design simplicity, less code redundancy, optimization of global (interprocess) operations, avoidance of inopportune preemption, and global semantic flexibility. The disadvantage is a monolithic design that lacks user-level flexibility.

Robert A. Alfieri, Unix Kernel Development, Data General Corporation

BibTeX
@inproceedings {252793,
author = {Robert A. Alfieri},
title = {An Efficient {Kernel-Based} Implementation of {POSIX} Threads},
booktitle = {USENIX Summer 1994 Technical Conference (USENIX Summer 1994 Technical Conference)},
year = {1994},
address = {Boston, MA},
url = {https://www.usenix.org/conference/usenix-summer-1994-technical-conference/efficient-kernel-based-implementation-posix},
publisher = {USENIX Association},
month = jun
}
Download

Links

Paper: 
http://usenix.org/publications/library/proceedings/bos94/full_papers/alfieri.ps
  • Log in or register to post comments

© USENIX
EIN 13-3055038

  • Privacy Policy
  • Contact Us