Chapter 2 Flashcards
Services of OS
User interface
Program execution
I/O Operation
file sytem manipulation
communications
error detection
ressource allocation
accounting
protection and security
Three types of user interface:
CLI
GUI
Touchscreen
What are system calls
System calls provide the interface between the operating system and a program in execution. Using system calls the operating system provides resources or actions for a running application.
user application -> system call interface -> system call
Methods of system call parameter passsing
Registers, stack, memory/table.
Types of system calls:
process control
file management
Device management
Information
communication etc
protection
Mechanisms vs policy:
Mechanisms determine how to do something, policies decide what will be done
Traditional UNIX system structure
Users -> shells/commands/compilers/sys libraries -> system call interface to the kernel -> kernel interface to the hardware.
Micro kernel
Communication takes place between user modules using message passing
Benefits:
Easier to extend a microkernel
Easier to port the operating system to new architectures
More reliable (less code is running in kernel mode)
More secure
Detriments:
Performance overhead of user space to kernel space communication
What is a Linker and a Loader?
A linker combines several relocatable object modules into a single binary
executable file. A loader loads the executable file into memory, where it
becomes eligible to run on an available CPU.
What is a monolithic OS?
A monolithic operating system has no structure; all functionality is provided in a single, static binary file that runs in a single address space.
Although such systems are difficult to modify, their primary benefit is
efficiency
Layered OS: advantages and disadvantage
Easy to debug
not ideal for designing operating systems
due to performance problems.