본문 바로가기

File System

(32)
[펌] 리눅스 플래시 파일 시스템 분석 M. Tim Jones, 컨설턴트 엔지니어, Emulex Corp. 요약: JFFS(Journaling Flash File System)와 YAFFS(Yet Another Flash File System)에 대해 들어보았을테지만, 기반 플래시 디바이스 위에서 동작하는 파일 시스템이 무엇을 의미하는지 알고 있습니까? 이 기사는 리눅스(Linux®)를 위한 플래시 파일 시스템에 대해 소개하고, 닳기 균등화를 통해 반영구적인 기반 디바이스(플래시)를 보호하는 방법을 익히고, 기본적인 설계와 함께 다양한 플래시 파일 시스템을 알아보겠습니다. 원문 게재일: 2008 년 9 월 23 일 ------------------------------------------------------------------------..
망고보드에 FUSE & NAND Filesystem 실행하기 Fuse 홈페이지나 기타 Fuse를 설명한 곳에서는 PC 또는 Build 환경에서 사용하거나 ntfs를 사용하는 것을 설명한 곳이 대부분이었다. 이제 프로젝트를 시작하며 처음 리눅스를 접하면서 이들에서 부족한 부분들을 설명한다. 0. 환경 Mango 보드를 RFS로 부팅 0.1 Target - 보드 : Mango64 - Kernel : 2.6.29 0.2 Build - OS : Ubuntu 8.04 - Kernel : 2.6.27-11-generic 0.3 Cross Compiler - 4.2.2-eabi 1. Fuse 모듈이 포함된 커널 만들기 1.1 menuconfig에서 FUSE 선택하여 zImage 만듦 1.2 만들어진 zImage를 tftp 부트(/tftpboot)에 복사 2. Fuse 컴파일 ..
File system의 이해 출처: 데브피아(http://www.devpia.com/Maeul/Contents/Detail.aspx?BoardID=6726&MAEULNo=861&no=26721&ref=26721) 아래의 글은 한빛미디어에서 나온 "임베디드 개발자를 위한 파일시스템의 원리와 실습(정준석, 정원용)"의 내용을 바탕으로 요약해 놓은 자료입니다. 만약 저작권 관련하여 문제가 된다면 연락해주십시오. 삭제하도록 하겠습니다. 글이 필요하신분은 마음껏 참조하셔도 좋습니다만 출처만은 밝혀주십시오. 1장 파일시스템의 이해 1.1 파일시스템의 정의 1.1.1 파일 시스템의 정의 파일 시스템은 저장장치 내에서 데이터를 읽고 쓰기 위해 미리 정해진 약속이다. 파일 시스템은 저장할 데이터를 결정하고, 그 크기와 위치 등을 미리 약속한 뒤 운..
System Software for Flash Memory: A Survey Abstract. Recently, flash memory is widely adopted in embedded ap- plications since it has several strong points: non-volatility, fast access speed, shock resistance, and low power consumption. However, due to its hardware characteristic, namely \erase before write", it requires a software layer called FTL (Flash Translation Layer). This paper surveys the state-of-the-art FTL software for °ash m..
(10) 파일 엑세스 FAT32 이해하기의 마지막 단계인 [파일 엑세스] 부분입니다. 이전의 내용으로 미루어 볼 때, MP3 파일은 클러스터 영역에 존재한다는 것을 알았습니다. (이제 당연한 얘기겠죠?^^) 그런데 MP3 파일이 클러스터에 일렬로 쭉~ 존재하는 것은 아닙니다. 만약에 MP3 파일이 클러스터에 일렬로 쭉~ 존재한다면 MP3 데이터의 시작 클러스터만 알아내고 클러스터 주소를 1씩 증가시키면 쉽게 MP3 파일을 끝부분까지 읽을 수 있을 것입니다. 하지만 MP3 파일은 클러스터에 띄엄띄엄 존재합니다. 정확히 말하면 MP3 데이터가 쭉~ 이어질 수도 있고, 이어지다가 몇 개의 클러스터를 건너띄고 이어질 수도 있습니다. 예를 들면, 1. MP3 데이터가 클러스터에 사슬처럼 쭉~ 이어진 경우는 -> SD카드를 깨끗이 포맷..
(9) 루트 디렉토리 FAT32 구조 [MBR] + [예약된 공간] + [PBR] + [예약된 공간]+ [FAT #1] + [FAT #2] + [클러스터] =================================================================>===========> 위의 파란색 화살표 부분이 현재까지의 진행 상황을 나타냅니다.^^ 앞 부분에서 [FAT #1]과 [FAT #2]에 대한 설명이 부족했지만, [클러스터] 영역으로 접근하는 수식은 PBR영역의 Volume ID 정보를 통해 쉽게 계산할 수 있습니다. 그럼 이제 [클러스터] 영역에 존재하는 루트 디렉토리에 대해 알아보겠습니다.^^ (SD메모리에 노래 2곡을 저장해 놓았는데, 파일이름은 ABBA.mp3와 MORNING.mp3 입니다.) 루트..
(8) FAT 엔트리 우선 지금까지의 내용을 간단히 정리해보겠습니다.^^ FAT32의 속내용만 파악하다 보니, FAT32의 전체구조가 흐릿해졌거든요.^^; 저만 그런가요^^; 또한 FAT32 고지에 어느 정도 다다랐는지 궁금하기도 합니다.^^ FAT32의 전체 구조는 아래의 그림과 같습니다. (지난번에 봤던 그 그림입니다.^^) 위의 그림을 보면서 하나씩 나열해 보면, FAT32는 [MBR] + [예약된 공간] + [PBR] + [예약된 공간]+ [FAT #1] + [FAT #2] + [클러스터] 구조로 되어 있습니다. ==============================> =============================================> 여기서 파란색 화살표 부분까지가 여태껏 알아본 내용입니다.^^ 간략..
(7) SD 카드의 PBR 읽기 지난번에는 SD 카드의 0번 섹터를 읽어 봤습니다.^^ 0번 섹터는 MBR 영역으로 Boot Code + 4개의 파티션 테이블 + 매직코드 = 512 바이트로 구성되어 있음을 알았습니다.^^ SD 메모리에 들어 있는 MP3 파일을 읽기 위해 우선으로 하는 작업은 PBR(부트레코드) 섹터를 읽는 일입니다. 왜냐하면 PBR 섹터에 MP3 파일이 존재하는 섹터 번호가 저장되어 있기 때문입니다.(정확하게 말하자면 약간 다릅니다.^^) 따라서 PBR에 들어 있는 값을 참조하면 MP3 데이터가 있는 섹터를 알 수 있습니다. MBR은 항상 SD 메모리의 0번 섹터에 위치합니다. 그러나 PBR이 위치하는 섹터는 MBR 섹터로부터 멀리 떨어져 있기 때문에 PBR이 위치하는 섹터를 찾으려면 앞에서 말한 바와 같이 MBR ..