파일시스템의 정의가 굉장히 햇갈리네요..
임베디드 리눅스쪽으로 공부하고 있는 초보입니다.
target board에 포팅하면서 이것저것 기본 개념 공부를 하고있는데요.
파일시스템의 정의가 굉장히 햇갈리네요..
제 블로그에 이런식으로 정의해 놨습니다.
http://blog.naver.com/supsup5642/60153827304
1. File System에 대하여
- 컴퓨터 파일에 이름을 붙이고, 저장이나 검색을 위해 논리적으로 그것들을 어디에 위치시켜야 하는지 등을 나타내는 방법.
- 파일의 '유지, 관리'하는 '규칙'을 의미한다.
- 파일을 디렉토리에 저장하고, 파일명을 제한하기도하고, 파일명에 사용되는 문자를 제안하고, 확장자의 길이도 제안하며, 파일의 보안, 복구의 기능도 제공된다.
- 윈도우에서는 'FAT16, FAT32, NTFS'등을 사용하며, 리눅스에서는 'EXT2, EXT3'를 사용한다.
- FileSystem이 없는 RTOS의 경우 '하나의 바이너리 파일'에 BSP가 포함된다
여기서 예로 사용된 FAT이나, EXT같은경우 위에저 정의된 내용으로 이해가 잘됩니다.
말그대로 파일을 유지,관리 해주니까요.
그런데 파일 시스템이란 용어가
Root 파일시스템, proc 파일시스템처럼사용되지 않습니까?
그런데 Root나 proc 파일시스템에서는 파일을 유지 관리하는게 아니라
부팅시 필요한 프로세스를 실행시키거나(init) 프로세스 정보를 보여주는(proc)역활을 하는데
제가 블로그에 정의한 내용과 일치하지 않느다는 느낌이 강하네요.
제 블로그 정의가 잘못된건지
아니면 Root나 proc 파일시스템을 FAT, NTFS, NFS과 다른 분류의 파일시스템으로 간주해야하는
건가요? 도와주세요 ㅎ
리눅스 시스템은 파일 기반 시스템입니다.
생각하시기에 따라서 조금 헷갈리실 수도 있겠지만,
proc 파일시스템도 ext나 fat와 같은 파일시스템의 일종입니다. (procfs)
다만 일반적인 파일관리의 목적이 아니라서 특수파일시스템입니다.
root 파일시스템이라는 용어는 실제 정식 용어는 아니고,
시스템의 루트 디렉터리, 즉 최상위 디렉터리인 / (root) 디렉터리를 의미합니다.
실제 proc 파일시스템은 시스템 내의 프로세스들을 추적하고,
커널 내의 동적인 자료들을 접근하기 쉽게 하기 위해 만들어졌습니다.
각 프로세스 마다 /proc 디렉터리 하위에 프로세스 번호의 디렉터리들을 가지고 있는데,
그 안에 root 라는 심볼릭 링크 파일이 하나씩 있습니다.
이는 그 프로세스가 최상위 디렉터리로 삼고 있는 디렉터리를 의미합니다.
root 파일시스템이란, 각 프로세스가 인식하고 있는 최상위 디렉터리를 의미하기도 합니다.
개념 어디다 두고 다니심...
root 파일시스템은 root 디렉토리에 마운트된 파일시스템을 뜻하는건데...
최상위 디렉토리를 의미한다니 먼 개솔...
파일시스템이랑 디렉토리랑 구분 못하는거 보면 보통 무개념이 아니네...
....
proc 이런거 파일시스템 맞죠
메모리에 있는거를 파일로 접근하게 해주는데...
쉽게 그냥 메모리등 저장장치에 있는 데이터를 파일의 형태로 접근하게 해주니까 파일 시스템~~
답변 감사드립니다. ㅎ
어느정도 궁금증이 해결 되었네요 ㅎ
댓글 달기