WatchStor.com — 领先的中文存储网络媒体 | 51CTO旗下网站

新闻资讯 > Windows Server > 正文

也谈Windows 7对SSD的优化

cnbeta.com  佚名丨2009-05-18 09:10 标签:Windows Server 

前几天看到一篇文章, 叫"漫谈Windows 7对固态硬盘的优化", 里面有这么一段:

" 在Windows 7里,如果固态硬盘报告支持ATA协议数据集管理(DSM)命令里的Trim属性,NTFS文件系统就会在用户删除文件的时候要求ATA驱动向固态硬盘发 出新的Trim操作指令,告诉它相关页面可以安全擦除。固态硬盘得到这一指示后,就不会急于执行擦除操作,而是等到合适的机会,也就是再次有写入操作的时 候,因为这时相关页面已经可以重新使用,就不需要再执行擦除操作了。"

这也太神奇了吧, 难道Trim一把, 本来必须要先擦除才能写入的Flash现在就不用擦除了? 我等草民实在不能理解. 找原文来看看:

http://blogs.msdn.com/e7/archive/2009/05/05/support-and-q-a-for-solid-state-drives-and.aspx

"In Windows 7, if an SSD reports it supports the Trim attribute of the ATA protocol’s Data Set Management command, the NTFS file system will request the ATA driver to issue the new operation to the device when files are deleted and it is safe to erase the SSD pages backing the files. With this information, an SSD can plan to erase the relevant blocks opportunistically (and lazily) in the hope that subsequent writes will not require a blocking erase operation since erased pages are available for reuse."

这就能理解了, 比较准确的翻译应该是"SSD可以在恰当的时候(晚一点)再去擦除相关的块, 这样接下来的写操作可以不用等待擦除操作完成, 因为有(其它的, 译注)擦除过的块可供重用"

我不会翻译, 丑点但意思应该对, 原译者可能对文件系统, Flash(负载均衡)原理不太了解, 原文理解起来可能比较困难吧...

简单的说, 引入Trim之前, 文件系统对SSD来说是个黑盒, 整个文件系统所占用的空间对SSD来说都是被使用中, 文件系统中的未使用空间也被保持着, 这完全是浪费, Trim扮演的角色就是给文件系统到SSD提供了一个接口, 让SSD知道哪些块是文件系统未使用的, 这对提高负载均衡的性能非常有利.

复杂了说, 首先你要知道闪存的操作不像内存硬盘一样随便儿写1写0, 闪存的擦除(写1)操作是对块的, 而且慢到死, 其次你得知道闪存一定要有负载均衡, 为了寿命也为了性能, 而且用于负载均衡的冗余块越多越好(这很好证明, 举个极端的例子, 有一个冗余度是无穷的SSD, 这样只用写就行了, 永远不需要进行那个该死的擦除操作, 证毕, 不对, 好像还需要证明单调性...)

闪存卡/SSD出现以前的Flash应用常常是裸的 一块NOR Flash接上来, 负载均衡都是在JFFS/TFFS这样的Flash文件系统级实现的, 所有文件系统空闲的空间都被用来做为负载均衡冗余, 根本就没有上面这种问题, 现在很多嵌入式系统的固化OS都还是这么做, 像手机什么的, 可是到了消费级产品, 闪存卡, SSD这些东西, 必须得使用FAT/NTFS这些通用文件系统, 像硬盘一样提供给OS一个平坦的块设备接口, 只能在这一层之下做负载均衡, 只能靠硬件上多加的冗余容量(你看Intel那个X25-E用40GiB的Flash颗粒做32GB的SSD), 有了Trim之后, 这个情况就改观了.

另外我觉得其实原文逻辑有点问题: 有Trim之前, 文件系统删除一个文件, SSD根本不会去擦除那个块, 哪敢啊, 还以为在用呢, 这时候就算有写入操作, 也不用等(根本就不存在的)擦除操作. Trim的好处应该是: 有Trim之后, SSD就知道那些块不被占用了, 有空闲(没有读写操作)的时候那些块就会被擦掉, 这样接下来的写操作就有更多擦除过的块(不仅仅是硬件冗余的那些)可供使用, 可以撑得住更久的密集写入而不用等待缓慢的阻塞的擦除操作.

当然, 这会引起一个副作用, Trim过的块的内容变得不确定, 那些反删除/数据恢复软件, 大概要集体师太了吧XD

写这文的本意是不希望那个诡异的说法以讹传讹下去, 之前还看过把超线程解释成双核的文... 不过不知道有多少人有耐心看完呢...

【编辑推荐】

  1. 固态硬盘优势解读:能耗低读写性能高
  2. 存储分析:对SSD投资进行评估
  3. 谈Web服务器和应用服务器的负载均衡

相关资讯

今日微信独家

《华尔街日报》报道日前援引知情人士的消息称,由于被美国政府以国家安全问题为由进行调查,联想斥资23亿美元收购IBM低端服务器业务的交易陷入了停滞状态。
关注新浪官博 订阅微信订阅号

订阅焦点周刊

论坛与活动

2016中国数据加速峰会直播专题
2016中国数据加速峰会直播专题[详细]
点击查看

精彩视频

最新文章

1111111
1111111
asdasd
asdasd
同有科技应用型大数据存储在南京掀起智能风暴
同有科技应用型大数据存储在南京掀起智能风暴
斯蒂芬斯蒂芬
斯蒂芬斯蒂芬
京东双11技术备战 构建多中心交易系统
京东双11技术备战 构建多中心交易系统