- 1、本文档共182页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
操作系统
第五章输入输出管理
设备管理概述和I/O控制方式
CategoriesofI/ODevices
nHumanreadable
nMachinereadable
nCommunication
DifferencesinI/ODevices
nDataTransferRate(数据传输速率)
nApplication(应用)
nComplexityofControl(控制复杂性)
nDataTransferUnit(数据传输单位)
nDataRepresentation(数据表示)
nErrorConditions(错误条件)
I/O接口
n设备控制器与CPU
n设备控制器与设备nI/O逻辑
I/O端口
TechniquesforPerformingI/O
nProgrammedI/O(程序控制I/O)
nInterrupt-Driven(中断驱动)
nDMAControl(DMA控制)
ProgrammedI/O
nTheprocessorissuesanI/OcommandtoanI/O
module,I/OmoduleperformstheI/O.
nSetsappropriatebitsintheI/Ostatus
register.
nNointerruptsoccur.
nProcessorchecksstatusuntiloperationis
complete.
nProcessisbusy-waitingfortheoperationto
complete.
Interrupt-DrivenI/O
nProcessorisinterruptedwhenI/Omodule
readytoexchangedata.
nProcessorisfreetodootherwork.
nNoneedlesswaiting.
nConsumesalotofprocessortimebecauseeverywordreadorwrittenpassesthroughtheprocessor.
DirectMemoryAccess(DMA)
nTransfersablockofdatadirectlytoorfrommemory.
nAninterruptissentwhenthetaskiscomplete.
nTheprocessorisonlyinvolvedatthebeginningandendofthetransfer.
DirectMemoryAccess
nTakescontrolofthesystemfromtheCPUtotransferdatatoandfrommemoryoverthesystembus.
nCyclestealingisusedtotransferdataonthesystembus.
nTheinstructioncycleissuspendedsodatacanbetransferred.
nTheCPUpausesonebuscycle.
nNointerruptsoccur
?Donotsavecontext.
DMALogic
DMA控制器的工作原理(1)
n当CPU将一块数据从某I/O设备读入内存某处或把一块数据从内存某处写入某I/O设备时
?CPU将把相关数据块的长度通过DMA的“DataLines”脚写入DMA的“DataCount”寄存器
?把内存起始地址和I/O设备地址通过DMA的“DataLines”脚写入DMA的“AdresRegister”寄存器
?通过DMA的“Read”脚或“Write”脚向DMA发出读或写命令
DMA控制器的工作原理(2)
nDMA通过“DMARequest”脚和“DMAAcknowledge”脚控制相关的
I/O设备
n通过“DataLines”脚与I/O设备以及内存交换数据
n通过“AddressLines”脚寻址内存
DMA控制器的工作原理(3)
n工作完毕,DAM将通过“Interrupt”脚向CPU发出中断,CPU对本次数据传输进行善后处理。
nDMA将通过窃取CPU总线周期的方式获得总线
文档评论(0)