1、操作系统不能操作硬件,操作系统只是把自身加载到内存中,然后CPU执行内存中的指令,并根据内存中的指令读写相关的总线和寄存器去实现操作硬件的功能;
2、严格来说,操作系统并没有找到硬盘的位置,对于兼容电脑来说,磁盘控制器所在端口和地址相对CPU来说是固定的,操作系统“找到”硬盘的最初是通过BIOS中断获取相关信息,而BIOS是通过固化在其中的硬件电路关联程序来找到硬盘,对大部分操作系统来说,BIOS中没有识别的硬盘都是通过其他数据总线和节点获取得;
3、对于详细情况,建议你看看计算机组成原理,有一本书也许适合你:《计算机组成与设计:硬件/软件接口》;
希望对你有帮助
操作系统是用驱动来驱动“操作”硬件的。怎么驱动呢?所有的数据都是由1和0来表示的。在硬件那里,1和0就表示两种电流的不同存在方式。比如说,1表示灯亮,0表示灯灭啥的。当然,远没有这么简单。
每一个硬件都有一个不同的ID。并且占用一个中断。系统要用什么硬件,就会发送一个请求。不同的硬件根据自己的中断号,来响应。
你可以看看http://book.douban.com/subject/1230413/ 这个。
《深入理解计算机系统》 希望 对你有帮助 。
打个很简单的比方:现在做的楼盘就像一个硬盘的储存器,楼盘储存的是人,硬盘是0和1的数字,系统读取数据就像邮递员递信要找一个人的家一样。硬盘在制做时就设定了相应的地址与空间,你存放东西时电脑自动就记住了存的地址,你要用时就可以直接的找到,就像现在的楼盘一样,在设计时就设好了每个房子的编号,张三买了房后就像存进硬盘一样,就有了他专有的一个地址了,你要找他时对号入座的找一下子就能找到了。