본문 바로가기

Dev.Basic/운영체제

[OS] 10-1. File System

Chapter 10-1. File System I

File

A named collection of related information

파일이란 관련있는 정보들의 집합을 일컫는 말로,

운영체제는 다양한 저장 장치를 file이라는 동일한 논리적 단위로 볼 수 있게 해준다.

이 파일들은 일반적으로 비휘발성의 보조기억장치에 저장된다.


Operation(연산자)

create, delete, read, write, open, close, reposition(Iseek)

*reposition : 위치를 변경 및 저장하는 연산자.

*open : meta data를 메모리에 올리는 연산

연산자는 모두 시스템 콜(system call)이다.


File attribute(meta data)

파일 자체의 내용이 아니라 파일을 관리하기 위한 각종 정보들을 일컫는 말이다.

(ex. 파일 이름, 파일 유형, 저장된 위치, 파일 사이즈, 파일에 대한 접근 권한, 생성 & 변경 & 사용시간, 소유자 등)



File System

운영체제에서 파일을 관리하는 부분을 말한다.

파일 및 파일의 메타데이터, 디렉토리 정보 등을 관리한다.

파일의 저장 방법을 결정하며, 파일 보호의 역할을 수행한다.

*Directory(디렉토리) : 파일의 메타데이터 중 일부를 보관하고 있는 일종의 특별한 파일을 말한다.



Open( )


* buffer cache : 빨간색 상자

* fd : file descriptor

0. Request the "open" system call ( /a/b )

1. Disk에 있던 root의 meta data가 메모리로 올라간다.

2. root의 주소를 찾아간다. & root에 존재하는 a의 meta data에 접근한다.

3. a의 meta data를 메모리에 올린다.

4. a의 주소를 찾아간다. & a에 존재하는 b의 meta data에 접근한다.

5. b의 meta data를 메모리에 올린다.

6. 프로세스가 형성된다.

7. 디스크 상의 buffer cache에 접근한다.

8. 커널 메모리 상의 buffer cache에 접근한다.

9. 사용자 메모리 상의 buffer cache에 접근한다.



File Protection

각 파일에 대해 누구에게 어떤 유형의 접근(read/write/execution)을 허락할 것인가?

Access control 방법

Access control list : 파일별로 누구에게 어떤 접근 권한이 있는지 표시

capability : 사용자별로 자신이 접근 권한을 가진 파일 및 해당 권한을 표시

Grouping 방법

user를 owner, group, public의 세 그룹으로 구분한다.

그리고 각 파일들에 대해 세 그룹의 접근 권한을 3비트씩 표현한다.

(ex. rwx r-- r--)

Password 방법

파일마다 password를 설정해 두는 방법

모든 접근 권한에 대해 하나의 password를 설정해둔다. -> all or nothing

또는 접근 권한 별  password를 따로 설정해 둔다. -> 암기문제, 관리문제가 발생





Chapter 10-1. 끝

이 포스팅은 이화여대 반효경 교수님 강의를 듣고 요약한 내용을 담고 있습니다.



'Dev.Basic > 운영체제' 카테고리의 다른 글

[OS] 10-3. File System III  (0) 2016.06.17
[OS] 10-2. File System II  (0) 2016.06.16
[OS] 9-3. Virtual Memory III  (0) 2016.06.14
[OS] 9-2. Virtual Memory II  (0) 2016.06.13
[OS] 9-1. Virtual Memory I  (3) 2016.06.07