<File>
- 보조기억장치 내부에 저장되서 전원이 없어도 지워지지 않는 정보 단위
보통 Input, Output과 같은 입출력함수에서 많이 활용됨
<File 2가지 관리대상>
Files
File system
<FCB> - File Control Block
PCB처럼 OS가 File 생성 시 같이 생성됨
단, main memory에 저장되는 PCB와 다르게 FCB는 보조기억장치에 저장됨
File attribute들이 FCB라는 자료구조 안에 저장됨
<File attributes>
<File 타입>
일반파일: Regular file
특수파일: directory, device file, link, socket, pipe
<File Operations>
open: OS 준비하고 찾고싶은 파일의 존재 유무를 check
close: 파일의 변경된 내용을 main memory의 FCB 복사본을 disk에 저장하는 역할
<Device File>
<Directory>
- File에 대한 정보(file attrubutes)를 담고 있는 특수 파일 (파일 안의 파일!!)
File attributes들은 중복저장할 수 없다.
<Hierarchical Directory>
가장 많이 사용되는 디렉토리 방식으로 경로이름을 가진다.
current directory = working directory로 현재 작업을 하고 있는 디렉토리를 의미.
hierarchical directory 예시
<Acyclic-Graph Directories>
sub디렉토리와 file을 공유하는 것으로 dangling pointer라는 문제가 있다.
(dangling pointer: file이 지워져도 이어져있던 링크가 남아있게 되는 문제)
<Acyclic-Graph Directories의 Dangling pointer 문제 Solution>
OS는 아무것도 하지 않음(user가 해결)
Entry-count solution: link 추가시 link count값을 1 증가시킴
만약 file이 지워져 2개의 링크 중 하나가 지워지면 link count값 1 감소시킴
<File Sharing>
- 2개의 문제점
1. 접근권한 (access rights)
2. 동시 접근 시의 관리방법 (simultaneous access)
<Simultaneous Access>
보통 user에게 맡기며 file 접근에 lock을 거는 방식으로 해결
<Access Rights>
접근권한의 종류로는 read, write, execute가 있으며
user class는 owner access, group access, public(others) access 3개가 있다.
<File Systems>
일종의 자료구조로 보조기억장치에 저장되며 다음과 같은 구조를 갖는다.
Boot block
Super block (Partition control block)
Directory structure
(컴퓨터에 따라 있을수도, 없을수도 있음)
File control blocks
Data blocks (실제 파일내용 저장)
<Boot Block>
boot media 내부 특정부분에 boot block이 저장 (270p)
<Partition Control Block (Super Block)>
file system의 제어정보를 가지며 다음과 같은 정보를 갖는다.
<File control blocks (inode list)>
inode의 배열로 inode의 index number (고유한 식별자)를 갖는다.
'Computer System > 운영체제' 카테고리의 다른 글
this->OS.code(10) (0) | 2022.12.21 |
---|---|
this->OS.code(9) (0) | 2022.12.21 |
this->OS.code(7) (0) | 2022.10.31 |
this->OS.code(6) (0) | 2022.10.31 |
this->OS.code(5) (0) | 2022.10.31 |