What the set of computer programs and the procedures in association with documentation as well as the data pertained to the computer system operation is a software. It also describes the functioning of the set of the programs. And a program is a sequence of understandable computer instructions that the computer needs to perform the problem-solving work.
There are two categories in which the software of a computer system is classified. These are the pre-written software and custom built software.
- Pre-written software-
It is an example of an off-the-shelf product and is used for addressing the needs of various users and that too at the same time. For instance, take Operating System-Windows, or iOS. Millions of users have been using it at the same instant of time. Further, there are two classifications of the pre-written software. These are the application software and system software.
- Custom Built Software-
When all the requirements of the pre-written software are not met, and the organization has access to the software development team, then the choice of choosing the development of a customized software package is named as custom built software. The package can be in-house. If you are looking for an example, then the software used for the banking operations of HSBC would be the best. The bank uses the facilities developed in Pune.
Software quality has to be ensured, so that is why we have an entire topic, software quality assurance in easy terms.
The term is used for the reference to the computer software. It is a generic term and has the purpose of running the computer system. It has various key operations to perform in the smooth functioning of the computer system. The main operations of the system software are integration, control, and the management of the individual hardware components of any of the computer system. As a whole, there are the following tasks which the system software performs for the computer system-
- It acts as a supporter of the custom-built software and the other application software.
- Smooths the communication as well as the control of the numerous peripherals of the computer system, these are a printer, disk and many more.
- The task of monitoring the effective usage of the hardware and the resources are with the system software. Memory, CPU, peripherals and many more fall into this category which the system software manages.
- The work of supporting the execution of the other application software is with the system software.
The further categories and the classifications of the system software are-
- Operation systems
The acronym of the operating systems is more famous than the full form. These are the set of computer programs which are responsible for the controlling of the computer system components. Also, these are the programs which ease and facilitates the applications and their operations. There are several classifications of the operating systems as well. Operating Systems are based on the user interface and a number of users.
- Based on the user interface-
The user interface is the system of the computer text, screen images, devices and the components of the software. The interaction of the user is allowed by the operating system based on the user interface. Also, the control of the operating system of the computer is also allowed by the operating system which is based on the user interface.
A. Based on the character user interface (CUI)-
1. It further has Solaris, UNIX, and Dos are the examples of the command line interface. The other name of the command line interface is the character user interface. The command line is the line on which the types of the instructions system are used in a text-based operating system.
2. When a user needs to interact with the OS, he/she uses the keyboard for giving the command to the system. After getting the command from the user, the operating system processes it and uses the command line to display the result. Being a user, you would be able to see only the characters on the screen, and that is why the name is given to the interface.
B. Based on Graphical User Interface (GUI)-
The operating systems which use the icons and the menus to give it a pictorial representation. It uses the concept of the pointing device for the execution of the commands and the rest of the tasks. It does all the assigned work rather than letting the user typing the commands.
GUI is an interface which allows the interaction of the user with the operating system. It does this by manipulating the menus and the icons with the help of the mouse and the keyboard.
Based on the number of users-
1. When there is a single user-
These are the operating systems which provide the computer system access to only one user at the same time. When there is the need of the access of the computer system by the other user, then he needs to wait until the current user is done with the work as well as leaves. The examples of such systems are Windows 95, Windows NT Workstation, Windows 2000 Professional, DOS.
2. Based on the multiple users-
Here, the computer system access is given to more than user at the same time. The users get the access via the network which remotely uses a terminal and the computer system. The multi-user OS is the Linux, UNIX, Windows NT and Mainframes like AS400 etc.
C. Based on the number of programs which are running on the computer
1. Based on a single task-
These are the operating systems which work on a single application at the same time. It also gets the ease to the user and makes the sharing and the switching between the applications. In addition to this, the multi-users of the operating system also get the tag of multi-tasking OS. It does this by giving them access to the computer system to more than one user at one time. The example of the multitasking OS is all Windows OS. Operating more than one application simultaneously is what they do. For instance, MS Word and MS PowerPoint can be operated simultaneously.
2. Real-Time OS-
Yes, we can call it RTOS (Real-time operating system). The intention of the multitasking OS is the applications in the real time. There is no delay concerning time for the processing of the instructions received. It has the facility of a tradeoff to the processing speed, and that is why have less user interface capability. When there are critical risk systems in the operating systems, say, railway scheduling and the spacecraft, the RTOS gets the importance. The real and the actual usage of the RTOS is with the embedded systems. For example, LynxOS and SymbianOS. The former is used in aerospace, and the latter is used in the mobile phones.
The programs which are used for supporting the operating systems are called the utilities. The main tasks of the utilities of the system software are to maintain the data and the hardware of the computer system. There are a few of the OS Utilities. These are as follows-
A. Disk Management-
- Utilities in the disk management include formatting and de-fragmenting of the disks. Here, the organization and the disk surface marking into sectors, tracks, cylinders, are the references of formatting. Whereas, the de-fragmenting is sequencing the whole file by putting them into the disks. It results in the reduction of the time goes in file accessing.
- There are several disk management programs which allow the specification of the certain files which are often used. It is done by keeping the programs at the front of the disk. This results in speeding up of the program execution.
B. Recovery of data-
Recovering of the data from the damaged and the deleted files come under the data recovery utility. When we delete any of the files, rather than getting actually deleted from the system, the location of the file stored is lost. The files which have been deleted can be recovered. But if some other files have been overwritten on the same storage and the physical location of the file to be recovered, then it is not possible.
C. Data Compression-
This utility is used for the reduction of the total size of the file for the occupation of the less disk space. It also results in decompression of the file to regain the original content. The examples are Pkzip, Winzip etc.
D. Data Backup-
The main function of this utility is data compression as well as storing the data in the backup tapes. The best scenarios for the application of the data backup are the days where there is a high volume of generated data, but there is occasional use of such data.
E. Security Software-
The nature of the programs in the utility is diverse and are used for the protection of the data and the computer. Anti-virus and Anti-spy are used for monitoring the activity of the computer. Anti-spam software is used for the identification of the dangerous and useless messages. Blocking the access to the computer system over the network is done by the firewall.
F. Translator of the programming language-
Transformation of the programmer-generated instruction in the human understandable language as well as into the code of the machine language is the work of the programming language’s translator. It helps in understanding and the eased execution of the programming codes. The users who are using the pre-written packages are transparent to the software. Compilers and the interpreters are the examples.