Operating Systems. Designed and Presented by Dr. Ayman Elshenawy Elsefy

Similar documents
Mass Storage. 2. What are the difference between Primary storage and secondary storage devices? Primary Storage is Devices. Secondary Storage devices

Chapter 6 Storage Management File-System Interface 11.1

1. What is the difference between primary storage and secondary storage?

Principles of Operating Systems

Chapter 11: File-System Interface

Operating Systems. No. 9 ศร ณย อ นทโกส ม Sarun Intakosum

UNIT V SECONDARY STORAGE MANAGEMENT

ICS Principles of Operating Systems

Chapter 10: File-System Interface. Operating System Concepts with Java 8 th Edition

Chapter 11: File-System Interface

UNIT 4 Device Management

CS720 - Operating Systems

File Management By : Kaushik Vaghani

File-System. File Concept. File Types Name, Extension. File Attributes. File Operations. Access Methods. CS307 Operating Systems

Disks and I/O Hakan Uraz - File Organization 1

CS3600 SYSTEMS AND NETWORKS

There is a general need for long-term and shared data storage: Files meet these requirements The file manager or file system within the OS

Chapter 10: File-System Interface

Chapter 7: File-System

Chapter 10: File-System Interface

Chapter 12: Mass-Storage Systems. Operating System Concepts 8 th Edition,

File Systems: Interface and Implementation

Chapter 12: Secondary-Storage Structure. Operating System Concepts 8 th Edition,

File Systems: Interface and Implementation

File Systems: Interface and Implementation

Chapter 11: File System Interface Capítulo 10 no livro adotado!

Chapter 11: File System Implementation. Objectives

Chapter 11: File-System Interface. File Concept. File Structure

V. File System. SGG9: chapter 11. Files, directories, sharing FS layers, partitions, allocations, free space. TDIU11: Operating Systems

Chapter 10: Mass-Storage Systems

Free Space Management

Part Four - Storage Management. Chapter 10: File-System Interface

Chapter 10: File System. Operating System Concepts 9 th Edition

File System Management

TDDB68 Concurrent Programming and Operating Systems. Lecture: File systems

MODULE 4. FILE SYSTEM AND SECONDARY STORAGE

Virtual Memory cont d.; File System Interface. 03/30/2007 CSCI 315 Operating Systems Design 1

Chapter 14: Mass-Storage Systems. Disk Structure

Overview of Mass Storage Structure

EIDE, ATA, SATA, USB,

Mass-Storage Structure

Silberschatz, et al. Topics based on Chapter 13

Disk Scheduling. Based on the slides supporting the text

OPERATING SYSTEMS CS3502 Spring Input/Output System Chapter 9

Chapter 11: File-System Interface

Introduction Disks RAID Tertiary storage. Mass Storage. CMSC 420, York College. November 21, 2006

Module 13: Secondary-Storage Structure

Lecture 10 File Systems - Interface (chapter 10)

Chapter 12: Mass-Storage

Chapter 4 File Systems. Tanenbaum, Modern Operating Systems 3 e, (c) 2008 Prentice-Hall, Inc. All rights reserved

CS6401- Operating System QUESTION BANK UNIT-IV

Chapter 12: Mass-Storage Systems. Operating System Concepts 8 th Edition,

File System: Interface and Implmentation

Outlook. File-System Interface Allocation-Methods Free Space Management

Disc Allocation and Disc Arm Scheduling?

OPERATING SYSTEMS CS3502 Spring Input/Output System Chapter 9

A file system is a clearly-defined method that the computer's operating system uses to store, catalog, and retrieve files.

Chapter 9: File System Interface

CS420: Operating Systems. Mass Storage Structure

Tape pictures. CSE 30341: Operating Systems Principles

V. Mass Storage Systems

Chapter 14: Mass-Storage Systems

File. File System Implementation. Operations. Permissions and Data Layout. Storing and Accessing File Data. Opening a File

Operating Systems. Operating Systems Professor Sina Meraji U of T

Chapter 10: Mass-Storage Systems

Module 13: Secondary-Storage

F 4. Both the directory structure and the files reside on disk Backups of these two structures are kept on tapes

File Systems. CS170 Fall 2018

Chapter 14 Mass-Storage Structure

Chapter 10: File System

19 File Structure, Disk Scheduling

CSE325 Principles of Operating Systems. Mass-Storage Systems. David P. Duggan. April 19, 2011

Chapter 10: File-System Interface

Chapter 14: Mass-Storage Systems

Chapter 13: Mass-Storage Systems. Disk Scheduling. Disk Scheduling (Cont.) Disk Structure FCFS. Moving-Head Disk Mechanism

Chapter 13: Mass-Storage Systems. Disk Structure

Mass-Storage Structure

File System Interface: Overview. Objective. File Concept UNIT-IV FILE SYSTEMS

Che-Wei Chang Department of Computer Science and Information Engineering, Chang Gung University

Chapter 10: Mass-Storage Systems

Chapter 10: Mass-Storage Systems. Operating System Concepts 9 th Edition

I/O Management and Disk Scheduling. Chapter 11

CS3600 SYSTEMS AND NETWORKS

File System Interface and Implementation

Chapter 11: File-System Interface. Operating System Concepts 9 th Edition

Chapter 11: File-System Interface

Disk Scheduling. Chapter 14 Based on the slides supporting the text and B.Ramamurthy s slides from Spring 2001

Disk scheduling Disk reliability Tertiary storage Swap space management Linux swap space management

Chapter 10: File-System Interface. Operating System Concepts 8 th Edition

EI 338: Computer Systems Engineering (Operating Systems & Computer Architecture)

CHAPTER 12: MASS-STORAGE SYSTEMS (A) By I-Chen Lin Textbook: Operating System Concepts 9th Ed.

Ricardo Rocha. Department of Computer Science Faculty of Sciences University of Porto

Sharing may be done through a protection scheme. Network File System (NFS) is a common distributed file-sharing method

Department of Computer Engineering University of California at Santa Cruz. File Systems. Hai Tao

Lecture 9. I/O Management and Disk Scheduling Algorithms

MASS-STORAGE STRUCTURE

Mass-Storage Systems

Chapter 11. I/O Management and Disk Scheduling

File-System Interface. File Structure. File Concept. File Concept Access Methods Directory Structure File-System Mounting File Sharing Protection

CSE 380 Computer Operating Systems

Transcription:

Operating Systems Designed and Presented by Dr. Ayman Elshenawy Elsefy Dept. of Systems & Computer Eng.. AL-AZHAR University Website : eaymanelshenawy.wordpress.com Email : eaymanelshenawy@yahoo.com Reference Operating System Concepts, ABRAHAM SILBERSCHATZ

Part 4 Storage Management 1. Mass Storage Structure 2. File System Interface 3. I/O Systems

1. Mass Storage System

Logical organization of files A file is logically organised as: - Stream of bytes - Set of records - A record is a collection of data that belongs together, e.g. All the data about an individual person. - A data item is an individual field of a record and usually contains one piece of data, e.g. a date, first name, age. - These fields are collected together to form records.

Primary storage and Secondary storage Primary Storage is - Limited, Volatile, Expensive - Fast (accessed directly from the CPU) - Access time in nanoseconds. Direct Access Storage Devices (DASDs) - Offer high storage capacity and low cost - Store data as magnetized areas on magnetic platters surfaces - Examples: - Magnetic Disks, Hard Disks, Optical Disks - CD-ROM, DVD-ROM Secondary Storage is - Extendible, Persistent, Cheap - Slow (data must be copied to main memory) - Access time in msec. Secondary storage Types Serial Devices - Magnetic Tapes

Magnetic disks support direct access It consisted of : Disk blocks Tracks Platters Cylinder Sectors Disk heads Disk Controller Seek Time and Rotational delay Magnetic Disk Structure

How to calculate disk capacity? Drive capacity = number of cylinders cylinder capacity Number of cylinders = number of tracks in a surface Cylinder capacity = number of surfaces track capacity Track capacity = number of sector per track bytes per sector How many cylinders to store a file with 20,000 fixed length records of 256 bytes each on a disk with 512 bytes per sector, 40 sectors per disk and 11 tracks per cylinder? Answer: - The file is 20,000 * 256 = 5,120,000 bytes - 5,120,000 / 512 = 10,000 sectors - 10,000 / 40 = 250 tracks - 250 / 11 = 22.72 cylinders - If 22.72 physically contiguous cylinders are not available then the file will have to be spread out over the disk (fragmentation)

Organization of data on Disks Data can be organized on disk in two different ways: Sectors User defined blocks.

Organizing Data on Disks as Sectors 1. Physically Placement of sectors A. Adjacent Sectors B. Interleaving sectors: fixed size segments of a track used to hold a file leave an interval of several fixed sectors between adjacent logical sectors. Disadvantage After reading the data it takes time to transfer the data the start of the next sector will be lost ( able to read only one sector / revolution)

Organizing Data on Disks as Sectors 2. Clusters (fixed number of contiguous sectors) OS File manager Used it to improve performance. The file is viewed as a set of clusters of sectors. All sectors in clusters can be read without requiring additional seeks. The file manager maps the logical sectors to the physical clusters they belong to by a FAT ( File allocation table) FAT: contains a list of all the clusters in a file. Each cluster entry in the FAT giving the physical location of the cluster.

Organizing Data on Disks as Sectors 3. Extent The file consists of contiguous clusters The file consists of one extent (all of its sectors, tracks, cylinders form one contiguous whole. The whole file can be accessed with minimum amount of seeking. If there is not enough contiguous space available. The file is divided on one or more non-contiguous parts, each part is an extent.

Internal Fragmentation of a disk Example: if the size of a sector = 512 bytes and the size of all records in file is 300 bytes. There are two ways:

Organizing Data on Disks as Blocks Disk tracks are divided into user defined blocks with variable size. Blocks may be fixed length or variable length. Each block is usually accompanied by one or more subblock containing extra information about the data blocks. Count subblock: counting the number bytes in the accompanied data block. Key subblock: containing the key for the last record in the data block.

Overhead Sector organization Sector address at the beginning of each sector. Sector is usable or defective. Block organization Sub blocks and inter block gaps Size and number of blocks.

Common in large storage environments Storage Area Network Multiple hosts attached to multiple storage arrays flexible SAN is one or more storage arrays Connected to one or more Fiber Channel switches Hosts also attach to the switches Easy to add or remove storage, add new host and allocate it storage

Disk Scheduling The operating system is responsible for using hardware efficiently for the disk drives, this means having a fast access time and disk bandwidth Minimize seek time ( Seek time seek distance) Maximize Disk bandwidth is the total number of bytes transferred, divided by the total time between the first request for service and the completion of the last transfer

Disk Scheduling (Cont.) 1- First Come First Served Illustration shows total head movement of 640 cylinders 2- Shortest Seek Time First (SSTF) Shortest Seek Time First selects the request with the minimum seek time from the current head position Like SJF scheduling; may cause starvation of some requests Illustration shows total head movement of 236 cylinders

3- SCAN (elevator algorithm) Disk Scheduling (Cont.) The disk arm starts at one end of the disk, and moves toward the other end, servicing requests until it gets to the other end of the disk, where the head movement is reversed and servicing continues. Illustration shows total head movement of 208 cylinders 4- CCAN 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

5- C-LOOK Disk Scheduling (Cont.) LOOK a version of SCAN, C-LOOK a version of C-SCAN Arm only goes as far as the last request in each direction, then reverses direction immediately, without first going all the way to the end of the disk Total number of cylinders?

2. File System Interface

File Concept Computers can store information on various non-volatile storage media with different physical properties, such as: Magnetic disks and Magnetic tapes Optical disks and CD-ROMs & DVD s. The OS provides a uniform logical view (a logical storage unit) that used for all storage media. A file is a named collection of related information that is recorded on secondary storage (a file is a sequence of bits, bytes, lines, or records). Files represent: programs (both source and object forms) Data. Data files may be: Numeric Alphabetic, Alphanumeric, Binary.

File Concept The information in a file is defined by its creator. Many different types of information may be stored in a file: Source programs: sequence of subroutines, functions, declaration and exec statements. object programs: a sequence of bytes organized into blocks understandable by the system s linker. executable programs, a series of code sections that the loader can bring into memory and execute. numeric data, Text - a sequence of characters organized into lines (and possibly pages). payroll records, graphic images, sound recordings, and so on. A file has a certain defined structure, which depends on its type. File Structure may be: Free form, such as text files formatted rigidly.

File Concept Single OS File Systems Network File System (NAS)

File Attribute A file s attributes vary from one operating system to another but typically consist of these: Name only information kept in human-readable form Identifier unique tag (number) identifies file within file system Type needed for systems that support different types Location pointer to file location on device Size current file size Protection controls who can do reading, writing, executing Time, date, and user identification data for protection, security, and usage monitoring Information about files are kept in the directory structure, which is maintained on the disk

File is an abstract data type File Operations Create file Space in the file system must be found for the. An entry for the new file must be made in the directory. Write to a file Send both the file name and the information to be written to the file to a system call. Searches the directory to find the file s location. Update a write pointer to the location in the file where the next write is to take place. Read Send both the file name and next block to be read to the file to a system call. Searches the directory to find the file s location. Update a read pointer to the location in the file where the next read is to take place. Current Position Pointer: keep the current operation location for read and write. Reposition within file (File Seek) The directory is searched for the appropriate entry Current-file-position pointer is repositioned to a given value

File Operations Delete Search the directory for the named file and release all file space, so Erase the directory entry. Truncate a file erase the contents of a file but keep its attributes. The file be reset to length zero and its file space released. Open(Fi) Search the directory structure on disk for entry Fi, move the content of entry to memory Close (Fi) move the content of entry Fi in memory to directory structure on disk. Other common operations: Appending new information to the end of an existing file. Renaming an existing file. Create a copy of a file to another location (I/O device, such as a printer or a display), by creating a new file and then reading from the old and writing to the new. We also want to have operations that allow a user to Get and set file attributes. For example, the file s length, the file s owner.

Enhancing file operations Most of the file operations involve searching the directory for the entry associated with the named file. To avoid this: open-file table Contains information about all open files, Any file operation can search for the file in this table. After closing the file the entry of this file is deleted from the table. per-process table tracks all files that a process has open current file pointer for each file, access rights to the file and accounting information. system-wide table contains process-independent information the location of the file on disk, access dates, and file size File pointer: pointer to last read/write location, per process that has the file open File-open count: counter of number of times a file is open Disk location of the file: cache of data access information Access rights: per-process access mode information

File Types Name, Extension

A Typical File Control Block

Access methods Serial Access Each record is stored, one after the other, with no logical order. It is the simplest form of file organization. Easy to implement on magnetic tape Suitable for batch search not suitable for online access. Very Slow Sequential Access Records are kept in some pre-defined order Such a method is reasonable for tape rapid access to sets of the nearest record. Suited to magnetic tape Addition and deletion of records must preserve the order. Random Access or direct access Records are accessed directly.suitable for magnetic disks

Indexed Sequential like an index in the back of a book, contains pointers to the various blocks. To find a record in the file, we first search the index and then use the pointer to access the file directly and to find the desired record. Allows records to be accessed directly or sequentially. Direct access ability provides vastly superior (average) access times. The fact that several tables must be stored for the index makes for a considerable storage overhead. Access methods

Directory Structure Directories maintain information about files: For a large number of files, may want a directory structure - directories under directories. Both the directory structure and the files reside on disk

Directory Operations List directory contents Search for a file Create a file Delete a file Rename a file Traverse the file system

Directory Structure Single-Level Directory A single directory for all users Called the root directory Two-Level Directory Separate directory for each user Introduces the notion of a path name Can have the same file name for different user Efficient searching Tree Structured Directory Efficient searching Grouping Capability Current directory (working directory) cd /spell/mail/prog

Protection File owner/creator should be able to control: what can be done by whom Types of access Read Write Execute Append Delete List

Mode of access: read, write, execute Access Lists and Groups Three classes of users RWX a) owner access 7 1 1 1 RWX b) group access 6 1 1 0 RWX c) public access 1 0 0 1 Ask manager to create a group (unique name), say G, and add some users to the group. For a particular file (say game) or subdirectory, define an appropriate access. owner group public Attach a group to a file chmod 761 game chgrp G game

Windows 7 Access-Control List Management

3. I/O systems?????

A Typical PC Bus Structure

Device I/O Port Locations on PCs (partial)