segmentation & o/s input/output
DESCRIPTION
Segmentation & O/S Input/Output. Chapter 4 & 5 Tuesday, April 3 , 2007. Today’s Schedule. Memory Management - Chapter 4 Segmentation Multics & Intel Pentium – Segmentation & Paging Input/Output Device Types Goals of I/O Devices for O/S Layers of I/O s/w System. Objectives. - PowerPoint PPT PresentationTRANSCRIPT
Segmentation & O/S Input/Output
Chapter 4 & 5
Tuesday, April 3 , 2007
Today’s Schedule Memory Management - Chapter 4
Segmentation Multics & Intel Pentium – Segmentation & Paging
Input/Output Device Types Goals of I/O Devices for O/S Layers of I/O s/w System
Objectives
You will be able to describe: Advantages of Segmentation for Memory
management Types of I/O Devices Goals of I/O Software from O/S view Layers of I/O s/w and what happens in
each
What is Segmentation? Having two or more separate virtual
address spaces Provide several independent address spaces
called segments Each segment goes from 0 to some max Segments can have varying lengths Length can change during execution Programmer will now have to specify the
segment number
Can now use one segment for shared libraries
Segmentation
One-dimensional address space with growing tables One table may bump into another
Segmentation – Logical View
Allows each table to grow or shrink, independently
Segmentation vs Paging?
Paging is incidental
Page-data is heterogeneous
Statically Sized
Segments are intentional
Segment data is homogenous
Dynamically Sized
Pure Segmentation
Segment size varies and changes External Fragmentation
Also called “Checkerboarding”Swapping large segments for smallResolution: Compaction
Implementation of Pure Segmentation
Removal of the checkerboarding by compaction
MULTICS Implementation
Similar to Multi-Level Paging Address contains Segment # for table Segment table holds Segment Descriptors Descriptor contains page table location Standard Page Table
Has 218 segments 216 Pages With 36-bit entries 234 Total Pages
Segmentation with Paging: MULTICS
Descriptor segment points to page tables Segment descriptor – numbers are field lengths
Segmentation with Paging: MULTICS
A 34-bit MULTICS virtual address
Segmentation with Paging: MULTICS
Conversion of a 2-part MULTICS address into a main memory address
Input & Output Device types
Block DeviceStores fixed size block Independently addressabledisks
Character DevicesStream of charactersNo seek operation, not addressableKeyboard, printer, n/w interface
I/O Hardware
Some typical device, network, and data base rates
Device Controllers I/O devices have components:
mechanical component electronic component
The electronic component is the device controllermay be able to handle multiple devices
Controller's tasksconvert serial bit stream to block of bytesperform error correction as necessarymake available to main memory
Goals of I/O Software Device independence
programs can access any I/O device without specifying device in advance
· (floppy, hard drive, or CD-ROM)
Uniform namingname of a file or device a string or an integernot depending on which machine
Error handlinghandle as close to the hardware as possible
Goals of I/O Software (cont’d) Synchronous vs. asynchronous
transfersblocked transfers vs. interrupt-driven
Bufferingdata coming off a device cannot be stored
in final destination Sharable vs. dedicated devices
disks are sharable tape drives would not be
I/O Software Layers
Layers of the I/O Software System
Interrupt Handlers
Interrupt handlers are best hidden have driver starting an I/O operation block until
interrupt notifies of completion
Interrupt procedure does its task then unblocks driver that started it
Device Drivers
Logical position of device drivers is shown here Communications between drivers and device controllers goes
over the bus
Device-Independent I/O Software
Functions of the device-independent I/O software
Uniform interfacing for device drivers
Buffering
Error reporting
Allocating and releasing dedicated devices
Providing a device-independent block size
Device-Independent I/O Software
(a) Without a standard driver interface
(b) With a standard driver interface
Device-Independent I/O Software
(a) Unbuffered input(b) Buffering in user space(c) Buffering in the kernel followed by copying to user space(d) Double buffering in the kernel
Summary User-Space I/O Software
Layers of the I/O system and the main functions of each layer
Summary
Advantages of Segmentation for Memory management
Types of I/O Devices Goals of I/O Software from O/S view Layers of I/O s/w and what happens in
each
Thursday, April 5
Read Chapter 55.1.1 & 5.1.2 I/O Devices5.2.1 Goals of I/O in O/S5.3.1 to 5.3.35.4 Disks