当前位置:首页 » 操作系统 » 检验坏块算法

检验坏块算法

发布时间: 2022-10-04 07:45:16

⑴ 关于U盘坏块的问题

不是。把U盘插上。右键我的电脑。管理磁盘管理。然后找到U盘。然后就可以看到隐藏的762M的空间。然后右键 新建分区。下一步下一步就可以搞定。最简单的重新格式化。如果格式化还是老样子。那么,你找个平底鞋去抽老板。Y的买你个假货。

⑵ 单片机手册中常出现的ECC是什么的缩写啊

ECC的全称是 Error Checking and Correction or Error correction Coding,是一种用于差错检测和修正的算法。上一节的BBM中我们提到过,NAND闪存在生产和使用中都会产生坏块,BBM就是坏块的管理机制,而要 有效管理坏块的首要前提就是有可靠的坏块检测手段。如果操作时序和电路稳定性不存在问题,NAND闪存出错的时候一般不会造成整个Block或Page不 能读取甚至全部出错,而是整个Page中只有一个或几个bit出错,这时候 ECC就能发挥作用了。不同颗粒有不同的基本ECC要求,不同主控制器支持的ECC能力也不同,理论上来说ECC能力也是够用就行。
当前SSD内最普遍使用的ECC码是BCH码。当数据写入的时候,控制器内部的ECC模块计算数据并生成ECC签名,一般来说这个步骤非常 快,因此并不会影响整个SSD太多的性能表现。ECC的签名一般来说都保存在NAND页后部的SA区域,当数据从NAND读取的时候ECC模块回去读取 ECC签名,并对照相同与否来发现出现的错误。
相比发现错误,修复接收到的数据错误更复杂。第一步是检测收到的数据是否出错,这个和上面生成ECC签名的操作一样非常快。如果检测到接收 到的数据包含错误比特,就需要去生成独特的ECC算法(比如BCH),这部分会造成性能损失,但是只有在检测到错误时候才做。用生成的ECC算法来修复之 前检测到的错误。
必须强调的是,ECC解码过程是可能出现失败的,所以ECC系统架构必须合理的设计才能保证ECC不出错,而ECC能够修复的错误比特数取决于ECC算法设计。
如果ECC纠不过来, 一般会报ECC Fail, 用户表现为Read Fail,有时候ECC甚至诊测不到出错, 就会导致数据错误。
NAND的稳定性需要有多方面保障,ECC只能用来保证部分比特出错时的修复,如果整个页甚至块出现大面积错误,那么只有RAID这类的冗余保护才能修复了。
在企业级产品中对ECC甚至还有更苛刻的要求,那就是数据完整性检查,SSD内部所有的总线, 先进先出数据缓存器部分都要查,可以检测数据在进入NAND之前的错误。

⑶ 有谁比较了解sd卡或u盘的磨损平衡和坏块管理功能,能不能稍微详细说一下。谢谢

这是我的理解:
很不标准呵呵,就是当每块写入次数到了它的周期(1~10万次),就坏掉了,于是固件会忽略掉它,用别的块代替~所以U盘越用越小。

这是专业的说法:

WL(Wear leveling) 磨损平衡

在传统的硬盘中,每个扇区的读写利用率是不平均的。一般来说磁盘外径的空间读写速度最快,会被放置一些经常需要使用的数据。而磁盘的中间和靠近盘芯的部位会放置一些比较不容易被访问的数据。

在SSD中也有这样的情况,闪存芯片不同块、页的数据更新速度是不同的。很显然,如果某个块或者页的利用率高于其他,那么它的写入周期将被过快的消耗掉。由此这里就会产生一个坏块。一旦这个坏块是无法被修复或屏蔽的,那么这片闪存芯片也随之报废。而一颗芯片的报废会导致整块SSD无法继续使用。因此,这是工程师与消费者最不愿看到的情况。

平衡闪存中每一个块的负载,保持所有的存储单元都能被均匀的利用。这就能极大的保持SSD的健康性,保证SSD可以长期可靠的工作。

磨损平衡技术依赖于逻辑和物理地址的转换:也就是说,每次主机上的应用程序请求相同逻辑页地址时,内存控制器动态的映射逻辑页地址到另一个不同的物理页地址,并把这个映射的指向存放在一个特定的“映射表”里。而之前过期的物理页地址就被标记为“无效”并等待之后的擦除操作。这样一来,所有的物理块就能被控制在一个相同磨损范围,保证所有存储单元能够同时“老化”。

磨损平衡算法分静态和动态。动态磨损算法是基本的磨损算法:只有用户在使用中更新的文件占用的物理页地址被磨损平衡了。而静态磨损算法是更高级的磨损算法:在动态磨损算法的基础上,增加了对于那些不常更新的文件占用的物理地址进行磨损平衡,这才算是真正的全盘磨损平衡。目前SandForce和Marvell的主控方案都支持静态磨损算法。

⑷ nandflash和norflash的区别

nand flash和nor flash的区别如下:

1、开发的公司不同:

NOR flash是intel公司1988年开发出了NOR flash技术。NOR的特点是芯片内执行(XIP, eXecute In Place)。

Nand flash内存是flash内存的一种,1989年,东芝公司发表了NAND flash结构。其内部采用非线性宏单元模式,为固态大容量内存的实现提供了廉价有效的解决方案。

2、存储单元关系的不同:

两种FLASH具有相同的存储单元,工作原理也一样,但NAND型FLASH各存储单元之间是串联的,而NOR型FLASH各单元之间是并联的。为了对全部的存储单元有效管理,必须对存储单元进行统一编址。

3、擦除操作的不同:

NAND FLASH执行擦除操作是十分简单的,而NOR FLASH则要求在进行擦除前先要将目标块内所有的位都写为0。

由于擦除NOR FLASH时是以64~128KB的块进行的,执行一个写入/擦除操作的时间为5s,与此相反,擦除NAND FLASH是以8~32KB的块进行的,执行相同的操作最多只需要4ms。

参考资料来源:网络-Nand flash

参考资料来源:网络-NOR Flash

⑸ 如何检测flash坏块

方法如下:

所需工具:CheckFlash

  1. 直接按开始即可检测。

  2. 红色方块代表物理驱动器错误,而黄色方块则代表逻辑数据错误。

  3. CheckFlash可以测试U盘的读取及写入速度,测试U盘FLASH是否存在物理损坏。

  4. 存取类型可以使用临时文件、作为逻辑驱动器或者作为物理设备。

⑹ 请教nand flash interleave操作的问题

交错页编程(Interleave Page Program)
多片同时编程,是针对一个chip里面的多个Plane来说的,
而此处的交错页编程,是指对多个chip而言的。
可以先对一个chip,假设叫chip1,里面的一页进行编程,然后此时,chip1内部就开始将数据一点点写到页里面,就出于忙的状态了,而此时可以利用这个时间,对出于就绪状态的chip2,也进行页编程,发送对应的命令后,chip2内部也就开始慢慢的写数据到存储单元里面去了,也出于忙的状态了。此时,再去检查chip1,如果编程完成了,就可以开始下一页的编程了,然后发完命令后,就让其内部慢慢的编程吧,再去检查chip2,如果也是编程完了,也就可以进行接下来的其他页的编程了。如此,交互操作chip1和chip2,就可以有效地利用时间,使得整体编程效率提高近2倍,大大提高Nand Flash的编程/擦写速度了。

⑺ FLASH中铅笔工具和刷子工具的区别方法是

在NAND闪存中每个块的最大擦写次数是一百万次,而NOR的擦写次数是十万次。NAND存储器除了具有10比1的块擦除周期优势,典型的NAND块尺寸要比NOR器件小8倍,每个NAND存储器块在给定的时间内的删除次数要少一些。

B) 位交换

所有flash器件都受位交换现象的困扰。在某些情况下(很少见,NAND发生的次数要比NOR多),一个比特(bit)位会发生反转或被报告反转了。

一位的变化可能不很明显,但是如果发生在一个关键文件上,这个小小的故障可能导致系统停机。如果只是报告有问题,多读几次就可能解决了。

当然,如果这个位真的改变了,就必须采用错误探测/错误更正(EDC/ECC)算法。位反转的问题更多见于NAND闪存,NAND的供应商建议使用NAND闪存的时候,同时使用EDC/ECC算法。

这个问题对于用NAND存储多媒体信息时倒不是致命的。当然,如果用本地存储设备来存储操作系统、配置文件或其他敏感信息时,必须使用EDC/ECC系统以确保可靠性。

C) 坏块处理

NAND器件中的坏块是随机分布的。以前也曾有过消除坏块的努力,但发现成品率太低,代价太高,根本不划算。

NAND器件需要对介质进行初始化扫描以发现坏块,并将坏块标记为不可用。在已制成的器件中,如果通过可靠的方法不能进行这项处理,将导致高故障率。

5、易于使用:

可以非常直接地使用基于NOR的闪存,可以像其他存储器那样连接,并可以在上面直接运行代码。

由于需要I/O接口,NAND要复杂得多。各种NAND器件的存取方法因厂家而异。

在使用NAND器件时,必须先写入驱动程序,才能继续执行其他操作。向NAND器件写入信息需要相当的技巧,因为设计师绝不能向坏块写入,这就意味着在NAND器件上自始至终都必须进行虚拟映射。

6、软件支持:

当讨论软件支持的时候,应该区别基本的读/写/擦操作和高一级的用于磁盘仿真和闪存管理算法的软件,包括性能优化

⑻ ORACLE使用dbv工具检验数据文件是否有坏块

dbv工具可以用来验证数据文件的有效性,在数据库恢复之前可以使用该命令对备份文件进行有效性检查,
防止因备份文件本身的问题导致数据库无法恢复。
当然,dbv命令也可以对在线的数据文件进行检查。
注意,dbv工具只可以对数据文件进行检查,无法使用它完成控制文件和日志文件的检查。
1.dbv命令语法
dbverify ::=
dbv [ USERID=username/password ]
FILE = filename
| { START = block_address | END = block_address }
| BLOCKSIZE = integer
| HIGH_SCN = integer
| LOGFILE = filename
| FEEDBACK = integer
| HELP = { Y | N }
| PARFILE = filename
End of description.
参考自Oracle官方文档http://download.oracle.com/docs/cd/E11882_01/server.112/e10701/img_text/dbverify.htm
2.查看帮助文档
从语法定义中我们看到“HELP = { Y | N }”选项,我们可以使用它查看dbv的帮助信息。
ticket@secDB /home/oracle$ dbv help=y
DBVERIFY: Release 11.2.0.1.0 - Proction on Wed Mar 31 19:47:36 2010
Copyright (c) 1982, 2009, Oracle and/or its affiliates. All rights reserved.
Keyword Description (Default)
----------------------------------------------------
FILE File to Verify (NONE)
START Start Block (First Block of File)
END End Block (Last Block of File)
BLOCKSIZE Logical Block Size (8192)
LOGFILE Output Log (NONE)
FEEDBACK Display Progress (0)
PARFILE Parameter File (NONE)
USERID Username/Password (NONE)
SEGMENT_ID Segment ID (tsn.relfile.block) (NONE)
HIGH_SCN Highest Block SCN To Verify (NONE)
(scn_wrap.scn_base OR scn)
帮助信息中描述了dbv命令的使用方法,不赘述。
3.体验dbv工具的效果
1)查看系统中的数据文件名称
sys@ticket> col name for a60
sys@ticket> select name from v$datafile;
NAME
------------------------------------------------------------
/oracle/ora11gR2/oradata/ticket/system01.dbf
/oracle/ora11gR2/oradata/ticket/sysaux01.dbf
/oracle/ora11gR2/oradata/ticket/undotbs01.dbf
/oracle/ora11gR2/oradata/ticket/users01.dbf
2)使用dbv工具对users01.dbf进行检查
(1)使用最简单的参数
sys@ticket> !dbv file=/oracle/ora11gR2/oradata/ticket/users01.dbf
DBVERIFY: Release 11.2.0.1.0 - Proction on Wed Mar 31 19:50:59 2010
Copyright (c) 1982, 2009, Oracle and/or its affiliates. All rights reserved.
DBVERIFY - Verification starting : FILE = /oracle/ora11gR2/oradata/ticket/users01.dbf

DBVERIFY - Verification complete
Total Pages Examined : 35520
Total Pages Processed (Data) : 33029
Total Pages Failing (Data) : 0
Total Pages Processed (Index): 20
Total Pages Failing (Index): 0
Total Pages Processed (Other): 402
Total Pages Processed (Seg) : 0
Total Pages Failing (Seg) : 0
Total Pages Empty : 2069
Total Pages Marked Corrupt : 0
Total Pages Influx : 0
Total Pages Encrypted : 0
Highest block SCN : 9291961 (0.9291961)
在实际使用中重点关注以下信息:
Total Pages Failing (Data) : 0
Total Pages Failing (Index): 0
Total Pages Failing (Seg) : 0
Total Pages Marked Corrupt : 0
如果以上信息返回结果不为0,需要重点关注!及时排查原因。
(2)如果指定logfile参数,检查结果将只记录在日志文件中,屏幕上不显示
sys@ticket> !dbv file=/oracle/ora11gR2/oradata/ticket/users01.dbf logfile=dbv_users01.log
DBVERIFY: Release 11.2.0.1.0 - Proction on Wed Mar 31 19:52:20 2010
Copyright (c) 1982, 2009, Oracle and/or its affiliates. All rights reserved.
此时可以使用SQL*Plus的edit命令查看生成的日志文件内容。
sys@ticket> ed dbv_users01.log

⑼ u 盘的坏块检测 和 黑片检测各是什么意思 或者说

坏块就是U盘上坏掉的存础区域
目前市场上流行黑片、白片的说法,都是Downgrade Flash的类型,由于Flash制程和容量的提升,内部的构成越来越复杂。而新的制程推出时,产品良率并不一定理想,那些不良的Flash有些是容量不足,有些是寿命不能达到要求,有些是测试不能通过,这些不能达到出厂要求的Flash都被称为Downgrade Flash。Downgrade Flash有些由厂家推向市场,比如Spectech等就是镁光(Micron)的Downgrade Flash。而另外一部分作为废品淘汰掉,但是利润驱使,这些废品也会低价被收购流入市场。一些厂家以各种方案的扫描工具(Soting Board)来检验出来哪些能够使用。这些厂家收购Flash按斤回收,通过少则数十台Soting Board,所则上千台Soting Board一同扫描,每天有上百K的产能。大部分Downgrade Flash被做成SD卡,少数用于U盘,极少数厂家用于生产MP3。Downgrade Flash的处理方式多数是降低容量出售。不论怎样处理,都还是存在问题隐患。但由于价格低廉,Downgrade Flash的市场正在进一步成长。

热点内容
app怎么提供服务器地址 发布:2025-05-16 11:48:27 浏览:397
双面警长第一季ftp 发布:2025-05-16 11:41:20 浏览:664
php取数组第一个 发布:2025-05-16 11:30:58 浏览:423
解调算法 发布:2025-05-16 11:21:09 浏览:136
python密码暴力破解 发布:2025-05-16 11:13:28 浏览:592
倒角刀编程 发布:2025-05-16 11:12:55 浏览:350
数据库的酸性 发布:2025-05-16 11:03:17 浏览:124
phpmysql长连接 发布:2025-05-16 10:51:50 浏览:734
android横屏全屏 发布:2025-05-16 10:47:43 浏览:475
服务器直链下载搭建 发布:2025-05-16 10:47:38 浏览:176