RAID, Programmed I/O, Interrupt Driven I/O, DMA, Operating System

Slides:



Advertisements
Similar presentations
I/O Management and Disk Scheduling
Advertisements

I/O Management and Disk Scheduling Chapter 11. I/O Driver OS module which controls an I/O device hides the device specifics from the above layers in the.
What is RAID Redundant Array of Independent Disks.
Faculty of Information Technology Department of Computer Science Computer Organization Chapter 7 External Memory Mohammad Sharaf.
RAID (Redundant Arrays of Independent Disks). Disk organization technique that manages a large number of disks, providing a view of a single disk of High.
Magnetic Disk Magnetic disks are the foundation of external memory on virtually all computer systems. A disk is a circular platter constructed of.
I/O Management and Disk Scheduling
RAID Redundant Array of Independent Disks
CS 6560: Operating Systems Design
REDUNDANT ARRAY OF INEXPENSIVE DISCS RAID. What is RAID ? RAID is an acronym for Redundant Array of Independent Drives (or Disks), also known as Redundant.
Chapter 1 and 2 Computer System and Operating System Overview
Device Management.
Disks CS 416: Operating Systems Design, Spring 2001 Department of Computer Science Rutgers University
1 I/O Management in Representative Operating Systems.
I/O Management and Disk Scheduling (Chapter 11)
RAID Systems CS Introduction to Operating Systems.
RAID Ref: Stallings. Introduction The rate in improvement in secondary storage performance has been considerably less than the rate for processors and.
CS 346 – Chapter 10 Mass storage –Advantages? –Disk features –Disk scheduling –Disk formatting –Managing swap space –RAID.
CS 352 : Computer Organization and Design University of Wisconsin-Eau Claire Dan Ernst Storage Systems.
CSE 321b Computer Organization (2) تنظيم الحاسب (2) 3 rd year, Computer Engineering Winter 2015 Lecture #4 Dr. Hazem Ibrahim Shehata Dept. of Computer.
Redundant Array of Independent Disks
L/O/G/O External Memory Chapter 3 (C) CS.216 Computer Architecture and Organization.
N-Tier Client/Server Architectures Chapter 4 Server - RAID Copyright 2002, Dr. Ken Hoganson All rights reserved. OS Kernel Concept RAID – Redundant Array.
Lecture 9 of Advanced Databases Storage and File Structure (Part II) Instructor: Mr.Ahmed Al Astal.
Redundant Array of Inexpensive Disks aka Redundant Array of Independent Disks (RAID) Modified from CCT slides.
Chapter 11 I/O Management and Disk Scheduling Patricia Roy Manatee Community College, Venice, FL ©2008, Prentice Hall Operating Systems: Internals and.
1 I/O Management and Disk Scheduling Chapter Categories of I/O Devices Human readable Used to communicate with the user Printers Video display terminals.
1 IO Management and Disk Scheduling Chapter Categories of I/O Devices n Human readable u used to communicate with the user u video display terminals.
1 I/O Management and Disk Scheduling Chapter
© Janice Regan, CMPT 300, May CMPT 300 Introduction to Operating Systems Principles of I/0 hardware.
CE Operating Systems Lecture 20 Disk I/O. Overview of lecture In this lecture we will look at: Disk Structure Disk Scheduling Disk Management Swap-Space.
1 I/O Management and Disk Scheduling Chapter Categories of I/O Devices Human readable –Used to communicate with the user –Printers –Video display.
Redundant Array of Independent Disks.  Many systems today need to store many terabytes of data.  Don’t want to use single, large disk  too expensive.
The concept of RAID in Databases By Junaid Ali Siddiqui.
I/O Management and Disk Scheduling Chapter 11. Categories of I/O Devices Human readable Used to communicate with the user  Printers, Display terminals,
IT3002 Computer Architecture
Part IV I/O System Chapter 12: Mass Storage Structure.
Chapter 11 I/O Management and Disk Scheduling Dave Bremer Otago Polytechnic, NZ ©2008, Prentice Hall Operating Systems: Internals and Design Principles,
RAID Technology By: Adarsha A,S 1BY08A03. Overview What is RAID Technology? What is RAID Technology? History of RAID History of RAID Techniques/Methods.
Network-Attached Storage. Network-attached storage devices Attached to a local area network, generally an Ethernet-based network environment.
Silberschatz, Galvin and Gagne ©2013 Operating System Concepts – 9 th Edition Chapter 10: Mass-Storage Systems.
I/O Errors 1 Computer Organization II © McQuain RAID Redundant Array of Inexpensive (Independent) Disks – Use multiple smaller disks (c.f.
1 Chapter 11 I/O Management and Disk Scheduling Patricia Roy Manatee Community College, Venice, FL ©2008, Prentice Hall Operating Systems: Internals and.
CS Introduction to Operating Systems
Chapter 13: I/O Systems Modified by Dr. Neerja Mhaskar for CS 3SH3.
I/O SYSTEMS MANAGEMENT Krishna Kumar Ahirwar ( )
Multiple Platters.
External Memory.
I/O System Chapter 5 Designed by .VAS.
… General Decoder for a Linear Block Code … …
Vladimir Stojanovic & Nicholas Weaver
BIC 10503: COMPUTER ARCHITECTURE
RAID RAID Mukesh N Tekwani
ICOM 6005 – Database Management Systems Design
Module 2: Computer-System Structures
Overview Continuation from Monday (File system implementation)
Operating Systems.
CSE 451: Operating Systems Winter 2009 Module 13 Redundant Arrays of Inexpensive Disks (RAID) and OS structure Mark Zbikowski Gary Kimura 1.
TECHNICAL SEMINAR PRESENTATION
Process Description and Control
RAID Redundant Array of Inexpensive (Independent) Disks
UNIT IV RAID.
Operating System Chapter 11. I/O Management and Disk Scheduling
Mark Zbikowski and Gary Kimura
Module 2: Computer-System Structures
RAID RAID Mukesh N Tekwani April 23, 2019
Module 2: Computer-System Structures
Module 2: Computer-System Structures
Presentation transcript:

RAID, Programmed I/O, Interrupt Driven I/O, DMA, Operating System Lecture 5 RAID, Programmed I/O, Interrupt Driven I/O, DMA, Operating System

RAID industry has agreed on a standardized scheme for multiple-disk database design, known as RAID (Redundant Array of Independent Disks). The RAID scheme consists of seven levels, zero through six. These levels do not imply a hierarchical relationship but designate different design architectures

RAID Cont RAID is a set of physical disk drives viewed by the operating system as a single logical drive. Data are distributed across the physical drives of an array in a scheme known as striping, described subsequently. Redundant disk capacity is used to store parity information, which guarantees data recoverability in case of a disk failure.

RAID level 0 RAID level 0 is not a true member of the RAID family because it does not include redundancy to improve performance. For RAID 0, the user and system data are distributed across all of the disks in the array.

Performance parameters HIGH DATA TRANSFER CAPACITY This require high speed data buses HIGH I/O REQUEST RATE This requires large data blocks

RAID Level 1 in RAID 1, redundancy is achieved by the simple expedient of duplicating all the data. There are a number of positive aspects to the RAID 1 organization: 1. A read request can be serviced by either of the two disks that contains the requested data, whichever one involves the minimum seek time plus rotational latency. 2. A write request requires that both corresponding strips be updated, but this can be done in parallel. 3. Recovery from a failure is simple. When a drive fails, the data may still be accessed from the second drive. The principal disadvantage of RAID 1 is the cost; it requires twice the disk space of the logical disk that it supports. In a transaction-oriented environment, RAID 1 can achieve high I/O request rates if the bulk of the requests are reads.

RAID Level 2 RAID levels 2 and 3 make use of a parallel access technique. In a parallel access array, all member disks participate in the execution of every I/O request. Typically, the spindles of the individual drives are synchronized so that each disk head is in the same position on each disk at any given time. In the case of RAID 2 and 3, the strips are very small, often as small as a single byte or word. With RAID 2, an error-correcting code is calculated across corresponding bits on each data disk, a Hamming code is used, which is able to correct single-bit errors and detect double-bit errors. RAID 2 is overkill and is not implemented.

RAID Level 3 RAID 3 is organized in a similar fashion to RAID 2. The difference is that RAID 3 requires only a single redundant disk, no matter how large the disk array. RAID 3 employs parallel access, with data distributed in small strips. Instead of an error-correcting code, a simple parity bit is computed for the set of individual bits in the same position on all of the data disks. Data reconstruction is simple. Consider an array of five drives in which X0 through X3 contain data and X4 is the parity disk.The parity for the ith bit is calculated as follows: where is exclusive-OR function. X4(i) = X3(i) { X2(i) { X1(i) { X0(i) Suppose that drive X1 has failed. If we add X4(i) X1(i) to both sides of the preceding equation, we get X1(i) = X4(i) { X3(i) { X2(i) { X0(i) Thus, the contents of each strip of data on X1 can be regenerated from the contents of the corresponding strips on the remaining disks in the array. data are striped in very small strips, RAID 3 can achieve very high data transfer rates, On the other hand, only one I/O request can be executed at a time. Thus, in a transaction-oriented environment, performance suffers.

RAID Level 4 RAID levels 4 through 6 make use of an independent access technique. In an independent access array, each member disk operates independently, so that separate I/O requests can be satisfied in parallel. Suitable for applications that require high I/O request rates and are relatively less suited for applications that require high data transfer rates. As in the other RAID schemes, data striping is used. In the case of RAID 4 through 6, the strips are relatively large. RAID 4 involves a write penalty when an I/O write request of small size is performed. Each time that a write occurs, the array management software must update not only the user data but also the corresponding parity bits.

RAID 5 RAID 5 is organized in a similar fashion to RAID 4. The difference is that RAID 5 distributes the parity strips across all disks. The distribution of parity strips across all drives avoids the potential I/O bottleneck found in RAID 4.

RAID 6 In the RAID 6 scheme, two different parity calculations are carried out and stored in separate blocks on different disks. P and Q are two different data check algorithms. One of the two is the exclusive-OR calculation used in RAID 4 and 5. But the other is an independent data check algorithm. This makes it possible to regenerate data even if two disks containing user data fail. The advantage of RAID 6 is that it provides extremely high data availability.

I/O Module There are a wide variety of peripherals with various methods of operation. The data transfer rate of peripherals is often much slower than that of the memory or processor. On the other hand, the data transfer rate of some peripherals is faster than that of the memory or processor. Peripherals often use different data formats and word lengths than the computer to which they are attached.

I/O Operations Three techniques are possible for I/O operations: With programmed I/O, data are exchanged between the processor and the I/O module. When the processor issues a command to the I/O module, it must wait until the I/O operation is complete. With interrupt-driven I/O, the processor issues an I/O command, continues to execute other instructions, and is interrupted by the I/O module when the latter has completed its work . The alternative is known as direct memory access (DMA). In this mode, the I/O module and main memory exchange data directly, without processor involvement.

Programmed I/O With programmed I/O, the I/O module will perform the requested action and then set the appropriate bits in the I/O status register . The I/O module takes no further action to alert the processor. In particular, it does not interrupt the processor. Thus, it is the responsibility of the processor periodically to check the status of the I/O module until it finds that the operation is complete.

Interrupt Driven I/O An alternative is for the processor to issue an I/O command to a module and then go on to do some other useful work. The I/O module will then interrupt the processor to request service when it is ready to exchange data with the processor.

Direct Memory Access (DMA) When the processor wishes to read or write a block of data, it issues a command to the DMA module, by sending to the DMA module the following information: It provides the address and locations of data to be read and write. The processor then continues with other work. It has delegated this I/O operation to the DMA module. The DMA module transfers the entire block of data, one word at a time, directly to or from memory, without going through the processor. When the transfer is complete, the DMA module sends an interrupt signal to the processor. Thus, the processor is involved only at the beginning and end of the transfer .

Operating System The operating system (OS) is the software that controls the execution of programs on a processor and that manages the processor’s resources. A number of the functions performed by the OS, including process scheduling and memory management.

Types of OS Batch Time Sharing Multiprogramming An Overview: Windows Linux/UNIX MAC OS

The Initial paradigm Batch processing Impersonal computing

Example Paradigm Shifts Batch processing Time-sharing Interactive computing

Example Paradigm Shifts Batch processing Timesharing Networking @#$% ! ??? Community computing

Example Paradigm Shifts Batch processing Timesharing Networking Graphical displays Move this file here, and copy this to there. C…P… filename dot star… or was it R…M? % foo.bar ABORT dumby!!! Direct manipulation

Scheduling Long Term Mid term Short Term

Memory Management Swapping Partitioning Fixed Size vs. Variable Sized Compactation Paging Demand Paging Page Fault Page Replacement Thrashing Segmentation