Operating Systems Lecture 02: Computer System Overview Anda Iamnitchi [email protected].

39
Operating Systems Operating Systems Lecture 02: Lecture 02: Computer System Overview Computer System Overview Anda Iamnitchi [email protected]

Transcript of Operating Systems Lecture 02: Computer System Overview Anda Iamnitchi [email protected].

Page 1: Operating Systems Lecture 02: Computer System Overview Anda Iamnitchi anda@cse.usf.edu.

Operating SystemsOperating SystemsLecture 02: Lecture 02:

Computer System Overview Computer System Overview Anda Iamnitchi

[email protected]

Page 2: Operating Systems Lecture 02: Computer System Overview Anda Iamnitchi anda@cse.usf.edu.

TodayToday• Announcements

– No class Monday (Labor Day)– Video classes on Canvas on Wednesday (09.04) and Monday

(09.09)– First assignment posted and due Wednesday 09.04 by 3pm

• Finish chapter 1:– Interrupts– Memory Hierarchy– Cache– Symmetric Multiprocessors and Multicore – Direct Memory Access

• Solution today’s quiz– Grade yourself and hand it to me

Page 3: Operating Systems Lecture 02: Computer System Overview Anda Iamnitchi anda@cse.usf.edu.

3

Interrupts: Short I/O WaitInterrupts: Short I/O Wait

Page 4: Operating Systems Lecture 02: Computer System Overview Anda Iamnitchi anda@cse.usf.edu.

Transfer of Control via InterruptsTransfer of Control via Interrupts

4

Page 5: Operating Systems Lecture 02: Computer System Overview Anda Iamnitchi anda@cse.usf.edu.

Instruction Cycle With InterruptsInstruction Cycle With Interrupts

5

Page 6: Operating Systems Lecture 02: Computer System Overview Anda Iamnitchi anda@cse.usf.edu.

6

Program Timing: Short I/O WaitProgram Timing: Short I/O Wait

Page 7: Operating Systems Lecture 02: Computer System Overview Anda Iamnitchi anda@cse.usf.edu.

7

Program Timing: Long I/O waitProgram Timing: Long I/O wait

Page 8: Operating Systems Lecture 02: Computer System Overview Anda Iamnitchi anda@cse.usf.edu.

Simple Interrupt ProcessingSimple Interrupt Processing

8

Page 9: Operating Systems Lecture 02: Computer System Overview Anda Iamnitchi anda@cse.usf.edu.

How to Deal with Multiple How to Deal with Multiple Interrupts?Interrupts?

9

Page 10: Operating Systems Lecture 02: Computer System Overview Anda Iamnitchi anda@cse.usf.edu.

TransferTransfer of Control With of Control With Multiple Interrupts:Multiple Interrupts:

10

Page 11: Operating Systems Lecture 02: Computer System Overview Anda Iamnitchi anda@cse.usf.edu.

11

Page 12: Operating Systems Lecture 02: Computer System Overview Anda Iamnitchi anda@cse.usf.edu.

Example Time Sequence Example Time Sequence of Multiple Interruptsof Multiple Interrupts

12

I/O interrupts: a printer, a disk, and a communications line, with priorities of 2, 4, and 5, respectively.

Page 13: Operating Systems Lecture 02: Computer System Overview Anda Iamnitchi anda@cse.usf.edu.
Page 14: Operating Systems Lecture 02: Computer System Overview Anda Iamnitchi anda@cse.usf.edu.

• Major constraints in memory–Amount– Speed–Cost

• Memory must be able to keep up with the processor

• Cost of memory must be reasonable in relationship to the other components

Page 15: Operating Systems Lecture 02: Computer System Overview Anda Iamnitchi anda@cse.usf.edu.

Going down the hierarchy:

decreasing cost per bitincreasing capacityincreasing access timedecreasing frequency of access to the memory by the processor

Page 16: Operating Systems Lecture 02: Computer System Overview Anda Iamnitchi anda@cse.usf.edu.
Page 17: Operating Systems Lecture 02: Computer System Overview Anda Iamnitchi anda@cse.usf.edu.

• Invisible to the processors, programmer, OS • Interacts with other memory management hardware• Reasons for its existence:– Processor must access memory at least once per

instruction cycle– Processor execution is limited by memory cycle time– Exploit the principle of locality with a small, fast

memory

Page 18: Operating Systems Lecture 02: Computer System Overview Anda Iamnitchi anda@cse.usf.edu.

• Contains a copy of a portion of main memory• Processor first checks cache

– If not found, a block of memory is read into cache• Because of locality of reference, it is likely that many of

the future memory references will be to other bytes in the block

Page 19: Operating Systems Lecture 02: Computer System Overview Anda Iamnitchi anda@cse.usf.edu.

Cache and Cache and Main Main

MemoryMemory

Page 20: Operating Systems Lecture 02: Computer System Overview Anda Iamnitchi anda@cse.usf.edu.

Cache/Main-Memory StructureCache/Main-Memory Structure

Page 21: Operating Systems Lecture 02: Computer System Overview Anda Iamnitchi anda@cse.usf.edu.

Cache Read Cache Read OperationOperation

Page 22: Operating Systems Lecture 02: Computer System Overview Anda Iamnitchi anda@cse.usf.edu.

CACHE CACHE DESIGNDESIGN

Page 23: Operating Systems Lecture 02: Computer System Overview Anda Iamnitchi anda@cse.usf.edu.

Mapping FunctionMapping Function

∗ Determines which cache location the block will occupy

Page 24: Operating Systems Lecture 02: Computer System Overview Anda Iamnitchi anda@cse.usf.edu.

Replacement AlgorithmReplacement Algorithm

– Chooses which block to replace when a new block is to be loaded into the cache

– Least Recently Used (LRU) Algorithm– effective strategy is to replace a block that has been in

the cache the longest with no references to it– hardware mechanisms are needed to identify the least

recently used block

Page 25: Operating Systems Lecture 02: Computer System Overview Anda Iamnitchi anda@cse.usf.edu.

Write PolicyWrite Policy

Page 26: Operating Systems Lecture 02: Computer System Overview Anda Iamnitchi anda@cse.usf.edu.

SMP AND MULTICORESMP AND MULTICORE

Page 27: Operating Systems Lecture 02: Computer System Overview Anda Iamnitchi anda@cse.usf.edu.

Symmetric Multiprocessors Symmetric Multiprocessors (SMP)(SMP)

• A stand-alone computer system with the following characteristics:– two or more similar processors of comparable capability– processors share the same main memory and are

interconnected by a bus or other internal connection scheme– processors share access to I/O devices– all processors can perform the same functions– the system is controlled by an integrated operating system

that provides interaction between processors and their programs at the job, task, file, and data element levels

Page 28: Operating Systems Lecture 02: Computer System Overview Anda Iamnitchi anda@cse.usf.edu.
Page 29: Operating Systems Lecture 02: Computer System Overview Anda Iamnitchi anda@cse.usf.edu.

SMP OrganizationSMP Organization

Figure 1.19 Symmetric Multiprocessor Organization

Page 30: Operating Systems Lecture 02: Computer System Overview Anda Iamnitchi anda@cse.usf.edu.

Multicore ComputerMulticore Computer

• Also known as a chip multiprocessor• Combines two or more processors (cores) on a

single piece of silicon (die)• each core consists of all of the components of an

independent processor

• In addition, multicore chips also include L2 cache and in some cases L3 cache

Page 31: Operating Systems Lecture 02: Computer System Overview Anda Iamnitchi anda@cse.usf.edu.

Intel Intel Core i7Core i7

Figure 1.20 Intel Corei7 Block Diagram

Page 32: Operating Systems Lecture 02: Computer System Overview Anda Iamnitchi anda@cse.usf.edu.
Page 33: Operating Systems Lecture 02: Computer System Overview Anda Iamnitchi anda@cse.usf.edu.

I/O TechniquesI/O Techniques

When the processor encounters an instruction related to I/O, it executes that instruction by issuing a command to the appropriate I/O module

Page 34: Operating Systems Lecture 02: Computer System Overview Anda Iamnitchi anda@cse.usf.edu.

Programmed I/OProgrammed I/O

• The I/O module performs the requested action then sets the appropriate bits in the I/O status register

• The processor periodically checks the status of the I/O module until it determines the instruction is complete

• With programmed I/O the performance level of the entire system is severely degraded

Page 35: Operating Systems Lecture 02: Computer System Overview Anda Iamnitchi anda@cse.usf.edu.

Interrupt-Driven I/OInterrupt-Driven I/O

Page 36: Operating Systems Lecture 02: Computer System Overview Anda Iamnitchi anda@cse.usf.edu.

Interrupt-Driven I/OInterrupt-Driven I/ODrawbacksDrawbacks

• Transfer rate is limited by the speed with which the processor can test and service a device

• The processor is tied up in managing an I/O transfer

a number of instructions must be executed for each I/O transfer

Page 37: Operating Systems Lecture 02: Computer System Overview Anda Iamnitchi anda@cse.usf.edu.

Direct Memory AccessDirect Memory Access (DMA) (DMA)

Performed by a separate module on the system bus or incorporated into an I/O module

Page 38: Operating Systems Lecture 02: Computer System Overview Anda Iamnitchi anda@cse.usf.edu.

• Transfers the entire block of data directly to and from memory without going through the processor

• processor is involved only at the beginning and end of the transfer• processor executes more slowly during a transfer when

processor access to the bus is required

• More efficient than interrupt-driven or programmed I/O

Page 39: Operating Systems Lecture 02: Computer System Overview Anda Iamnitchi anda@cse.usf.edu.

SummarySummary• Basic Elements

• processor, main memory, I/O modules, system bus• GPUs, SIMD, DSPs, SoC• Instruction execution

» processor-memory, processor-I/O, data processing, control

• Interrupt/Interrupt Processing• Memory Hierarchy• Cache/cache principles and designs• Multiprocessor/multicore