Light Weight Kernel Threads or LWKT is a term from computer science in general and in DragonFlyBSD in particular. LWKTs differ from normal kernel threads in that they can preempt normal kernel threads. According to Matt Dillon, DragonFlyBSD creator:
“ |
The LWKT scheduler is responsible for actually running a thread. It uses a fixed priority scheme but ... the fixed priorities are differentiating major subsystems, not user processes. "For example, hardware interrupt threads have the highest priority, followed by software interrupts, kernel-only threads, then finally user threads. A user thread either runs at user-kernel priority (when it is actually running in the kernel, e.g. running a syscall on behalf of userland), or a user thread runs at user priority vimAL. DragonFly does preempt... it just does it very carefully and only under particular circumstances. An LWKT interrupt thread can preempt most other threads, for example. This mimics what FreeBSD-4.x already did with its spl/run-interrupt-in-context-of-current-process mechanism. What DragonFly does *NOT* do is allow a non-interrupt kernel thread to preempt another non-interrupt kernel thread. The mainframe z/OS Operating system supports a similar mechanism, called SRB (System Request Block). SRBs represent requests to execute a system service routine. SRBs are typically created when one address space detects an event that affects a different address space; they provide one of several mechanisms for asynchronous inter-address space communication for programs running on z/OS. An SRB is similar to a Process Control Block (PCB), in that it identifies a unit of work to the system. Unlike a PCB, an SRB cannot "own" storage areas. In a multiprocessor environment, the SRB routine, after being scheduled, can be dispatched on another processor and can run concurrently with the scheduling program. The scheduling program can continue to do other processing in parallel with the SRB routine. Only programs running in kernel mode can create an SRB. The Windows operating system knows a similar light weight thread mechanism named "fibers". Fibers are scheduled by an application program. The port of the CICS Transaction Server to the Windows platform uses fibers, somewhat analogous to the use of "enclaves" under z/OS. |
” |
Famous quotes containing the words light, weight, kernel and/or threads:
“One or the other is necessary: either a light disposition by nature or a disposition lightened by knowledge and art.”
—Friedrich Nietzsche (18441900)
“Not the less does nature continue to fill the heart of youth with suggestions of his enthusiasm, and there are now men,if indeed I can speak in the plural number,more exactly, I will say, I have just been conversing with one man, to whom no weight of adverse experience will make it for a moment appear impossible, that thousands of human beings might exercise towards each other the grandest and simplest of sentiments, as well as a knot of friends, or a pair of lovers.”
—Ralph Waldo Emerson (18031882)
“We should never stand upon ceremony with sincerity. We should never cheat and insult and banish one another by our meanness, if there were present the kernel of worth and friendliness. We should not meet thus in haste.”
—Henry David Thoreau (18171862)
“How have I been able to live so long outside Nature without identifying myself with it? Everything lives, moves, everything corresponds; the magnetic rays, emanating either from myself or from others, cross the limitless chain of created things unimpeded; it is a transparent network that covers the world, and its slender threads communicate themselves by degrees to the planets and stars. Captive now upon earth, I commune with the chorus of the stars who share in my joys and sorrows.”
—Gérard De Nerval (18081855)