ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [OS] 파일 시스템 개요
    운영체제 2020. 11. 30. 16:26
    728x90

    Files

    파일 : 데이터의 집합

    특성 : 장기간 보존, 프로세스간의 공유 가능, 편리한 내부 구조(계층 구조, 연관 관계)

    Contiguous logical address space 에 저장됨 ( Physical address 와는 무관 )

     

    종류 : 데이터 파일, 프로그램 파일 : 확장자로 구분

    • 텍스트 파일

    • 소스 파일

    • 실행 파일 : 로더가 메모리로 가져와 실행할 수 있는 파일

    File Structure

    • Field : 데이터의 가장 작은 단위 : 고정 or 가변 길이

    • Record : 필드의 집합 : 고정 or 가변 길이

    • File : 레코드의 집합

    • Database : 관련된 데이터의 집합

    File Systems

    데이터를 파일로 저장하고, 다양한 기능을 제공

    • Create(생성)

      • 파일 시스템 내에 공간을 할당하고 FCB(File Control Block) 이 해당 주소를 가리키게함

      • 특정 디렉터리에 파일이 만들어져야함

    • Open(열기)

      • 모든 연산 전에 open 이 수행되어야함

      • 사실 파일 연산이 딱 한번만 이루어진다면 open 하지 않아도 되지만 일반적으로 그렇지 않음

      • 매 연산마다 open 하는 오버헤드는 매우 큼

    • Read(읽기)

      • file pointer 가 가리키는 위치의 내용을 버퍼에 읽음

    • Write(쓰기)

      • 버퍼의 내용을 file pointer 가 가리키는 위치에 씀

    • Delete(삭제)

      • 파일이 차지한 공간을 방출하고, 정보를 디렉토리에서 삭제 : unlink()

    • Close(닫기)

    • Reposition (재설정)

      • file pointer 의 위치를 변경 : seek()

    • Truncate (절단)

      • 파일 속성은 유지한 상태로 파일 일부 내용을 지움 : truncate()

    목적

    • 파일 데이터의 유효성 보장

    • 성능 최적화

    • 저장 장치의 입출력 지원

    • 데이터 손실 및 파괴 가능성 최소화

    • 표준화된 입출력 인터페이스 제공

    • 다중 사용자 입출력 지원

    특징

    • 파일 시스템은 파일을 논리적인 저장 단위로 사용

    • 파일 시스템은 논리적인 데이터를 저장 장치에 맵핑시키는 시스템

    • 파일은 sector의 block 단위로 이루어짐 ( 512KB ~ 4MB )

    • File control block( = inode)

    • Device driver : 물리 디바이스를 제어

    • 계층(layer) 구조



    Device Driver (장치 드라이버)

    • 파일 시스템의 가장 하위 레벨

      • Character Device Driver

      • Block Device Driver ( 주로 사용되는 파일 시스템 )

      • Network Device Driver

    • 입출력 연산 담당

    Basic file system (기본 파일 시스템)

    • 물리적인 입출력 레벨

    • 컴퓨터 시스템 외부 환경과의 인터페이스

    • Disk 와의 Data block 교환 처리

    • 보조 저장 장치의 Block 배치 담당

    • Block 의 메인 메모리 버퍼링 담당

    Basic I/O supervisor (기본 입출력 감독자)

    • 모든 파일 입출력의 시작과 종료를 담당

    • I/O 를 수행할 물리적인 장치를 선택

    • 디스크 접근 스케줄링

    • 입출력 버퍼의 할당과 보조기억장치 할당

    Logical I/O (논리 입출력)

    • 응용프로그램들이 레코드에 접근할 수 있도록 허용

    • 레코드 입출력 기능 제공

    • 파일의 기본 데이터 유지

    Access Mode

    • 사용자와 가장 가까운 파일시스템

    • 응용프로그램, 파일 시스템, 저장 장치 간의 표준 인터페이스 제공

    • Sequential access, direct access 등이 있음

     

    댓글

Designed by Tistory.