软件的缓存机制到底是什么?
发表于 : 周五 3月 09, 2012 4:15 pm
最新的0.72版本,我使用emule电驴下载,下载所在盘开了3G缓存,读写全开,延时为1小时。50分钟后,通过性能统计监视看到,还剩余2G缓存没有使用,而实际下载文件已经超过2G,也就是有至少1G没有被缓存,监视器里的“写入ios”不断在增长,硬盘也貌似在不断读写的状态。不知道我的理解是否正确,这个数据表示此时实际写入磁盘的数据量,那么既然延时为一小时,时间未到,而缓存又还剩余2G的情况下,为什么会出现不断往硬盘上写数据的情况?
之前论坛里有一篇文章说过类似问题,大意是比如下载16G的数据,开4G缓存,那么硬盘只需要写四次,虽然当时就觉得这个不大可能,按照常理或一般的实现机制,也不大可能会出现一次写入4G缓存的情况,而是一个逐步写入的过程,但像我这里这样,缓存还没有使用完就开始读写硬盘就比较奇怪了。不知道软件的缓存机制究竟是什么?为什么会出现这种情况?
之前论坛里有一篇文章说过类似问题,大意是比如下载16G的数据,开4G缓存,那么硬盘只需要写四次,虽然当时就觉得这个不大可能,按照常理或一般的实现机制,也不大可能会出现一次写入4G缓存的情况,而是一个逐步写入的过程,但像我这里这样,缓存还没有使用完就开始读写硬盘就比较奇怪了。不知道软件的缓存机制究竟是什么?为什么会出现这种情况?