Operating Systems
Operating System: a layer of software that abstracts the hardware by providing programs with a better, simpler, cleaner abstractions to work with
Kernel mode (aka supervisor mode) vs. user mode
Multiplexing is the sharing of resources:
- Time multiplexing: managing when resources can be used
- Space multiplexing: managing how space is shared between resources
Shell: Takes in user input to run programs and commands
OS Structure #
Monolithic vs Microkernel Virtual machines