2009-09-02 2 views
0

휴대용 플래시 메모리 장치 (썸 드라이브 등)의 오류 징후를 감지하는 프로그램을 작성하려고합니다.휴대용 플래시 메모리에서 오류가있는 섹터 확인

나는 과거의 기계식 하드 드라이브에서 실패한 섹터와 다른 종류의 문제를 감지 할 수있는 도구를 보았지만 플래시 메모리에는 하드웨어에 대한 예측 가능한 낮은 수준의 액세스가없는 것으로 우려됩니다 저장 장치의 내부 작동으로 인해 마모 균등화 및 다른 블록 재 매핑 기술 ('죽은'섹터 건너 뛰기)과 같은 것들은 플래시 드라이브의 고장 여부를 판단하는 것이 불가능하지는 않더라도 어렵지 않을 것이라고 생각하게합니다. 장치 마운트 해제).

수명이 다한 플래시 드라이브는 읽기가 쉽고 (읽기 및 전체 오류가 발생할 때 일정한 CRC 불일치) 쉽게 감지 할 수 있어야합니다. 그러나 일찍 실패 할 수있는 드라이브는 무엇입니까? 느린 처리 ​​속도와 같이 플래시 드라이브가 정상보다 훨씬 빨리 실패 할 것이라는 징조가 있습니까?

잠재적으로 불량 블록을 감지하는 라인에 따라 전체 볼륨의 크기 또는 크기에 가까운 파일에 임의의 읽기/쓰기 시도를 고려했지만 드라이브가 해당 볼륨에서 크기를보고 할 수도 있습니다 '죽은'블록을 설명 할 수있는 최대 용량?

요약하면 플래시 메모리에 대한 블록 다시 매핑 또는 다른 수명 연장 기술의 사용을 회피하거나 (알고리즘 적으로 또는 다른 방법으로) 검색 할 수있는 방법이 있습니까?

날이 serverfault.com에 속하는지 여부에 대한 나의 불확실성을 표현함으로써이 질문을 종료하겠습니다. 이것은 분명 하드웨어 관련 질문이지만, 나는 또한 자신이 프로그래밍 할 수있는 소프트웨어 솔루션을 원한다. 이 질문을 잘못하면 serverfault-으로 마이그레이션하게되어 기쁩니다. 그러나 프로그래밍 솔루션이 필요합니다. 설명이 필요한 경우 알려 주시기 바랍니다 :)

감사합니다.

답변

0

badblocks이 평준화를 착용,이 경우

+0

문제는 많은 경우에 블록 레벨의 액세스도 보장되지 않는 것입니다 ... 나쁜 표시되어 있기 때문에 마모 균등화와 다른 종류의 블록 매핑 하드웨어에서 발생 수평. 나는 badblocks가 작동하는 방법을 모르지만 나는 그것이 가장 현대적인 플래시 드라이브의 "특징"에 영향을 받기 쉽다는 것을 의심한다. –

0

AFAIK를 도울 수 있다면 그것은 흥미로운 펌웨어 수준에서 발생합니다. 하드웨어가 불량 블록을 알지 못하면 펌웨어에서이를 감지합니다.

그리고이 불량 섹터를 찾기 전에 알려진 방법이 없습니다. BTW, 나는 그것이 나쁜 섹터는 아니지만 나쁜 블록이라고 생각합니다. 섹터가 불량하면, 전체 블록은