1. 파일과 디렉터리
- 파일 시스템
: 파일과 디렉터리(폴더)를 관리하는 커널의 한 부분
다양한 파일 시스템이 있고, 여러 파일 시스템을 동시에 사용할 수 있다. - 파일
: 보조기억장치의 의미있는 정보의 집합- 구성 요소
- 이름
- 실행하기 위한 정보
- 메타데이터 / 속성
- 구성 요소
- 파일 속성
- 유형(확장자)
- 크기
- 생성 날짜
- 마지막 접근 날짜
- 마지막 수정 날짜
- 생성자
- 소유자
- 위치
- 파일(+디렉터리) 접근 단위
: 블록(block) - 섹터 단위로 접근하지 않는다. - 디렉터리
: 많은 운영체제는 디렉터리를 파일과 동일하게 간주한다.- 구성 요소
- 파일 이름
- 위치를 유추할 수 있는 정보
- (파일 속성)
- 구성 요소
- 파티셔님(partitioning): 보조기억장치의 영역을 구획하는 작업
- 파티션(partition): 보조기억장치에서 구획된 영역
- 포매팅(formating): 파일 시스템을 만드는 작업
- 마운트 (mount)
- 파일 시스템에 접근할 경로 결정
- 파일 시스템을 다른 파일 시스템에 편입
2. 파일 시스템 종류와 특성
- FAT(File Allocation Table) 기반 파일 시스템
: FAT를 활용하는 파일 시스템
- 블록 단위 접근
- 파일은 연속적으로 블록을 할당할 경우 외부 단편화가 발생한다.
==> 따라서 불연속적으로 파일이 할당 된다. - 저용량 보조기억장치용 파일 시스템으로 이용
- USB 메모리
- SD 카드
- 많은 운영체제는 디렉터리를 파일과 동일하게 간주한다.
- 디렉터리 구성 정보
- 파일 이름
- 위치를 유추할 수 있는 정보
- (파일 속성)
- 아이노드 기반 파일 시스템
: 아이노드(i-node)라는 색인 블록을 활용한 파일 시스템- 사실상 파일의 모든 것을 담고 있다.
- 아이노드를 사용량이 100%로 찼을 경우
==> 용량이 남아 있어도 파일 생성 불가
- 기타 파일 시스템 특성
- NTFS
: 윈도우 운영체제에서 주로 사용되는 파일 시스템 - APFS
: macOS, IOS, watchOS, tvOS에서 주로 사용 - ext2, ext3, ext4, xfs
: 리눅스 운영체제에서 주로 사용되는 파일 시스템
- NTFS
- 저널링 파일 시스템(journaling file system)
- 파일 시스템에 크래쉬가 발생했을 때 빠르게 보구하기 위한 방법
- 작업 직전 파티션의 로그 영역에 로그를 남긴다.
- 로그를 남긴 후 작업을 수행
- 작업이 끝났다면 로그를 삭제한다.
- 파일 시스템에 크래쉬가 발생했을 때 빠르게 보구하기 위한 방법