Unit - II Operating System Concepts
Unit - II Operating System Concepts
FUNDAMENTAL OF INFORMATION
TECHNOLOGY
BCA 104
UNIT – II
OPERATING SYSTEM
CONCEPTS
The Operating System provides a user with an interface that makes any
application attractive and user-friendly. The operating System comes with a
large number of device drivers that make OS services reachable to the hardware
environment. Each and every application present in the system requires the
Operating System.
The operating system works as a communication channel between system
hardware and system software. The operating system helps an application with
the hardware part without knowing about the actual hardware configuration. It
is one of the most important parts of the system and hence it is present in every
device, whether large or small device.
1
Page
Job Accounting: It keeps track of time and resources used by various jobs
or users.
File Management: The operating system is responsible for organizing and
managing the file system, including the creation, deletion, and
manipulation of files and directories.
Device Management: The operating system manages input/output
devices such as printers, keyboards, mice, and displays. It provides the
necessary drivers and interfaces to enable communication between the
devices and the computer.
Networking: The operating system provides networking capabilities such
as establishing and managing network connections, handling network
protocols, and sharing resources such as printers and files over a network.
User Interface: The operating system provides a user interface that
enables users to interact with the computer system. This can be a
Graphical User Interface (GUI), a Command-Line Interface (CLI), or a
combination of both.
Backup and Recovery: The operating system provides mechanisms for
backing up data and recovering it in case of system failures, errors, or
disasters.
Virtualization: The operating system provides virtualization capabilities
that allow multiple operating systems or applications to run on a single
physical machine. This can enable efficient use of resources and flexibility
in managing workloads.
Performance Monitoring: The operating system provides tools for
monitoring and optimizing system performance, including identifying
bottlenecks, optimizing resource usage, and analyzing system logs and
metrics.
Time-Sharing: The operating system enables multiple users to share a
computer system and its resources simultaneously by providing time-
sharing mechanisms that allocate resources fairly and efficiently.
System Calls: The operating system provides a set of system calls that
enable applications to interact with the operating system and access its
resources. System calls provide a standardized interface between
applications and the operating system, enabling portability and
3
1. Process Management
2. I/O Device Management
3. File Management
4. Network Management
4
Process Management
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. These directories may contain files and other
directories and so on.
6
Page
Network administration
Network maintenance
Network operation
Network provisioning
Network security
Main Memory Management
Memory is a large array of words or bytes, each with its own address. It is a
repository of quickly accessible data shared by the CPU and I/O devices.
Main memory is a volatile storage device which means it loses its contents in
the case of system failure or as soon as system power goes down.
7
Page
Keep track of which parts of memory are currently being used and by
whom.
Decide which processes to load when memory space becomes available.
Allocate and deallocate memory space as needed.
Secondary Storage Management
Most modern computer systems use disks as the principle on-line storage
medium, for 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.
Security Management
The operating system is primarily responsible for all task and activities happen
in the computer system. The various processes in an operating system must be
protected from each other’s activities. For that purpose, various mechanisms
8
which can be used to ensure that the files, memory segment, cpu and other
Page
resources can be operated on only by those processes that have gained proper
authorization from the operating system.
For example, memory addressing hardware ensure that a process can only
execute within its own address space. The timer ensure 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.
It is sometimes costly.
The other jobs will have to wait for an unknown time if any job fails.
10
In batch operating system the processing time for jobs is commonly difficult
Page
Multiprogramming
Advantages of Multi-Programming Operating System
Multi Programming increases the Throughput of the System.
system.
As it has several processors, so, if one processor fails, we can proceed with
another processor.
Disadvantages of Multi-Processing Operating System
Due to the multiple CPU, it can be more complex and somehow difficult to
understand.
Operating System.
It comes with proper memory management.
Time-Sharing OS
ER. ABHISHEK MISHRA
BCA DEPARTMENT, MARIAHU P.G. COLLEGE,
MARIAHU, JAUNUR
BCA-104 Fundamental Of Information Technology
UNIT-II Operating System Concepts
Advantages of Time-Sharing OS
Each task gets an equal opportunity.
thereby reducing the waiting time for their turn to use the computer. This
increased productivity translates to more work getting done in less time.
Improved User Experience: Time-sharing provides an interactive
One must have to take care of the security and integrity of user programs
and data.
Data communication problem.
operating systems due to the need for scheduling, context switching, and
other overheads that come with supporting multiple users.
Complexity: Time-sharing systems are complex and require advanced
was first introduced in the 1960s by IBM for the IBM System/360
Page
Distributed OS
Advantages of Distributed Operating System
Failure of one will not affect the other network communication, as all
Since resources are being shared, computation is highly fast and durable.
the network.
Delay in data processing reduces.
These types of systems are not readily available as they are very expensive.
Not only that the underlying software is highly complex and not understood
well yet.
Examples of Distributed Operating Systems are LOCUS, etc.
Issues with Distributed Operating Systems
Networking causes delays in the transfer of data between nodes of a
over public networks and pass through computer systems that are not
controlled by the distributed operating system. An intruder may exploit this
feature to tamper with messages, or create fake messages to fool the
authentication procedure and masquerade as a user of the system.
7. Network Operating System
These systems run on a server and provide the capability to manage data, users,
groups, security, applications, and other networking functions. These types of
operating systems allow shared access to files, printers, security, applications,
and other networking functions over a small private network. One more
important aspect of Network Operating Systems is that all the users are well
aware of the underlying configuration, of all other users within the network,
their individual connections, etc. and that’s why these computers are popularly
16
New technologies and hardware up-gradation are easily integrated into the
system.
Server access is possible remotely from different locations and types of
systems.
Hard Real-Time Systems: Hard Real-Time OSs are meant for applications
where time constraints are very strict and even the shortest possible delay
Page
is not acceptable. These systems are built for saving life like automatic
parachutes or airbags which are required to be readily available in case of
an accident. Virtual memory is rarely found in these systems.
Soft Real-Time Systems: These OSs are for applications where time-
constraint is less strict.
systems.
Disadvantages of RTOS
Limited Tasks: Very few tasks run at the same time and their concentration
18
Use heavy system resources: Sometimes the system resources are not so
good and they are expensive as well.
Complex Algorithms: The algorithms are very complex and difficult for the
Definition
Attributes
Directories have several attributes that distinguish them from files. One of the
key attributes of a directory is that it can contain other directories and files.
This hierarchical structure allows for better organization of data. Directories
also have permissions associated with them, which control who can access,
modify, or delete the contents within them.
Files, on the other hand, are typically smaller units of data that are stored
within directories. They can have different file extensions, which indicate the
type of data they contain. Files also have permissions that determine who can
read, write, or execute them. Additionally, files can be opened, edited, and
saved by various applications.
Manipulation
When it comes to accessing directories and files, users can navigate through
directories to find specific files or create new directories. Files can be opened
using the appropriate application, edited, and saved back to the original
location. Both directories and files can be searched for using keywords or
filters to locate specific data.
Storage
Directories and files are stored on various storage devices, such as hard drives,
solid-state drives, and cloud storage. Directories are used to organize files
within a file system, making it easier to locate and manage data. Files are
stored within directories and can be accessed by navigating through the
directory structure.
20
Page
File
Representation
File should be represented in address bar along with path of the file, filename
and extension.
Root Directory
Root Directory is created when we start formatting the disk and start putting
files on it. In this, we can create new directories called "sub-directories". Root
directory is the highest level directory and is seen when booting a system.
Subdirectory
Subdirectory is a directory inside root directory, in turn, it can have another sub-
directory in it.
Later, computers were able to store instructions loaded into the computer's
memory using punch cards and then, after that, magnetic tapes. Computer
memory space was limited, and when the instructions to control a computer
were moved onto a disk drive, such as a floppy disk or internal HDD, it was
considered cutting-edge technology.
1. The read-only memory (ROM) bootstrap loader reads the Master Boot
23
2. The boot record loads the disk operating system into memory, and it takes
control of the machine.
3. The computer transfers data stored on a magnetic disk to its main
memory, the random access memory.
4. It also transfers data to external devices attached to the computer, such
as a computer screen or printer.
5. The computer provides various application programming interfaces for
programs like character input/output (I/O), memory management,
program loading and termination, as well as handling input from the user
through a keyboard.
6. The OS also provides file management that organizes, reads and writes
files on storage. The files are organized in a hierarchical structure of
directories, subdirectories and files.
A disk operating system doesn't have a graphical user interface (GUI). Its
interface is character-based, so users must type commands in the command line
to indicate what actions they want.
command-line interface.
Page
DOS features
Among the features and limitations of disk operating systems are the following.
Command-line interface (CLI). It does not have a GUI and doesn't accept
mouse inputs. It is a character-based interface system where all
commands are entered in text at the command-line prompt.
Management. A disk operating system can manage a computer's files, I/O
system and its memory.
Limitations
The first version of Windows, released in 1985, was simply a GUI offered as
an extension of Microsoft’s existing disk operating system, or MS-DOS. Based in
part on licensed concepts that Apple Inc. had used for its Macintosh System
Software, Windows for the first time allowed DOS users to visually navigate a
virtual desktop, opening graphical “windows” displaying the contents of
25
Page
electronic folders and files with the click of a mouse button, rather than typing
commands and directory paths at a text prompt.
Windows 95
Windows XP
Windows Vista
Windows 7
Windows 8
Windows 10
Windows 11
a grid and the ability to synchronize settings so users could log on to another
Page
The same year that Windows 10 was released, a developer at the Microsoft
Ignite conference offhandedly announced that Windows 10 would be the “last”
version of Windows. However, Microsoft later clarified that the company would
regularly update the OS but that there would be no more large-scale revisions.
Windows 11 has encountered resistance from those who had been using
Windows 10, and the majority of Windows users continue to use the prior OS.
Users are especially critical of the newly redesigned start menu, which features
less flexible options than the previous OS and lacks the older version’s “live tiles”
feature, which pulled information and news in real time from the Internet. The
feature was replaced by a widgets dashboard separate from the start menu.
Additionally, the task bar in Windows 11 is centered at the bottom of the
computer screen, although it can be aligned to the bottom left
(its default position in Windows 10). Many users thought that this limited the
flexibility of the OS and chose not to upgrade. Windows 11 also requires PCs to
run on a 64-bit processor, so users with 32-bit processors cannot use the new
OS unless they purchase a new computer.
27
Page
28
Page
Multi-user: UNIX operating system supports more than one user to access
computer resources like main memory, hard disk, tape drives, etc. Multiple
users can log on to the system from different terminals and run different jobs
that share the resources of a command terminal. It deals with the principle of
time-sharing. Time-sharing is done by a scheduler that divides the CPU time into
several segments also called a time slice, and each segment is assigned to each
user on a scheduled basis. This time slice is tiny. When this time is expired, it
passes control to the following user on the system. Each user executes their set
of instructions within their time slice.
Portability: This feature makes the UNIX work on different machines and
platforms with the easy transfer of code to any computer system. Since a
significant portion of UNIX is written in C language, and only a tiny portion is
coded in assembly language for specific hardware.
File Security and Protection: Being a multi-user system, UNIX makes special
consideration for file and system security. UNIX has different levels of security
using assigning username and password to individual users ensuring the
authentication, at the level providing file access permission viz. read, write and
execute and lastly file encryption to change the file into an unreadable format.
Accounting: UNIX keeps an account of jobs created by the user. This feature
enhances the system performance in terms of CPU monitoring and disk space
checking. It allows you to keep an account of disk space used by each user, and
the disk space can be limited by each other. You can assign every user a different
disk quota. The root user can perform these accounting tasks using various
commands such as quota, df, du, etc.
UNIX Tools and Utilities: UNIX system provides various types of tools and
utilities facilities such as UNIX grep, sed and awk, etc. Some of the general-
purpose tools are compilers, interpreters, network applications, etc. It also
includes various server programs which provide remote and administration
services.
While working with UNIX OS, several layers of this system provide interaction
between the pc hardware and the user. Following is the description of each and
every layer structure in UNIX system:
Layer-1: Hardware -
30
Layer-2: Kernel -
The core of the operating system that's liable for maintaining the full
functionality is named the kernel. The kernel of UNIX runs on the particular
machine hardware and interacts with the hardware effectively.
It also works as a device manager and performs valuable functions for the
processes which require access to the peripheral devices connected to the
computer. The kernel controls these devices through device drivers.
The kernel also manages the memory. Processes are executed programs that
have owner's humans or systems who initiate their execution.
The system must provide all processes with access to an adequate amount of
memory, and a few processes require a lot of it. To make effective use of main
31
It also keeps a history of the list of the commands you have typed in. If you need
to repeat a command you typed it, use the cursor keys to scroll up and down the
list or type history for a list of previous commands. There are various commands
like cat, mv, cat, grep, id, wc, and many more.
o Bourne Shell: This Shell is simply called the Shell. It was the first Shell for
UNIX OS. It is still the most widely available Shell on a UNIX system.
o C Shell: The C shell is another popular shell commonly available on a UNIX
system. The C shell was developed by the University of California at
32
o Korn Shell: This Shell was created by David Korn to address the Bourne
Shell's user-interaction issues and to deal with the shortcomings of the C
shell's scripting quirks.
Layer-4: Application Programs Layer -
It is the outermost layer that executes the given external applications. UNIX
distributions typically come with several useful applications programs as
standard. For Example: emacs editor, StarOffice, xv image viewer, g++ compiler
etc.
33
Page