关于 IO 控制器的一点疑问

2021-12-01 14:38:42 +08:00
 yezheyu

最近在学操作系统,对 IO 控制器有点疑问

IO 控制器位于哪?

是集成在主板中的一块芯片吗? 然后对外以 USB ,SATA 之类的接口与外设交互是吗?

还是说位于硬盘,鼠标等外设内部,就是鼠标中的芯片?

驱动在内核和 IO 控制器的交互中扮演怎样的角色?

是相当于 IO 控制器这个硬件的软件层面表示? 用来接收内核发来的指令转换成硬件能看懂的指令, 驱动 IO 控制器控制硬件工作,如控制硬盘机械臂移动?

所以内核和外设交互,是先和驱动打交道,驱动再控制 IO 控制器操作硬件是吗?

我这样理解驱动对吗?

1035 次点击
所在节点    程序员
2 条回复
yezheyu
2021-12-01 15:26:40 +08:00
嗯,还有疑问?

磁盘缓冲区是指 IO 控制器中的缓冲区,还是内核缓冲区?
又或者是硬盘里本身自带的一块内存空间?
adoal
2021-12-01 15:55:32 +08:00
正常的大学计算机课程设置里,早于操作系统会有计算机组成与结构课,也可能有微机原理课。有这些前导课程,操作系统里的某些相关概念就可以贯穿起来了。

计组推荐这本书 https://item.jd.com/11729917.html

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/819302

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX