数据如何从硬盘存储设备的缓存转移到内存,是什么在控制数据的传输 (只求知道过程存在工作的零件,不需要具体技术细节)

teahj 2012-04-04 02:39:14

数据如何从硬盘存储设备的缓存转移到内存,是什么在控制数据的传输
(只求知道过程存在工作的零件,不需要具体技术细节)
1:是计算机的cpu将硬件缓存的数据存到缓存中吗?
若将缓存的数据读到存储设备,(是设备自身将数据读到自己的存储单元的吗),还是(cpu将数据读到存储设备的存储单元中,存储设备什么也不用干,他只是存储的仓库而已)
还有几个问题就是
2:从硬盘设备传输数据到u盘,他的过程是(将数据存到硬盘缓存,再到内存,再经过cpu读到u盘的缓存,再经u盘本身将自身的缓存读取到u盘中),还是(硬盘将数据存储到自身缓存,再通知cpu,cpu收到后发出指令给u盘,u盘读取硬盘的缓存,经过内存,读到自身的u盘缓存,再自己将u盘的缓存读到自己的存储单元中)

3:将磁盘D的数据剪切到磁盘F,他的过程是(cpu将数据在磁盘D的地址发给磁盘F,然后将保存在D盘的地址删除掉),还是(磁盘D将数据读到硬盘缓存,然后经过内存{不确定是否要经过内存},再到F盘的缓存,在读取到F盘)

4:最进给计算机的并行处理,并发控制弄糊涂了,明明就是cpu一个人在干事许多事,(难道一个人一件一件的完成事情),怎么会比(这件事做一半又换另外一件事来做,再回来做没有完成的事是要慢呢),怎么说是优化cpu的利用率,高效利用资源。

这些问题纠结似乎跟我不懂的底层原理运作有关
求老师指导,晚生在此叩拜,期待老师的答复
...全文
2433 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
ccforyou 2013-01-13
  • 打赏
  • 举报
回复
打开任务管理器,然后找一个大的文件,从一个盘复制到另一个盘,看看内存有没有大的波动,这样应该能反应一下数据是不是经过内存中转过
文斌 2012-04-09
  • 打赏
  • 举报
回复
4:最进给计算机的并行处理,并发控制弄糊涂了,明明就是cpu一个人在干事许多事,(难道一个人一件一件的完成事情),怎么会比(这件事做一半又换另外一件事来做,再回来做没有完成的事是要慢呢),怎么说是优化cpu的利用率,高效利用资源。

由于CPU的运算速度高,很多外设的速度低,比如在键盘输入的过程中,CPU花一点时间处理一个按键后要等很长时间才能处理到下一个按键(按键再快相比于CPU频率也是慢上几个数量级的),如果采用并行的话,在等等用户下一个按键的过程中CPU就可以换去做另一件事,如此就是提高了CPU的利用率。
teahj 2012-04-09
  • 打赏
  • 举报
回复

可能问题太长了,可大家别无视第三问啊
问题如下
1: 电脑中的所有磁盘C,D,E,F等)的缓存都是共用共用硬盘的吗?
2: 若磁盘D的数据剪切到磁盘F , 是(磁盘D的芯片将数据读到D硬盘缓存,然后经CPU读取到内存 ,再到F盘的芯片缓 存,再F盘读取到存储单元 。
还是磁盘D将数据读到硬盘缓存,然后CPU通知F盘将缓存的数据(这里我是假设问题一成立:即D和F盘共用缓存的)读取到自己的存储单元。
3: 然后经CPU读取到内存,这句话不知这正确不?还是CUP发个指令,会有中间设备将数据从缓存搬到内存
不好意思打扰了, 期待你的答复
teahj 2012-04-04
  • 打赏
  • 举报
回复
求解答第四问啊.................
teahj 2012-04-04
  • 打赏
  • 举报
回复
请问从缓存到内存,是CPU控制的吗,还是由其他设备硬件控制
worldy 2012-04-04
  • 打赏
  • 举报
回复
不是刚在另一个帖里说了我的看法了吗?


操作系统磁盘D将数据读到硬盘缓存?那为什么第一问的,你说是硬盘设备将自己缓存的数据读取到硬盘的存储单元?
难道硬盘只能将在自己缓存的数据读取进自身硬盘,而将数据读取到缓存就是cpu的工作吗?这样理解合理不
对于这于这个问题:

实际上,CPU只知道硬盘存在,但不知道有硬盘缓存的存在,着如,你加的自来水,你只知道有自来水公司(相当于硬盘)给你提供水,但你不知道,你家楼顶上还有个水塔(假设你住在高楼,水塔相当于缓存)存在。水塔是供水系统提供一种保证水流畅通的机制,和你家的用水是无关的,因此,你是CPU,你根本不会去关心是否有水塔,水塔多大,水是怎么流进水塔的,硬盘和硬盘缓存的关系跟自来水公司和水塔的关系是一样的。但是,水肯定是从水塔流出来的,CPU读硬盘数据肯定也是一样,硬盘将数据准备到缓存,再由CPU读出。

写入也一样,假设你家有个大水泵,你可以向自来水公司供水,那你在你家的管道上,将水泵入,水肯定是经过你家楼上的水塔,再由水处理系统送到自来水公司的,除了你家(CPU)管道接口外,都是自来水公司(硬盘)管理的

事实上,你根本不用关心缓存的存在,缓存对应硬盘而言,你可以认为是透明的,存在不存在,在逻辑上,不影响使用,只影响性能。

CPU读取或写硬盘,一般由CPU控制电脑上的硬盘控制器,而控制硬盘,读写数据有两种方式,一种由cpu直接读写,另一种是dma传输,dma传输cpu给dma控制器设定参数,由dma控制器直接操作内存完成读写,此时cpu暂停工作。

你的这个问题要回答清楚,估计是厚厚的一本书,粗浅理解,供你参考

695

社区成员

发帖
与我相关
我的任务
社区描述
提出问题
其他 技术论坛(原bbs)
社区管理员
  • community_281
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧