Services of the Operating System.
As we know that operating system is a software program that executes on
system hardware. Operating systems are applicable for managing various tasks
or jobs and give the resources to the needed component such as input/output
devices, files execution, etc. It provides an environment for the execution
of several different programs. The specific services provided by an
operating system differ from one operating system to another operating
system. Some services that are common to all other operating systems
are-
Services of an Operating System
1. Users Interface :
Almost all operating systems have a User Interface <UI > Environment.
The Interface may be different types.
We are already familiar with GUI, which means Graphics User Interface. The GUI
is a picture base drag & drop system program that provides the flexibility
of system communication with the user. Here, the interface is a windows system
with a pointing device to perform operations. The second one of them is a
"Command-line Interface" <CLI> that are take inputs as text commands and
execution the user's query.
The command-based interface operating system is widely used by Software
Developers and Hackers. Because the command-based operation system is more
secure and provides unique functionality, that may be not available in the GUI
interface. Another one is a Batch Interface, in which commands and
directives to control those commands are entered into files, and those files
are executed as batch processing.
2. Program Executions :
The execution request of a program is generated when the user gives
instructions to the system. Every instruction must be inserted or loaded into
memory first for execution then the processing will take place.
Program Execution has depended on the condition where sometimes instructions
will finish normally, but sometimes it wouldn't be finished successfully due
to many reasons, that time all processes must be killed forcefully.
Because might be possible it will crash your system or will be move on
deadlock condition that is the more harmful situation. So, the program must be
able to end its execution, either normally or abnormally.
3. Input-Output Operations:
Operating System is a most powerful program that handles, file systems, memory
systems, inputs-outputs Devices, and other resources management. For specific
devices, special functions may be desired.
There is also maintain an efficiency and protection layer that restricts
abnormal activity or users to do anything without permission.
Input-output devices are connected to a common serial bus that provides the
resources to the needed Devices and it is handled by the operating system
input/output management service.
4. Error Detection:
The operating system needs to be detecting and correcting errors Constantly.
Error is the major crucial part of the operating system, the programmer must
be aware of how to write programs efficiently and if any error will occur
during compilation time or execution time so the operating system will handle
it smoothly.
The error may be possible to arise through many abnormal situations or
conditions, it may be file read/write related errors, inputs error from the
user sides, output error through external devices such as to monitor,
printer, etc.
Errors may occur in the CPU and memory hardware like- power failure, memory
detection or mab be in the users' program like, "an arithmetic overflow,
accessing the abnormal or illegal memory address, overload CPU
processing time, etc".
So it is mandatory the operating system must take accurate action to make
correct and consistent computing for each type of error.
5. Communication :
The communication is made between two entities, it may be any processes,
files, input/output resource sharing, etc. Communication is made in different
circumstances in which one process may exchange information with other
processes when required. Such communication may arise between two or many
processes that are executed on different computer systems connected together
by a computer network.
The communication may be implemented through "Shared Memory", in which two or
more than two processes read or write to a shared location of the memory, or
"Message Passing ", in which the content or information is Encapsulated as a
packet in a predefined manner or format and moved it between processes by the
operating system.
6. File-System Manipulation:
In this service of the operating system, the file system is managed according
to the read and write authentication. Definitely, programs need to read or
write files and directories whenever required by the processes. They also need
to create or delete a file through its name, search for a given file. So there
are different ways to do this work that is dependent on the operating system
flavor.
For example, Windows operating systems give very user-friendly services
to insert, delete, create and move the files into the system. Users can
easily manage the ownership of any files and easily can remove the
accessibility from the third person.
Users will never be stuck to doing this by their own knowledge. But in another
command-based operating system such as Linux and Unix, the file manipulation
is something different and an UN-knowledgeable person maybe get stuck to
performing operations on it, every time user needs to write commands to
delete, copy, paste and create the files. The command-based system is more
secure than the GUI system, that's why it prevents anonymous user access to
perform any operation.
7. Resource Allocations:
Resource Allocation must be accurately initialized to the requested processes,
otherwise, it will make the CPU processing idle. Suppose there are N numbers
of users or N numbers of jobs running continuously at the same time, that time
resources must be allocated to each of the processes without any Deadlock
arising. At that time the main role is performed by the operating system, it
easily handles different types of resources.
Some (such as - CPU cycles, file storage, and main memory) may have some
special allocation code, whereas others such as I/O devices) may
have a much more general request and release code. To do all this work
carefully, the operating system uses CPU Scheduling Algorithms.
It tracks the speed of the CPU, all jobs that are must be executed, the
numbers of free resources available, and the other process management factors.
I will define the CPU Scheduling later in the operating system series.
8. Protection & Security :
The information of the users or the owner of that information are stored
within multi-user or shared network computer systems that may want to control
use of that information. When several different processes execute
concurrently, it should not be possible for one process to interfere with the
others processes or with the operating system itself. That time the accuracy
is must important to prevent the other processes to take resources of another
processes, it may be do crash the system or will go in Deadlock
situation.
Protection involves ensuring that all access of system resources is
controlled and provide the exact resource to the needed processes. Security of
the system form outsiders or third person is also more important. Such
security starts with requiring each user to authenticate himself or herself to
the system, usually by means of a password, to gain access to the system
resources.
You may also like:
Binary Search Algorithm
Read Also :