Subject: Re: lightweight processes
To: None <tech-kern@NetBSD.ORG>
From: Neil A. Carson <Carson@rmcs.cranfield.ac.uk>
List: tech-kern
Date: 02/12/1997 15:22:40
Hi,

(Lightweight processes)
> Uh, I'd like to know who said that.

> There exists support in the kernel for kernel-only "processes"
> (e.g. the swapper and pagedaemon, and nfs I/O daemons).  However,
> this is not and never was a general-purpose facility, nor has there
> ever been any such general-purpose facility in 'vanilla' BSD kernels
> that i'm aware of.

> If somebody's claiming that there is such a general purpose facility
> in 4.4BSD, they are either incorrect, "optimistic," or you're
> misinterpreting what they're saying.  I say "optimistic" because some
> books, e.g. the "Design and Implementation of the 4.?BSD... System",
> tend to describe features or aspects of the system ... in rosy terms,
> where no such features exist or where they don't nearly live up to the
> description they're given.

As you seem to have guessed, this was in The Design and Implementation of the 4.4BSD
Operating System' on page 80: It goes:

The layout of the process state was completely reorganised in 4.4BSD. The goal
was to support multiple {\em threads} that share an address space and other
resources. Threads have also been called {\em lightweight processes} in other
systems.
...
The reorganisation of the process state in 4.4BSD was designed to support threads
that can select the set of resources to be shared, known as {\em variable
lightweight processes [Ref]. Unlike some other implementations, the BSD model
associates a process ID with each thread, rather than with a collection of threads
sharing an address space.
...
The process structure (with diagram) was shrunk to 1/4 of its former size [in
4.4BSD]. The idea is to minimise the amount of storage that must be allocated to
support a thread. The 4.4BSD distribution did not have kernel-thread support
enabled, primarily because the C library had not been rewritten to be able to

Does the not enabled'' bit mean that it isn't in fact there? What else do you think
they are rabbiting on about?

Regards,

Neil

--
* Neil A Carson (Carson@rmcs.cranfield.ac.uk)
* The Royal Military College of Science, Shrivenham.
* Address: Kitchener Mess, Royal Military College of Science, Shrivenham,
*          Swindon, Wilts SN8 8LA. Telephone: +44 (0)370 593183
`