ssd与磁道机械盘
主流的SSD是使用半导体闪存(Flash)作为介质的存储设备,SSD有别于HDD(Hard Disk Drive)机械硬盘。
SSD使用Flash作为存储介质,数据读取写入通过SSD控制器进行寻址,不需要机械操作,有着优秀的随机访问能力。
ssd访问图:
3. SSD的特性?
3.1 读写不平衡
读的速度很快;写入数据时,因为需要通过加压的方式对存储单元进行电子填充,所以速度略慢;擦除速度最慢,擦除块的时间在ms级。在使用SSD的时,需要考虑到SSD的读写不平衡的特性。
3.2 先擦后写
Nand Flash的写入以page为单位,擦除以block为单位。在Page页写入之前,必须要将page页所在的block块擦除。这个是由Nand Flash的工作原理决定的。
3.3 块擦页写
一个Wordline对应着一个或若干个Page,具体是多少取决于是SLC、 MLC或者TLC。对SLC来说,一个Word line对应一个Page; MLC则对应2个Page,这两个Page是一对( Lower Page和Upper Page); TLC对应3个Page( Lower Page、 Upper Page和Extra Page,不同闪存厂家叫法不一样)。一个Page有多大,那么Wordline上面就有多少个存储单元,就有多少个Bitline。写入以页为单位。
一个Block当中的所有这些存储单元都是共用一个衬底的。当对衬底施加强电压,上面所有浮栅级的电子都会被吸出来。所以擦除是以块为单位的。
-----------------------------
磁道机械盘,随机读写和顺序读写差别很大,因为有寻址换道的过程。
而SSD没有存址过程,是直接读写的地址。
关于顺序写和随机写,大家认为随机写对 SSD 是不好的。当 SSD 的剩余空间充足时,随机写的性能很好,但是当剩余空间不多时,随机写的性能会急剧下降。
原因有两个:SSD block的擦除机制,垃圾回收。
顺序和随机访问如果要对比,就对比吞吐量。
不管在机械硬盘还是固态硬盘,顺序读写总是好的(对于要求高吞吐来说),而且单次访问的数据量越大越好。
固态硬盘的随机读可以通过并发和增加访问数据大小使得吞吐量和顺序读持平。
写 SSD 的话还是尽量顺序写入。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 从HTTP原因短语缺失研究HTTP/2和HTTP/3的设计差异
· 三行代码完成国际化适配,妙~啊~