Chapter 2: Operating-System
Structures
Mr. C. P. Divate
Chapter 2: Operating-System Structures
2.2
● Operating System Services
● User Operating System Interface
● System Calls
● Types of System Calls
● System Programs
● Operating System Design and Implementation
● Operating System Structure
● Operating System Debugging
● Operating System Generation
● System Boot
Operating System Services
2.3
● User interface
● Program Execution
● I/O Operations
● File System manipulation
● Communications
● Error detection
● Resource Allocation
● Accounting
● Protection and Security
Operating System Services
2.4
● Operating systems provide an environment for execution of programs
and services to programs and users
● 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).
4 Varies between Command-Line (CLI), Graphics User
Interface (GUI), Batch
● Program execution - The system must be able to load a
program into memory and to run that program, end execution,
either normally or abnormally (indicating error)
● I/Ooperations - A running program may require I/O, which may
involve a file or an I/O device
Operating System Services (Cont.)
2.5
● One set of operating-system services provides functions that are helpful to
the user (Cont.):
● File-system manipulation - The file system is of particular interest.
Programs need to read and write files and directories, create and delete
them, search them, list file Information, permission management.
● Communications – Processes may exchange information, on the same
computer or between computers over a network
4 Communications may be via shared memory or through message
passing (packets moved by the OS)
● Error detection – OS needs to be constantly aware of possible errors
4 May occur in the CPU and memory hardware, in I/O devices, in user
program
4 For each type of error, OS should take the appropriate action to
ensure correct and consistent computing
4 Debugging facilities can greatly enhance the user’s and
programmer’s abilities to efficiently use the system
Operating System Services (Cont.)
2.6
● Another set of OS functions exists for ensuring the efficient operation of the
system itself via resource sharing
● Resource allocation - When multiple users or multiple jobs running
concurrently, resources must be allocated to each of them
4 Many types of resources - CPU cycles, main memory, file storage,
I/O devices.
● Accounting - To keep track of which users use how much and what
kinds of computer resources
● Protection and security - The owners of information stored in a
multiuser or networked computer system may want to control use of
that information, concurrent processes should not interfere with each
other
4 Protection involves ensuring that all access to system resources is
controlled
4 Security of the system from outsiders requires user authentication,
extends to defending external I/O devices from invalid access
attempts
A View of Operating System Services
2.7
User Operating System Interface - CLI
2.8
CLI or command interpreter allows direct command entry
● Sometimes implemented in kernel, sometimes by systems program
● Sometimes multiple flavors implemented – shells
● Primarily fetches a command from user and executes it
● Sometimes commands built-in, sometimes just names of programs
User Operating System Interface - GUI
2.9
● User-friendly desktop metaphor interface
● Usually mouse, keyboard, and monitor
● Icons represent files, programs, actions, etc
● Various mouse buttons over objects in the interface cause various actions
(provide information, options, execute function, open directory (known as a
folder)
● Many systems now include both CLI and GUI interfaces
● Microsoft Windows is GUI with CLI “command” shell
● Apple Mac OS X is “Aqua” GUI interface with UNIX kernel underneath
and shells available
● Unix and Linux have CLI with optional GUI interfaces (CDE, KDE, GNOME)
Touchscreen Interfaces
2.10
● Touchscreen devices require new
interfaces
● Mouse not possible or not desired
● Actions and selection based on
gestures
● Virtual keyboard for text entry
● Voice commands.
Layers of Abstraction
Operating System Mode
 The User Mode is concerned with the
actual interface between the user and the
system.
 It controls things like running applications
and accessing files.
 The Kernel Mode is concerned with everything
running in the background.
 It controls things like accessing system
resources, controlling hardware functions and
processing program instructions.
 System calls are used to change mode
from User to Kernel.
Kernel
Kernel is a software code that reside in central core of OS. It has complete
control over system.
When operation system boots, kernel is first part of OS to load in main memory.
Kernel remains in main memory for entire duration of computer session. The
kernel code is usually loaded in to protected area of memory.
Kernel performs it’s task like executing processes and handling interrupts in
kernel space.
User performs it’s task in user area of memory.
 This memory separation is made in order to prevent user data and kernel data
from interfering with each other.
 Kernel does not interact directly with user, but it interacts using SHELL and other
programs and hardware.
Kernel cont…
Kernel includes:-
1. Scheduler: It allocates the Kernel’s processing time to various
processes.
2. Supervisor: It grants permission to use computer system resources to
each process.
3. Interrupt handler : It handles all requests from the various hardware
devices which compete for kernel services.
4. Memory manager : allocates space in memory for all users of kernel
service.
kernel provides services for process management, file management,
I/O management, memory management.
System calls are used to provide these type of services.
System Call
System call is the programmatic way in which a computer program/user
application requests a service from the kernel of the operating system on
which it is executed.
Application program is just a user-process. Due to security reasons , user
applications are not given access to privileged resources(the ones controlled
by OS).
When they need to do any I/O or have some more memory or
spawn a process or wait for signal/interrupt, it requests operating
system to facilitate all these. This request is made through System
Call.
System calls are also called software-interrupts.
System Calls
How System Call Works?
Step 1) The processes executed in the user mode till the time a system call interrupts it.
Step 2) After that, the system call is executed in the kernel-mode on a priority basis.
Step 3) Once system call execution is over, control returns to the user mode.,
Step 4) The execution of user processes resumed in Kernel mode.
Why do you need System Calls in OS?
Following are situations which need system calls in OS:
 Reading and writing from files demand system calls.
 If a file system wants to create or delete files, system calls are required.
 System calls are used for the creation and management of new processes.
 Network connections need system calls for sending and receiving packets.
 Access to hardware devices like scanner, printer, need a system call.
I/O and File manipulation
Examples of I/O and file system calls
Types of System calls
2.21
● Process control
● File management
● Device management
● Information maintenance
● Communications
Process control
2.22
 End and Abort
 Load and Execute
 Create Process and Terminate Process
 Wait and Signal Event
 Allocate and free memory
File management
2.23
 Create a file
 Delete file
 Open and close file
 Read, write, and reposition
 Get and set file attributes
Device management
2.24
 Request and release device
 Logically attach/ detach devices
 Get and Set device attributes
communications
2.25
Communications : Message passing , shared memory
● Create delete communication connection
● Send , receive messages
● Transfer status information
Information maintenance
2.26
● Get time or date , set time or date
● Get system data , set system data
● Get process
● Set process
Important System Calls Used in OS
for process control
wait()
In some systems, a process needs to wait for another process to complete its
execution. This type of situation occurs when a parent process creates a child
process, and the execution of the parent process remains suspended until its child
process executes.
The suspension of the parent process automatically occurs with a wait() system call.
When the child process ends execution, the control moves back to the parent process.
fork()
Processes use this system call to create processes that are a copy of themselves.
With the help of this system Call parent process creates a child process, and the
execution of the parent process will be suspended till the child process executes.
exec()
This system call runs when an executable file in the context of an already running
process that replaces the older executable file. However, the original process identifier
remains as a new process is not built, but stack, data, head, data, etc. are replaced by
the new process.
Important System Calls Used in OS
for process control
kill():
The kill() system call is used by OS to send a termination signal to a process that
urges the process to exit. However, a kill system call does not necessarily mean killing
the process and can have various meanings.
exit():
The exit() system call is used to terminate program execution. Specially in the multi-
threaded environment, this call defines that the thread execution is complete. The OS
reclaims resources that were used by the process after the use of exit() system call.
Summary system calls:
Categories Windows Unix
Process control
CreateProcess()
ExitProcess()
WaitForSingleObject()
fork()
exit()
wait()
Device manipulation
SetConsoleMode()
ReadConsole()
WriteConsole()
loctl()
read()
write()
File manipulation
CreateFile()
ReadFile()
WriteFile()
CloseHandle()
Open()
Read()
write()
close()
Summary system calls:
Categories Windows Unix
Communication
CreatePipe()
CreateFileMapping()
MapViewOfFile()
Pipe()
shm_open()
mmap()
Protection
SetFileSecurity()
InitlializeSecurityDescriptor()
SetSecurityDescriptorGroup ()
Chmod()
Umask()
Chown()
Components / Functions of Operating System
1. Process Management
 A process is a program in execution.
 A process needs certain resources, including CPU time,
memory, files, and I/O devices to accomplish its task.
 Simultaneous execution leads to multiple processes. Hence
creation, execution and termination of a process are the
most basic functionality of an OS
 If processes are dependent, than they may try to share
same resources. thus task of process synchronization
comes to the picture.
 If processes are independent, than a due care needs to be
taken to avoid their overlapping in memory area.
 Based on priority, it is important to allow more important
processes to execute first than others.
Process management
Process management
Process management
2. Memory management
2. 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. When the computer made turn
off everything stored in RAM will be erased automatically.
In addition to the physical RAM installed in your computer, most modern
operating systems allow your computer to use a virtual memory system.
Virtual memory allows your computer to use part of a permanent storage
device (such as a hard disk) as extra memory.
The operating system is responsible for the following activities in
connections with memory management:
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 de-allocate memory space as needed.
2. Memory management
2. Memory management
2. Memory management: Paging
 In Operating Systems, Paging is a storage mechanism used to
retrieve processes from the secondary storage into the main
memory in the form of pages.
 The main idea behind the paging is to divide each process in the
form of pages. The main memory will also be divided in the form
of frames.
 One page of the process is to be stored in one of the frames of the
memory. The pages can be stored at the different locations of the
memory but the priority is always to find the contiguous frames
or holes.
 Pages of the process are brought into the main memory only
when they are required otherwise they reside in the secondary
storage.
2. Memory management: Paging
2. Memory management: Paging
2. Memory management: Paging
Let us consider that, P2 and P4 are moved to waiting state after some time.
2. Memory management: Segmentation
It is better to have segmentation which divides the process into the segments. Each
segment contains the same type of functions such as the main function can be
included in one segment and the library functions can be included in the other
segment.
2. Memory management: Segmentation
2. Memory management
2. Memory management: Fixed Partitioning
2. Memory management: Dynamic Partitioning
2. Memory management: Fragmentation
User processes are loaded and unloaded from the main memory, and processes are
kept in memory blocks in the main memory. Many spaces remain after process
loading and swapping that another process cannot load due to their size. Main
memory is available, but its space is insufficient to load another process because
of the dynamical allocation of main memory processes.
2. Memory management: External Fragmentation
2. Memory management: Swapping
Swapping is a memory management scheme in which any process
can be temporarily swapped from main memory to secondary
memory so that the main memory can be made available for other
processes. It is used to improve main memory utilization. In
secondary memory, the place where the swapped-out process is
stored is called swap space.
3. File Management
A file is a collection of related information defined by its
creator.
File systems provide the conventions for the
encoding, storage and management of data on a
storage device such as a hard disk.
FAT12 (floppy disks)
FAT16 (DOS and older versions of Windows)
FAT32 (older versions of Windows)
NTFS (newer versions of Windows)
EXT3 (Unix/Linux)
HFS+ (Max OS X)
The operating system is responsible for the following activities
in connections with file management:
✦ File creation and deletion.
✦ Directory creation and deletion.
✦ Support of primitives for manipulating files and directories.
✦ Mapping files onto secondary storage.
✦ File backup on stable (nonvolatile) storage media.
3. File Management
3. File Management
3. File Management
3. File Management
Device Management or I/O Management
Device Management or I/O Management
Device Management or I/O Management
4. Device Management or I/O Management
Device controllers are components on the motherboard (or on expansion
cards) that act as an interface between the CPU and the actual
device.
Device drivers, which are the operating system software components that
interact with the devices controllers.
A special device (inside CPU) called the Interrupt Controller handles the
task of receiving interrupt requests and prioritizes them to be forwarded
to the processor.
Deadlocks can occur when two (or more) processes have control of
different I/O resources that are needed by the other processes, and they
are unwilling to give up control of the device.
It performs the following activities for device management.
Keeps tracks of all devices connected to system.
Designates a program responsible for every device known as Input/output
controller.
Decides which process gets access to a certain device and for how long.
Allocates devices in an effective and efficient way.
Deallocates devices when they are no longer required.
5. Security & Protection
The operating system uses password protection to protect user data and
similar other techniques.
It also prevents unauthorized access to programs and user data by assigning
access right permission to files and directories.
The owners of information stored in a multiuser or networked computer
system may want to control use of that information, concurrent processes
should not interfere with each other.
6. User
Interfac
e
Mechani
sm
A user interface (UI) controls how you enter data and
instructions and how information is displayed on the
screen
There are two types of user interfaces
1. Command Line Interface
2. Graphical user Interface
1.
Comma
nd-line
interfac
e
In a command-line interface, a user types commands represented by short
keywords or abbreviations or presses special keys on the keyboard to enter
data and instructions
2.
Graphic
al User
Interfac
e
With a graphical user interface (GUI), you interact with menus and visual
images
End of Chapter 2

Chapter -2 Operating-System and its Structures

  • 1.
  • 2.
    Chapter 2: Operating-SystemStructures 2.2 ● Operating System Services ● User Operating System Interface ● System Calls ● Types of System Calls ● System Programs ● Operating System Design and Implementation ● Operating System Structure ● Operating System Debugging ● Operating System Generation ● System Boot
  • 3.
    Operating System Services 2.3 ●User interface ● Program Execution ● I/O Operations ● File System manipulation ● Communications ● Error detection ● Resource Allocation ● Accounting ● Protection and Security
  • 4.
    Operating System Services 2.4 ●Operating systems provide an environment for execution of programs and services to programs and users ● 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). 4 Varies between Command-Line (CLI), Graphics User Interface (GUI), Batch ● Program execution - The system must be able to load a program into memory and to run that program, end execution, either normally or abnormally (indicating error) ● I/Ooperations - A running program may require I/O, which may involve a file or an I/O device
  • 5.
    Operating System Services(Cont.) 2.5 ● One set of operating-system services provides functions that are helpful to the user (Cont.): ● File-system manipulation - The file system is of particular interest. Programs need to read and write files and directories, create and delete them, search them, list file Information, permission management. ● Communications – Processes may exchange information, on the same computer or between computers over a network 4 Communications may be via shared memory or through message passing (packets moved by the OS) ● Error detection – OS needs to be constantly aware of possible errors 4 May occur in the CPU and memory hardware, in I/O devices, in user program 4 For each type of error, OS should take the appropriate action to ensure correct and consistent computing 4 Debugging facilities can greatly enhance the user’s and programmer’s abilities to efficiently use the system
  • 6.
    Operating System Services(Cont.) 2.6 ● Another set of OS functions exists for ensuring the efficient operation of the system itself via resource sharing ● Resource allocation - When multiple users or multiple jobs running concurrently, resources must be allocated to each of them 4 Many types of resources - CPU cycles, main memory, file storage, I/O devices. ● Accounting - To keep track of which users use how much and what kinds of computer resources ● Protection and security - The owners of information stored in a multiuser or networked computer system may want to control use of that information, concurrent processes should not interfere with each other 4 Protection involves ensuring that all access to system resources is controlled 4 Security of the system from outsiders requires user authentication, extends to defending external I/O devices from invalid access attempts
  • 7.
    A View ofOperating System Services 2.7
  • 8.
    User Operating SystemInterface - CLI 2.8 CLI or command interpreter allows direct command entry ● Sometimes implemented in kernel, sometimes by systems program ● Sometimes multiple flavors implemented – shells ● Primarily fetches a command from user and executes it ● Sometimes commands built-in, sometimes just names of programs
  • 9.
    User Operating SystemInterface - GUI 2.9 ● User-friendly desktop metaphor interface ● Usually mouse, keyboard, and monitor ● Icons represent files, programs, actions, etc ● Various mouse buttons over objects in the interface cause various actions (provide information, options, execute function, open directory (known as a folder) ● Many systems now include both CLI and GUI interfaces ● Microsoft Windows is GUI with CLI “command” shell ● Apple Mac OS X is “Aqua” GUI interface with UNIX kernel underneath and shells available ● Unix and Linux have CLI with optional GUI interfaces (CDE, KDE, GNOME)
  • 10.
    Touchscreen Interfaces 2.10 ● Touchscreendevices require new interfaces ● Mouse not possible or not desired ● Actions and selection based on gestures ● Virtual keyboard for text entry ● Voice commands.
  • 11.
  • 12.
    Operating System Mode The User Mode is concerned with the actual interface between the user and the system.  It controls things like running applications and accessing files.  The Kernel Mode is concerned with everything running in the background.  It controls things like accessing system resources, controlling hardware functions and processing program instructions.  System calls are used to change mode from User to Kernel.
  • 13.
    Kernel Kernel is asoftware code that reside in central core of OS. It has complete control over system. When operation system boots, kernel is first part of OS to load in main memory. Kernel remains in main memory for entire duration of computer session. The kernel code is usually loaded in to protected area of memory. Kernel performs it’s task like executing processes and handling interrupts in kernel space. User performs it’s task in user area of memory.  This memory separation is made in order to prevent user data and kernel data from interfering with each other.  Kernel does not interact directly with user, but it interacts using SHELL and other programs and hardware.
  • 14.
    Kernel cont… Kernel includes:- 1.Scheduler: It allocates the Kernel’s processing time to various processes. 2. Supervisor: It grants permission to use computer system resources to each process. 3. Interrupt handler : It handles all requests from the various hardware devices which compete for kernel services. 4. Memory manager : allocates space in memory for all users of kernel service. kernel provides services for process management, file management, I/O management, memory management. System calls are used to provide these type of services.
  • 15.
    System Call System callis the programmatic way in which a computer program/user application requests a service from the kernel of the operating system on which it is executed. Application program is just a user-process. Due to security reasons , user applications are not given access to privileged resources(the ones controlled by OS). When they need to do any I/O or have some more memory or spawn a process or wait for signal/interrupt, it requests operating system to facilitate all these. This request is made through System Call. System calls are also called software-interrupts.
  • 16.
  • 17.
    How System CallWorks? Step 1) The processes executed in the user mode till the time a system call interrupts it. Step 2) After that, the system call is executed in the kernel-mode on a priority basis. Step 3) Once system call execution is over, control returns to the user mode., Step 4) The execution of user processes resumed in Kernel mode.
  • 18.
    Why do youneed System Calls in OS? Following are situations which need system calls in OS:  Reading and writing from files demand system calls.  If a file system wants to create or delete files, system calls are required.  System calls are used for the creation and management of new processes.  Network connections need system calls for sending and receiving packets.  Access to hardware devices like scanner, printer, need a system call.
  • 19.
    I/O and Filemanipulation
  • 20.
    Examples of I/Oand file system calls
  • 21.
    Types of Systemcalls 2.21 ● Process control ● File management ● Device management ● Information maintenance ● Communications
  • 22.
    Process control 2.22  Endand Abort  Load and Execute  Create Process and Terminate Process  Wait and Signal Event  Allocate and free memory
  • 23.
    File management 2.23  Createa file  Delete file  Open and close file  Read, write, and reposition  Get and set file attributes
  • 24.
    Device management 2.24  Requestand release device  Logically attach/ detach devices  Get and Set device attributes
  • 25.
    communications 2.25 Communications : Messagepassing , shared memory ● Create delete communication connection ● Send , receive messages ● Transfer status information
  • 26.
    Information maintenance 2.26 ● Gettime or date , set time or date ● Get system data , set system data ● Get process ● Set process
  • 27.
    Important System CallsUsed in OS for process control wait() In some systems, a process needs to wait for another process to complete its execution. This type of situation occurs when a parent process creates a child process, and the execution of the parent process remains suspended until its child process executes. The suspension of the parent process automatically occurs with a wait() system call. When the child process ends execution, the control moves back to the parent process. fork() Processes use this system call to create processes that are a copy of themselves. With the help of this system Call parent process creates a child process, and the execution of the parent process will be suspended till the child process executes. exec() This system call runs when an executable file in the context of an already running process that replaces the older executable file. However, the original process identifier remains as a new process is not built, but stack, data, head, data, etc. are replaced by the new process.
  • 28.
    Important System CallsUsed in OS for process control kill(): The kill() system call is used by OS to send a termination signal to a process that urges the process to exit. However, a kill system call does not necessarily mean killing the process and can have various meanings. exit(): The exit() system call is used to terminate program execution. Specially in the multi- threaded environment, this call defines that the thread execution is complete. The OS reclaims resources that were used by the process after the use of exit() system call.
  • 29.
    Summary system calls: CategoriesWindows Unix Process control CreateProcess() ExitProcess() WaitForSingleObject() fork() exit() wait() Device manipulation SetConsoleMode() ReadConsole() WriteConsole() loctl() read() write() File manipulation CreateFile() ReadFile() WriteFile() CloseHandle() Open() Read() write() close()
  • 30.
    Summary system calls: CategoriesWindows Unix Communication CreatePipe() CreateFileMapping() MapViewOfFile() Pipe() shm_open() mmap() Protection SetFileSecurity() InitlializeSecurityDescriptor() SetSecurityDescriptorGroup () Chmod() Umask() Chown()
  • 31.
    Components / Functionsof Operating System
  • 32.
    1. Process Management A process is a program in execution.  A process needs certain resources, including CPU time, memory, files, and I/O devices to accomplish its task.  Simultaneous execution leads to multiple processes. Hence creation, execution and termination of a process are the most basic functionality of an OS  If processes are dependent, than they may try to share same resources. thus task of process synchronization comes to the picture.  If processes are independent, than a due care needs to be taken to avoid their overlapping in memory area.  Based on priority, it is important to allow more important processes to execute first than others.
  • 33.
  • 34.
  • 35.
  • 36.
  • 37.
    2. Memory management Memoryis 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. When the computer made turn off everything stored in RAM will be erased automatically. In addition to the physical RAM installed in your computer, most modern operating systems allow your computer to use a virtual memory system. Virtual memory allows your computer to use part of a permanent storage device (such as a hard disk) as extra memory. The operating system is responsible for the following activities in connections with memory management: 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 de-allocate memory space as needed.
  • 38.
  • 39.
  • 40.
    2. Memory management:Paging  In Operating Systems, Paging is a storage mechanism used to retrieve processes from the secondary storage into the main memory in the form of pages.  The main idea behind the paging is to divide each process in the form of pages. The main memory will also be divided in the form of frames.  One page of the process is to be stored in one of the frames of the memory. The pages can be stored at the different locations of the memory but the priority is always to find the contiguous frames or holes.  Pages of the process are brought into the main memory only when they are required otherwise they reside in the secondary storage.
  • 41.
  • 42.
  • 43.
    2. Memory management:Paging Let us consider that, P2 and P4 are moved to waiting state after some time.
  • 44.
    2. Memory management:Segmentation It is better to have segmentation which divides the process into the segments. Each segment contains the same type of functions such as the main function can be included in one segment and the library functions can be included in the other segment.
  • 45.
  • 46.
  • 47.
    2. Memory management:Fixed Partitioning
  • 48.
    2. Memory management:Dynamic Partitioning
  • 49.
    2. Memory management:Fragmentation User processes are loaded and unloaded from the main memory, and processes are kept in memory blocks in the main memory. Many spaces remain after process loading and swapping that another process cannot load due to their size. Main memory is available, but its space is insufficient to load another process because of the dynamical allocation of main memory processes.
  • 50.
    2. Memory management:External Fragmentation
  • 51.
    2. Memory management:Swapping Swapping is a memory management scheme in which any process can be temporarily swapped from main memory to secondary memory so that the main memory can be made available for other processes. It is used to improve main memory utilization. In secondary memory, the place where the swapped-out process is stored is called swap space.
  • 52.
    3. File Management Afile is a collection of related information defined by its creator. File systems provide the conventions for the encoding, storage and management of data on a storage device such as a hard disk. FAT12 (floppy disks) FAT16 (DOS and older versions of Windows) FAT32 (older versions of Windows) NTFS (newer versions of Windows) EXT3 (Unix/Linux) HFS+ (Max OS X) The operating system is responsible for the following activities in connections with file management: ✦ File creation and deletion. ✦ Directory creation and deletion. ✦ Support of primitives for manipulating files and directories. ✦ Mapping files onto secondary storage. ✦ File backup on stable (nonvolatile) storage media.
  • 53.
  • 54.
  • 55.
  • 56.
  • 57.
    Device Management orI/O Management
  • 58.
    Device Management orI/O Management
  • 59.
    Device Management orI/O Management
  • 60.
    4. Device Managementor I/O Management Device controllers are components on the motherboard (or on expansion cards) that act as an interface between the CPU and the actual device. Device drivers, which are the operating system software components that interact with the devices controllers. A special device (inside CPU) called the Interrupt Controller handles the task of receiving interrupt requests and prioritizes them to be forwarded to the processor. Deadlocks can occur when two (or more) processes have control of different I/O resources that are needed by the other processes, and they are unwilling to give up control of the device. It performs the following activities for device management. Keeps tracks of all devices connected to system. Designates a program responsible for every device known as Input/output controller. Decides which process gets access to a certain device and for how long. Allocates devices in an effective and efficient way. Deallocates devices when they are no longer required.
  • 61.
    5. Security &Protection The operating system uses password protection to protect user data and similar other techniques. It also prevents unauthorized access to programs and user data by assigning access right permission to files and directories. The owners of information stored in a multiuser or networked computer system may want to control use of that information, concurrent processes should not interfere with each other.
  • 62.
    6. User Interfac e Mechani sm A userinterface (UI) controls how you enter data and instructions and how information is displayed on the screen There are two types of user interfaces 1. Command Line Interface 2. Graphical user Interface
  • 63.
    1. Comma nd-line interfac e In a command-lineinterface, a user types commands represented by short keywords or abbreviations or presses special keys on the keyboard to enter data and instructions
  • 64.
    2. Graphic al User Interfac e With agraphical user interface (GUI), you interact with menus and visual images
  • 65.