반응형
Notice
Recent Posts
Recent Comments
Link
동캄의 코딩도장
DISK I/O [1] 본문
반응형
High-Level File IO (Buffered IO)
Disk address
physical disk address
- sector(물리적 데이터 전송 단위)를 지정
Logical disk address: relative address
- Disk system의 데이터 전체를 block들의 나열로 취급 (block에 번호 부여, 임의의 block에 접근)
- Block 번호 -> physical address 모듈 필요 (disk driver)
Block
- An abstraction of the file system
- 운영체제(예, linux) 입장에서 file system은 block들의 나열
- 512~8192 byte(2^n)
- Disk (or block device) access의 최소 단위
FileIO --> byte 단위로 I/O
DiskIO --> Block 단위로 I/O
중간에 buffer를 사용하여 메모리 관리
kernel buffer (page cache)
Page write-back 시점
- 메모리 공간이 부족할 때
- 내용이 변경 된 후, 일정 시간이 지나면
- fsync(2) 호출 --> 강제 동기화
Write-back 시점은 user 입장에서 예측하기 어려움 --> 비효율적일 수 있음
따라서 user-buffered I/O 사용
쉽게 구현 가능 but, Different block sizes, different system call, ...
--> 표준 입출력 사용
반응형
'CS > 시스템프로그래밍' 카테고리의 다른 글
DISK I/O [3] (0) | 2022.02.07 |
---|---|
DISK I/O [2] (0) | 2022.02.04 |
FILE I/O [3] (0) | 2022.02.04 |
FILE I/O [2] (0) | 2022.02.04 |
FILE I/O [1] (0) | 2022.02.04 |