A low-cost wear-leveling algorithm for block-mappingsolid-state disks
[] Li-Pin Chang,Li-Chun Huang.A low-cost wear-leveling algorithm for block-mapping solid-state disks.ACM SIGPLAN Notices,2011,Vol.46(5):31~40
[1] LI-PIN CHANG,CHUN-DA DU. Design and implementation of an efficient wear-leveling algorithm for solid-state-disk microcontrollers. ACM Transactions on Design Automation of Electronic Systems.2010, Vol.15(1):1~36.
[2] D. Jung, Y.-H. Chae, H. Jo, J.-S. Kim, and J. Lee. A group-based wearleveling algorithm for large-capacity flash memory storage systems.In CASES ’07: Proceedings of the 2007 international conference on Compilers, architecture, and synthesis for embedded systems, pages 160–164. ACM, 2007.
摘要
1.介绍
固态硬盘是以flash为存储介质的存储设备,由于物理特性的原因,SSD与HDD进行读取的方式是不同的。SSD通过隐藏flash的特性来模拟HDD的方式以便于操作系统无需改变软件或硬件来把一个SSD设备当做HDD来识别。固态硬盘是优于传统的硬盘驱动器的,无论是耐冲击性、节能、随机访问性能、散热,这些都吸引供应商使用其作为存储设备广泛应用于笔记本电脑、智能手机和便携式媒体播放器等。
flash是一种必须在写之前擦除的存储介质。每个闪存单元只能承受有限次的擦写次数,大约在100k次左右,频繁地擦写操作可能导致某些闪存颗粒比其余的闪存颗粒提前退休。特别是现在,随着MLC和TLC的出现,单个闪存单元可以保存二个或更多的电位,这降低的单位容量的成本,但是相比SLC来说,他们的寿命却是大打折扣。
有数据访问的地方就不可避免磨损的存在,一部分闪存颗粒的提前不能使用不仅导致设备容量的降低,同时也会加剧剩余闪存颗粒的磨损程度。所以SSD需要磨损均衡的管理来保持SSD内所有闪存颗粒的整体擦除次数的平均,但是磨损管理不是没有代价的,它会做一些额外的数据移动来保证磨损均衡的实现,这些额外的数据移动有利于整体的平衡。
磨损均衡操作包括数据移动的时机和数据移动的位置,这些操作监视整个flash的磨损情况以及在磨损不均衡的时候进行一些操作来保持平衡。
在资源紧张的情况下,挑战有三个:一是监视整个flash的磨损,需要相当多的时间和空间资源;二是算法优化需要根据flash的访问模式和在线人员的访问来决定;三是高复杂阻碍使用先进的WL算法
一般的SSD主控没有足够的RAM空间来存放SSD盘内flash所有的磨损信息,chang等人提出只将部分信息保存在RAM中,然而周期性的RAM和flash之间磨损信息的交互会导致额外的写操作[1];june提出了一种基于大范围的平均擦写次数的low-resolution磨损信息方法,但是这种方法在磨损差异比较大的时候无法很好地工作[2];
A low-cost wear-leveling algorithm for block-mappingsolid-state disks的更多相关文章
- PatentTips - Wear Leveling for Erasable Memories
BACKGROUND Erasable memories may have erasable elements that can become unreliable after a predeterm ...
- PatentTips - Solid State Memory Wear Leveling
BACKGROUND OF THE INVENTION Solid-state memory devices encompass rewritable non-volatile memory devi ...
- Variability aware wear leveling
Techniques are presented that include determining, for data to be written to a nonvolatile memory, a ...
- UVa1048 Low Cost Air Travel——最短路
很好的一道题呀 思路 状态\(d(i,j)\)表示已经经过了行程单中的\(i\)个城市,目前在城市\(j\)的最小代价,直接建边跑最短路就行了 比如机票为\(ACBD\),行程单为\(CD\),那么对 ...
- L147 Low Cost Study Has High Impact Results For Premature Babies
No one knows exactly why some babies are born prematurely(早产), but some of the smallest premature ba ...
- WL(Wear leveling)磨损平衡
前面说过,闪存寿命是以P/E次数来计算的,而WL就是确保闪存内每个块被写入的次数相等的一种机制.若没有这个机制,SSD内的闪存颗粒就无法在同一时间内挂掉,那对用户来说就是灾难. 会出现这种 ...
- File System Design Case Studies
SRC=http://www.cs.rutgers.edu/~pxk/416/notes/13-fs-studies.html Paul Krzyzanowski April 24, 2014 Int ...
- Durable NAND flash memory management
词条积累 1.NAND flash memory http://www.searchstorage.com.cn/whatis/word_6052.htm http://baike.baidu.com ...
- SSD 相关基础知识
SDD 基础知识 SSD(Solid State Drives)是固态硬盘,使用闪存颗粒来存储数据,闪存又可分为NAND Flash和NOR Flash,通常所说的SSD硬盘都使用NAND Flash ...
- MySQL Disk--SSD 特性
======================================================================= SSD 特性 .随机读能力非常好,连续读性能一般,但比普 ...
随机推荐
- 201521123055 《Java程序设计》第9周学习总结
1. 本章学习总结 2. 书面作业 Q.1常用异常 题目5-1 1.1 截图你的提交结果(出现学号) 1.2 自己以前编写的代码中经常出现什么异常.需要捕获吗(为什么)?应如何避免? 1.3 什么样的 ...
- Akka(25): Stream:对接外部系统-Integration
在现实应用中akka-stream往往需要集成其它的外部系统形成完整的应用.这些外部系统可能是akka系列系统或者其它类型的系统.所以,akka-stream必须提供一些函数和方法来实现与各种不同类型 ...
- Html在线编辑器--基于Jquery的xhEditor轻量级编辑器
xhEditor V1.2.2 下载地址 开源中国社区: http://www.oschina.net/p/xheditor xhEditor是一个基于jQuery开发的简单迷你并且高效的可视化XHT ...
- 记录兼容IE8中发现的一些问题
1.new Date().getYear(); chrome下:获取的是1900年之后的年份,如2017年获取的是117 IE8下:获取的是公元年份,如2017获取的是2017 解决方案:使用new ...
- xcode7.3 iTunes Store operation failed解决
使用apploader上传程序 提示:如果您安装了XCode开发环境.在/Applications/XCode.app/Contents/Applications目录中可以找到Application ...
- BZOJ-1050-[HAOI2006]旅行comf(并查集)
Description 给你一个无向图,N(N<=500)个顶点, M(M<=5000)条边,每条边有一个权值Vi(Vi<30000).给你两个顶点S和T,求 一条路径,使得路径上最 ...
- ElasticSearch 插件jdbc import(1)-----定时执行
定时执行 参数schedule用来配置cron定时表达式 同时支持JSON数组的方式定义多个定时表达式: 例子如下: "schedule" : "0 0-59 0 ...
- Robberies hdu 2955 01背包
Robberies Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total S ...
- 经典算法研究系列:二、Dijkstra 算法初探
July 二零一一年一月 本文主要参考:算法导论 第二版.维基百科. 一.Dijkstra 算法的介绍 Dijkstra 算法,又叫迪科斯彻算法(Dijkstra),算法解决的是有向图中单个源点到 ...
- C++PrimerPlus第6版 第四章——复合类型
1,复合类型主要包含:数组.结构.联合.枚举.类.指针.引用等. 2,数组.长度必须确定.即编译阶段,数组的长度就得确定好.所以只能使用常量(#define.const)声明数组长度.如果使用变量声明 ...