The Five Types of Systems Software
There are five types of systems software, all designed to control and coordinate the procedures and functions of computer hardware. They also enable functional interaction between hardware, software and the user.
Systems software carries out middleman tasks to ensure communication between other software and hardware to allow harmonious coexistence with the user.
Systems software can be categorized under the following:
- Operating system: Harnesses communication between hardware, system programs, and other applications.
- Device driver: Enables device communication with the OS and other programs.
- Firmware: Enables device control and identification.
- Translator: Translates high-level languages to low-level machine codes.
- Utility: Ensures optimum functionality of devices and applications.
1. Operating System (OS)
The operating system is a type of system software kernel that sits between computer hardware and end user. It is installed first on a computer to allow devices and applications to be identified and therefore functional.
System software is the first layer of software to be loaded into memory every time a computer is powered up.
Suppose a user wants to write and print a report to an attached printer. A word processing application is required to accomplish this task. Data input is done using a keyboard or other input devices and then displayed on the monitor. The prepared data is then sent to the printer.
In order for the word processor, keyboard, and printer to accomplish this task, they must work with the OS, which controls input and output functions, memory management, and printer spooling.
Today, the user interacts with the operating system through the graphical user interface (GUI) on a monitor or touchscreen interface. The desktop in modern OSs is a graphical workspace, which contains menus, icons, and apps that are manipulated by the user through a mouse-driven cursor or the touch of a finger. The disk operating system (DOS) was a popular interface used in the 1980s.
Types of Operating Systems
- Real-Time OS: Is installed in special purpose embedded systems like robots, cars, and modems.
- Single-user and single-task OS: Are installed on single-user devices like phones.
- Single-user and multitask OS: Are installed on contemporary personal computers.
- Multi-user OS: Is installed in network environments where many users have to share resources. Server OSs are examples of multi-user operating systems.
- Network OS: Is used to share resources such as files, printers in a network setup.
- Internet/Web OS: Is designed to run on the browser that is online.
- Mobile OS: Is designed to run on mobile phones, tablets and other mobile devices.
Functions of Operating Systems
- They provide the interface between the user and hardware through GUI.
- Manages and allocates memory space for applications.
- Processes the management of applications, input/output devices, and instructions.
- Configures and manages internal and peripheral devices.
- Manages single or multi-user storage in local and network computers.
- Security management of files and applications.
- Manages input and output devices.
- Detects, installs, and troubleshoots devices.
- Monitors system performance through Task Manager and other tools.
- Produce error messages and troubleshooting options.
- Implement interface for network communication.
- Manages printers in single or multi-user systems.
- Internal or network file management.
Examples of Operating Systems
Popular OSs for computers are:
- Windows 10
- Mac OS X
Popular network/server OSs are:
- Ubuntu Server
- Windows Server
- Red Hat Enterprise
Popular internet/web OSs are:
- Chrome OS
- Club Linux
- Remix OS
Popular mobile OSs are:
- iPhone OS
- Android OS
- Windows Phone OS
2. Device Drivers
Driver software is a type of system software which brings computer devices and peripherals to life. Drivers make it possible for all connected components and external add-ons perform their intended tasks and as directed by the OS. Without drivers, the OS would not assign any duties.
Examples of devices which require drivers:
- Display card
- Network card
Usually, the operating system ships with drivers for most devices already in the market. By default, input devices such as the mouse and keyboard will have their drivers installed. They may never require third-party installations.
If a device is newer than the operating system, the user may have to download drivers from manufacturer websites or alternative sources.
Firmware is the operational software embedded within a flash, ROM, or EPROM memory chip for the OS to identify it. It directly manages and controls all activities of any single hardware.
Traditionally, firmware used to mean fixed software as denoted by the word firm. It was installed on non-volatile chips and could be upgraded only by swapping them with new, preprogrammed chips.
This was done to differentiate them from high-level software, which could be updated without having to swap components.
Today, firmware is stored in flash chips, which can be upgraded without swapping semiconductor chips.
BIOS and UEFI
The most important firmware in computers today is installed by the manufacturer on the motherboard and can be accessed through the old BIOS (Basic Input/Output System) or the new UEFI (Unified Extended Firmware Interface) platforms.
It is the configuration interface which loads first when the computer is powered up and is going through POST (Power On Self Test).
The motherboard firmware starts by waking up all the hardware and ensures that components like the processor, memory, and disk drives are operational. If all the crucial components are fine, it will run the bootloader, which will load the operating system. If the random-access memory is faulty, the BIOS will not allow the computer to boot up.
The user can change the BIOS and UEFI settings by pressing special keys (a function key, delete, or the esc key) at boot-up to load the configuration page. The user can configure security, boot order, time, and other options in the page that pops up.
Though they work differently, firmware compliments drivers in a few ways. Both give identity to hardware devices, with the latter making the operating system see the device.
The major difference between the two is that firmware will always reside within devices while drivers will install within the operating system.
Firmware upgrades come from the device manufacturer (not the OS manufacturer). They're necessary if the user wants computer hardware to receive new hardware and software support. Firmware will make it possible for devices to work better with old and new operating systems and applications.
Almost all devices and peripherals are embedded with firmware. Network card, TV tuner, router, scanner, or monitor and examples of devices which have firmware installed on them.
4. Programming Language Translators
These are intermediate programs relied on by software programmers to translate high-level language source code to machine language code. The former is a collection of programming languages that are easy for humans to comprehend and code (i.e., Java, C++, Python, PHP, BASIC). The latter is a complex code only understood by the processor.
Popular translator languages are compilers, assemblers, and interpreters. They're usually designed by computer manufacturers. Translator programs may perform a complete translation of program codes or translate every other instruction at a time.
Machine code is written in a number system of base-2, written out in 0 or 1. This is the lowest level language possible. While seemingly meaningless to humans, the zeros and ones are actually sequenced intelligently by the processor to refer to every conceivable human code and word.
Besides simplifying the work of software developers, translators help in various design tasks. They;
- Identify syntax errors during translation, thus allowing changes to be made to the code.
- Provide diagnostic reports whenever the code rules are not followed.
- Allocate data storage for the program.
- List both source code and program details.
Utilities are types of system software which sits between system and application software. These are programs intended for diagnostic and maintenance tasks for the computer. They come in handy to ensure the computer functions optimally. Their tasks vary from crucial data security to disk drive defragmentation.
Most are third-party tools but they may come bundled with the operating system. Third-party tools are available individually or bundled together such as with Hiren Boot CD, Ultimate Boot CD, and Kaspersky Rescue Disk.
Examples and features of utility software include:
- Antivirus and security software for the security of files and applications, e.g., Malwarebytes, Microsoft Security Essentials, and AVG.
- Disk partition services such as Windows Disk Management, Easeus Partition Master, and Partition Magic.
- Disk defragmentation to organize scattered files on the drive. Examples include Disk Defragmenter, Perfect Disk, Disk Keeper, Comodo Free Firewall, and Little Snitch.
- File Compression to optimize disk space such as WinRAR, Winzip, and 7-Zip.
- Data backup for security reasons, e.g., Cobian, Clonezilla, and Comodo.
- Hardware diagnostic services like Hard Disk Sentinel, Memtest, and Performance Monitor.
- Data recovery to help get back lost data. Examples include iCare Data Recovery, Recuva, and EaseUs Data Recovery Wizard.
- Firewall for protection against external threats, e.g., Windows Firewall.
Questions & Answers
© 2017 Alfred Amuno