User View
System Programs
Provide a convenient environment for program development and execution.
- file management (i.e.
rm,ls, ...) - status information
- file modifications
- programming language support (i.e. java)
- etc.
OS Interface for Users
CLI
- text/keyboard based command entry
GUI
- more user-friendly
- visual, using icons, buttons, etc.
Operation
User and Kernel Modes
Some instructions are 'privileged' which can only be ran in kernel mode (not the user mode).
For the instruction to run, the mode has to be switched through the 'mode bit'.
mode bit = 1 for user mode, mode bit = 0 for kernel mode.
System Calls
Programming interface to the services provided by the OS.
- process calls (launch a program)
- file management
- device management
- information maintenance (i.e. syncing time)
- communications
These are typically written in a high(er)-level language like C or C++.