![Page 1: Operating Systems Lecture 02: Computer System Overview Anda Iamnitchi anda@cse.usf.edu](https://reader036.vdocuments.mx/reader036/viewer/2022062308/56649eb55503460f94bbe019/html5/thumbnails/1.jpg)
Operating SystemsOperating SystemsLecture 02: Lecture 02:
Computer System Overview Computer System Overview Anda Iamnitchi
![Page 2: Operating Systems Lecture 02: Computer System Overview Anda Iamnitchi anda@cse.usf.edu](https://reader036.vdocuments.mx/reader036/viewer/2022062308/56649eb55503460f94bbe019/html5/thumbnails/2.jpg)
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](https://reader036.vdocuments.mx/reader036/viewer/2022062308/56649eb55503460f94bbe019/html5/thumbnails/3.jpg)
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](https://reader036.vdocuments.mx/reader036/viewer/2022062308/56649eb55503460f94bbe019/html5/thumbnails/4.jpg)
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](https://reader036.vdocuments.mx/reader036/viewer/2022062308/56649eb55503460f94bbe019/html5/thumbnails/5.jpg)
Instruction Cycle With InterruptsInstruction Cycle With Interrupts
5
![Page 6: Operating Systems Lecture 02: Computer System Overview Anda Iamnitchi anda@cse.usf.edu](https://reader036.vdocuments.mx/reader036/viewer/2022062308/56649eb55503460f94bbe019/html5/thumbnails/6.jpg)
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](https://reader036.vdocuments.mx/reader036/viewer/2022062308/56649eb55503460f94bbe019/html5/thumbnails/7.jpg)
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](https://reader036.vdocuments.mx/reader036/viewer/2022062308/56649eb55503460f94bbe019/html5/thumbnails/8.jpg)
Simple Interrupt ProcessingSimple Interrupt Processing
8
![Page 9: Operating Systems Lecture 02: Computer System Overview Anda Iamnitchi anda@cse.usf.edu](https://reader036.vdocuments.mx/reader036/viewer/2022062308/56649eb55503460f94bbe019/html5/thumbnails/9.jpg)
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](https://reader036.vdocuments.mx/reader036/viewer/2022062308/56649eb55503460f94bbe019/html5/thumbnails/10.jpg)
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](https://reader036.vdocuments.mx/reader036/viewer/2022062308/56649eb55503460f94bbe019/html5/thumbnails/11.jpg)
11
![Page 12: Operating Systems Lecture 02: Computer System Overview Anda Iamnitchi anda@cse.usf.edu](https://reader036.vdocuments.mx/reader036/viewer/2022062308/56649eb55503460f94bbe019/html5/thumbnails/12.jpg)
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](https://reader036.vdocuments.mx/reader036/viewer/2022062308/56649eb55503460f94bbe019/html5/thumbnails/13.jpg)
![Page 14: Operating Systems Lecture 02: Computer System Overview Anda Iamnitchi anda@cse.usf.edu](https://reader036.vdocuments.mx/reader036/viewer/2022062308/56649eb55503460f94bbe019/html5/thumbnails/14.jpg)
• 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](https://reader036.vdocuments.mx/reader036/viewer/2022062308/56649eb55503460f94bbe019/html5/thumbnails/15.jpg)
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](https://reader036.vdocuments.mx/reader036/viewer/2022062308/56649eb55503460f94bbe019/html5/thumbnails/16.jpg)
![Page 17: Operating Systems Lecture 02: Computer System Overview Anda Iamnitchi anda@cse.usf.edu](https://reader036.vdocuments.mx/reader036/viewer/2022062308/56649eb55503460f94bbe019/html5/thumbnails/17.jpg)
• 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](https://reader036.vdocuments.mx/reader036/viewer/2022062308/56649eb55503460f94bbe019/html5/thumbnails/18.jpg)
• 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](https://reader036.vdocuments.mx/reader036/viewer/2022062308/56649eb55503460f94bbe019/html5/thumbnails/19.jpg)
Cache and Cache and Main Main
MemoryMemory
![Page 20: Operating Systems Lecture 02: Computer System Overview Anda Iamnitchi anda@cse.usf.edu](https://reader036.vdocuments.mx/reader036/viewer/2022062308/56649eb55503460f94bbe019/html5/thumbnails/20.jpg)
Cache/Main-Memory StructureCache/Main-Memory Structure
![Page 21: Operating Systems Lecture 02: Computer System Overview Anda Iamnitchi anda@cse.usf.edu](https://reader036.vdocuments.mx/reader036/viewer/2022062308/56649eb55503460f94bbe019/html5/thumbnails/21.jpg)
Cache Read Cache Read OperationOperation
![Page 22: Operating Systems Lecture 02: Computer System Overview Anda Iamnitchi anda@cse.usf.edu](https://reader036.vdocuments.mx/reader036/viewer/2022062308/56649eb55503460f94bbe019/html5/thumbnails/22.jpg)
CACHE CACHE DESIGNDESIGN
![Page 23: Operating Systems Lecture 02: Computer System Overview Anda Iamnitchi anda@cse.usf.edu](https://reader036.vdocuments.mx/reader036/viewer/2022062308/56649eb55503460f94bbe019/html5/thumbnails/23.jpg)
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](https://reader036.vdocuments.mx/reader036/viewer/2022062308/56649eb55503460f94bbe019/html5/thumbnails/24.jpg)
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](https://reader036.vdocuments.mx/reader036/viewer/2022062308/56649eb55503460f94bbe019/html5/thumbnails/25.jpg)
Write PolicyWrite Policy
![Page 26: Operating Systems Lecture 02: Computer System Overview Anda Iamnitchi anda@cse.usf.edu](https://reader036.vdocuments.mx/reader036/viewer/2022062308/56649eb55503460f94bbe019/html5/thumbnails/26.jpg)
SMP AND MULTICORESMP AND MULTICORE
![Page 27: Operating Systems Lecture 02: Computer System Overview Anda Iamnitchi anda@cse.usf.edu](https://reader036.vdocuments.mx/reader036/viewer/2022062308/56649eb55503460f94bbe019/html5/thumbnails/27.jpg)
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](https://reader036.vdocuments.mx/reader036/viewer/2022062308/56649eb55503460f94bbe019/html5/thumbnails/28.jpg)
![Page 29: Operating Systems Lecture 02: Computer System Overview Anda Iamnitchi anda@cse.usf.edu](https://reader036.vdocuments.mx/reader036/viewer/2022062308/56649eb55503460f94bbe019/html5/thumbnails/29.jpg)
SMP OrganizationSMP Organization
Figure 1.19 Symmetric Multiprocessor Organization
![Page 30: Operating Systems Lecture 02: Computer System Overview Anda Iamnitchi anda@cse.usf.edu](https://reader036.vdocuments.mx/reader036/viewer/2022062308/56649eb55503460f94bbe019/html5/thumbnails/30.jpg)
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](https://reader036.vdocuments.mx/reader036/viewer/2022062308/56649eb55503460f94bbe019/html5/thumbnails/31.jpg)
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](https://reader036.vdocuments.mx/reader036/viewer/2022062308/56649eb55503460f94bbe019/html5/thumbnails/32.jpg)
![Page 33: Operating Systems Lecture 02: Computer System Overview Anda Iamnitchi anda@cse.usf.edu](https://reader036.vdocuments.mx/reader036/viewer/2022062308/56649eb55503460f94bbe019/html5/thumbnails/33.jpg)
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](https://reader036.vdocuments.mx/reader036/viewer/2022062308/56649eb55503460f94bbe019/html5/thumbnails/34.jpg)
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](https://reader036.vdocuments.mx/reader036/viewer/2022062308/56649eb55503460f94bbe019/html5/thumbnails/35.jpg)
Interrupt-Driven I/OInterrupt-Driven I/O
![Page 36: Operating Systems Lecture 02: Computer System Overview Anda Iamnitchi anda@cse.usf.edu](https://reader036.vdocuments.mx/reader036/viewer/2022062308/56649eb55503460f94bbe019/html5/thumbnails/36.jpg)
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](https://reader036.vdocuments.mx/reader036/viewer/2022062308/56649eb55503460f94bbe019/html5/thumbnails/37.jpg)
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](https://reader036.vdocuments.mx/reader036/viewer/2022062308/56649eb55503460f94bbe019/html5/thumbnails/38.jpg)
• 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](https://reader036.vdocuments.mx/reader036/viewer/2022062308/56649eb55503460f94bbe019/html5/thumbnails/39.jpg)
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