Linux Threads Home Page

# Linux Threads Frequently Asked Questions (FAQ)

### by Sean Walton, KB7rfa
walton@oclc.org
(Last revised 21 Jan 1997)

Introduction

This FAQ is designed to answer several frequently asked questions about Linux threads. For an in-depth view of threads or Linux threads join the discussions on comp.os.linux.development.system (c.o.l.d.s).

Since I am only conveying the information (and not an expert), please direct your specific questions to c.o.l.d.s or comp.programming.threads. If you have suggestions / additions / revisions to this document, please email me [walton@oclc.org].

Limitations

This is not a discussion on the various implementations of threads: it is specifically for Linux threading. If you want to see a comparison between systems or would like to promote some other system than is intended here, consider writing your own FAQ. Nevertheless, I welcome comments pertinent to the topic and will gladly add your input.

Credits

A special thanks to those who significantly helped me put this together: Byron A Jeff [byron@cc.gatech.edu] (for a lot of theory) and Steven L. Blake [slblake@intercenter.net] (for his list of sources). There also have been many others who have contributed.

INDEX

1. What are threads (user/kernel)?
2. What are the common problems with threads?
3. Kernel Issues

1. Does Linux support threads?
2. Are Linux threads the same as other implementations?
3. Is the kernel 100% reentrant?
4. Do the libraries support multithreading?
5. Is there a system call I can use to access kernel threads?
6. What do the individual flags mean and do in clone()?
7. How are Linux threads accessed?
8. Are there ways to determine thread schedule ordering?
9. Is there sample code I can use to test out kernel-space threads?

4. Threads Programming

1. What kinds of things should be threaded/multitasked?
2. Are there threading libraries? Where?
3. How do Linux threads compare with other OSs'?
4. Are there languages that support threads?
5. How does one debug threads?
6. How do I avoid getting zombies?
7. How is threading different from tasks using shared memory?

5. What applications or libraries currently use threads?
6. Where can I learn more about threads? Are there news-/discussion-groups?

[Previous Page] | [First Page] | [Dictionary] | [Email Author] | [Next Page]