Introduction to System Software Components
System software components are defined as the software system designed to operate the computer’s hardware; it provides a platform to run the application software and the basic functions for the computer usage. It protects the application programmer from the complexity and specific details of a particular computer being used, especially the memory and the hardware features. The component of the software is a self-contained system with one or more inputs and outputs channels; it has nothing to do without the input and does not serve anything without the output.
System software components
Let us discuss System Software Components.
-
Device Driver
This is a system program used to control the number of devices attached o the computer; it acts as a translator between applications that the user and the hardware device used. A device driver tells the operating system how the device will work on certain commands the user generates. With the device’s help, driver computer hardware can interact with high-level system programs. For example, Wi-Fi driver, Bluetooth driver, etc.
-
Operating System
The operating system is the system which is the main part of the computer system, in which it manages the hardware of the computer consisting of programs and data. The services have been provided by the operating system so that we can able to execute the application software. The operating system is the system program that enables users to communicate with computers. It helps other programs to run and control them.
Examples of computer operating systems are Linux, Microsoft Windows, OS X, and UNIX.
-
Server
It is a program; it works like a socket listener in a computer operating system. A server is a series of computers connected to other computers. There are private, and public users in a network who access the internet, and the server provides that essential service.
-
Utility Software
It is used to manage hardware and application software and also performs small tasks. For example, system utilities and virus scanners, etc.
-
Windowing System
This graphical user interface component supports the window manager’s implementation, provides pointing devices like keyboards and mice, and supports graphics hardware.
-
Application programs
This is the top software layer; by using it, we can perform tasks such as writing by using a word processor spreadsheets for accounting; it has two supporting layers: a device driver and an operating system.
-
Root-user processes
These are programs that users with root authority can run. Through all processes, root authority is given to the administrator.
-
Assembler
An assembler generally used in an assembly language program is a program that converts the assembly language into machine code. It works on basic commands and code being operated and converted into binary code.
-
Compiler
The compiler converts the high-level programming language into the machine language. For example, in C or C++ language, we should implement a particular code that is source code in user understandable format printf, scanf, cout, such type of statements will generate in user language. Hence, the compiler converts the source code into the machine language format; machine language code means a target code; that is why we use a compiler for conversion purposes.
-
Interpreter
The interpreter is also used to convert the source code into the target code, but the interpreter checks one instruction at a time, which means it checks line by line code; it checks the first line, then converts it into the target code, again check the other programming line, and then convert into the target code.
-
Editor
The editor is the system program used to edit the text in the file. For example, we are all familiar with the Microsoft word processor, an editor whose main tasks are editing, traversing, viewing, and displaying the text. Editor means editing the particular text or file per the user’s requirement. In addition, it links extra files extra library files. The type of editors is Line Editor, Screen Editor, Word Processor, and Structure Editor.
-
Loader
The loader loads the complete program into the memory. When we save a particular program at that time, the program will be stored in the secondary memory. Still, when we compile a program and execute a particular program, the program will be executed into the primary memory, so the loader converts the program’s secondary memory to primary memory. It loads a particular program into the secondary to primary memory.
-
Linker
It is a program that links the user program to another program or library. It links two or more modules into the memory and prepares for execution. It integrates the necessary functions required by the program. Some programming file uses some import functions in different libraries; for example, if we want to use the square-root function in our code, then we have to import ‘math. H’ library is in our programming, so these libraries are linked with our programming file; this concept is generated through the linker.
-
Debugger
A debugger is a computer program that finds errors, also called bugs in source code. It provides the facility to halt at any point and check the changes made in the program.
-
Macro
It is a group of instructions that can be replaced when called by the macro processor. It is used for faster execution, and code can be reusable; also, it is used in assembling language programs.
Conclusion
In this article, we conclude that there are three basic components in a software system, the application software, the device driver, and the operating system; these three work together to perform useful tasks, and it has some translator as they are also components of the software system and they perform completely different types of jobs.
Recommended Articles
This is a guide to System Software Components. Here we discuss the Introduction and list of System Software Components, respectively. You may also have a look at the following articles to learn more –
- System Software Tools
- Socio-Technical System
- Software System Architecture
- Embedded Systems Applications
11 Online Courses | 2 Hands-on Projects | 65+ Hours | Verifiable Certificate of Completion
4.5
View Course
Related Courses