Professional Documents
Culture Documents
Subject Code:20A05402T
• User View
• System View
User's view of the computer
• Many users having laptop or a PC consisting of a monitor,
keyboard and mouse.
• Such a systems are designed for
single user
• The goal is to maximize the work that the user is
performing
• In this case, the OS is designed mostly for ease of use(user
friendly), with some attention paid to performance and
security and note paid to resource utilization-How various
hardware and software resources are shared.
Mobile Devices
• After I/O starts, control returns to user program only upon I/O completion
• Wait instruction, idles the CPU, until the next interrupt
Wait loop (contention for memory access).
• At most one I/O request is outstanding at a time, no simultaneous I/O processing
• After I/O starts, control returns to user program without waiting for I/O completion.
• System call-request to the OS to allow user to wait for I/O completion.
• Device-status table contains entry for each I/O device indicating its type, address and state.
• OS indexes into I/O device table, to determine device status and to modify table entry to
include interrupt.
Direct Memory Access Structure
· Used for high-speed I/O devices to transmit
information at close to memory speeds
· Device controller transfers blocks from
buffers directly to main memory without CPU
intervention
· Only one interrupt is generated per block,
rather than one interrupt per byte
DMA Structure continue
Storage Structure
• Main memory – only large storage media that the CPU
can access directly.
• Secondary storage – extension of main memory that
provides large nonvolatile storage capacity.
• Magnetic disks – rigid metal or glass platters covered
with magnetic recording material
• ✦ Disk surface is logically divided into tracks, which
are subdivided into sectors.
• ✦ The disk controller determines the logical
interaction between the device and the computer
Storage Hierarchy
• Storage systems organized in hierarchy.
• ✦ Speed
• ✦ Cost
• ✦ Volatility
• Caching – copying information into faster storage system; main
memory can be viewed as a last cache for
• secondary storage.
• • Use of high-speed memory to hold recently-accessed data.
• • Requires a cache management policy.
• • Caching introduces another level in storage hierarchy.
• • This requires data that is simultaneously stored in more than one
level to be consistent
Storage-Device Hierarchy
Computing Environments:
• Client-Server Computing
– Many systems now servers, responding to
requests generated by clients
– • Compute server provides an interface to client
to request services(i.e., database)
– • File-server provides interface for clients to store
and retrieve files(Files)
Free and Open Source Operating System
• programmers can add new commands to the system easily by creating new files with
the proper names.
• The command-interpreter program, which can be small, does not have to be changed
for new commands to be added.
Unix Command Interpreter
Windows Command Interpreter
Graphical User Interfaces
• A user friendly graphical user interface, or GUI.
• users employ a mouse-based window and menu system
characterized by a desktop.
• The user moves the mouse to position its pointer on images, or
icons, on the screen(the desktop)
• The icons represent programs, files, directories, and system
functions.
• Depending on the mouse pointer's location, clicking a button on the
mouse can invoke a program, select a file or directory-known as a
folder- or pull down a menu that contains commands.
Windows-Graphical User Interface
Touchscreen Interface
• GUI has several enhancements in its functionality.
• Because a mouse is impractical for most mobile systems,
smartphones and handheld tablet computers typically
use a touchscreen interface.
• Here, users interact by making gestures on the
touchscreen for example, pressing and swiping fingers
across the screen.
• The Common Desktop Environment(CDE) implemented
by
• X-Windows systems, commercial versions of UNIX, such
as Solaries and IBM's AIX system.
System Call
• Kernel mode
• When CPU is in kernel mode, the code being executed can access any
memory address and any hardware resources.
• Hence kernel mode is a very privileged and powerful mode
• if a program crashes in kernel mode, the entire system
will be halted.
• User mode:
• When CPU is in user mode, the programs don't have
direct access to memory and hardware resources.
• In user mode, if any program crashes, only that particular program is
halted.
• The system will be in a safe state.
• Hence, most programs in an OS run in user mode
• System Call…
• When a program in user mode requires access to RAM or a
hardware resource, it must ask the kernel to provide access
to that resource, through system call.
• When a program makes a system call, the mode is switched
from user mode to kernel mode. This is called a context
switch.
• Then the kernel provides the resource which the program
requested.
• After that, another context switch happens to change from
kernel mode to user mode.
System calls Examples-read data from one file
and copy them to another file
• 1.Process Control
• 2.File Manipulation
• 3.Device Management
• 4.Information Maintenance
• 5.Communications
• 6 Protection
1.Process Control System calls
• create process, terminate process
• load, execute
• end, abort
• get process attributes, set process attributes
• wait for time
• wait event, signal event
• allocate and free memory
2.File management System Calls
• create file, delete file
• open, close
• read, write, reposition
• get file attributes, set file attributes
3.Device management System Calls
• request device, release device
• read, write, reposition
• get device attributes, set device attributes
• logically attach or detach devices
4.Information maintenance System Calls
• 1. Design Goals
• 2. Mechanisms and Policies
• 3. Implementation.
Operating System Design and Implementation
• User Goals
• convenient to use
• easy to learn and to use
• reliable,
• safe and fast
• System goals
• easy to design
• create
• implement and
• maintain
• as well as flexible, reliable, error free and efficient
• Specifying and designing as OS, is highly creative task of software
engineering
Requirements of Operating System
• 1.Simple Structure
• 2.Layered Approach
• 3.Microkernels
• 4.Modules
Operating System Structure