System Programs
System programs provide a convenient environment for program development and execution.
Most users’ view of the operation system is defined by system programs, not the actual system calls
They can be divided into:
1. File manipulation
2. Status information
3. File modification
4. Programming language support
5. Program loading and execution
6. Communications
7. Application programs
File management
Create, delete, copy, rename, print, dump, list, and generally manipulate files and directories
Status information
Some ask the system for info - date, time, amount of available memory, disk space, number of users
Others provide detailed performance, logging, and debugging information
Typically, these programs format and print the output to the terminal or other output devices
Some systems implement a registry - used to store and retrieve configuration information
File modification
Text editors to create and modify files
Special commands to search contents of files or perform transformations of the text
Programming-language support
Compilers, assemblers, debuggers and interpreters sometimes provided
Program loading and execution
Absolute loaders, relocatable loaders, linkage editors, and overlay-loaders, debugging systems for higher-level and machine language
Communications
Provide the mechanism for creating virtual connections among processes, users, and computer systems
Allow users to send messages to one another’s screens, browse web pages, send electronic-mail messages, log in remotely, transfer files from one machine to another