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

Slides:



Advertisements
Similar presentations
1/15 16 기 장영일 Ext File System. 2/15 처음에 Minix 가 사용되었다 ( 제약사항 ) 최대로 저장할 수 있는 파일의 크기 – 64M : 16bit 정수로 블록 주소 지정 -> 1024( 블록 기본 사이즈 ) * (2^16) = 64M.
Advertisements

Managing Filesystems, Swap Space, and Devices
1. 발명의 명칭 SSD-ODD 결합된 장치에서 Optical Disc의 Defect Management방법 2. 발명의 분야
OS 소개 Introduction 설계목표 기본 용어 Resource Management History.
9장. 파일시스템 A 김연주.
1. 자료구조 개념 (1) 자료구조의 개요 1) 자료구조 ① 일련의 자료들을 조직하고 구조화하는 것 ② 자료의 표현과 그것과 관련된 연산 2) 자료구조에 따라 저장공간의 효율성과 프로그램의 실행시간이 달라짐 3) 어떠한 자료구조에서도 필요한 모든 연산들을 처리하는 것이.
6주차:『GPU(CUDA) Programming』
Project #2-2. Pintos User Program
PC와 인터넷 정강수 컴퓨터 구조와 웹의 이해 PC와 인터넷 정강수
제 2장 컴퓨터 구조.
Internet Computing KUT Youn-Hee Han
Operating Systems Overview
AWR DB 보고서 분석.
쉽게 배우는 알고리즘 6장. 해시 테이블Hash Table.
Toad for Oracle 설치 방법.
3장. 컴퓨터의 기억장치 학번 : 이름 : 김현화.
7장 : 캐시와 메모리.
컴퓨터 과학 개론 √ 원리를 알면 IT가 맛있다 컴퓨터 과학도를 위한 첫 전공서 ehanbit.net.
12. 데이터베이스 설계.
리눅스 커널의 이해 중에서 1장. 소개 이원구 네트워크 실험실.
6장. 기 억 장 치 Lecture #6.
On the computation of multidimensional Aggregates
운영체제와 Windows XP 초등 ICT 교육 방법론 2013년 1학기.
Linux/UNIX Programming
Embedded System Porting (2)
[INA240] Data Structures and Practice
6장. 물리적 데이터베이스 설계 물리적 데이터베이스 설계
2장 운영 체제의 개요 운영체제의 개념 운영체제의 유형 운영체제의 발전 과정 운영체제의 구성 운영체제 서비스 시스템 구조
소프트웨어시스템 실험 Software Systems Lab. 데이터베이스 기초
Chapter 16 데이터베이스 파일 인덱싱 기법, B-트리 및 B+-트리
리버스 엔지니어링 안녕하십니까? 리버스 엔지니어링 발표를 맡은 정창하입니다. 지금부터 리버스 엔지니어링 발표를
Linux/UNIX Programming APUE (Files & Directories)
DataStage 운영자 지침서 Operator’s Guide
8086 프로세서의 구조 및 동작 방식 시스템 프로그래밍 - Lecture #2 신라대학교 컴퓨터공학과 시스템 프로그래밍.
운영체제 (Operating Systems)
File Management.
Chapter 10. 파일 시스템 인터페이스(File System Interface)
Computer System Architecture
강사: 이종인 다우 교육원 전임강사 / 온디멘드 수석 컨설턴트 / FMG 수석 컨설턴트
제1장 시스템 소프트웨어의 개요 컴퓨터시스템 및 하드웨어 구성 컴퓨터의 구성과 기능 시스템프로그램의 개요
제10,11,12장 파일시스템 디스크 스케줄링.
제 4 장 가상 메모리 관리 4.1 개요 가상 메모리는 하나의 프로세스 전체가 한 번에 주기억 장치 내에 존재하지 않고 일부만 있어도 수행하게 하는 방법을 제공함. 가상 메모리를 사용하면 사용자는 실제 주소 공간의 크기에 구애 받지 않고 보다 큰 가상 주소 공간상에서 프로그래밍을.
Cache Manager Yonghyun Kim Microsoft MVP Dev 5 team leader, ESTsoft
제10장 파일 시스템 인터페이스(File System Interface)
성균관대학교 전자전기컴퓨터공학과 오영환, 박효진
Memory & Data Management.
정보 검색 연구 내용 및 연구 방향 충남대학교 정보통신공학부 맹 성 현 데이타베이스연구회 2000년도 춘계 튜토리얼
기억장치 관리(Memory Management)
운영체제 (Operating Systems) (Memory Management Strategies)
7장 메모리 관리 메모리 관리를 위한 메모리 할당 기법과 경영에 대해 알아본다. 단편화 현상의 원인과 해결 방법을 알아본다.
Swap 추가, fsck.
WinCE Device Driver 실습 #2
JFS operation HP Korea / Operations JFS operation.
12장. 파일 시스템 구현.
7장. 해시 테이블Hash Table.
Chapter 12 Memory Organization
23. Unix 시스템 커널. 개요 커널의 기본 서비스 커널의 특징 참고서적 프로세스 관리 장치 관리 파일 관리 가상 메모리
CHAPTER 04 파일 설계(FiLE Design).
8. 리눅스의 내부 군자삼락 [君子三樂] 청출어람이청어람 [ 靑出於藍而靑於藍 ] Why Linux ?
제9장 가상 메모리 관리.
기억장치 관리(Memory Management)
알고리즘(Algorithm) 유비쿼터스 컴퓨팅학과 교수 송 창근
화 일 구 조 Chapter 3 화일의 입출력 제어.
정보 디자인.
데이터 베이스의 내부 구조.
I/O Management and Disk Scheduling
*컴퓨터 구조 4장 연습문제 천재성.
WinCE Device Driver 실습 #2
Chapter 7: Deadlocks.
가상 기억장치 (Virtual Memory)
Presentation transcript:

파일 시스템 인터페이스(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 운영체제

File Types – name, extension 2000 운영체제

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

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

디렉토리 구조(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 운영체제

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

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

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

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

일관성 의미 구조(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 운영체제

파일 시스템 구현(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 운영체제

할당 방법(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 운영체제

Example of Contiguous Allocation 2000 운영체제

Linked allocation of disk space 2000 운영체제

Example of Indexed Allocation 2000 운영체제

할당 방법(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 운영체제

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

가용 공간 관리(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 운영체제

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