0% found this document useful (0 votes)
86 views17 pages

ch2 Os

This document discusses operating system services and components. It provides examples of common operating system services like the user interface, program execution, input/output operations, file system manipulation, communications, error detection, resource allocation, accounting, and protection/security. It also discusses system calls, which provide an interface for programs to access operating system services. System calls allow programs to perform functions like opening and closing files, reading and writing files, displaying messages, and handling errors.

Uploaded by

Abhijit Bhong
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
86 views17 pages

ch2 Os

This document discusses operating system services and components. It provides examples of common operating system services like the user interface, program execution, input/output operations, file system manipulation, communications, error detection, resource allocation, accounting, and protection/security. It also discusses system calls, which provide an interface for programs to access operating system services. System calls allow programs to perform functions like opening and closing files, reading and writing files, displaying messages, and handling errors.

Uploaded by

Abhijit Bhong
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 17

SNJB’s SHHJB Polytechnic, Chandwad

CH.2 Services & Components of OS

Chapter 2 Marks 10

Services & Components of Operating System


2.1 Operating-System Services
An operating system provides an environment for the execution of programs. It provides
certain services to programs and to the users of those programs. The specific services
provided, of course, differ from one operating system to another, but we can identify
common classes. These operating system services are provided for the convenience of the
programmer, to make the programming task easier. Figure 2.1 shows one view of the
various operating-system services and how they interrelate.

Fig 2.1 A view of operating system services.

One set of operating system services provides functions that are helpful to the user.
• User interface.
Almost all operating systems have a user interface (UI). This interface can take several
forms. One is a command-line interface (CLI), which uses text commands and a method for
entering them (say, a keyboard for typing in commands in a specific format with specific
options). Another is a batch interface, in which commands and directives to control those
commands are entered into files, and those files are executed. Most commonly, a graphical
user interface (GUI) is used. Here, the interface is a window system with a pointing device to
direct I/O, choose from menus, and make selections and a keyboard to enter text. Some
systems provide two or all three of these variations.

Mr. P R Sali 1 OSY (22516)


SNJB’s SHHJB Polytechnic, Chandwad

CH.2 Services & Components of OS

• Program execution.
The system must be able to load a program into memory and to run that program.
The program must be able to end its execution, either normally or abnormally (indicating
error).

• I/O operations.
A running program may require I/O, which may involve a file or an I/O device. For
specific devices, special functions may be desired (such as recording to a CD or DVD drive or
blanking a display screen). For efficiency and protection, users usually cannot control I/O
devices directly. Therefore, the operating system must provide a means to do I/O.

• File-system manipulation.
The file system is of particular interest. Obviously, programs need to read and write
files and directories. They also need to create and delete them by name, search for a given
file, and list file information. Finally, some operating systems include permissions
management to allow or deny access to files or directories based on file ownership. Many
operating systems provide a variety of file systems, sometimes to allow personal choice and
sometimes to provide specific features or performance characteristics.

 Communications.
There are many circumstances in which one process needs to exchange information
with another process. Such communication may occur between processes that are executing
on the same computer or between processes that are executing on different computer
systems tied together by a computer network. Communications may be implemented via
shared memory, in which two or more processes read and write to a shared section of
memory, or message passing, in which packets of information in predefined formats are
moved between processes by the operating system.

• Error detection.
The operating system needs to be detecting and correcting errors constantly. Errors
may occur in the CPU and memory hardware (such as a memory error or a power failure), in
I/O devices (such as a parity error on disk, a connection failure on a network, or lack of
paper in the printer), and in the user program (such as an arithmetic overflow, an attempt
to access an illegal memory location, or a too-great use of CPU time). For each type of error,
the operating system should take the appropriate action to ensure correct and consistent
computing. Sometimes, it has no choice but to halt the system. At other times, it might
terminate an error-causing process or return an error code to a process for the process to
detect and possibly correct.
Another set of operating system functions exists not for helping the user but rather for
ensuring the efficient operation of the system itself. Systems with multiple users can gain
efficiency by sharing the computer resources among the users.

Mr. P R Sali 2 OSY (22516)


SNJB’s SHHJB Polytechnic, Chandwad

CH.2 Services & Components of OS

• Resource allocation.
When there are multiple users or multiple jobs running at the same time, resources
must be allocated to each of them. The operating system manages many different types of
resources. Some (such as CPU cycles, main memory, and file storage) may have special
allocation code, whereas others (such as I/O devices) may have much more general request
and release code. For instance, in determining how best to use the CPU, operating systems
have CPU-scheduling routines that take into account the speed of the CPU, the jobs that
must be executed, the number of registers available, and other factors. There may also be
routines to allocate printers, USB storage drives, and other peripheral devices.
• Accounting.
We want to keep track of which users use how much and what kinds of computer
resources. This record keeping may be used for accounting (so that users can be billed) or
simply for accumulating usage statistics. Usage statistics may be a valuable tool for
researchers who wish to reconfigure the system to improve computing services.
• Protection and security.
The owners of information stored in a multiuser or networked computer system may
want to control use of that information. When several separate processes execute
concurrently, it should not be possible for one process to interfere with the others or with
the operating system itself. Protection involves ensuring that all access to system resources
is controlled. Security of the system from outsiders is also important. Such security starts
with requiring each user to authenticate

2.2 System Calls


System calls provide an interface to the services made available by an operating
system. These calls are generally available as routines written in C and C++, although certain
low-level tasks (for example, tasks where hardware must be accessed directly) may have to
be written using assembly-language instructions.
Before we discuss how an operating system makes system calls available, let’s first
use an example to illustrate how system calls are used: writing a simple program to read
data from one file and copy them to another file. The first input that the program will need
is the names of the two files: the input file and the output file. These names can be specified
in many ways, depending on the operating-system design. One approach is for the program
to ask the user for the names. In an interactive system, this approach will require a
sequence of system calls, first to write a prompting message on the screen and then to read
from the keyboard the characters that define the two files. On mouse-based and icon-based
systems, a menu of file names is usually displayed in a window. The user can then use the
mouse to select the source name, and a window can be opened for the destination name to
be specified. This sequence requires many I/O system calls.
Once the two file names have been obtained, the program must open the input file
and create the output file. Each of these operations requires another system call. Possible
error conditions for each operation can require additional system calls. When the program
tries to open the input file, for example, it may find that there is no file of that name or that
the file is protected against access. In these cases, the program should print a message on

Mr. P R Sali 3 OSY (22516)


SNJB’s SHHJB Polytechnic, Chandwad

CH.2 Services & Components of OS

the console (another sequence of system calls) and then terminate abnormally (another
system call). If the input file exists, then we must create a new output file. We may find that
there is already an output file with the same name. This situation may cause the program to
abort (a system call), or we may delete the existing file (another system call) and create a
new one (yet another system call). Another option, in an interactive system, is to ask the
user (via a sequence of system calls to output the prompting message and to read the
response from the terminal) whether to replace the existing file or to abort the program.
When both files are set up, we enter a loop that reads from the input file (a system
call) and writes to the output file (another system call). Each read and write must return
status information regarding various possible error conditions. On input, the program may
find that the end of the file has been reached or that there was a hardware failure in the
read (such as a parity error). The write operation may encounter various errors; depending
on the output device (for example, no more disk space).
Finally, after the entire file is copied, the program may close both files (another
system call), write a message to the console or window (more system calls), and finally
terminate normally (the final system call). This system-call sequence is shown in Figure 2.2.

Figure 2.2 Example of how system calls are used.

As you can see, even simple programs may make heavy use of the operating system.
Frequently, systems execute thousands of system calls per second. Most programmers
never see this level of detail, however. Typically, application developers design programs
according to an application programming interface (API). The API specifies a set of functions
that are available to an application programmer, including the parameters that are passed
to each function and the return values the programmer can expect. Three of the most
common APIs available to application programmers are the Windows API for Windows
systems, the POSIX API for POSIX-based systems (which include virtually all versions of UNIX,
Linux, and Mac OSX), and the Java API for programs that run on the Java virtual machine. A
Mr. P R Sali 4 OSY (22516)
SNJB’s SHHJB Polytechnic, Chandwad

CH.2 Services & Components of OS

programmer accesses an API via a library of code provided by the operating system. In the
case of UNIX and Linux for programs written in the C language, the library is called libc. Note
that—unless specified—the system-call names used throughout this text are generic
examples. Each operating system has its own name for each system call.
Behind the scenes, the functions that make up an API typically invoke the actual
system calls on behalf of the application programmer. For example, the Windows function
CreateProcess() (which unsurprisingly is used to create a new process) actually invokes the
NTCreateProcess() system call in the Windows kernel.
Why would an application programmer prefer programming according to an API
rather than invoking actual system calls? There are several reasons for doing so. One benefit
concerns program portability. An application programmer designing a program using an API
can expect her program to compile and run on any system that supports the same API
(although, in reality, architectural differences often make this more difficult than it may
appear). Furthermore, actual system calls can often be more detailed and difficult to work
with than the API available to an application programmer. Nevertheless, there often exists a
strong correlation between a function in the API and its associated system call within the
kernel. In fact, many of the POSIX and Windows APIs are similar to the native system calls
provided by the UNIX, Linux, and Windows operating systems.
For most programming languages, the run-time support system (a set of functions
built into libraries included with a compiler) provides a system call interface that serves as
the link to system calls made available by the operating system. The system-call interface
intercepts function calls in the API and invokes the necessary system calls within the
operating system. Typically, a number is associated with each system call, and the system-
call interface maintains a table indexed according to these numbers. The system call
interface then invokes the intended system call in the operating-system kernel and returns
the status of the system call and any return values.
The caller need know nothing about how the system call is implemented or what it does
during execution. Rather, the caller need only obey the API and understand what the
operating system will do as a result of the execution of that system call. Thus, most of the
details of the operating-system interface are hidden from the programmer by the API and
are managed by the run-time support library. The relationship between an API, the system-
call interface, and the operating system is shown in Figure 2.3, which illustrates how the
operating system handles a user application invoking the open() system call.

Mr. P R Sali 5 OSY (22516)


SNJB’s SHHJB Polytechnic, Chandwad

CH.2 Services & Components of OS

Figure 2.3 The handling of a user application invoking the open() system call.

System calls occur in different ways, depending on the computer in use. Often, more
information is required than simply the identity of the desired system call. The exact type
and amount of information vary according to the particular operating system and call. For
example, to get input, we may need to specify the file or device to use as the source, as well
as the address and length of the memory buffer into which the input should be read. Of
course, the device or file and length may be implicit in the call.

Three general methods are used to pass parameters to the operating system. The
simplest approach is to pass the parameters in registers. In some cases, however, there may
be more parameters than registers. In these cases, the parameters are generally stored in a
block, or table, in memory, and the address of the block is passed as a parameter in a
register (Figure 2.4).

Figure 2.4 Passing of parameters as a table.

This is the approach taken by Linux and Solaris. Parameters also can be placed, or
pushed, onto the stack by the program and popped off the stack by the operating system.

Mr. P R Sali 6 OSY (22516)


SNJB’s SHHJB Polytechnic, Chandwad

CH.2 Services & Components of OS

Some operating systems prefer the block or stack method because those approaches do not
limit the number or length of parameters being passed.

Types of System Calls


System calls can be grouped roughly into six major categories: process control, file
manipulation, device manipulation, information maintenance, communications, and
protection.

1 Process Control
A running program needs to be able to halt its execution either normally (end()) or
abnormally (abort()). If a system call is made to terminate the currently running program
abnormally, or if the program runs into a problem and causes an error trap, a dump of
memory is sometimes taken and an error message generated. The dump is written to disk
and may be examined by a debugger—a system program designed to aid the programmer in
finding and correcting errors, or bugs—to determine the cause of the problem. Under either
normal or abnormal circumstances, the operating system must transfer control to the
invoking command interpreter.

A process or job executing one program may want to load() and execute() another program.
This feature allows the command interpreter to execute a program as directed by, for
example, a user command, the click of a mouse, or a batch command. An interesting
question is where to return control when the loaded program terminates. This question is
related to whether the existing program is lost, saved, or allowed to continue execution
concurrently with the new program.

• Process control
◦ end, abort
◦ load, execute
◦ create process, terminate process
◦ get process attributes, set process attributes
◦ wait for time
◦ wait event, signal event
◦ allocate and free memory
• File management
◦ create file, delete file
◦ open, close
◦ read, write, reposition
◦ get file attributes, set file attributes
• Device management
◦ request device, release device
◦ read, write, reposition
◦ get device attributes, set device attributes
◦ logically attach or detach devices

Mr. P R Sali 7 OSY (22516)


SNJB’s SHHJB Polytechnic, Chandwad

CH.2 Services & Components of OS

• Information maintenance
◦ get time or date, set time or date
◦ get system data, set system data
◦ get process, file, or device attributes
◦ set process, file, or device attributes
• Communications
◦ create, delete communication connection
◦ send, receive messages
◦ transfer status information
◦ attach or detach remote devices

If control returns to the existing program when the new program terminates, we must save
the memory image of the existing program; thus, we have effectively created a mechanism
for one program to call another program. If both programs continue concurrently, we have
created a new job or process to be multiprogrammed. Often, there is a system call
specifically for this purpose (create process() or submit job()).

If we create a new job or process, or perhaps even a set of jobs or processes, we should be
able to control its execution. This control requires the ability to determine and reset the
attributes of a job or process, including the job’s priority, its maximum allowable execution
time, and so on (get process attributes() and set process attributes()).We may also want to
terminate a job or process that we created (terminate process()) if we find that it is
incorrect or is no longer needed.

File Management
We first need to be able to create() and delete() files. Either system call requires the name
of the file and perhaps some of the file’s attributes. Once the file is created, we need to
open() it and to use it. We may also read(), write(), or reposition() (rewind or skip to the end
of the file, for example).
Finally, we need to close() the file, indicating that we are no longer using it. We may need
these same sets of operations for directories if we have a directory structure for organizing
files in the file system. In addition, for either files or directories, we need to be able to
determine the values of various attributes and perhaps to reset them if necessary. File
attributes include the file name, file type, protection codes, accounting information, and so
on. At least two system calls, get file attributes() and set file attributes(), are required for
this function. Some operating systems provide many more calls, such as calls for file move()
and copy(). Others might provide an API that performs those operations using code and
other system calls, and others might provide system programs to perform those tasks. If the
system programs are callable by other programs, then each can be considered an API by
other system programs.

Mr. P R Sali 8 OSY (22516)


SNJB’s SHHJB Polytechnic, Chandwad

CH.2 Services & Components of OS

EXAMPLES OF WINDOWS AND UNIX SYSTEM CALLS

Device Management
A process may need several resources to execute main memory, disk drives, access to files,
and so on. If the resources are available, they can be granted, and control can be returned
to the user process. Otherwise, the process will have to wait until sufficient resources are
available. The various resources controlled by the operating system can be thought of as
devices. Some of these devices are physical devices (for example, disk drives), while others
can be thought of as abstract or virtual devices (for example, files).A system with multiple
users may require us to first request() a device, to ensure exclusive use of it. After we are
finished with the device, we release() it. These functions are similar to the open() and close()
system calls for files. Other operating systems allow unmanaged access to devices. Once the
device has been requested (and allocated to us), we can read(), write(), and (possibly)
reposition() the device, just as we can with files. In fact, the similarity between I/O devices
and files is so great that many operating systems, including UNIX, merge the two into a
combined file–device structure.
In this case, a set of system calls is used on both files and devices. Sometimes, I/O devices
are identified by special file names, directory placement, or file attributes.

Mr. P R Sali 9 OSY (22516)


SNJB’s SHHJB Polytechnic, Chandwad

CH.2 Services & Components of OS

The user interface can also make files and devices appear to be similar, even though the
underlying system calls are dissimilar. This is another example of the many design decisions
that go into building an operating system and user interface.

Information Maintenance
Many system calls exist simply for the purpose of transferring information between the user
program and the operating system. For example, most systems have a system call to return
the current time() and date(). Other system calls may return information about the system,
such as the number of current users, the version number of the operating system, the
amount of free memory or disk space, and so on.

In addition, the operating system keeps information about all its processes, and system calls
are used to access this information. Generally, calls are also used to reset the process
information (get process attributes() and set process attributes()

Communication
There are two common models of inter process communication: the message passing model
and the shared-memory model. In the message-passing model, the communicating
processes exchange messages with one another to transfer information. Messages can be
exchanged between the processes either directly or indirectly through a common mailbox.
Before communication can take place, a connection must be opened. The name of the other
communicator must be known, be it another process on the same system or a process on
another computer connected by a communications network. Each computer in a network
has a host name by which it is commonly known. A host also has a network identifier, such
as an IP address. Similarly, each process has a process name, and this name is translated
into an identifier by which the operating system can refer to the process. The get hostid()
and get processid() system calls do this translation. The identifiers are then passed to the
general purpose open() and close() calls provided by the file system or to specific open
connection() and close connection() system calls, depending on the system’s model of
communication. The recipient process usually must give its permission for communication
to take place with an accept connection() call. Most processes that will be receiving
connections are special-purpose daemons, which are system programs provided for that
purpose. They execute a wait for connection() call and are awakened when a connection is
made.
The source of the communication, known as the client, and the receiving daemon, known as
a server, then exchange messages by using read message() and write message() system
calls. The close connection() call terminates the communication. In the shared-memory
model, processes use shared memory create() and shared memory attach() system calls to
create and gain access to regions of memory owned by other processes.

Mr. P R Sali 10 OSY (22516)


SNJB’s SHHJB Polytechnic, Chandwad

CH.2 Services & Components of OS

Protection
Protection provides a mechanism for controlling access to the resources provided by a
computer system. Historically, protection was a concern only on multiprogrammed
computer systems with several users. However, with the advent of networking and the
Internet, all computer systems, from servers to mobile handheld devices, must be
concerned with protection.
Typically, system calls providing protection include set permission() and get permission(),
which manipulate the permission settings of resources such as files and disks. The allow
user() and deny user() system calls specify whether particular users can—or cannot—be
allowed access to certain resources.

2.3 Components of OS
The main components of an operating system are as follows:
1. Process Management
2. Memory Management
3. Secondary Storage Management
4. I/O Management
5. File Management
6. Protection
7. Networking Management
8. Command Interpretation.

1 Process Management
The CPU executes a large number of programs. While its main concern is the execution of
user programs, the CPU is also needed for other system activities. These activities are called
processes. A process is a program in execution. Typically, a batch job is a process. A time-
shared user program is a process. A system task, such as spooling, is also a process. For now,
a process may be considered as a job or a time- shared program, but the concept is actually
more general.
The operating system is responsible for the following activities in connection with processes
management:
1. The creation and deletion of both user and system processes
2. The suspension and resumption of processes.
3. The provision of mechanisms for process synchronization
4. The provision of mechanisms for deadlock handling.
More details can be studied in the Unit-3 of this course.

2 Memory Management
Memory is the most expensive part in the computer system. Memory is a large array of
words or bytes, each with its own address. Interaction is achieved through a sequence of
reads or writes of specific memory address. The CPU fetches from and stores in memory.

Mr. P R Sali 11 OSY (22516)


SNJB’s SHHJB Polytechnic, Chandwad

CH.2 Services & Components of OS

There are various algorithms that depend on the particular situation to manage the
memory. Selection of a memory management scheme for a specific system depends upon
many factors, but especially upon the hardware design of the system. Each algorithm
requires its own hardware support.
The operating system is responsible for the following activities in connection with memory
management.
1. Keep track of which parts of memory are currently being used and by whom.
2. Decide which processes are to be loaded into memory when memory space becomes
available.
3. Allocate and deallocate memory space as needed.
Memory management techniques will be discussed in great detail in Unit 3.

3 Secondary Storage Management


The main purpose of a computer system is to execute programs. These programs, together
with the data they access, must be in main memory during execution. Since the main
memory is too small to permanently accommodate all data and program, the computer
system must provide secondary storage to backup main memory. Most modem computer
systems use disks as the primary on-line storage of information, of both programs and data.
Most programs, like compilers, assemblers, sort routines, editors, formatters, and so on, are
stored on the disk until loaded into memory, and then use the disk as both the source and
destination of their processing. Hence the proper management of disk storage is of central
importance to a computer system.
There are few alternatives. Magnetic tape systems are generally too slow. In addition, they
are limited to sequential access. Thus tapes are more suited for storing infrequently used
files, where speed is not a primary concern.
The operating system is responsible for the following activities in connection with disk
management:
1. Free space management
2. Storage allocation
3. Disk scheduling.
More details can be studied in Unit-5 of this course.

4 I/O Management
One of the purposes of an operating system is to hide the peculiarities or specific hardware
devices from the user. For example, in UNIX, the peculiarities of I/O devices are hidden from
the bulk of the operating system itself by the I/O system. The operating system is
responsible for the following activities in connection to I/O management:
1. A buffer caching system
2. To activate a general device driver code
3. To run the driver software for specific hardware devices as and when required.

Mr. P R Sali 12 OSY (22516)


SNJB’s SHHJB Polytechnic, Chandwad

CH.2 Services & Components of OS

5 File Management
File management is one of the most visible services of an operating system.
Computers can store information in several different physical forms: magnetic tape, disk,
and drum are the most common forms. Each of these devices has its own characteristics
and physical organization.
For convenient use of the computer system, the operating system provides a uniform logical
view of information storage. The operating system abstracts from the physical properties of
its storage devices to define a logical storage unit, the file. Files are mapped, by the
operating system, onto physical devices.
A file is a collection of related information defined by its creator. Commonly, files represent
programs (both source and object forms) and data. Data files may be numeric, alphabetic or
alphanumeric. Files may be free-form, such as text files, or may be rigidly formatted. In
general a file is a sequence of bits, bytes, lines or records whose meaning is defined by its
creator and user. It is a very general concept.
The operating system implements the abstract concept of the file by managing mass storage
device, such as types and disks. Also files are normally organized into directories to ease
their use. Finally, when multiple users have access to files, it may be desirable to control by
whom and in what ways files may be accessed.
The operating system is responsible for the following activities in connection to the file
management:
1. The creation and deletion of files.
2. The creation and deletion of directory.
3. The support of primitives for manipulating files and directories.
4. The mapping of files onto disk storage.
5. Backup of files on stable (non volatile) storage.
6. Protection and security of the files.

6 Protection
The various processes in an operating system must be protected from each other’s
activities. For that purpose, various mechanisms which can be used to ensure that the files,
memory segment, CPU and other resources can be operated on only by those processes
that have gained proper authorization from the operating system.
For example, memory addressing hardware ensures that a process can only execute within
its own address space. The timer ensures that no process can gain control of the CPU
without relinquishing it. Finally, no process is allowed to do its own I/O, to protect the
integrity of the various peripheral devices. Protection refers to a mechanism for controlling
the access of programs, processes, or users to the resources defined by a computer controls
to be imposed, together with some means of enforcement.
Protection can improve reliability by detecting latent errors at the interfaces between
component subsystems. Early detection of interface errors can often prevent contamination
of a healthy subsystem by a subsystem that is malfunctioning. An unprotected resource
cannot defend against use (or misuse) by an unauthorized or incompetent user.

Mr. P R Sali 13 OSY (22516)


SNJB’s SHHJB Polytechnic, Chandwad

CH.2 Services & Components of OS

7 Networking
A distributed system is a collection of processors that do not share memory or a clock.
Instead, each processor has its own local memory, and the processors communicate with
each other through various communication lines, such as high speed buses or telephone
lines. Distributed systems vary in size and function. They may involve microprocessors,
workstations, minicomputers, and large general purpose computer systems.
The processors in the system are connected through a communication network, which can
be configured in the number of different ways. The network may be fully or partially
connected. The communication network design must consider routing and connection
strategies and the problems of connection and security.
A distributed system provides the user with access to the various resources the system
maintains. Access to a shared resource allows computation speed-up, data availability, and
reliability.

8 Command Interpretation
One of the most important components of an operating system is its command interpreter.
The command interpreter is the primary interface between the user and the rest of the
system.
Many commands are given to the operating system by control statements. When a new job
is started in a batch system or when a user logs-in to a time-shared system, a program
which reads and interprets control statements is automatically executed. This program is
variously called (1) the control card interpreter, (2) the command line interpreter, (3) the
shell (in Unix), and so on. Its function is quite simple: get the next command statement, and
execute it.
The command statements themselves deal with process management, I/O handling,
secondary storage management, main memory management, file system access, protection,
and networking.
Figure depicts the role of the operating system in coordinating all the functions.

Mr. P R Sali 14 OSY (22516)


SNJB’s SHHJB Polytechnic, Chandwad

CH.2 Services & Components of OS

2.4 Use of Operating System Tools:


Operating system is the mode in the computer that turns the machine to a user enabled
service. A brief knowhow of the OS tools makes the user easy and comfortable while using
it. Plus, he would know that he is not taking some wrong step and he would have knowledge
of what is going to happen next. Here are some of the overview that how the operating
systems actually work;

Administrative
Here are the factors which affect the administrative performance of the user and one must
know about them to get some good access.
1. Computer management

Computer management option can be found within the control panel of any computer
system. One may go to the control panel from the start menu. Within the control panel
there is Administrative toll. One of the administrative tools is computer management. On
the computer management window, one may find there are three panes. The left pane will
show some functions, and when one chooses a function from the left pane, the details of
the pane will be available at the pane at the centre, where as the right section will show the
series of action that can be taken. There is Task Scheduler within the system tools, and even
the windows event viewer can be also accessed from the computer management list. One
can also start defragmentation of the disk and disk spaces from here. And in the
performance sector, one can see how the system is performing and that can be observed
for a long period also.

2. Device manager

Device Management is another important function of the operating system. Device


management is responsible for managing all the hardware devices of the computer system.
It may also include the management of the storage device as well as the management of all
the input and output devices of the computer system. It is the responsibility of the
operating system to keep track of the status of all the devices in the computer system. The
status of any computing devices, internal or external may be either free or busy. If a device
requested by a process is free at a specific instant of time, the operating system allocates it
to the process.

An operating system manages the devices in a computer system with the help of device
controllers and device drivers. Each device in the computer system is equipped with the
help of device controller. For example, the various devices controllers in a computer system
may be disk controller, printer controller, tape-drive controller and memory controller. All
these devices controllers are connected with each other through a system bus. The device
controllers are actually the hardware components that contain some buffers registers to
store the data temporarily. The transfer of data between a running process and the various
devices of the computer system is accomplished only through these devices controllers.

Mr. P R Sali 15 OSY (22516)


SNJB’s SHHJB Polytechnic, Chandwad

CH.2 Services & Components of OS

Some important points of device management

1. An operating system communicates with the devices controllers with the help of device
drivers while allocating the device to the various processes running on the computer
system.
2. Device drivers are the software programs that are used by an operating system to
control the functioning of various devices in a uniform manner.
3. The device drivers may also be regarded as the system software programs acting as an
intermediary between the processes and the devices controllers.
4. The device controller used in the device management operation usually includes three
different registers command, status, and data.
5. The other major responsibility of the device management function is to implement the
Application Programming Interface (API).

When an external hardware is connected to the computer, then the device will be shown at
the Device manager tray or administrative window. The hardware may be of various types,
like the printers, the USB ported devices like pen drive, a Tablet or a mobile, a Mouse and a
Keyboard or even a camera. Most of the time the computer detects the driver of the device
and installation of the driver is done instantly and automatically. However, there are many
devices which are to be installed separately, like the modems or a networking device. And
sometimes the device is to be added manually, from the add device option in the device
manager tool. Once the device is shown at the device manager window, then the device can
be configured or even troubleshooting of the device is also applicable. One can go to the
device manager pane from the tools directly or even can go there via the control panel. At
the category view in the control panel, one can find three options to go to the Device
manager window. The options are 'view devices and printers', 'add a device' and 'adjust
commonly used mobility settings'.

3. Users and groups


One can easily go to the Users and groups pane from the tools. He or she has to go to the
control panel and there one may find the tab, 'user accounts'. There a User account can be
created and the profile picture or password can be managed easily. One can even have
numerous user accounts enabled to operate at different mode in the computer. Even one
can be given an access to the computer by making the guest account enabled in a password
protected computer. One user cannot see or access the files or settings of another user until
he or she is set as administrator. One administrator alone can have the access to view or
manage all other user's details. There is yet another option in Users and groups to function
at the same time. The option is the group profile, where there will be a group id and a group
password, which can be accessed by the entire group.

Mr. P R Sali 16 OSY (22516)


SNJB’s SHHJB Polytechnic, Chandwad

CH.2 Services & Components of OS

4. Local security policy


This is a feature for large corporate and is in the ultimate version of the Windows Operating
System. This feature will not be seen in the home computers. One can find the local security
under the Administrative tools, which one may get access from the control panel. This
option allows the administrator to provide access or deny access to some users to some
drive or software on those drives. Thus the changes in those software or drives will not be
possible for them, whom the access to change or configure it is given by the administrator.
By this end user policy one administrator can allow or disallow any user on those computers
to get an access over few websites or not. By these the users can also be restricted to surf
freely at their work place as most of the irrelevant website; basically the irrelevant websites
to the job will not be opened from there.

5. Performance monitor
It is the option to actually monitor how the CPU is performing. One can go there from the
control panel or another easy way to reach there is by pressing sticky keys on the key
boards. One can press Ctrl, Alt and Del at the same time, to find the option of Start Task
Manager. User can go to the fourth tab under performance and there they can find two
graphs. One is showing the CPU Usage and the other showing Memory. One may find that
all the data are changing there randomly, which implicit the fact that those are the live
records of the usage and memory. One may find there in the small window a button called
Resource Monitor. By clicking there, a new larger window will open where there will be four
continuously running meters. The meters are of the CPU, Memory, Network and Disk. Thus
all the records are placed in front one's eye and thus making the performance monitoring
easy.

Mr. P R Sali 17 OSY (22516)

You might also like