더보기
Outline
- Disk System
- File System
- Partition
- Directory
- File
- Directory Structure
- File Protection
- Allocation Methods
- Free Space Management
Disk System
Disk pack
- 데이터 영구 저장 장치 (비 휘발성)
구성
- Sector: 데이터 저장/판독의 물리적 단위
- Track: Platter 한 면에서 중심으로 같은 거리에 있는 sector들의 집합
- Cylinder: 같은 반지름을 갖는 track의 집합
- Platter: 양면에 자성 물질을 입힌 원형 금속판, 데이터의 기록/판독이 가능한 기록 매체
- Surface: Platter의 윗면과 아랫면
Disk drive
- Disk pack에 데이터를 기록하거나 판독할 수 있도록 구성된 장치
구성
- Head: 디스크 표면에 데이터를 기록/판독
- Arm: Head를 고정/지탱
- Positioner(Boom): Arm을 지탱, Head를 원하는 track으로 이동
- Spindle: Disk pack을 고정 (회전축), 분당 회전 수 (RPM, Revolutions Per Minute)
Disk Address
Physical disk address
- Sector(물리적 데이터 전송 단위)를 지정 (다음 주소들이 있어야 접근이 가능하다)
Logical disk address: relative address (상대주소)
- os가 모든 종류의 하드디스크를 다 알 수 없다. (Pysical한 특징을 알 수 없다)
- Disk System의 데이터 전체를 Block들의 나열로 취급함
- Block에 번호 부여
- 임의의 Block에 접근 가능
- Block번호 -> Physical address 모듈 필요 (disk driver)
그림으로 표현하면 다음과 같다.
- 운영체제의 입장에서 디스크는 블록들의 집합
- 디스크를 access할 때는 블록번호를 전달하면
- disk driver가 블록번호를 실제 디스크의 physical address로 변환한다.
- disk controller는 실제 주소를 찾아가서 데이터를 읽거나 쓴다.
Data Access in Disk System
1) Seek time
- 디스크 head를 필요한 cylinder로 이동하는 시간
2) Rotational delay
- 1) 이후에서 부터,
- 필요한 sector가 head위치로 도착하는 시간
3) Data transmission time
- 2) 이후에서 부터,
- 해당 sector를 읽어서 전송(or 기록) 하는 시간
File System
사용자들이 사용하는 파일들을 관리하는 운영체제의 한 부분
File system의 구성
- Files: 연관된 정보의 집합
- Directory structure: 시스템 내 파일들의 정보를 구성 및 제공
- Partitions: Directory들의 집합을 논리적/물리적으로 구분
File
보조기억장치에 저장된 연관된 정보들의 집합들
- 보조 기억 장치 할당의 최소 단위
- Sequence of bytes (물리적 정의)
내용에 따른 분류
- Program file: Source program, object program, executable files
- Data file
형태에 따른 분류
- Text (ascii) file
- Binary file
File attribute(속성)
- 이름
- Identifuer
- Type(.jpg, .c, .javac ...)
- Location
- Size
- Protection: access control information
- User Identification (Owner)
- Time, date: creation, late reference, last modification
File operations
- Create
- Write
- Read
- Reposion
- Delete
- Etc..
OS는 file operation들에 대한 system call을 제공해야 함
File Access Methods
- Sequential access (순차 접근): File 을 record(or bytes) 단위로 순서대로 접근 (E.g., fgetc())
- Directed access (직접 접근): 원하는 block을 직접 접근 (E.g., lseek(), seek())
- Indexed access: Index를 참조하여, 원하는 block를 찾은 후 데이터에 접근
File System Organization
Partition(minidisks, volumes)
= virtual disk
Directory
File들을 분류, 보관하기 위한 개념
Operations on directory
- Search for a file
- Create a file
- Delete a file
- List a directory
- Rename a file
- Traverse the file system
Mounting
현재 File system에 다른 File system를 붙이는것
'CS > OS' 카테고리의 다른 글
[OS] 11-4. File Protection (0) | 2022.05.11 |
---|---|
[OS] 11-3. Directory Structure (0) | 2022.05.09 |
[OS] 10. 가상메모리 관리 - Other considerations (0) | 2022.05.04 |
[OS] 10. 가상 메모리 관리 - Replacement Strategies for Variable Allocation (0) | 2022.04.30 |
[OS] 10. 가상 메모리 관리 - Replacement Strategies for Fixed Allocation (0) | 2022.04.27 |