chapter01 os7e
TRANSCRIPT
![Page 1: Chapter01 os7e](https://reader035.vdocuments.site/reader035/viewer/2022062218/58ed58641a28ab4d248b45ef/html5/thumbnails/1.jpg)
Chapter 1Computer
System OverviewSeventh Edition
By William Stallings
Operating
Systems:Internals
and Design
Principles
![Page 2: Chapter01 os7e](https://reader035.vdocuments.site/reader035/viewer/2022062218/58ed58641a28ab4d248b45ef/html5/thumbnails/2.jpg)
Operating Systems:Operating Systems:Internals and Design PrinciplesInternals and Design Principles
“No artifact designed by man is so convenient for this kind of functional description as a digital computer. Almost the only ones of its properties that are detectable in its behavior are the organizational properties. Almost no interesting statement that one can make about an operating computer bears any particular relation to the specific nature of the hardware. A computer is an organization of elementary functional components in which, to a high approximation, only the function performed by those components is relevant to the behavior of the whole system.”
THE SCIENCES OF THE ARTIFICIAL , Herbert Simon
![Page 3: Chapter01 os7e](https://reader035.vdocuments.site/reader035/viewer/2022062218/58ed58641a28ab4d248b45ef/html5/thumbnails/3.jpg)
Operating SystemOperating System Exploits the hardware resources of one or
more processors to provide a set of services to system users
Manages secondary memory and I/O devices
![Page 4: Chapter01 os7e](https://reader035.vdocuments.site/reader035/viewer/2022062218/58ed58641a28ab4d248b45ef/html5/thumbnails/4.jpg)
Basic ElementsBasic Elements
![Page 5: Chapter01 os7e](https://reader035.vdocuments.site/reader035/viewer/2022062218/58ed58641a28ab4d248b45ef/html5/thumbnails/5.jpg)
ProcessorProcessor
![Page 6: Chapter01 os7e](https://reader035.vdocuments.site/reader035/viewer/2022062218/58ed58641a28ab4d248b45ef/html5/thumbnails/6.jpg)
Main MemoryMain MemoryVolatileContents of the memory is lost when the computer is shut down
Referred to as real memory or primary memory
![Page 7: Chapter01 os7e](https://reader035.vdocuments.site/reader035/viewer/2022062218/58ed58641a28ab4d248b45ef/html5/thumbnails/7.jpg)
I/O ModulesI/O Modules
![Page 8: Chapter01 os7e](https://reader035.vdocuments.site/reader035/viewer/2022062218/58ed58641a28ab4d248b45ef/html5/thumbnails/8.jpg)
System BusSystem Bus
Provides for communication among processors, main memory, and I/O modules
![Page 9: Chapter01 os7e](https://reader035.vdocuments.site/reader035/viewer/2022062218/58ed58641a28ab4d248b45ef/html5/thumbnails/9.jpg)
Top-Level Top-Level ViewView
![Page 10: Chapter01 os7e](https://reader035.vdocuments.site/reader035/viewer/2022062218/58ed58641a28ab4d248b45ef/html5/thumbnails/10.jpg)
MicroprocessorMicroprocessorInvention that brought about desktop and handheld computing
Processor on a single chipFastest general purpose processorMultiprocessorsEach chip (socket) contains multiple processors (cores)
![Page 11: Chapter01 os7e](https://reader035.vdocuments.site/reader035/viewer/2022062218/58ed58641a28ab4d248b45ef/html5/thumbnails/11.jpg)
Graphical Processing Graphical Processing Units (GPUs)Units (GPUs)
Provide efficient computation on arrays of data using Single-Instruction Multiple Data (SIMD) techniques
Used for general numerical processing
Physics simulations for gamesComputations on large spreadsheets
![Page 12: Chapter01 os7e](https://reader035.vdocuments.site/reader035/viewer/2022062218/58ed58641a28ab4d248b45ef/html5/thumbnails/12.jpg)
Digital Signal Digital Signal ProcessorsProcessors
(DSPs)(DSPs)Deal with streaming signals such as audio or video
Used to be embedded in devices like modems
Encoding/decoding speech and video (codecs)
Support for encryption and security
![Page 13: Chapter01 os7e](https://reader035.vdocuments.site/reader035/viewer/2022062218/58ed58641a28ab4d248b45ef/html5/thumbnails/13.jpg)
System on a ChipSystem on a Chip(SoC)(SoC)
To satisfy the requirements of handheld devices, the microprocessor is giving way to the SoC
Components such as DSPs, GPUs, codecs and main memory, in addition to the CPUs and caches, are on the same chip
![Page 14: Chapter01 os7e](https://reader035.vdocuments.site/reader035/viewer/2022062218/58ed58641a28ab4d248b45ef/html5/thumbnails/14.jpg)
Instruction ExecutionInstruction ExecutionA program consists of a set of
instructions stored in memory
![Page 15: Chapter01 os7e](https://reader035.vdocuments.site/reader035/viewer/2022062218/58ed58641a28ab4d248b45ef/html5/thumbnails/15.jpg)
Basic Instruction CycleBasic Instruction Cycle
![Page 16: Chapter01 os7e](https://reader035.vdocuments.site/reader035/viewer/2022062218/58ed58641a28ab4d248b45ef/html5/thumbnails/16.jpg)
The processor fetches the instruction from memory
Program counter (PC) holds address of the instruction to be fetched next
PC is incremented after each fetch
![Page 17: Chapter01 os7e](https://reader035.vdocuments.site/reader035/viewer/2022062218/58ed58641a28ab4d248b45ef/html5/thumbnails/17.jpg)
Instruction Register Instruction Register (IR)(IR)
Fetched instruction is loaded into Instruction Register (IR)
Processor interprets the instruction and performs required action:
Processor-memory
Processor-I/O Data processing Control
![Page 18: Chapter01 os7e](https://reader035.vdocuments.site/reader035/viewer/2022062218/58ed58641a28ab4d248b45ef/html5/thumbnails/18.jpg)
Characteristics of a Characteristics of a Hypothetical MachineHypothetical Machine
![Page 19: Chapter01 os7e](https://reader035.vdocuments.site/reader035/viewer/2022062218/58ed58641a28ab4d248b45ef/html5/thumbnails/19.jpg)
Example of Program Execution
![Page 20: Chapter01 os7e](https://reader035.vdocuments.site/reader035/viewer/2022062218/58ed58641a28ab4d248b45ef/html5/thumbnails/20.jpg)
InterruptsInterrupts Interrupt the normal sequencing of the
processorProvided to improve processor
utilization most I/O devices are slower than the processor processor must pause to wait for device wasteful use of the processor
![Page 21: Chapter01 os7e](https://reader035.vdocuments.site/reader035/viewer/2022062218/58ed58641a28ab4d248b45ef/html5/thumbnails/21.jpg)
Common Classes of Interrupts
![Page 22: Chapter01 os7e](https://reader035.vdocuments.site/reader035/viewer/2022062218/58ed58641a28ab4d248b45ef/html5/thumbnails/22.jpg)
Flow of Control
Without Interrupts
![Page 23: Chapter01 os7e](https://reader035.vdocuments.site/reader035/viewer/2022062218/58ed58641a28ab4d248b45ef/html5/thumbnails/23.jpg)
Interrupts: Short I/O Wait
![Page 24: Chapter01 os7e](https://reader035.vdocuments.site/reader035/viewer/2022062218/58ed58641a28ab4d248b45ef/html5/thumbnails/24.jpg)
Transfer of Control via Interrupts
![Page 25: Chapter01 os7e](https://reader035.vdocuments.site/reader035/viewer/2022062218/58ed58641a28ab4d248b45ef/html5/thumbnails/25.jpg)
Instruction Cycle With Instruction Cycle With InterruptsInterrupts
![Page 26: Chapter01 os7e](https://reader035.vdocuments.site/reader035/viewer/2022062218/58ed58641a28ab4d248b45ef/html5/thumbnails/26.jpg)
Program Timing: Short I/O Wait
![Page 27: Chapter01 os7e](https://reader035.vdocuments.site/reader035/viewer/2022062218/58ed58641a28ab4d248b45ef/html5/thumbnails/27.jpg)
Program Timing: Long I/O wait
![Page 28: Chapter01 os7e](https://reader035.vdocuments.site/reader035/viewer/2022062218/58ed58641a28ab4d248b45ef/html5/thumbnails/28.jpg)
Simple Interrupt Processing
![Page 29: Chapter01 os7e](https://reader035.vdocuments.site/reader035/viewer/2022062218/58ed58641a28ab4d248b45ef/html5/thumbnails/29.jpg)
Multiple InterruptsMultiple Interrupts
![Page 30: Chapter01 os7e](https://reader035.vdocuments.site/reader035/viewer/2022062218/58ed58641a28ab4d248b45ef/html5/thumbnails/30.jpg)
Memory HierarchyMemory Hierarchy Major constraints in memory
amount speed expense
Memory must be able to keep up with the processor
Cost of memory must be reasonable in relationship to the other components
![Page 31: Chapter01 os7e](https://reader035.vdocuments.site/reader035/viewer/2022062218/58ed58641a28ab4d248b45ef/html5/thumbnails/31.jpg)
Memory RelationshipsMemory Relationships
![Page 32: Chapter01 os7e](https://reader035.vdocuments.site/reader035/viewer/2022062218/58ed58641a28ab4d248b45ef/html5/thumbnails/32.jpg)
The Memory HierarchyThe Memory Hierarchy Going down the
hierarchy: decreasing cost per bit increasing capacity increasing access time decreasing frequency
of access to the memory by the processor
![Page 33: Chapter01 os7e](https://reader035.vdocuments.site/reader035/viewer/2022062218/58ed58641a28ab4d248b45ef/html5/thumbnails/33.jpg)
Performance of a Simple Performance of a Simple
Two-Level MemoryTwo-Level Memory
Figure 1.15 Performance of a Simple Two-Level Memory
![Page 34: Chapter01 os7e](https://reader035.vdocuments.site/reader035/viewer/2022062218/58ed58641a28ab4d248b45ef/html5/thumbnails/34.jpg)
Memory references by the processor tend to cluster
Data is organized so that the percentage of accesses to each successively lower level is substantially less than that of the level above
Can be applied across more than two levels of memory
![Page 35: Chapter01 os7e](https://reader035.vdocuments.site/reader035/viewer/2022062218/58ed58641a28ab4d248b45ef/html5/thumbnails/35.jpg)
![Page 36: Chapter01 os7e](https://reader035.vdocuments.site/reader035/viewer/2022062218/58ed58641a28ab4d248b45ef/html5/thumbnails/36.jpg)
Invisible to the OS Interacts with other memory management hardware 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 37: Chapter01 os7e](https://reader035.vdocuments.site/reader035/viewer/2022062218/58ed58641a28ab4d248b45ef/html5/thumbnails/37.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 38: Chapter01 os7e](https://reader035.vdocuments.site/reader035/viewer/2022062218/58ed58641a28ab4d248b45ef/html5/thumbnails/38.jpg)
Cache and Main
Memory
![Page 39: Chapter01 os7e](https://reader035.vdocuments.site/reader035/viewer/2022062218/58ed58641a28ab4d248b45ef/html5/thumbnails/39.jpg)
Cache/Main-Memory StructureCache/Main-Memory Structure
![Page 40: Chapter01 os7e](https://reader035.vdocuments.site/reader035/viewer/2022062218/58ed58641a28ab4d248b45ef/html5/thumbnails/40.jpg)
I/O TechniquesI/O Techniques∗ When the processor encounters an instruction relating to I/O, it executes that instruction by issuing a command to the appropriate I/O module
![Page 41: Chapter01 os7e](https://reader035.vdocuments.site/reader035/viewer/2022062218/58ed58641a28ab4d248b45ef/html5/thumbnails/41.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 42: Chapter01 os7e](https://reader035.vdocuments.site/reader035/viewer/2022062218/58ed58641a28ab4d248b45ef/html5/thumbnails/42.jpg)
Interrupt-Driven I/OInterrupt-Driven I/O
![Page 43: Chapter01 os7e](https://reader035.vdocuments.site/reader035/viewer/2022062218/58ed58641a28ab4d248b45ef/html5/thumbnails/43.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 44: Chapter01 os7e](https://reader035.vdocuments.site/reader035/viewer/2022062218/58ed58641a28ab4d248b45ef/html5/thumbnails/44.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 45: Chapter01 os7e](https://reader035.vdocuments.site/reader035/viewer/2022062218/58ed58641a28ab4d248b45ef/html5/thumbnails/45.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 46: Chapter01 os7e](https://reader035.vdocuments.site/reader035/viewer/2022062218/58ed58641a28ab4d248b45ef/html5/thumbnails/46.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 47: Chapter01 os7e](https://reader035.vdocuments.site/reader035/viewer/2022062218/58ed58641a28ab4d248b45ef/html5/thumbnails/47.jpg)
![Page 48: Chapter01 os7e](https://reader035.vdocuments.site/reader035/viewer/2022062218/58ed58641a28ab4d248b45ef/html5/thumbnails/48.jpg)
SMP OrganizationSMP Organization
Figure 1.19 Symmetric Multiprocessor Organization
![Page 49: Chapter01 os7e](https://reader035.vdocuments.site/reader035/viewer/2022062218/58ed58641a28ab4d248b45ef/html5/thumbnails/49.jpg)
Multicore ComputerMulticore ComputerAlso known as a chip multiprocessorCombines 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 50: Chapter01 os7e](https://reader035.vdocuments.site/reader035/viewer/2022062218/58ed58641a28ab4d248b45ef/html5/thumbnails/50.jpg)
Intel Core i7Intel Core i7
![Page 51: Chapter01 os7e](https://reader035.vdocuments.site/reader035/viewer/2022062218/58ed58641a28ab4d248b45ef/html5/thumbnails/51.jpg)
Intel Intel Core Core i7i7
Figure 1.20 Intel Corei7 Block Diagram
![Page 52: Chapter01 os7e](https://reader035.vdocuments.site/reader035/viewer/2022062218/58ed58641a28ab4d248b45ef/html5/thumbnails/52.jpg)
SummarySummaryBasic 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