版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
哈尔滨工业大学
2
主要内容目录
■计算机基本构成
■处理器寄存器
■指令执行
■中断
■存储器的层次结构
■高速缓冲存储器
■I/O通信技术
操作系统OperatingSystem
■利用一个或多个处理器的硬件资源
■为系统用户提供一组服务
■管理辅助存储器(secondary
memory)和输入输出设备(I/O
devices)
基本组成4
■处理器(Processor)
■主存(MainMemory)
o易失性(volatile)
o也称作实存储器(realmemory)或主存
(primarymemory)
■输入/输出模块(I/Omodules)
o二级存储设备(secondarymemorydevices)
o通信设备(communicationsequipment)
o终端(terminals)
■系统总线(Systembus)
o为处理器、主存储器和输入/输出模块间提供通信
的设施。
处理器寄存器5
■处理器为和存储器交换数据,使用
■两个内部寄存器(internalregisters)
O存储器地址寄存器(MAR)
■Specifiestheaddressforthenextreador
write
o存储器缓冲寄存器(MBR)
■Containsdatawrittenintomemoryor
receivesdatareadfrommemory
oI/O地址寄存器
oI/O缓冲寄存器
计算机部件顶层视图6
CPUMainMemory
l/OBR=Input/outputbufferregister
Figure1.1ComputerComponents:To|>LevelView
处理器寄存器7
■用户可见寄存器
oEnableprogrammertominimizemain-
memoryreferencesbyoptimizingregister
use
■控制与状态寄存器
oUsedbyprocessortocontroloperatingof
theprocessor
oUsedbyprivilegedoperating-system
routinestocontroltheexecutionof
programs
用户可见寄存器8
■通过机器语言来引用
■对所有程序都是可用的,包括应用程序
和系统程序
■寄存器的类型
O数据寄存器(可进行算数和逻辑运算)
O地址寄存器
■索引寄存器
■段指针寄存器
■栈指针寄存器
用户可见寄存器9
■地址寄存器
O索引寄存器
■Involvesaddinganindextoabasevalueto
getanaddress
o段指针寄存器
■Whenmemoryisdividedintosegments,
memoryisreferencedbyasegmentandan
offset
o栈指针寄存器
■Pointstotopofstack
控制和状态寄存器10
程序计数器ProgramCounter(PC)
oContainstheaddressofaninstructiontobe
fetched
指令寄存器InstructionRegister(IR)
oContainstheinstructionmostrecentlyfetched
程序状态字ProgramStatusWord(PSW)
oConditioncodes
oInterruptenable/disable
oSupervisor/usermode
控制和状态寄存器11
■条件码
O处理器硬件为操作结果设置的位。
O例如,算数运算的结果可能为
■Positiveresult
■Negativeresult
Zero
Overflow
12
指令的执行
■包括两步:
o取指令(InstructionFetch)
o执行指令(InstructionExecute)
指令周期13
FetchStageExecuteStage
Figure1.2BasicInstructionCycle
取指令和执行指令14
■处理器从主存中读取一条指令
■程序计数器(PC)存储了即将读取的指令
地址
■在每次取址之后,程序计数器(PC)
或自动增加
指令寄存器15
读取后的指令被放到指令寄存器(instruction
register),以便进行指令执行。
■指令的主要分类(Categories)
oProcessor-memory
■Transferdatabetweenprocessorandmemory
oProcessor-I/O
■Datatransferredtoorfromaperipheraldevice
oDataprocessing
■Arithmeticorlogicoperationondata
oControl
Altersequenceofexecution
一台理想机器的特性16
03415
OpcodeAddress
(a)Instructionformat
0115
S|Magnitude
(b)Integerformat
ProgramCounter(PC)=Addressofinstruction
InstructionRegister(IR)=Instructionbeingexecuted
Accumulator(AC)=Temporarystorage
(c)InteinalCPVregisters
0001=LoadACfromMemory
0010=StoreACtoMemory
0101=AddtoACfromMemory
(d)Partiallistofopcodes
Figure1.3CharacteristicsofaHypotheticalMachine
程序执行举例17
lemon(ZPURegistenMemory二PUReglslers
30()HU300|H30011940301|K
301uAC3015941'0003AC
30229411940IR302|2941'1940IR
9400003940[0003
941000294l|0002
Stc31Step2
lemory(TlRegisenManoryTJJRegJstei•s
30019403011Pl300|1940302]PC
30159410003AC301F594f00Q5\Ac
J594l|\
3022\415941IR302|2941
940l0Q*03
9400003
9410002941|0002
Ste)3Step4
Nfemory(ZPURegisCRManory1PURfghlers
30019403021pl300l1940303|R
3015941u0005AC,W15941'0005AC
30229412941IR30212941,2941IR
9400003940|00Q3
941000294110005~
Ste35Step6
Figure1.4ExampleofProgramExecution
(contentsofmemoryandregistersinhexadecimal)
直接内存存取(DMA)18
■直接内存存取(DirectMemory
Access)指I/O设备直接与存储器之间
交换数据
■处理器授权I/Omodule同内存进行读/
写的权限
■减轻在完成I/O任务过程中的处理器的
负担。
中断Interrupts19
■中断处理器的正常执行顺序
■大部分I/Odevices比处理器慢
oProcessormustpausetowaitfordevice
中断的分类20
Table1.1ClassesofInterrupts
ProgramGeneratedbysomeconditionthatoccursasaresultofaninstruction
execution:suchasarithmeticoverflow,divisionbyzero,attempttoexecute
anillegalmachineinstruction,andreferenceoutsideauser'sallowed
memoryspace.
TimerGeneratedbyatimerwithintheprocessor.Thisallowstheoperatingsystem
toperformcertainfunctionsonaregularbasis.
I/OGeneratedbyanI0controller,tosignalnormalcompletionofanoperation
ortosignalavarietyoferrorconditions.
HardwarefailureGeneratedbyafailure,suchaspowerfailureormemoryparityerror.
ProgramFlowofControlWithout21
Interrupts
UserI/O
Isogram
①
WRITfc
②
WRE:y
③:
_L,
WRITE
(a)Nointerrupts
ProgramFlowofControlWith22
Interrupts,ShortI/OWait
ISCII/O
ProgramProRram
Q④
I/O
Comnund
WRITE
*
Interrupt
Handler
WRITE
END
*
@
WRITE
(b)Interrupts;shortI/Owait
ProgramFlowofControlWith23
Interrupts;LongI/OWait
UserI/O
ProgramProgram
①④
WRTTERI/O
Comnund
②
Interrupt
Handler
WRITE
WRITE,
(c)Interrupts;longI/Ounit
中断处理InterruptHandler24
■处理一个特定中断事件的服务程序
■中断处理程序通常是操作系统的一部分
功能
中断Interrupts
■Suspendsthenormalsequenceof
execution
Interrupt------>
occurshere
Figure1.6TransferofControlviaInterrupts
中断周期InterruptCycle26
Figure1.7InstructionCyclewithInterrupts
1----------------------------------------------------------------------------------------------------------------------------------------------1
在进入中断程序,一般将原有指令地址入栈,以便中服务完成后返团
中断周期InterruptCycle27
■处理器检测中断
oProcessorchecksforinterrupts
■如果没有中断,则读取当前程序的下一
条指令
oIfnointerruptsfetchthenextinstruction
forthecurrentprogram
■如果发生中断,挂起当前程序的执行,
执行中断处理程序
oIfaninterruptispending,suspend
executionofthecurrentprogram,and
executetheinterrupt-handlerroutine
TimingDiagramBasedonShort28
I/OWait
Time
①①
④④
ProcessorI/OI/O
wait、operation,operation
⑤
②
I/O
,operation
⑤
(b)Withinterrupts
③(circlednumbersrefer
tonumbersinFigure15b)
(a)Withoutinterrupts
(circlednumbersrefer
tonumbersinFigure1.5a)
Figure1.8ProgramTiming:ShortI/OWait
TimingDiagramBasedonShort29
I/OWait
Time
I/O
operation②
I/O
operation
Processor
wait
③
I/O
ProcessorI/Ooperation
opn
waiteratioProcessor
wail
⑤
⑤
③(b)Withinterrupis
(circlednumbersrefer
tonumben*inFigure】5c)
(a)Withoutintemipts
(circlednumbersrefer
tonumbersinFigure1.5a)
Figure1.9Pi-ognunTiming:LongI/OWait
简单中断处理30
HardwareSoftware
De、icecontrolleror
othersystemhardware
aninterrupt
Processorfinishes
executionofcurrent
instruction
Processorsignals
acknowledgment
ofintmpt
ProcessorpushesPSVX
andP(tontocontrol
Mack
Processorloads
PCvaluebasedon
inlciTupt
Figure1.10SimpleInterruptProcessing
中断时,内存与寄存器的变化31
Main
Memory
(a)Interruptoccursafterinstruction
atlocationN
中断时,内存与寄存器的变化32
Main
Memory
(b)Returnfrominterrupt
多中断MultipleInterrupts
■处理多中断的两种方法:
O若正在处理一个中断时,禁止再发生中断
O通过优先级排序中断,在执行一个中断
时,可被更高优先级的中断打断(即,再
次中断到更高级别中断服务程序)。
方法一:中断时禁止新中断34
■Disableinterruptswhileaninterruptis
beingprocessed
Interrupt
UserProgramHandlerX
(a)Sequentialinterruptprocessing
方法二:定义中断优先级35
■Defineprioritiesforinterrupts
Interrupt
UserProgramHandlerX
(b)Nestedinterruptprocessing
多中断举例36
Figure1.13ExampleTimeSequenceofMultipleInterrupts
37
小结一中断技术
■中断是指CPU对系统中发生的异步事件
的响应。异步事件是指无一定时序关系
的随机事件。如外部设备完成数据传
输,网卡接收到网络数据。
■中断事件或中断源。引起中断的那些事
件。
■中断处理程序。处理中断事件的那段程
序。
嚣算'中断”的作用38
■能充分发挥处理器的效率。避免CPU不
断查询和等待。使得可以有效和外部设
备并行工作。
■提高系统的实时处理能力。可通过终端
方式请求及时处理。
p39
w“中断”类型
■可屏蔽中断(I/O中断)
■不可屏蔽中断(机器内部故障、断电故
障)
■程序错误中断(溢出、除法错误等)
■软件中断(Trap指令或中断指令INTn)
“中断”响应、"中断”屏蔽
中断优先级。对于同时多个中断,CPU优先
接受较高优先级的中断(如果其“中断”优先级
高于当前运行程序的中断优先级时),而忽
略其“中断'优先级较低的那些中断。
■对于同级中断,两种策略:
。1)固定的优先数;
O2)轮转法。
中断屏蔽。可通过PSW状态字中的中断禁止
位设定阈值。
41
中断响应时机:CPU执行一条指令后,接受
中断,大型机扫描中断寄存器。
■如何确定中断源(请求中断的设备):通过
“中断向量”来确定。对于个主存最低
地址作为中断向量表,例如n=128。中断号
与相应设备对应,例如键盘为01号.…。
■中断屏蔽,可通过PSW中设定,这样只有高
于自己优先级的中断可以被执行。
42
中断”处理过程
♦若处理器接受中断,贝『硬件”进行如下操作:
O1)将处理器的程序状态字PSW压入堆栈
o2)将指令指针IP(相当于程序代码段的段内相对
地址)和程序代码段基地址寄存器CS的内容压入
堆栈,以保存被中断程序的返回地址;
。3)取来被接受的中断请求的中断向量地址(其中
包含有中断处理程序的IP,CS内容),以便转入
中断处理程序;
o4)按中断向量地址把中断处理程序的程序状态字
取来,放入处理器的程序状态字寄存器中。
想象:相当于“意外”地“调用了一个函数”的过程
多道程序设计43
■同时有多个程序处于执行
■程序的执行顺序取决于他们的相对优先
级和它们是否正在等待I/O
■中断执行完毕后,控制权可能不立即转
移给发生中断的这个程序,而可能是其
它程序。
存储器的层次结构44
■各类存储器都有其自身特点。
■Fasteraccesstime,greatercostperbit
■Greatercapacity,smallercostperbit
■Greatercapacity,sloweraccessspeed
存储器的层次结构45
Figure1.14TheMemoryHierarchy
沿层次结构向下看时
■每“位”价格递减
■容量递增
■存取时间递增
■处理器访问存储器的频率递减
o访问的局部性(Locallyofreference)
二级存储器SecondaryMemory47
■非易失性Nonvolatile
■辅助存储Auxiliarymemory
■用作存储程序和数据文件Usedtostore
programanddatafiles
磁盘高速缓冲DiskCache48
■主存的部分空间可用于缓存从磁盘读取
的部分数据(或写入磁盘),以期提高
磁盘的访问速度,减少磁盘访问代价。
■磁盘成簇写Diskwritesareclustered
■缓冲的方法提高磁盘访问代价
oSomedatawrittenoutmaybereferenced
again.Thedataareretrievedrapidly
fromthesoftwarecacheinsteadofslowly
fromdisk
高速缓冲存储器CacheMemory49
■Invisibletooperatingsystem
■Increasethespeedofmemory
■Processorspeedisfasterthan
memoryspeed
■Exploittheprincipleoflocality(局部性
原理)
@v©
啜局部性原理principleoflocality
包括空间局部性(spatiallocality)和时间局
部性原理(temporallocality)。
■空间局部性指执行经常访问空间相近的单
元;
。例如,程序执行的顺序性,顺序访问数据单元。
。止再如,生活中,我们经常在某地方附近闲庭散
/JZo
■时间局部性指最近被访问过的具有更大概率
被再次访问到。
O例如,处理器访问最近访问过的单元。
O再如,我们经常与有限的人或物打交道。
11利用Cache提高访问速度51
■由于“局部性原理,可以通过Cache缓
冲方式提高访问速度
■时间局部性是通过将近来使用的指令和
数据保存到高速缓冲存储器中并使用高
速缓存的层次结构实现的;
■空间局部性通常是使用较大的高速缓存
并将预取机制集成到高速缓存控制逻辑
中来实现。
CacheMemory52
BlockTransfer
Figure1.16CacheandMainMemory
CacheMemory53
■Containsacopyofaportionofmain
memory
■Processorfirstcheckscache
■Ifnotfoundincache,theblockof
memorycontainingtheneeded
informationismovedtothecacheand
deliveredtotheprocessor
鬻利用Cache后的访问时间
假设M1用于临时存储较大M2中的部分内
容,M1相当M2的Cache。
■若不在Cache再去查找主存的方式,则平均
访问时间Ts为(即数学期望):
■Ts=HXT1+(1-H)X(T1+T2)
=T1+(1-H)XT2
■其中,T1代表访问Cache的时间,T2代表访
问M2的时间。H表示访问命中率
■故当H越接近1时,Ts越接近T1;最坏情况下
Ts为T1+T2。通常T1比T2快一个数量级以
上,因此如果H较高,Cache有明显作用。
高速缓存/主存储器55
LineMemory
(b)Mainmemory
Figure1.17Cache/Main-MemoryStructure
高速缓存中的ReadOperation56
RA-readaddress
Accessmain
♦memoryforblock
containingRA
FetchRAwordAllocatecache
anddeliverslotformain
t。CPUmemoryblock
Figure1.18CacheKeadOperation
高速缓存设计(CacheDesign)57
■缓冲大小Cachesize
O缓冲区可对访问命中产生很大影响
■块大小Blocksize
o块,是在Cache与主存交换的数据单元
。当块变得更大时,新近取到的数据被用
到的可能性小于那些必须移出高速缓存
的数据再次被用到的可能性
高速缓存设计(CacheDesign)58
■映射函数Mappingfunction
O确定这个块将占据哪个高速缓冲存储单元
■替换算法Replacementalgorithm
O决定哪个块将被替换
o替换算法常采用:Least-Recently-Used
(LRU)algorithm最近最少使用算法
高速缓存设计(CacheDesign)59
■写入策略Writepolicy
O写入策略规定何时发生存储器写入操作
(CPU对内存的修改首先修改到高速
Cache,其次决定何时写入主存)。
oCanoccureverytimeblockisupdated
oCanoccuronlywhenblockisreplaced
■Minimizesmemorywriteoperations
■Leavesmainmemoryinanobsoletestate
®小结二-缓冲区技术60
■CPU工作速度快,而外部设备一般速度
较慢,如何才能有效利用CPU高效率工
作?
■CPU利用“局部性原
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 某高中副校长在11月升旗活动上的讲话
- 2023年中考地理模拟卷(四)
- 湛江-PEP-2024年10版小学三年级下册英语第5单元寒假试卷
- 《管理学原理》期末考试复习题库(含答案)
- 骨盆骨折护理常规
- 云南省大理市2024-2025学年高三年级上册规模化统一检测地理试题(含答案)
- 2023年群路密码机系列投资申请报告
- 2024年密封垫及类似接合衬垫项目资金筹措计划书代可行性研究报告
- 强化财政投融资体制促进积极财政政策的实施
- 耐高温自润滑聚酰亚胺复合材料
- 2024年湖北省人才发展集团有限公司社会招聘8人笔试模拟试题及答案解析
- 2024年道路运输企业安全生产管理人员考试试题题库
- 《巧用形状突重点》说课稿
- 幼儿园文学活动的设计与指导课件
- 卫生院24小时值班制度
- 开源软件漏洞分析方法研究
- 【8物(科)期中模拟】合肥市2023-2024学年八年级上学期期中模拟物理作业试卷
- 手工木工(高级)技能认定理论考试题库大全-下(判断题)
- 情商与智慧人生学习通超星期末考试答案章节答案2024年
- 第一、二单元语文园地巩固练习-2024-2025学年语文六年级上册统编版
- 探究与发现对勾函数图象和性质 教学设计-2023-2024学年高一上学期数学人教A版(2019)必修第一册
评论
0/150
提交评论