An overview of the components of system software and its evolution is also discussed.
1 introduction to System Software
we have a calculator and a brick and a computer, which device could be considered the most
useful? If you thought of the computer, you may not be correct. The calculator can calculate right
out of the box, and the brick can be used to build or to maim, but the computer is completely useless
without adding some magic called software. A computer consists of a CPU (central processing unit) some volatile memory (also called main
memory or RAM) and some non-volatile memory (also called disk). When there is nothing in
the memories, the computer is as dumb as a brick. The CPU in concept is a simple electronic
gadget. It has the capability of doing mathematical functions (add, subtract, and so on) on data
stored in the main memory. However, unlike the calculator, which can calculate via simple keyboard
entries, the computer has to have a program. A program is a series of instructions, also stored
in the main memory that commands the computer to make tiny steps, one step at a time. Each step
is in response to an instruction. Each instruction is a simple command like add or subtract. A
current PC does about 1 trillion instructions per second.
Software is the general term describing programs written by the user, which makes it possible for
individuals to use the computer. It is any prepared set of instructions that controls the operation
of the computer. It is that part of the computer, that deals with codes, or coded instructions
according to which the computer is to operate. Based on their need and use it is classified into
system software and application software.
System software consists of a variety of programs that support the operation of a computer.
Examples of system software are operating system, compiler, assembler, macro processor,
loader, or linker, Application software focuses on an application or problem to be solved.
Examples are word processors, spreadsheets, database management systems, etc.
Definition: Software is a set of instructions or programs written to carry out certain tasks on digital computers
(i) System Software:
The concept of system software can be understood from a simple analogy. Consider an elephant that wanders in the wilderness. Somehow it is caught by a man, who knows that it is a mammoth creature and is capable of doing
jobs. If the elephant’s potential has to be utilized, he has to communicate and control it. He trains it and makes it ready for getting the work done and uses a stick to control the
elephant.
The above analogy can be used to understand the concept of system software. The user
uses the system software as the communicating and controlling element in order to get
the work done from the computer.
System Software is responsible for the working of the computer. It was developed to make
the computer better adapted to the needs of the users. It helps the user to focus on an
application or the problem to be solved without needing to know the details of how the
machine works internally.
System software acts as an intermediary between the users and the hardware. It creates
a virtual environment for the user that hides the actual computer architecture. A virtual
machine (or virtual environment) is a set of services and resources created by the system
software and seen by the user.
Since system software runs at the most basic level of your computer, it is called “low-level”
Software. It generates the user interface and allows the operating system to interact with
the hardware. Fortunately, you don’t have to worry about what the system software is
doing since it just runs in the background. It is usually related to the architecture of the
machine on which it is run. Most system software’s machine-dependent.
Definition: System Software is computer software designed to operate the computer hardware and provides and maintains a platform for running application software.
(ii) Application software:
Application software refers to all programs, which are used by the user of a computer to help him perform his day-to-day activities like maintaining his accounts, writing letters, etc.
Application software is primarily concerned with the solution of some problems, using the computer as a tool. It includes programs that do real work for users. Some important application software includes Payroll systems, Inventory systems,
Student Maintenance system, Library Management System, and so on. Application software is a program used for a specific purpose. Different organizations need to rerent application programs specific to their need. The application program can be custom-made or tailor-made according to its specific purpose. The special-purpose programs are also known as packages.
General-purpose application programs support generally
used information processing instead of specific tasks. For example, word processors,
spreadsheets, DTP packages, and database management systems fall under the category of general-purpose application software.
Definition: Applications Software Applications software comprises programs designed for an end-user, such as word processors, database systems, and spreadsheet programs
COMPONENTS OF SYSTEM SOFTWARE
The various components of system software are:
- 1. Assemblers
- 2. Loaders
- 3. Macros
- 4. Compilers or interpreters and
- 5. Operating system.
1. Assembler: Assembler is a program that translates the assembly language program (source code) into a machine language program (object code).
2. Loader: A loader is system software that loads the program into memory and prepares them for execution.
3. Macros: Macro processor is a program that substitutes and specializes in macro definitions for macro calls.
4. Compilers: A compiler is a program that accepts a source program “in the high-level language “and produces its corresponding object program.
5. Operating system: It is concerned with the allocation of resources and services, such as memory, processor, devices and information. The operating system contains programs that manage these resources, such as a traffic controller, a scheduler, a memory management module, /O program, and a file system.