U盘开发之SSD对比
U盘因其小巧方便,逐步取代了笨重的移动硬盘和光驱,成为最普及的存储介质。现在的主板BIOS也将支持USB启动,作为标准之一,再过几年,光驱时代可能就要终结了。从早期的16MU盘,到现在动辄几个G,U盘的容量有了数量级的飞跃,但普通U盘的读写速度却没有太大的提高。原因在于U盘多用于即插即用的场合,且受限于USB2.0接口,做多通道的意义不是很大,随着USB3.0的普及和U盘成本的下降,这个现状可能会改变。
高速U盘采用高性能的主控芯片和多片Nand flash,通过并行处理技术,将N片低速Flash芯片并联起来,使用相同的控制线、片选线和读写信号线,构成一个多位宽的Flash组,这样N片并行工作,进行相同的操作,存储量可以达到单片Flash的N倍,理论上的存储速度也是单片Flash的N倍。金士顿新出一款100MB/s读取速度的高速U盘,不过价格超过同容量的SSD,离平民阶层时日尚早。
SSD和U盘,都采用Flash作为存储介质,可以将SSD视为强大的Flash阵列。SSD内部采用多个FLash贴片,常见的64G SSD,通常采用16片4GB Flash,读写速度较好的可以达到200MB/S,如果不计成本的话,可以做的更好。
SSD的读写操作是可以同时进行的,而U盘在同一时间仅能读或写,这是Nand Flash的特性决定了的.。SSD带有电池,用于应急备份。
SSD和U盘区别不仅仅在于速度,关键在于算法。Flash介质的擦除次数是有限的,反复的对一个Block擦写,可能会出现坏块。一些厂商在固件中提供了损耗平衡算法,尽可能充分利用每个Block的,延长整个SSD的寿命。同时,Flash的写入都存在一个放大效应,不同于机械硬盘的写操作,对Flash某个存储单元的写入,必须先将整个Block读入缓存,修改完数据,再擦除整个Block的数据,最后将这个Block写入,因此即使一个微小的改动,带来的影响也可能是巨大的(蝴蝶效应?)。一些SSD的固件里实现了Trim算法,对win7等支持trim的操作系统,开启trim功能,能提升SSD的读写性能,又大大减轻了SSD的损耗。还有一些SSD自身带有高速缓存,进一步提高了读写性能和IOPS。除了SATA接口的SSD,还有PCIE接口,性能更高,甚至GBps级别,当然成本也是极其昂贵。一些厂商为了降低成本,开发了SSD-HDD的混合硬盘,兼顾了性能和成本。
由于SSD良好的随机读写性能和低功耗、无噪音、抗震动、低热量的特点,被广泛应用于平板电脑和上网本。在数据库优化方面,将SSD用作高速缓存,对密集读的应用,可能带来数量级的性能提升。
在快速销毁领域,SSD也具有无法比拟的优势,Flash数据的擦除基于电信号的改变,只需要几秒钟,且现有技术手段难以恢复,而传统的机械硬盘,依靠盘片上的磁性介质记录信息,即使低格也不能完全销毁磁盘上的数据(不然也不会有艳照门了),只能借助专业的软件或者物理销毁,理论上来说,即使一块盘片碎片,也能从中恢复信息,但以目前的技术手段,尚有困难。有兴趣的TX,可以看看网上一位猛人利用铝热剂,物理销毁磁盘的方法。3000°C的高温,别说磁盘了,铁都化成水了。
U盘开发之SSD对比的更多相关文章
- U盘开发之GPIF Master模式
在U盘开发过程中,一个人从头做到尾,经常遇到一些莫名其妙的问题,只有到官网论坛发帖.折腾困扰我最久的,就是U盘的读写性能问题了,不采用GPIF的方式,single读只有几百K,single写只有几十K ...
- U盘开发之SCSI命令
借助硬件USB协议分析仪,可以清楚的看到U盘启动时和上位机之间交互的USB协议流程,从get desciptor get congfiguration set configuration到scsi命令 ...
- 高效开发之SASS篇 灵异留白事件——图片下方无故留白 你会用::before、::after吗 link 与 @import之对比 学习前端前必知的——HTTP协议详解 深入了解——CSS3新增属性 菜鸟进阶——grunt $(#form :input)与$(#form input)的区别
高效开发之SASS篇 作为通往前端大神之路的普通的一只学鸟,最近接触了一样稍微高逼格一点的神器,特与大家分享~ 他是谁? 作为前端开发人员,你肯定对css很熟悉,但是你知道css可以自定义吗?大家 ...
- RAMOS和SSD对比
http://bbs.pcbeta.com/forum.php?mod=redirect&goto=findpost&ptid=1786284&pid=48341400RAMO ...
- UWP开发之Mvvmlight实践七:如何查找设备(Mobile模拟器、实体手机、PC)中应用的Log等文件
在开发中或者后期测试乃至最后交付使用的时候,如果应用出问题了我们一般的做法就是查看Log文件.上章也提到了查看Log文件,这章重点讲解下如何查看Log文件?如何找到我们需要的Packages安装包目录 ...
- 【转载】浅谈游戏开发之2D手游工具
浅谈游戏开发之2D手游工具 来源:http://www.gameres.com/459713.html 游戏程序 平台类型: iOS Android 程序设计: 其它 编程语言: 引擎/SDK ...
- qt-qml移动开发之在ios上开发和部署app流程简单介绍
qt5.3已经全面支持移动开发,除了mac,windows,linux.还支持ios,android,wp,meego等移动平台,本教程是作者依据自己的经验,从头讲怎么样在ios上公布自己的app.因 ...
- 微信公众号开发之VS远程调试
目录 (一)微信公众号开发之VS远程调试 (二)微信公众号开发之基础梳理 (三)微信公众号开发之自动消息回复和自定义菜单 前言 微信公众平台消息接口的工作原理大概可以这样理解:从用户端到公众号端一个流 ...
- Android混合开发之WebViewJavascriptBridge实现JS与java安全交互
前言: 为了加快开发效率,目前公司一些功能使用H5开发,这里难免会用到Js与Java函数互相调用的问题,这个Android是提供了原生支持的,不过存在安全隐患,今天我们来学习一种安全方式来满足Js与j ...
随机推荐
- BZOJ 1065 奥运物流
http://www.lydsy.com/JudgeOnline/problem.php?id=1065 思路:由于n个点,有n条边,因此由根就会引出一个环,我们枚举环的长度,在那个长度断开,我们假设 ...
- BZOJ 2875 随机数生成器
http://www.lydsy.com/JudgeOnline/problem.php?id=2875 题意:给出mod,a,c,g,x0,n,xn=(a*xn-1+c)%mod,求xn%g 求A* ...
- 【Xamarin挖墙脚系列:IOS现有的设备SDK /OS/硬件一览】
附件下载: http://pan.baidu.com/s/1o7rsrUE
- 如何在WPF程序中使用ArcGIS Engine的控件
原文 http://www.gisall.com/html/47/122747-4038.html WPF(Windows Presentation Foundation)是美国微软公司推出.NET ...
- 转:ReportViewer控件使用方法
a. ReportViewer关联Report1.rdlc的简单呈现b. 对带有报表参数的Report1.rdlc的呈现c. 利用程式生成的DataSet 填充报表d. 调用存储过程 生成DataSe ...
- 健康管理app要注意哪些要点
健康管理app现在变得越来越热,越来越多的垂直领域的加入,让健康app的市场逐渐扩大,但移动健康管理app仍有许多缺陷需要解决.健康管理并不是治病,而是让健康的人更好的保持身体健康状态,让慢性病高风险 ...
- bash及其特性(笔记)
bash及其特性:shell: 外壳GUI:Gnome, KDE, XfceCLI: sh, csh, ksh, bash, tcsh, zsh root, student程序:进程 进程:在每个进程 ...
- Sql Server使用正则表达式
近日因项目需求,需要在sql server中用到正则表达式,因Sql Server本身并不支持正则表达式,需要用到Clr函数. 在此记录一下步骤,与大家共享,虽然写的是原创,但有参考网上的文章. 1. ...
- 关于vnc连接闪退问题的设置
设置如下: 依次点Option-->Advanced-->Expert找到ColourLevel,默认值是pal8,修改为rgb222或full.
- Activity之间通过intent 传递Map
//传递 Map<String,Object> data=orderlist.get(arg2-1); SerializableMap tmpmap=new SerializableMap ...