Home » Types of Softwares » WHAT IS SOFTWARE



It is important to note that a computer cannot do any operation itself. To perform a particular task it must be instructed in such a way that we can get the desired output. Hence it is recommended to specify a set of instructions to the computer to solve a problem, so we can define a computer software as:
RELATIONSHIP DIAGRAM BETWEEN HARDWARE, SOFTWARE, AND THE USER OF THE COMPUTERA set of instructions that perform a particular task is called the program, or software program. The instructions in the program direct the computer to perform inputoperation process the data and output the results. For efficient and effective functions of a computer, the help of different software are also required. The term software refers to the set of instructions, procedures, and associated documents like flowcharts, manuals etc. In general language, software is the soul of a computer, without the software a computer cannot work it means its hardwarecannot execute any program. There is a relationship between hardware and software of a computer. They depend on each other with the help of software the hardware cannot be utilized and without hardware, software cannot be executed. So we can say that a computer is nothing when any one of hardware or software is unavailable.


Computer software is generally classified into two broad categories:
      1.      Application software
      2.      System software


Application Software, also known as application package, is a set of one or more programs designed to carry out operation for a specified application. For example, a payroll package produce pay-slips as the major output and an application package for processing examination results produces marks sheet as the major output along with some other statistical report. Similarly, a program written by a scientist to solve his particular research problem is also an application package. The program that constitutes an application package is known as application program and the person who prepares application programs is known as application programmer.

      Traditionally, application packages were limited  to the general purpose functions of inventory control, production scheduling, general ledger, general accounting and payroll because these were the major application area for which a company acquired a computer. Because there is such a great demand for these functions, nowadays packaged software supporting them is available on almost every kind of computer hardware. However, the software industry has expand to serve many specific markets, specific purpose application software has also been developed for specialized area, such as banking, hospital administration, insurance, publishing, manufacturing, science and engineering, etc. In fact, many computer companies have started to offer computer systems to go along with their software as turnkey system for specific industry needs. Development of specific purpose application packages has expanded along with the increased use of computers in non-financial operations.


System Software, also known as system package, is a set of one or more programs designed to control the operation of a computer system. These programs do not solve programs. They are general programs written to assist humans in the use of computer system by performing tasks such as controlling all of the operations, required to move data into and out of a computer all the steps in executing an application program. In general, system package, support the running of other software; communicate with peripheral devices (printers, card reader, disk and tape devices etc.); support the development of other types of software; and monitor the other use of hardware resources (memory, peripherals, CPU etc.). Thus, System Software makes the operation of a computer system more   effective efficient. The programs included in system software are called Systems programs and the person who prepares system software is referred to as a system programmer. Good system software allows application packages to be run on the computer with less time and effort.

     Without system software, application packages could not be run on the computer system. However, the production of application packages is a complex task that requires extensive knowledge and considerable specialized training in computer science. System programmers, who prepare system software, are highly trained computer specialists and important member of computer architectural team.


Operating system is one of the most important system software.


An operating system of a computer is a set of instruction that is used to manage various hardware resources and over all operation of a computer system. It is an intermediate between computer hardware and a computer user. It is designed to support the activity of a computer installation. Its primary activity is to increase the performance and efficiency of the computer system. As for example a manager of a company manages the whole company, he increase the performance and efficiency of that company and he is also responsible for any loss to the company, similarly the operating system makes the operation of the entire system smooth. It also makes the computer user friendly.

Functions of an Operating System:

  • An operating system of a computer manages all resources of the computer. Here hardware and software are the resources. An operating system uses all resources in the best way.
  • An operating system of a computer provides a good interface between computer and the user. That means it provides a medium to communicate the user with the computer. These function are the most important functions of an operating system.   
  • Processor management is the assignment of the computer processors to different tasks being performed by the computer system.
  • Memory management is the allocation of the main memory and other storage areas to the system programs as well as user programs and data.
  • It maintenance the internal time clock log of computer system usages for all users of the computer.
  • It interprets the commands and instruct to the computer system.
  • Coordination among compilers, interpreters, assemblers, utilities programs and other software of the various users.
  • Production of dumps, traces, error messages, and other debugging and error-detecting aids.


There are various types of operating system and some of them are listed below.

1. Batch processing operating system

2. Multiprogramming operating system

3. Multiprocessing operating system

4. Time-sharing operating system 

5. Real-time operating system


In Multiprogramming operating system CPU, main memory, and I/O sub systems are concerned as resource. Batch processing system was concerned with only CPU efficiency that avoids wastage of CPU time. But multiprogramming system has included balanced utilization of all resources of the system. When resources are shared among a set of process, each process can control over the allocated resources. If resources are not available, the process has to wait until the resources are available. 

       Multiprogramming operating system utilizes the resources efficiently by running several processes at a time. In multiprogramming operating system one process uses the CPU while the other processes use the peripheral devices or remain in the memory as ready state. In this operating system multiple processes switch among the processor to get executed. Multiprogramming operating system allows several processes to be in the memory at the same time to utilize the CPU by ensuring that the CPU always has a process to execute. 


Time-sharing operating system is a multitasking operating system. Time-sharing is a logical extension of the multiprogramming operating system. In Time-sharing operating system the CPU executes multiple processes by switch among them so frequently that the users can interact with each program while it is running. A Time-sharing operating system allows many users to share the computer simultaneously. In this system a process switch so rapidly that the entire system is dedicated to the user, even though it is being shared among many users.


A Real-time operating system is a multitasking operating system that aims at executing real time applications. Real-time operating system often use specialized scheduling algorithm so that they can achieve a deterministic nature of behavior. The main object of Real-time operating system is their quick and predictable response to events. They have an event-driven or Time-sharing design and often aspects of both. As event-driven system switches between tasks based on their priorities or external events while time-sharing operating system switches the tasks based on the clock interrupt.

Related Posts

  • WHAT IS COMPILERWHAT IS COMPILER A compiler is a translating program which translates the instructions of programs written in high level languages into machine language. Since a computer system can only understand machine […] Posted in Types of Softwares
  • WHAT IS AN ASSEMBLERWHAT IS AN ASSEMBLER ASSEMBLER A program that translates an assembly language program in to a machine language program is known as an assembler. A less powerful and cheaper computer may not have enough […] Posted in Types of Softwares
  • WHAT IS A NETWORKWHAT IS A NETWORK A network is a collection of interconnected self operating computer systems. Two or more computer systems are referred to be interconnected if they can share and exchange data and […] Posted in NETWORKING AND DATA COMMUNICATIONS
  • WHAT IS AN INTERPRETERWHAT IS AN INTERPRETER INTERPRETER         An interpreter is a program which translates one statement of a high-level language program into machine codes and executes it. In this way it […] Posted in Types of Softwares