Software, aside other categories as discussed in the previous post, can be generally divided into two: system software and application software. System software is designed to operate the hardware of the computer. System software keeps everything working and is responsible for making the computer usable. It provides a platform for running application software and basic functions of the computer. All application programs work with the system software to accomplish their tasks.
One important purpose of system software is to protect the applications programmer from the complexity and specific details of a particular computer being used, especially memory and other hardware features. System software is usually made up of three kinds of programs or components.
- Operating System
- Device Drivers
- Utility Programs (Utilities)
Application software on the other hand, allows a user to accomplish some tasks by enabling the computer to perform special activities aimed at solving a specific problem.
Whilst application software is discussed broadly in the next post, this post focuses on the components of system software and the types of its major component, Operating System.
READ ALSO : Types Of Computer Software
What Is A Computer Operating System?
An operating system (OS) is a software that manages the computer’s resources, runs and coordinates other programs, and provides common services for the user and application software. The operating system acts as an intermediary between application programs and the computer hardware for functions such as input & output and memory allocation.
Apart from Personal Computers (PC), Operating systems are also found on any device that contains a computer. Such devices include cellular phones, video game consoles, supercomputers and web servers.
Examples of popular operating systems for PCs include:
- MS-DOS (Microsoft Disk Operating System) for IBM computers
- Microsoft Windows (Windows 10, Windows 8, Windows 7, Windows Vista, Windows XP, Windows 2000, Windows ME, Windows 98, Windows 95)
- Linux (Ubuntu, Fedora, Red Hat, Mandriva, SuSE, Debian)
- Mac OS (Macintosh Operating System) for Apple computer systems
- UNIX, and many more.
Types Of Operating Systems
Operating systems have over the years been developed and separated accordingly into the following categories based on their functions:
- Single- and Multi-tasking Operating System
- Single- and Multi-user Operating System
- Network Operating System
- Distributed Operating System
Single- and Multi-tasking OS
While a single-tasking OS can only run one program at a time, a multi-tasking OS allows more than one program to be running concurrently. This is possible due to time-sharing, where the available processor time is divided between multiple processes. Each of these processes are interrupted repeatedly in time slices by a task-scheduling subsystem of the operating system.
Single- and Multi-user OS
A single-user OS involves a standalone computer system where the operating system allows only a single user to process and handle one operation at a time. Single-user operating systems have no facilities to distinguish users, but may allow multiple programs to run one after the other. Examples of single-user OS are Windows 95, MS-DOS, Windows NT Workstation, and Windows 2000 professional.
A multi-user OS allows multiple users on different computers or terminals to access a single system with one OS on it. These programs are often quite complicated and must be able to properly manage the necessary tasks required by the different users connected to it. A multi-user OS applies the basic concept of multi-tasking with facilities that identify processes and resources, such as disk space, belonging to multiple users. The system permits multiple users to interact with the system at the same time. Examples are Mac OS, All Linux based OS, UNIX, IBM AS400, and Windows 10.
Network Operating System
A network involves the setting up of network servers for connecting many computers to the network for the purpose of communicating and sharing resources. A network operating system (NOS) is designed primarily to support workstations and personal computers connected on a local area network (LAN). Examples include Artisoft’s LANtastic, Banyan VINES, Novell’s NetWare, Microsoft Windows (NT, 2000), OpenVMS, Linux, UNIX, and others.
Distributed Operating System
A distributed operating system manages a group of distinct computers and makes them appear to be a single computer. The development of networked computers that could be linked to communicate with each other gave rise to distributed computing. A distributed OS is an extension of the network operating system that supports higher levels of communication and integration of the machines on the network. Distributed computations are carried out on more than one machine. When computers in a group work in cooperation, they form a distributed system. Examples are IRIX, DYNIX, AIX, Solaris, Mac OS, and others.
Functions of Operating Systems
Typical functions of operating systems include:
- Performing various boot procedures (cold and warm booting procedures)
- Disk and storage management
- Virtual memory/storage functions
- Controlling application programs
- Providing inter connectivity functions
- File management functions (copy, cut, paste, delete, open)
- Provides automatic troubleshooting facilities
- Provides security
Computer Device Drivers
In computing, a device driver, commonly known as driver, is a small program that operates or controls a particular type of hardware device that is attached to the computer, such as a keyboard or a mouse. There is a plethora of computer hardware, for example the number of disk drive models available even from one manufacturer can be very huge.
A driver provides a software interface to hardware devices, to enable an OS and other programs to access hardware functions without needing to know precise details of the hardware being used. A device driver simplifies programming as it acts as a translator between a hardware device and the applications that use it. All peripheral devices attached to the computer have their device drivers installed through the OS. Some devices such as printers, scanners, plotters, and others, have exclusive software coming with the devices.
Although the system you buy has many drivers pre-installed, those programs are provided by the device manufacturer. This is especially important if you are experiencing problems with a device or want to connect an unrecognized device. You will probably have to download a driver from the device manufacturer.
Utility Programs (Utilities)
Utility programs, also known as utilities, service programs, or system tools, are designed to help analyze, configure, optimize and maintain the computer. They are programs that help users to identify hardware problems, locate lost files, and back up data. Common utilities include disk defragmenter, disk compressor, disk cleanup, virus scanners (antivirus), system restore, and development tools such as compilers and debuggers.
Utilities can be contrasted with application software which allows users to do things like creating text documents, playing games, listening to music or surfing the web. Rather than providing these kinds of user-oriented or output-oriented functionality, utility programs usually focus on how the computer infrastructure operates. Most utilities are highly specialized and designed to perform only a single task or a small range of tasks. However, there are also some utility suites that combine several features in one piece of software. Most major operating systems come with several pre-installed utilities, however, utilities are part of the system software but not part of the OS per se.
If you liked this article and find it helpful, please feel free to share and don’t hesitate to ask any question or share your thoughts or experiences in the comments section below.