12-29-2003 02:47 AM
Solved! Go to Solution.
12-29-2003 03:23 AM
Here is an excerpt:
A thread (as defined by Maurice Bach's "The Design of the UNIX Operating System") is an independent flow of control within a process, composed of a context (including register set and a program counter) and a sequence of instructions to execute. The traditional flow of control within a program has been a process with a single context of registers, following a single path through the code. This is referred to as the "process-based" or "single-threaded model". For an application in a single-threaded model to handle multiple tasks, it would have to break those tasks up into multiple processes, coordinate with signal handlers to provide some concurrency, or simply deal with those tasks serially (one after the other).
A multi-threaded model for a process allows multiple concurrent paths of execution, or "threads", through the same process, allowing a single process to handle multiple tasks without having to program to serially move from one to the other. A multi-threaded process shares most of the process-related data, with only an additional kthread structure allocated for each of the multiple threads to give its register context, along with a private stack area and related resources. Access to multi-threading functionality is a tool a programmer can choose to use to improve the coding style or throughput of an application.
12-29-2003 03:28 AM
Here is a link to a Prentice Hall book published by the Architects of the kernel thread stuff for HP:
12-31-2003 01:51 AM
user threads and
To implement and create kernel threads, you must have access to the appropriate privilegdes. (/etc/privgroup) - man privgrp -
For User threads, you do not. There are some major differences between HP UX 11 and 10.20 when it comes to this issue, so use the references above (posted here above) and that will answer your question in more detail
12-31-2003 04:43 PM
Refer to this document for more information.
Happy New Year.