factored operating systems paper review
TRANSCRIPT
Factored Operating Systems
The Case for a Scalable Operating System for Multicores
By Vimukthi Bandara Wickramasinghe
Overview
● Scalability of contemporary operating systems
● Factored operating system - Background
● Factored operating system - Design
● Factored operating system - Advantages
● Conclusion
Scalability of contemporary operating systems
• Single stream performance of processors
will not increase.
• Exponential growth is expected in
number of cores.
• Current SMP OSs are not designed to
handle 1000+cores.
• Linux 2.6 kernel is investigated here for
scalability problems.
Scalability problem : Locking
● Contemporary SMP OSs use locks in the kernel.
● Linux used a big kernel lock(2009).
● This limits concurrency.
● One alternative - introduce finer grained locking.
○ may cause protection breaches
○ may cause deadlocks
● Processor parallelism will increase exponentially. But lock granularity can
not.
Scalability problem : Locality Aliasing
● OS + Application code/data in cache.
● Reducing cache hit rates.
● Cache per core is smaller for multicore chips.
● In summary reduces performance.
Scalability problem : Shared memory
● Currently OSs communicate using shared memory.
● This is inherently non scalable.
● Current shared memory systems can not support more than 100 cores.
● Future processors probably won’t have shared memory.
Factored operating system - Background
Analysis of contemporary OSs lead to following requirements for a scalable
OS.
• Avoid the use of hardware locks.
• Separate the operating system execution resources from the application
execution resources.
• Avoid global cache coherent shared memory.
Factored Operating System(FOS)“ FOS is a new scalable operating system targeted at 1000+ core systems. “
Factored operating system - Design
FOS design principles,
• Space multiplexing replaces time multiplexing.
• OS is factored into function specific services.
FOS-microkernel
● A portion of FOS-microkernel executes on each core.
● Main service provided by this microkernel is messaging.
● Applications access OS services through messaging.
● Microkernel also maintains a cache of name mapping.
Factored Operating System - Advantages
• Removing dependency on shared memory for communication.
• Number of servers for a service scales with number of cores.
• Spatial scheduling.
• No context switch with micro kernel messaging.
• OS services and application code execute on different
cores(factored).
Conclusion
• Next decade is the age of 1000+ core processors.
• Scalability challenge for current OSs.
• FOS explores the ways of meeting this challenge.