阅读:1047回复:2
几个读取文件的初级问题,麻烦大虾指点
1. 当应用程序发起一个连续的1k读,在虚拟地址空间和磁盘上都连续时,windows会不会合并成一个读,只配置DMA1次,只有一个中断?如果会合并,在哪层合并?
2. 当应用程序发起一个512K的读,但是物理地址空间不连续,windows会不会拆分成几个读? 3. 在读取文件时除了DMA完成操作后发起中断外,还有什么情况下会发起中断?这些中断是不是会平均到所有core上面,这可能关系到MSI中是否配置为low priority 4. 当我把读文件操作的线程固定在一个core上面时,我可以从perfmon数据中看到这个core的interrupts/sec非常高,其它core比较低,为什么 |
|
沙发#
发布于:2008-12-31 15:15
按我理解说点看法。
3.不会自动分配到所有CPU的,负载均衡 是一个难题。 4.这时这个CPU一直在工作,自然就interrupts/sec较高。其他CPU都闲着,当然interrupts/sec较低。 看资料,说INTEL的万兆网卡在多核方面有一些均衡技术,比较NB。 |
|
板凳#
发布于:2008-12-20 18:19
以下是个人观点,错误请指正:
1、不会合并,只是后面的读可能会从缓存中读取到。 2、“物理地址空间不连续”是指文件的编移量?不管怎样我认为会被拆分 3,4,不懂 |
|