Presentation is loading. Please wait.

Presentation is loading. Please wait.

파일 시스템 인터페이스(File System Interface)

Similar presentations


Presentation on theme: "파일 시스템 인터페이스(File System Interface)"— Presentation transcript:

1 파일 시스템 인터페이스(File System Interface)
파일 개념(File Concept) 파일 개념 보조기억장치에 저장된 관련된 정보들의 모임 파일 속성: 이름, 타입, 위치, 크기, 보호 파일 연산: 생성, 쓰기, 읽기, 재위치, 삭제 열린 파일 정보: per-process open file table file pointer file open count disk location of the file memory-mapped files: p350(11.1) memory mapping으로 파일의 한 영역을 공유 상호배제 필요 파일 타입: p351(11.2), magic number(Unix) 파일 구조: 텍스트 파일과 실행 파일 구분 최소한의 구분: 8-bit byte의 연속(Unix, MS-DOS) 내부 파일 구조 논리구조 = 1 byte 물리구조 = 512 bytes 2000 운영체제

2 File Types – name, extension
2000 운영체제

3 접근 방법(Access Methods) 순차접근(sequential access) 직접접근(direct access)
기타: ISAM(Indexed Sequential Access Method) 2000 운영체제

4 디렉토리 구조(Directory Structure)
디렉토리: 파일에 대한 정보를 담고 있는 노드들의 모임 (a collection of nodes containing information about all files) Directory Files F 1 F 2 F 3 F 4 F n 디레토리 구조 및 파일은 디스크에 2000 운영체제

5 디렉토리 구조(Directory Structure)
단단계 디렉토리: p360(11.7) 모든 파일이 같은 디렉토리에 모든 파일이 유일한 이름을 가져야 함 이단계 디렉토리: p361(11.8) 사용자별 UFD(User File Directory) 파일 공유 어려움 트리구조 디렉토리: p363(11.9) 사용자별 subdirectory 생성 유일한 path name 가짐 비순환 그래프 디렉토리: p365(11.10) 파일과 서브디렉토리 공유가능 구현 방법 : link 사용(Unix), 복사(duplication) 일반적인 그래프 디렉토리: p368(11.11) 트리구조 디렉토리에 link 첨가 cycle 허용되면 탐색시 무한 루프 가능 새 link 추가시 cycle 피하는 것이 어려움 2000 운영체제

6 단단계 디렉토리(Single-Level Directory)
이단계 디렉토리(Two-Level Directory) 2000 운영체제

7 트리구조 디렉토리(Tree-Structured Directories)
2000 운영체제

8 비순환 그래프 디렉토리(Acyclic-Graph Directories)
2000 운영체제

9 일반적인 그래프 디렉토리(General Graph Directory)
2000 운영체제

10 일관성 의미 구조(Consistency Semantics)
보호(Protection) 보호 접근타입 제어: 읽기, 쓰기, 실행,첨가, 삭제, 리스트 접근 리스트와 그룹: owner, group, universe 기타 보호: password, 디렉토리 보호(sticky bit) 예: 3 bits rwx(Unix) 일관성 의미 구조(Consistency Semantics) 일관성 의미 구조(철학) Unix 의미론: Unix file system 열린파일의 변경은 즉시 공유자에게 보여짐 파일의 현재 위치 포인터 공유->하나의 파일 이미지 유지 세션 의미론: Andrew file system (session: 파일 open과 close 사이의 모든 파일접근의 연속) 열린파일의 변경은 즉시 공유자에게 보여지지 않음 파일 변경은 파일 close 후 다른 session에서만 보여짐 불변-공유 파일 의미론 (immutable shared file = read-only file) 파일 이름 불변 파일 내용 변경 불가 2000 운영체제

11 파일 시스템 구현(File System Implementation)
파일 시스템 구조(File System Organization) 응용 프로그램 논리적 파일 시스템(디렉토리 구조) 파일 구성 모듈(논리블록 -> 물리블록) 기본적 파일 시스템(장치 드라이버에 read/write 명령) 입출력 제어(device drivers와 interrupt hadler) 장치 할당 방법(Allocation Methods) 연속할당(contiguous allocation): p378(11.15) 디스크 탐구시간(seek time)이 최소 순차접근과 직접접근 모두 동적 기억장치 할당 외부단편 문제 파일 크기 결정(preallocation) 문제 -> extent(다른 연속할당 덩어리)로 연결 파일의 블록주소 : <시작위치, 블록 개수, 다음 extent로 link) 2000 운영체제

12 할당 방법(Allocation Methods)
연결 할당(linked allocation): p380(11.16) 디스크 블록의 연결 리스트 구성 외부 단편 없음 파일 커져도 문제 없음 pointer space overhead -> block들의 clusters로 보완 신뢰성 떨어짐 -> doubly linked list로 보완 직접 접근이 비효율적 (예) FAT(File Allocation Table): p382(11.17) MS-DOS, OS/2각 각 partition 시작 부분에 테이블의 각 항복 : <블록 번호, 파일에서의 다음 블록 번호> 잦은 참조로 인해 caching 해야 함 색인 할당(indexed allocation) : p383(11.18) 각 파일에 색인 블록(index block): paging과 유사 직접접근 가능 색인 블록의 memory overhead 2000 운영체제

13 Example of Contiguous Allocation
2000 운영체제

14 Linked allocation of disk space
2000 운영체제

15 Example of Indexed Allocation
2000 운영체제

16 할당 방법(Allocation Methods)
색인 블록의 구현 연결 체계(linked scheme) : 다음 색인 블록으로 연결 다중레벨 색인 (multilevel index) : 간접 색인 (예) 블록크기: 4096 bytes = 1024 항목 x 4 bytes pointers 2-level indexing 경우 최대 블록 개수: 1024 x 1024 파일 최대 크기:1024 x 1024 x 4K = 4G 혼합 체계 (combined scheme) : BSD Unix , p411(11.7) 12 direct blocks: 불록주소 = ~48K (4K x 12) 3 indirect blocks: single indirect blocks: ~ 4M (1024 x 4K) double indirect blocks: ~ 4G (1024 x 1024 x 4K) triple indirect blocks: 실제 사용 않음 Q: 한 파일의 최대 블록 수? Q: 한 파일의 최대 크기? 성능 연속(직접 접근) + 연결(순차 접근) 연속(작은 파일) + 색인(큰 파일) 2000 운영체제

17 Combined Scheme: UNIX (4K bytes per block)
2000 운영체제

18 가용 공간 관리(Free-Space Management)
Bit-vector(Bitmaps) free: 1 allocated: 0 블록번호 = 워드 당 비트수 x 0인 워드 갯수 + 첫번 1 까지의 간격 연결리스트(Linked List): p388(11.20) 그룹화(Grouping) 첫번 블록에 n-1개 마지막은 다음 블록의 포인터 개수(Counting) <첫번 블록 주소, 연속된 free blocks 갯수> 디렉토리 구현(Directory implementation) 선형 리스트(Linear List) linear search 가 문제 해시 테이블(Hash Table) collision이 문제 크기확장 어려움 2000 운영체제

19 무엇이 성공인가 자주 그리고 많이 웃는 것 현명한 이에게 존경을 받고 아이들에게서 사랑을 받는 것 정직한 비평가의 찬사를 듣고
친구의 배반을 참아 내는 것 아름다움을 식별할 줄 알며 다른 사람에게서 최선의 것을 발견하는 것 건강한 아이를 낳든 한 뙈기의 정원을 가꾸든 사회 환경을 개선하든 자기가 태어나기 전보다 세상을 조금이라도 살기 좋은 곳으로 만들어 놓고 떠나는 것 자신이 한때 이곳에 살았음으로 해서 단 한 사람의 인생이라도 행복해지는 것 이것이 진정한 성공이다. 랄프 왈도 에머슨 2000 운영체제


Download ppt "파일 시스템 인터페이스(File System Interface)"

Similar presentations


Ads by Google