找回密码
 立即注册
搜索
查看: 2570|回复: 7

[软件] 预分配磁盘空间时写0的目的是什么?

[复制链接]
     
发表于 2020-1-12 20:30 来自手机 | 显示全部楼层 |阅读模式
包含下载功能的软件很多在预分配磁盘空间时都采用或默认采用写0的策略,包括但不限于steam和一众bt下载软件。总量一大,文件写0就要写很久,硬盘还卡死。这样到底有什么好处呢?
回复

使用道具 举报

     
发表于 2020-1-12 20:41 | 显示全部楼层
多线程 or p2p下载?
下载的文件不是连续的,而是分散的,就像拼图那样吗...
回复

使用道具 举报

     
发表于 2020-1-12 21:11 | 显示全部楼层
没有好处。写0是因为安全问题。预分配的空间上可能含有之前删除过的其他文件,而这些删掉的文件可能是当前没有权限读取的。所以OS会写0防止软件读到这些数据。
有种东西叫“稀疏文件”,可以避免写0,建议在BT软件中打开。
回复

使用道具 举报

     
发表于 2020-1-12 22:28 | 显示全部楼层
这玩意迫害ssd很久了
回复

使用道具 举报

     
发表于 2020-1-12 23:18 | 显示全部楼层
aria2设置file-allocation=trunc可以创建目的大小的空文件,而不预先写数据
回复

使用道具 举报

     
发表于 2020-1-12 23:20 | 显示全部楼层
现在qBittorrent和彗星之类印象里都是秒预分配磁盘
回复

使用道具 举报

     
发表于 2020-1-13 09:12 来自手机 | 显示全部楼层
樱绰落 发表于 2020-1-12 23:20
现在qBittorrent和彗星之类印象里都是秒预分配磁盘

表扬一下qbittorrent的写入策略,同时下十多个文件在单盘上,速度几乎没影响,能跑出30多兆下载
以前那些都是什么垃圾啊,同时超过3个以上的种子,写入速度才几兆,硬盘就被写卡死了

—— 来自 vivo NEX S, Android 9上的 S1Next-鹅版 v2.2.0.1
回复

使用道具 举报

     
发表于 2020-1-14 07:40 | 显示全部楼层
xtwangqu 发表于 2020-01-13 09:12:41
表扬一下qbittorrent的写入策略,同时下十多个文件在单盘上,速度几乎没影响,能跑出30多兆下载
以前那些 ...
40mb每秒,下UHD比看得快。

  -- 来自 能看大图的 Stage1官方 Android客户端
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|上海互联网违法和不良信息举报中心|网上有害信息举报专区|962110 反电信诈骗|举报电话 021-62035905|Stage1st ( 沪ICP备13020230号-1|沪公网安备 31010702007642号 )

GMT+8, 2024-9-26 05:12 , Processed in 0.074993 second(s), 5 queries , Gzip On, Redis On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表