1 advanced operating systems - fall 2009 lecture 2 – january 12, 2009 dan c. marinescu email:...
TRANSCRIPT
1
Advanced Operating Systems - Fall 2009Lecture 2 – January 12, 2009
Dan C. Marinescu
Email: [email protected]
Office: HEC 439 B
2
Class organization (cont’d)
Class webpage: www.cs.ucf.edu/~dcm/Teaching/OperatingSystems
References: “Operating system concepts” by Silberschatz,
Gavin, Gagne Selected papers.
Office hours: M, Wd, 3:00 – 4:30 PM
3
Last, Current, Next Lecture
Last time: “The Big Picture” Today:
The relationship between physical systems and models
Layering Virtualization.
Next time: Operating Systems Structures
4
Physical Organization
Processor Main memory Auxiliary processors (channels, graphics
cards, etc.) Secondary storage (disks) I/O devices Busses
Common bus, Memory bus, USB
5
6
Processors
Clock rate: < 3 GHz Multiple functional units: integer, floating point, pixel. Performance: MIPS, Mflops L1 Cache Registers Different architectures Instruction set RISC, CISC (Intel) Multi-core Memory-mapped I/O
7
Processor support for OS functions
Instructions supporting atomic operations: Load and Test, Swap
Multiple execution modes: at least two Kernel User
Clock and Timers Interrupts Memory management support: paging and
segmentation.
8
Auxiliary processors
Channel I/O a high-performance input/output (I/O) architecture implemented with a custom processor, known as peripheral processor, I/O processor, I/O controller, or DMA controller. I/O Controller Hub (ICH) Intel 82801, an Intel microchip used on
motherboards with Intel chipsets. ICH10 southbridge (June 2008) with the Intel P45.
Graphic cards transform binary images into pixels that can be displayed on the screen. Main components: A motherboard connection for data and power A processor to decide what to do with each pixel on the screen Memory to hold information about each pixel and to temporarily store
completed pictures. A monitor connection.
How will the multi-cores change this?
9
Storage Hierarchy
10
Storage Attributes
11
Basic concepts
Abstractions and models. Universal computers.
Resource virtualization. Concurrency.
Physical Systems State of a system, a process, a computation.
12
The role of abstractions
Identify problems which require a solution: Physical devices operate at different speeds. Resource sharing.
Separate logical (conceptual) principles from the physical (practical) implementation.
Define logical structures that capture the properties of diverse physical systems.
13
Abstractions
Processes and Threads abstract programs in execution.
Pages and Segments support memory management.
Caching reduce the gap between memory access time and instruction execution time.
Multitasking hide the gap between the speed of processors and I/O devices.
Spooling simultaneous peripheral operations on-line Critical Section support resource sharing. Windows GUI for user-computer interactions
14
Abstractions versus physical reality
Physical properties of systems play an important role: Speed Volume/quantity Physical dimensions Power consumption Reliability
Time difficult to deal in programming models and abstractions.
15
Models
Retain the “relevant” properties of a system. Examples:
Service-oriented OS: different functions implemented as services and available through system calls.
The Internet is based upon the “best-effort” model Layered models – separation of functions; each
layer communicates only with the adjacent ones. Layered model of the OS Communication architecture
16
17
Virtualization Techniques to:
facilitate the development of portable software (JVM); overcome physical limitations of the components of systems; provide uniform access to a distributed, heterogeneous, distinct, or
non-uniform, collection of resources. A virtual resource management system is typically a layer of
software and the associated hardware support to map virtual to physical resources. For example: Virtual memory allows uniform, contiguous addressing of physically
separate and non-contiguous memory and secondary storage areas. Virtual memory was developed around 1958 at the University of Manchester for the Atlas computer; all modern operating systems have a memory management system mapping virtual address spaces of several Gbytes to a physical memory of different size.
Software implementations of different types of RAID (Redundant Arrays of Inexpensive Disks) are supported by many operating systems including Microsoft's server operating systems and the Mac OS X Server.
Has the potential to increase system vulnerability
18
Virtual Machines
The resources of the physical computer are shared to create the virtual machines CPU scheduling can create the appearance that
users have their own processor Spooling and a file system can provide virtual card
readers and virtual line printers Windows A normal user time-sharing terminal serves as the
virtual machine operator’s console
19
20
VMware Architecture