It consists of variety of programs that supports the operation of the computer. Some common type of system software are:- Operating system, Linker, Loader, language processor, Device Driver, Server Programs etc.
- Perform basic tasks, such as recognizing input from the keyboard, sending output to the display screen, keeping track of files and directories on the disk and controlling peripheral devices.
- Ensure that different programs and users running at the same time do not interfere with each other.
- Provide a software platform on top of which other program can run.
- Process Management
- Memory Management
- File Management
- Command interpretations
- Batch Operating System:- In a batch processing operating system interaction between the user and processor is limited or there is no interaction at all during the execution of work. Data and programs that need to be processed are bundled and collected as a βbatchβ and executed together.
- Multiprogramming Operating System:- Multi programming operating system which in addition to supporting multiple concurrent process allows the instruction and data from two or more separate process to reside in primary memory simultaneously. Multiprogramming System are multitasking, multiprocessing and multiuser operating System.
- Multitasking operating System:- Multitasking is the ability of a computer to run more than one program, or task, at the same time. A multitasking operating system supports two or more active processes simultaneously.
- Multiprocessors operating System:- A multiprocessing operating system is one that can run on computer systems that contain more than one processor.
- Multiuser operating System:- This type of OS allows multiple users to simultaneously use the system, while here as well, the processor splits its resources and handles one user at a time, the speed and efficiency at which it does this makes it apparent that users are simultaneously using the system, some network systems utilize this kind of operating system. E.g Windows XP, Vista, 7 etc.
- Single user operating System:- A single user OS as the name suggests is designed for one user to effectively use a computer at a time. E.g DOS, Windows 95/98 etc
- Distributed operating System:- An operating system which manages a collection of independent computers and makes them appear to the users of the system as a single computer. In a distributed system, software and data maybe distributed around the system, programs and files maybe stored on different storage devices which are located in different geographical locations and maybe accessed from different computer terminals.
- Network Operating System:- A network operating system is a collection of software and associated protocols that allows a set of autonomous computers which are interconnected by a computer network to be used together. In Network operating system, the users are aware of existence of multiple computers can log in to remote machines and copy files from one machine to another machine.
NOTE: DOS was created for IBM compatible computers that was first introduced by Microsoft in August 1981 and was last updated in 1994 when MS-DOS 6.22 was released. MS-DOS operating system is not commonly used today, the command shell more commonly known as the Windows command line is still used.
- Web Server:- For hosting websites.
- Print Server:- manage multiple print requests for multiple printers
- File server:- manages the storage and retrieval of shared computer files
- Database Server:- provide database services to other computer programs
- Mail server:- managed and transfers electronic mail messages
Common Hardware components that require drivers are:-
- Graphics cards
- Sound Cards
- Card Readers
- CD/DVD drives
- Network cards
Language Processor: (Translator)
- Assembler:- An Assembler is a program that convert assembly language program into machine language.
- Interpreter:- Interpreter is a set of program which converts high level language program into machine language. It is a very slow because it convert program line by line.
- Compiler:- Compiler is a program that translates the code written in high level language program into machine language. It is very fast because it scan whole program and then convert into machine language.
Note:- Code written into high level language or Assembly Language know as Source Code and the converted code into machine language know as Object code.
Compiler scans the entire program and convert it into machine code. Slow for debugging. Execution time is less.
Interpreter translates the program line by line. Good for fast debugging and execution time is more.