Introduction
Utility program is a sort of system software which makes a functional medium For users to work with application software. Because of controlling and maintaining the operations of the computer , its devices or its software , utility programs are able to create functional mediums for the users.
What is a utility program in an operating system?
In computers, a utility is a short program that allows an addition to the capacities provided by the operating system. Utility software allows users to configure, examine, enhance and maintain a computer. Connected with several utilizations, a utility is a special and not essential part of the operating system.
The print "utility" that arrives with the operating system is an example . This cannot be really required to run programs and, if it did not arrive with the operating system , you could possibly add it. As for other usages, a utility is an application that is highly specialized and comparatively limited in capability. A prime example is a search and replace utility.
Number of Operating systems gives a defined capability to do a search-replace for given strings. You can add a far more capable search and replace utility that runs an application program. Although in comparison with a word processor, search and replace utility has defined capability.
All the holdings of computer systems are supervised, maintained and governed by the utility software. Number of necessary tools are controlled by the operating system for this task, but individual utility programs can give better functionality.
Types of utility program
Antivirus Software - The software that is used to identify and eliminate the malwares from computer systems is called antivirus software.
Disk Defragmenter - The method that lessens the Fragmented space in the disk is called the defragmentation. Disk defragmenter program performs this job.
Disk Cleaner - This is the sort of stuff that is In-built in the operating system to detect and remove unnecessary files from the computer to free the disk space. It might be temporary files or folders spontaneously created during internet browsing sessions on the computer.
Compiler - To carry out the program executable, a programming language uses a program to convert the source code written in the programming language into machine understandable language code called a compiler.
What are system calls?
The interface between the operating system and the user programs is specified by the group of "extended instructions" that the operating system provides. These extended instructions are called system calls.
User programs interact with the operating system and appeal services from it by making system calls. At that place occurs a library procedure corresponding to each system call in a specified place, for example the machine registers, and then concerns a TRAP instruction to start the operating system.
Once the operating system takes control after the TRAP, it analyzes the parameters to recognize if they are valid, and if so, executes the work requested. Once it is completed, the operating system places a status code in a register, revealing its success or failure, and executes a RETURN FROM TRAP instruction, to get back to the library procedure.
The library procedure then returns to the caller in a general way, and returns the status code as a function value. System calls permit a user-level process to request services from the Operating system.
Types of system calls
Process control - A task or process executing one program can want to load and execute another program. Such a characteristic allows the command interpreter to execute a program as directed by, like, a user command, the click of a mouse. A Fascinating query arises where to return control when the loaded program terminates. Whether control returns to the existing program when the new program terminates, the memory image of the existing program to call another program. If One as well as the other programs continues at the same time, we have created a new job Or process to be Multi-programmed. The system calls for this intention to create a process or submit a job.
File management - it will be necessary to create and delete files. Whether the system call needs the name of the file and possibly some of the file attributes. Once the file is created, it will be necessary to open it and use it. We will be able to read, write or reposition also.
Eventually it will be necessary to close the file, indicating that it is no longer used. It might be necessary for these same sets of operations for directories if we have a directory structure for organizing files in the file system.
For files and directories, you need to be able to identify the values of various attributes and to reset them. File attributes can be the file name, a file type, protection codes , accounting information etc. Two system calls, get file attribute and set file attribute, are needed for this function.
Device Management - An active program may require additional resources to continue for example, memory, access to files and so on. As long as resources are obtainable, they are granted, and control goes back to the user program. Or else the program will have to wait until resources are free.
Information Management - Information management means several system calls occur for the purpose of transferring information between the user program and the operating system . For instance, the maximum system has a system call to return the current time and date.
Other system calls could return data (information) about the system, for example as the number of current users, the version number of Operating system, the quantity of free memory or disk space etc.
Communication - There are two common ways of communication. In the message-passing model, data is interchanged through an inter-process communication proficiency given by the operating system.
A connection is started before communication takes place. In the shared-memory model, processes make use of map memory system calls to obtain access to areas of memory belonging to another process.
Conclusion
Utility program assists users to maintain a computer efficiently . As a matter of fact utility programs are nothing but software to manage, analyze and configure a system. System calls are an essential Application programming interface (API) for user space code to execute favored kernel activities.