You are on page 1of 91

Disk scheduling

•FCFS
•SCAN
•C-SCAN
•SSTF
Disk Structure
• Disk drives are addressed as large 1-dimensional
arrays of logical blocks, where the logical block is
the smallest unit of transfer.
• The 1-dimensional array of logical blocks is
mapped into the sectors of the disk sequentially.
– Sector 0 is the first sector of the first track on the
outermost cylinder.
– Mapping proceeds in order through that track, then
the rest of the tracks in that cylinder, and then
through the rest of the cylinders from outermost to
innermost.
Moving-head Disk Mechanism
Disk Performance Parameters
• To read or write, the disk head must be positioned at
the desired track and at the beginning of the desired
sector on that track
• Seek time
– Seek time is the time required to move the disk
arm to the required track.

• Rotational delay or rotational latency


– It is the additional time waiting for the disk to
rotate the desired sector to the disk head.
Disk Performance Parameters
• Access time
– Sum of seek time and rotational delay
– The time it takes to get in position to read or write

• Data transfer occurs as the sector moves


under the head
Transfer Time: The transfer time to or from the disk
depends on the rotation speed of the disk in the
following fashion:
T=b/rN
where
• T=transfer time
• b=number of bytes to be transferred
• N=number of bytes on a track
• r=rotation speed, in revolutions per second
Thus the total average access time can be expressed as
Ta= Ts+1/2r+b/rN
where Ts is the average seek time.
Disk Scheduling Policies
• Seek time is the reason for differences in
performance

• For a single disk there will be a number of I/O


requests

• If requests are selected randomly, it will give


poor performance
Disk Scheduling
• Several algorithms exist to schedule the
servicing of disk I/O requests.
• We assume a disk with 200 tracks. The disk
request queue has random requests in it.

55, 58, 39, 18, 90, 160, 150, 38, 184

Disk head is initially located at track 100.


Disk Scheduling Policies
• First-in, first-out (FIFO)
– Process request sequentially, request are served in the
order of their arrival
– Fair to all processes
– Approaches random scheduling in performance if there
are many processes
– 55, 58, 39, 18, 90, 160, 150, 38, 184
• Advantages of FIFO
- All request are treated equally i.e average
response time will be same for all request
- It is not possible for a request to wait forever

• Disadvantages of FIFO
- There is lot of unnecessary seeking
• Shortest Service Time First(SSTF)
– Select the disk I/O request that requires the least
movement of the disk arm from its current position
– Always choose the minimum Seek time
– SSTF scheduling is a form of SJF scheduling; may
cause starvation of some requests.
– 55, 58, 39, 18, 90, 160, 150, 38, 184
Elevator Algorithms
• Algorithms based on the common elevator principle.

•Four combinations of Elevator algorithms:


– Service in both directions or in only one direction.
– Go until last cylinder or until last I/O request.

Go until
Go until the Go until the
Directio last cylinder last request
n
Service both
directions Scan Look
Service in only
one direction C-Scan C-Look
C-SCAN
• Provides a more uniform wait time than SCAN.
• The head moves from one end of the disk to
the other. servicing requests as it goes. When
it reaches the other end, however, it
immediately returns to the beginning of the
disk, without servicing any requests on the
return trip.
• Treats the cylinders as a circular list that
wraps around from the last cylinder to the
first one.
C-SCAN
•Overview
•File organization and access
File Management

19
File Management
• File management system consists of system
utility programs that run as privileged
applications
• Input to applications is by means of a file
• Output is saved in a file for long-term storage
• The file system permits users to create data
collections, called files

20
File System Properties
• Long-term existence – Do not disappear when a
user logs off
• Sharable between processes – files have
associated access permissions that permit
controlled sharing
• Structure – Depending on the file system, a file
can have an internal structure that is convenient
for particular applications

21
File Operations
• Create
• Delete
• Open
• Close
• Read
• Write

22
Terms Used with Files
• Field
– Basic element of data
– Contains a single value
– Characterized by its length and data type
• Record
– Collection of related fields
– Treated as a unit
• Example: employee record

23
Terms Used with Files
• File
– Collection of similar records
– Treated as a single entity
– Have file names
– May restrict access
• Database
– Collection of related data
– Relationships exist among elements

24
Typical Operations
• Retrieve_All
• Retrieve_One
• Retrieve_Next
• Retrieve_Previous
• Insert_One
• Delete_One
• Update_One
• Retrieve_Few

25
File Management Systems
• The file mgmt. system is that set of system
software that provides services to user and
applications in the use of files
• Programmer does not need to develop file
management software

26
Objectives for a
File Management System
• Meet the data management needs and
requirements of the user
• Guarantee that the data in the file are valid
• Optimize performance
• Provide I/O support for a variety of storage
device types

27
Objectives for a
File Management System
• Minimize or eliminate the potential for lost or
destroyed data
• Provide a standardized set of I/O interface
routines
• Provide I/O support for multiple users

28
Minimal Set of Requirements
• Each user should be able to create, delete,
read, write and modify files
• Each user may have controlled access to other
user’s files
• Each user may control what type of accesses
are allowed to the user’s files
• Each user should be able to restructure the
user’s files in a form appropriate to the
problem

29
Minimal Set of Requirements
• Each user should be able to move data
between files
• Each user should be able to back up and
recover the user’s files in case of damage

30
31
Device Drivers
• Lowest level
• Communicates directly with peripheral
devices or their controllers or channels
• Responsible for starting I/O operations on a
device and processing the completion of an
I/O request

32
Basic File System
• This layer is also called Physical I/O level
• It is primary interface with the environment outside
the computer system
• Deals with exchanging blocks of data with disk or
tape system
• It does not understand the content of the data or the
structure of the file involved.
• Concerned with the placement of blocks on the
secondary storage device
• Concerned with buffering blocks in main memory
33
Basic I/O Supervisor
• Responsible for file I/O initiation and
termination
• Control structures are maintained
• Concerned with selection of the device on
which file I/O is to be performed
• Concerned with scheduling disk and tape
access to optimize performance
• Part of the operating system

34
Logical I/O
• Enables users and applications to access
records. It deals with file records.
• Provides general-purpose record I/O capability
• Maintains basic data about file

35
Access Method
• This level is closest to the user, provides
standard interface between applications and
the file system and the device that hold the
data
• Different access method reflect different file
structures
• Different ways to access and process data

36
37
File Management Functions
• File system must identify and locate a selected
file before operation on file.
• Use a directory to describe the location of all
files plus their attributes
• On a shared system describe user access
control
• Blocking for access to files
• Allocate files to free blocks
• Manage free storage for available blocks
38
File Organization
• File organization refers to the logical structuring
of the records as determined by the way in
which they are accessed.
• The physical organization of the file on
secondary storage depends on the blocking
strategy and the file allocation strategy

39
Criteria for File Organization
• Short access time
– Needed when accessing a single record
– Not needed for batch mode
• Ease of update
– File on CD-ROM will not be updated, so this is not
a issue

40
Criteria for File Organization
• Economy of storage
– Should be minimum redundancy in the data
– Redundancy can be used to speed access such as
an index
• Simple maintenance
• Reliability

41
File Organization
• The Pile
– Data are collected in the order they arrive
– Purpose is to accumulate a mass of data and save
it
– Records may have different fields
– No structure
– Record access is by exhaustive search

42
Pile

43
File Organization
• The Sequential File
– Fixed format used for records
– Records are the same length
– All fields the same (order and length)
– Field names and lengths are attributes of the file
– One field is the key filed
• Uniquely identifies the record
• Records are stored in key sequence

44
File Organization
• The Sequential File
– New records are placed in a log file or transaction
file
– Batch update is performed to merge the log file
with the master file

45
Sequential File

46
File Organization
• Indexed Sequential File
– Index provides a lookup capability to quickly reach
the locality of the desired record
– Two features are added: an index to the file
support random access, and an overflow file
• Contains key field and a pointer to the main file
• Indexed is searched to find highest key value that is
equal to or precedes the desired key value
• Search continues in the main file at the location
indicated by the pointer

47
File Organization
• Indexed Sequential File
– New records are added to an overflow file
– Record in main file that precedes it is updated to
contain a pointer to the new record
– The overflow is merged with the main file during a
batch update
– Multiple indexes for the same key field can be set
up to increase efficiency

48
Indexed Sequential File

49
File Organization
• Indexed File
– Uses multiple indexes for different key fields
– May contain an exhaustive index that contains
one entry for every record in the main file
– May contain a partial index contains entries to
records where field of interest exist

50
Indexed File

51
File Organization
• The Direct or Hashed File
– Directly access a block at a known address
– Key field required for each record

52
UNIT – 6

Lecture – 06

•File directories
•Record Blocking
File Directories
• Directories are basically symbol tables of files
• Contains information about files
– Attributes
– Location
– Ownership
• Directory itself is a file owned by the operating
system accessible by file mgmt. routines
• Provides mapping between file names and the
files themselves
54
Simple Structure for a Directory
• List of entries, one for each file
• Sequential file with the name of the file
serving as the key
• Provides no help in organizing the files
• Forces user to be careful not to use the same
name for two different files

55
Two-level Scheme for a Directory
• One directory for each user and a master directory
• Master directory contains entry for each user
– Provides address and access control information
• Each user directory is a simple list of files for that
user
• Still provides no help in structuring collections of files

58
Hierarchical, or Tree-Structured
Directory
• Master directory with user directories
underneath it
• Each user directory may have subdirectories
and files as entries

59
60
61
Hierarchical, or Tree-Structured
Directory
• Files can be located by following a path from
the root, or master, directory down various
branches
– This is the pathname for the file
– Pathnames can be of two types
1) Absolute path name
2) Relative path name
• Can have several files with the same file name
as long as they have unique path names
62
File Sharing
• In multiuser system, allow files to be shared
among users
• Two issues
– Access rights
– Management of simultaneous access

63
Access Rights
• None
– User may not know of the existence of the file
– User is not allowed to read the user directory that
includes the file
• Knowledge
– User can only determine that the file exists and
who is its owner

64
Access Rights
• Execution
– The user can load and execute a program but
cannot copy it
• Reading
– The user can read the file for any purpose,
including copying and execution
• Appending
– The user can add data to the file but cannot
modify or delete any of the file’s contents

65
Access Rights
• Updating
– The user can modify, deleted, and add to the file’s
data. This includes creating the file, rewriting it,
and removing all or part of the data
• Changing protection
– User can change access rights granted to other
users
• Deletion
– User can delete the file from the file system

66
Access Rights of multiple users
• Owners
– Has all rights previously listed
– May grant rights to others using the following
classes of users
• Specific user
• User groups
• All for public files

67
Simultaneous Access
• In this OS or file management system must
enforce discipline
• User may lock entire file when it is to be
updated
• User may lock the individual records during
the update
• Mutual exclusion and deadlock are issues for
shared access

68
Record Blocking
• Records are logical unit of access of a
structured file, whereas blocks are unit of I/O
with secondary storage.
• Three methods of blocking
- Fixed blocking
- Variable-length spanned blocking
- Variable-length unspanned blocking

69
Fixed Blocking

70
Variable Blocking: Spanned

71
Variable Blocking Unspanned

72
UNIT – 5

Lecture – 07

•Secondary storage management


Secondary Storage Management
• A file consists of a collection of blocks. The OS
or file management system is responsible for
allocating blocks to files.
• Space must be allocated to files
• Must keep track of the space available for
allocation

74
Preallocation
• Need the maximum size for the file at the time
of creation
• Difficult to reliably estimate the maximum
potential size of the file
• Tend to overestimated file size so as not to
run out of space

75
Methods of File Allocation
• Contiguous allocation
– Single set of blocks is allocated to a file at the time
of creation
– It supports variable size portions
– Only a single entry in the file allocation table
• Starting block and length of the file
• External fragmentation will occur
– Need to perform compaction

76
77
78
Methods of File Allocation
• Chained allocation
– Allocation on basis of individual block
– Each block contains a pointer to the next block in the chain
– It supports fixed size portions
– Only single entry in the file allocation table
• Starting block and length of file
• No external fragmentation
• Best for sequential files
• Space required for pointers

79
80
81
Methods of File Allocation
• Indexed allocation
– File allocation table contains a separate one-level
index for each file
– The index has one entry for each portion allocated
to the file
– The file indexes are not physically stored as a part
of the FAT
– The file index for a file is kept in a separate block
– The file allocation table contains block number for
the index
82
83
84
UNIT – 5

Lecture – 08

•File sharing
File Sharing
• In multiuser system, allow files to be shared
among users
• Two issues
– Access rights
– Management of simultaneous access

86
Access Rights
• None
– User may not know of the existence of the file
– User is not allowed to read the user directory that
includes the file
• Knowledge
– User can only determine that the file exists and
who is its owner

87
Access Rights
• Execution
– The user can load and execute a program but
cannot copy it
• Reading
– The user can read the file for any purpose,
including copying and execution
• Appending
– The user can add data to the file but cannot
modify or delete any of the file’s contents

88
Access Rights
• Updating
– The user can modify, deleted, and add to the file’s
data. This includes creating the file, rewriting it,
and removing all or part of the data
• Changing protection
– User can change access rights granted to other
users
• Deletion
– User can delete the file from the file system

89
Access Rights of multiple users
• Owners
– Has all rights previously listed
– May grant rights to others using the following
classes of users
• Specific user
• User groups
• All for public files

90
Simultaneous Access
• In this OS or file management system must
enforce discipline
• User may lock entire file when it is to be
updated
• User may lock the individual records during
the update
• Mutual exclusion and deadlock are issues for
shared access

91

You might also like