OS #31 파일 시스템

underlier12·2020년 4월 10일
0

OS

목록 보기
31/35
post-custom-banner

31. 파일 시스템

파일 시스템

비트로 관리하기에는 오버헤드가 너무 크므로 초기에는 블록 단위로 저장 매체에 관리를 하게되었다. (보통 4KB) 블록마다 고유 번호를 부여하여 관리를 했다. 하지만 이마저도 용량이 늘어나면 각 블록 고유 번호를 관리하기 어려운 지경에 이르렀고 따라서 추상적(논리적) 객체가 필요하게 되었다.

파일 시스템 관리 단위

사용자가 각 블록 고유 번호를 관리하기 어렵기 때문에 추상적(논리적) 객체인 파일로 구분하고 이에 사용자는 파일 단위로 컨트롤하지만 각 파일은 또 따로 블록 단위로 관리한다.

저장 방법

저장 매체에 효율적으로 파일을 저장하는 방법은 가능한 연속적인 공간에 파일을 저장하는 것이지만 외부 단편화, 파일 사이즈 변경 문제로 불연속 공간에 파일 저장 기능이 필요하다. 따라서 다음 두가지 방법 중 하나를 활용한다.

  • 블록 체인 : 블록을 링크드 리스트로 연결
  • 인덱스 블록 : 각 블록에 대한 위치 정보를 기록 (배열과 비슷)

다양한 파일 시스템

Windows : FAT, FAT32, NTFS (블록 위치를 FAT 이라는 자료 구조에 기록)
UNIX : ext2, ext3, ext4 (일종의 인덱스 블록 기법인 inode 방식 사용)

profile
logos and alogos
post-custom-banner

0개의 댓글