오래전이라 세부적인건 기억이 안나지만
nand를 사용하는 파일시스템은 bad난 곳을 기억해서 저장해놓고 그 부분에 데이터를 쓰지 않도록 설계합니다.
그만큼 nand의 신뢰성에 대해 대비를 합니다.
파일시스템이 알아서 해주므로 거기에 대해서는 굳이 신경쓰실 필요가 없는것으로 기억납니다.
bonfs 는 NAND flash bad block management 를 고려하지 않은 read-only 파일 시스템 뿐만 아니라
기타 read 로만 사용되는 모든 영역(kernel 저장영역, ramdisk 저장영역) 에 대해 bad block management 를 대행해 주기 위한 일종의 block device 입니다.
replace 기법을 사용하기 때문에 탐색 시간을 최소화하고자 각 영역별 파티션 개념을 사용했고,
이 파티션 개념을 그대로 이용해서 자체적인 bad block management 가 있는 파일 시스템 영역은 bonfs 에서 제외하도록 되어 있습니다.
이런 걸 사용해야만 했던 이유는,
이런 게 없으면 NAND flash 에서 커널은 물론이고 부트로더를 self 로딩하는 것 조차도 보장할 수 없기 때문이었습니다.
cramfs 따위는 덤이었죠.
개발자들의 고충을 덜기 위한 목적 보다는 제품 양산 절차, 공장에서 NAND flash 에 일괄적인 write 를 하는 것을 지원하기 위한 목적이 더 큽니다.
이런게 없으면, "부트로더/커널/cramfs 영역에 bad 가 있으면 그 NAND flash 는 폐기처분 해 주세요..." 라고 말해야 하거든요.
오래전이라 세부적인건 기억이 안나지만 nand를
오래전이라 세부적인건 기억이 안나지만
nand를 사용하는 파일시스템은 bad난 곳을 기억해서 저장해놓고 그 부분에 데이터를 쓰지 않도록 설계합니다.
그만큼 nand의 신뢰성에 대해 대비를 합니다.
파일시스템이 알아서 해주므로 거기에 대해서는 굳이 신경쓰실 필요가 없는것으로 기억납니다.
http://hi.baidu.com/yexm_it/b
http://hi.baidu.com/yexm_it/blog/item/a91db517f9d53310962b4313.html
에 잘못 설명된 것을 고치고 약간의 추가 설명을 하자면...
bonfs 는 NAND flash bad block management 를 고려하지 않은 read-only 파일 시스템 뿐만 아니라
기타 read 로만 사용되는 모든 영역(kernel 저장영역, ramdisk 저장영역) 에 대해 bad block management 를 대행해 주기 위한 일종의 block device 입니다.
replace 기법을 사용하기 때문에 탐색 시간을 최소화하고자 각 영역별 파티션 개념을 사용했고,
이 파티션 개념을 그대로 이용해서 자체적인 bad block management 가 있는 파일 시스템 영역은 bonfs 에서 제외하도록 되어 있습니다.
이런 걸 사용해야만 했던 이유는,
이런 게 없으면 NAND flash 에서 커널은 물론이고 부트로더를 self 로딩하는 것 조차도 보장할 수 없기 때문이었습니다.
cramfs 따위는 덤이었죠.
개발자들의 고충을 덜기 위한 목적 보다는 제품 양산 절차, 공장에서 NAND flash 에 일괄적인 write 를 하는 것을 지원하기 위한 목적이 더 큽니다.
이런게 없으면, "부트로더/커널/cramfs 영역에 bad 가 있으면 그 NAND flash 는 폐기처분 해 주세요..." 라고 말해야 하거든요.
아쉽지만 nand 는 내구성이 약합니다. 막
아쉽지만 nand 는 내구성이 약합니다.
막 생산한 NAND 자체도 BAD 가 없다는 것을 보장 못할 뿐더러, SMT 과정이나 일반 사용 도중에서도 BAD 가 발생할 확률이 있습니다.
그런 이유로, NAND 에 Cramfs 를 적용하면 문제가 생길 가능성이 높습니다. rootfs 나 kernel 등은 nand 에 cramfs 로 사용하시는 것보다는 nor 에 적용하시는 것이 안전할 것으로 생각됩니다.
========================
조직 : E.L.D(Embedded Linux Developer/Designer)
블로그 : poplinux@tistory.com
카페 : cafe.naver.com/poplinux
임베디드 리눅스 관련 프리렌서 지향
댓글 달기