版块
论坛
喜欢
话题
应用
搜索
登录
注册
sipu的个人空间
访问量
0
新鲜事
帖子
资料
http://bbs3.driverdevelop.com/index.php?m=space&uid=24950
如何提高写硬盘的速度。
一个关于内存及硬盘读写的问题。写内存成块的写比一个字节一个字节的写肯定要快的,但是谁能够告诉我,在C里分别用那个API或者库函数来实现。
回复
(
7
)
2002-10-24 12:52
来自版块 -
内核编程
◆
◆
表情
告诉我的粉丝
提 交
Tom_lyd
:
关于磁盘调度本身就是操作系统的一个任务,Windows操作系统对此已经有较好的算法,使得磁盘磁头移动的次数最少而写入的数据最多。除之此外,Windows自身已经有了缓冲策略(你可以开一个编辑软件,随意拷一些东西进去,然后Save,你会发现硬盘的灯不一定会亮,这说明,系统已经为你缓...
(2002-10-24 17:32)
回复
sipu
:
To fracker: 但是我如果用 memset(ptr,0,size); 或者 ZeroMemory(ptr,size); 哪个会更好呢?又比如 memcpy和CopyMemory哪个会更有效率一些?同样是API,如Koms Bomb 所...
(2002-10-24 15:36)
回复
fracker
:
调用Windows API不需要考虑这个问题,因为系统本身就有很强大的Cache管理机制帮你做这些了。
(2002-10-24 15:05)
回复
VanCheer
:
To Tom_lyd: 使用Windows的API是否内部调用了写盘中断呢?使用下面的代码fread(mbptr, 1, size, file); 效率应该是非常低的,采用什么样的函数会提高?有没有量的概念?另外,如果不写到硬盘中去,仅在内存中传输或拷贝数据,是否也存...
(2002-10-24 14:37)
回复
sipu
:
To Tom_lyd: 使用Windows的API是否内部调用了写盘中断呢?使用下面的代码fread(mbptr, 1, size, file); 效率应该是非常低的,采用什么样的函数会提高?有没有量的概念?另外,如果不写到硬盘中去,仅在内存中传输或拷贝数据,是否也存...
(2002-10-24 14:33)
回复
Tom_lyd
:
一个关于内存及硬盘读写的问题。 写内存成块的写比一个字节一个字节的写肯定要快的,但是谁能够告诉我,在C里分别用那个API或者库函数来实现。 调用写盘中断来实现 int86 int86x intdos intdosx intr
(2002-10-24 13:59)
回复
VanCheer
:
看看File Mapping APIs 一定有用,对你帮助太大了
(2002-10-24 13:04)
回复
sipu
加关注
写私信
0
关注
0
粉丝
64
帖子
返回顶部