Lightweight kernel operating system: Difference between revisions

Content deleted Content added
Smk-slab (talk | contribs)
Expanded description of LWK functionality and implementation details
Smk-slab (talk | contribs)
Expanded explanation on how the LWK addresses predictable forward progress by the application
Line 36:
}}</ref>
 
LWK implementations vary, but all strive to provide applications with predictable and maximum access to the [[CPU]] and other system resources. To achieve this, simplified algorithms for scheduling and memory management are usually included. System services (e.g. daemons), are limited to the absolute minimum. Available services, such as job launch are constructed in a hierarchical fashion to ensure scalability to thousands of nodes. Networking protocols for communication between nodes in the system are also carefully selected and implemented to ensure scalability. One such example is the [[Portals network programming api]].
 
Lightweight Kernel operating systems assume access to a small set of nodes that are running full-service operating systems to offload some of the necessary services: login access, compilation environments, batch job submission, and file I/O.
 
By restricting services to only those that are absolutely necessary and by streamlining those that are provided, the overhead (sometimes called noise) of the lightweight operating system is minimized. This allows a significant ''and'' predictable amount of the processor cycles to be given to the parallel application. Since the application can make consistent forward progress on each processor, they will reach their synchronization points at the same time. Lost wait time is reduced.
 
== References ==