09. File System

2023. 12. 3. 00:21· CS/운영체제
목차
  1. File Systems
  2. File and File System
  3. open() 연산
  4. File Protection
  5. File System Mounting
  6. Access Methods

File Systems

File and File System

File

  • A named collection of related information
  • 일반적으로 비휘발성 보조 기억장치(영구 기억 장치)에 저장
  • OS는 다양한 저장 장치를 file이라는 동일한 논리적 단위로 볼 수 있ㄱ 해 줌

File attribute(metadata)

  • 파일 자체의 내용이 아니라 파일을 관리하기 위한 각종 정보들

File system

  • OS에서 파일을 관리하는 부분 - 파일, 파일의 메타데이터, 디렉토리 정보 등 관리
  • 파일의 저장 방법 결정, 파일 보호

Directory

  • 파일과 다른 디렉토리를 포함하는 특별한 종류의 파일
  • 파일의 메타데이터 중 일부를 보관하고 있는 일종의 특별한 파일

Partition (Logical Disk)

  • 하나의 (물리적) 디스크 안에 여러 파티션을 두는 게 일반적
  • 여러 개의 물리적 디스크를 하나의 파티션으로 구성하기도 함 (RAID)
  • 물리적 디스크를 파티션으로 구성한 뒤 각각의 파티션에 file system을 깔거나 swapping 등 다른 용도로 사용할 수 있음

 

open() 연산

open()

  • retrieve metadata from disk to main memory
  • searching directory path: 루트 디렉토리부터 시작
    • 많은 시간 소요 -> open을 read/write와 별도의 명령어로 두는 이유
    • 한 번 open한 파일은 read/write 작업 시 directory search 불필요
  • Open file table: 현재 open된 파일들의 메타데이터 보관소 (in memory)
    • 메타데이터 + open한 프로세스의 수, file offset(파일의 어떤 위치로 접근 중인지 표시)
    • system-wide open file table
  • File descriptor(file handle, file control block): Open file tabled에 대한 위치 정보(프로세스 별)
    • per-process file descriptor table

 

 

File Protection

File Protection: Access Control

  1. Access control Matrix
    • Access control list: 파일 별로 누구에게 어떤 접근 권한이 있는 지 표시
    • Capability: 사용자 별로 자신이 접근 권한을 가진 파일 및 해당 권한 표시 (rwx)
  2. Grouping - Linux에서 사용하는 방식
    • 전체 user를 owner, group, public 세 그룹으로 구분
    • 각 파일에 대해 세 그룹의 접근 권한(rwx)을 각각 3 bit씩 표시
    • ex. rwxr--r-- (owner/group/other)
  3. Password
    • 파일마다 password를 두는 방법(디렉토리 파일에 두는 방법도 가능)
    • 모든 접근 권한에 대해 하나의 password를 설정하면 -> all-or-nothing
    • 암기 문제, 관리 문제

 

File System Mounting

다른 파티션에 설치되어 있는 파일 시스템을 접근할 때

  • 루트 파일 시스템의 특정 디렉토리 이름에 또 다른 파티션에 있는 파일 시스템을 mounting

 

Access Methods

Sequential access(순차 접근)

  • read, write 연산 수행하면 offset이 자동으로 증가 -> 시간이 오래 걸린다는 단점

Direct Access(직접 접근, random access)

  • 파일을 구성하는 레코드를 임의의 순서로 접근 가능
  • HDD, SSD, DRAM
저작자표시 (새창열림)

'CS > 운영체제' 카테고리의 다른 글

11. Disk Management and Scheduling  (0) 2023.12.22
10. File System Implementation  (1) 2023.12.19
08. Virtual Memory  (1) 2023.11.30
07. Memory Management  (0) 2023.11.25
06. Deadlocks  (1) 2023.11.21
  1. File Systems
  2. File and File System
  3. open() 연산
  4. File Protection
  5. File System Mounting
  6. Access Methods
'CS/운영체제' 카테고리의 다른 글
  • 11. Disk Management and Scheduling
  • 10. File System Implementation
  • 08. Virtual Memory
  • 07. Memory Management
호프
호프
Untitled호프 님의 블로그입니다.
호프
Untitled
호프
전체
오늘
어제
  • 분류 전체보기 (341)
    • 오류😬 (4)
    • 스터디📖 (96)
      • 웹 개발 기초 (8)
      • Spring (20)
      • ML, DL (30)
      • Node.js (22)
      • React (0)
      • 블록체인 (12)
      • Go (3)
      • Javascript (1)
    • 알고리즘💻 (153)
      • 그리디 (23)
      • Bruteforce&Backtracking (16)
      • DP (17)
      • 이분탐색&정렬&분할정복 (17)
      • 누적합&투포인터 (6)
      • 스택&큐&덱 (19)
      • 그래프(DFS&BFS) (19)
      • 트리 (7)
      • 우선순위큐&다익스트라 (11)
      • 벨만포드&플로이드와샬 (8)
      • map&set&number theory (5)
      • 기타 (5)
    • 프로젝트 (3)
      • 캡스톤 디자인 프로젝트 (3)
    • 블록체인🔗 (3)
      • Solana (2)
      • 개발 (0)
      • Harmony (1)
    • ASC (6)
    • CS (73)
      • 데이터베이스 (12)
      • 클라우드컴퓨팅 (21)
      • 운영체제 (11)
      • 컴퓨터네트워크 (14)
      • 블록체인응용 (15)

블로그 메뉴

  • 홈
  • 태그
  • 방명록

공지사항

인기 글

태그

  • 복습

최근 댓글

최근 글

hELLO · Designed By 정상우.v4.2.1
호프
09. File System
상단으로

티스토리툴바

단축키

내 블로그

내 블로그 - 관리자 홈 전환
Q
Q
새 글 쓰기
W
W

블로그 게시글

글 수정 (권한 있는 경우)
E
E
댓글 영역으로 이동
C
C

모든 영역

이 페이지의 URL 복사
S
S
맨 위로 이동
T
T
티스토리 홈 이동
H
H
단축키 안내
Shift + /
⇧ + /

* 단축키는 한글/영문 대소문자로 이용 가능하며, 티스토리 기본 도메인에서만 동작합니다.