对硬件通讯的端口是什么意思?
在看操作系统的书,里面对硬盘的操作总是在说使用某几个端口,比如
#define HD_PORT_DATA 0x1f0
#define HD_PORT_ERROR 0x1f1
#define HD_PORT_SECT_COUNT 0x1f2
#define HD_PORT_SECT_NUM 0x1f3
#define HD_PORT_CYL_LOW 0x1f4
#define HD_PORT_CYL_HIGH 0x1f5
#define HD_PORT_DRV_HEAD 0x1f6
#define HD_PORT_STATUS 0x1f7
#define HD_PORT_COMMAND 0x1f7
不是很理解端口的意思,难道是BIOS把硬盘的寄存器映射到内存的地址?
请高手指点
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(4)
端口就是区别不同的I/O的东西,有软的,有硬的
这里其实就是IO地址
那什么又是IO地址呢?这些端口对应到什么地方呢?是CPU的针脚?还是主板上的总线?
port区分不同的I/O,软件里,TCP,UDP都用port来区分不同的I/O。RS232,PCMCIA......都可以叫port。甚至address也可以叫port。这里的port对应的是IDE controller的,总线一直通到CPU,所以指令可以访问外设。
这里的访问很像老大支配老二,老二支配老三。
CPU支配controller(对于CPU来说,controller就是外设),controller再支配真正拿来用的外设,呵呵
[ 本帖最后由 cjaizss 于 2008-2-12 01:45 编辑 ]