社区
硬件/系统
帖子详情
往磁盘写文件,如何保证文件在物理磁盘上连续 就是没有磁盘碎片
lanmu01
2011-12-15 04:41:23
现在的需求是,做一个安装包,在安装的时候,希望安装的文件在磁盘上物理是连续的(不仅单个文件没有碎片,而且多个文件之间也尽量连续),求思路,以前很少接触这类问题。
看到这个http://topic.csdn.net/u/20080913/08/1b1deff3-3107-4899-8793-7e23727bfd36.html
貌似要用到DeviceIoControl,不过以前都没用到过。
...全文
652
11
打赏
收藏
往磁盘写文件,如何保证文件在物理磁盘上连续 就是没有磁盘碎片
现在的需求是,做一个安装包,在安装的时候,希望安装的文件在磁盘上物理是连续的(不仅单个文件没有碎片,而且多个文件之间也尽量连续),求思路,以前很少接触这类问题。 看到这个http://topic.csdn.net/u/20080913/08/1b1deff3-3107-4899-8793-7e23727bfd36.html 貌似要用到DeviceIoControl,不过以前都没用到过。
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
11 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
gameslq
2011-12-21
打赏
举报
回复
用普通的办法基本不可能,建立文件写文件都要经过操作系统
除非自己写磁盘驱动程序,然后接管系统磁盘驱动,
现在磁盘空间这么大没必要非的创建连续的文件吧?
sophyyoung
2011-12-21
打赏
举报
回复
我只知道 fat 的文件系统是不能保证的,保证啊~
ntfs 的不知道。
stecdeng
2011-12-21
打赏
举报
回复
创建大文件
把自己要写入的数据写入到这个大文件中
大文件的要求保证硬盘连续
可以实现扫描硬盘找到足够的空间指定写入的扇区和长度
有FILEDISK那种意思
lanmu01
2011-12-19
打赏
举报
回复
[Quote=引用 5 楼 y_l_stone 的回复:]
硬盘格式化成iso9660的格式,那个是连续的
ntfs的话,自己写磁盘吧。
也可以考虑先申请一个比较大的文件,再在文件里写,不过这样不能保证多文件连续了。
[/Quote]
这样可以保证单个文件连续么?
lanmu01
2011-12-19
打赏
举报
回复
多谢各位的回复,那请问如果创建单个文件的话,怎样保证碎片经量少?
havedown
2011-12-17
打赏
举报
回复
如果磁盘上没有连续的空间(但总空间够)供你安装,估计你还得先写个程序整理碎片。
y_l_stone
2011-12-17
打赏
举报
回复
硬盘格式化成iso9660的格式,那个是连续的
ntfs的话,自己写磁盘吧。
也可以考虑先申请一个比较大的文件,再在文件里写,不过这样不能保证多文件连续了。
辰岡墨竹
2011-12-17
打赏
举报
回复
这种事情根本没法保证。因为一旦磁盘可用空间少于20%,即使NTFS或ext3都会产生碎片的。
除非你能保证这是一个新格式化的分区什么的。
wmjhl
2011-12-17
打赏
举报
回复
如果你能保证整个程序只有一个文件,就可以做到,不然就别幻想了.因为硬盘的最小分配模块是簇,不可能你每个文件刚好是个整数簇,所以不可能
Gloveing
2011-12-16
打赏
举报
回复
没法保证吧?
「已注销」
2011-12-16
打赏
举报
回复
文件小于512字节,就可以保证。
磁盘
碎片
整理程序的原理是什么?
盘碎片整理,就是通过系统软件或者专业的
磁盘
碎片
整理软件对电脑
磁盘
在长期使用过程中产生的碎片和凌乱
文件
重新整理,释放出更多的
磁盘
空间,可提高电脑的整体性能和运行速度。
磁盘
碎片
应该称为
文件
碎片,是因为
文件
被分散保存到整个
磁盘
的不同地方,而不是
连续
地保存在
磁盘
连续
的簇中形成的。硬盘在使用一段时间后,由于反复
写
入和删除
文件
,
磁盘
中的空闲扇区会分散到整个
磁盘
中不
连续
的
物理
位置上,从而使
文件
不能存在
连续
的扇...
文件
碎片/
磁盘
碎片
的一些知识
一、什么是
磁盘
碎片
? 其实
磁盘
碎片
应该称为
文件
碎片,是因为
文件
被分散保存到整个
磁盘
的不同地方,而不是
连续
地保存在
磁盘
连续
的簇中形成的。 当应用程序所需的
物理
内存不足时,一般操作系统会在硬盘中产生临时交换
文件
,用该
文件
所占用的硬盘空间虚拟成内存。虚拟内存管理程序会对硬盘频繁读
写
,产生大量的碎片,这是产生硬盘碎片的主要原因。 其他如IE浏览器浏览信息时生成的临时
文件
或临时
文件
目录的设置也会造成系统中形
什么是
磁盘
碎片
实际上,
磁盘
碎片
应该称为
文件
碎片,因为
文件
会分别保存到整个
磁盘
的不同位置,而不是
连续
保存在
磁盘
的
连续
群集中。 当应用程序所需的
物理
内存不足时,通常操作系统会在硬盘上生成临时交换
文件
。此临时交换
文件
占用的
磁盘
空间用于形成虚拟内存。虚拟内存的管理程序将经常在硬盘上读
写
并产生大量碎片。这是硬盘碎片化的主要原因。除此之外,系统中的临时
文件
会导致很多碎片。当IE浏览器浏览信息或用户直接设置它们时生成...
为什么在
磁盘
中,顺序存放容易导致存储碎片?
如果这片空白区域无法完整地容纳其他
文件
,比如空白区域的大小小于某个新
文件
的大小,那么新
文件
就无法
连续
地存放在这片空白区域中,需要找到其他散落的空闲
磁盘
块来存放新
文件
,从而导致存储碎片问题。为了解决存储碎片问题,现代的
文件
系统通常采取各种优化策略,比如使用
磁盘
碎片
整理工具来整理
文件
在
磁盘
上的分布,或者使用更加高级的
文件
分配算法来减少碎片化。
文件
大小变化:当一个
文件
的大小发生变化,比如
文件
被修改并且增大了,或者被截断并且减小了,原先分配给它的
连续
磁盘
块可能无法完整地容纳新的
文件
大小。
磁盘
碎片
原理分析
xumai 一、什么是
磁盘
碎片
? 其实
磁盘
碎片
应该称为
文件
碎片,是因为
文件
被分散保存到整个
磁盘
的不同地方,而不是
连续
地保存在
磁盘
连续
的簇中形成的。 当应用程序所需的
物理
内存不足时,一般操作系统会在硬盘中产生临时交换
文件
,用该
文件
所占用的硬盘空间虚拟成内存。虚拟内存管理程序会对硬盘频繁读
写
,产生大量的碎片,这是产生硬盘碎片的主要原因。 其他如IE浏览器浏览信息时生成的临时
文件
...
硬件/系统
2,643
社区成员
17,232
社区内容
发帖
与我相关
我的任务
硬件/系统
VC/MFC 硬件/系统
复制链接
扫一扫
分享
社区描述
VC/MFC 硬件/系统
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章