Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |
Tags
- 카프카
- kmalloc
- pmap
- Android
- vm_area_struct
- strex
- commit
- fastpath
- Network
- allocator
- devicedriver
- blk-mq
- Apache
- page
- mm_struct
- Kernel
- buddy_system
- slub
- slab
- multiqueue
- memory
- proc
- slowpath
- NDK
- BLOCK
- lruvec
- kafka
- vmalloc
- Linux
- spinlock
Archives
- Today
- Total
목록IT/Linux Programming (1)
Art of Pr0gr4m
File Hole Hint
프로그램이 파일의 끝 너머로 파일 오프셋을 옮기고 쓰기 작업을 하면, 파일 중간에 빈 공간이 생긴다. 이전의 파일 끝과 새로 쓴 바이트들 사이의 이 공간을 파일 구멍(file hole)이라고 한다. 프로그래밍 관점에서 보면 파일 구멍 속에서도 바이트들이 존재하고, 읽을 시 0으로 채워진 바이트들의 버퍼를 리턴한다. 하지만 파일 구멍은 디스크 공간을 차지하지 않고 파일 시스템은 나중에 파일 구멍에 데이터가 쓰여질 때 디스크 블록을 할당한다. 여기서, 디스크 공간 할당에 대해서 블록 할당의 개념을 잘 알아둬야 한다. 대부분의 파일 시스템이 파일 공간을 블록 단위 (1K / 2K / 4K 등)로 할당하기 때문에 파일 구멍이 블록 경계에 걸치지 않고 블록 안에 들어간다면, 구멍이 있든 없든 똑같이 블록 하나가 ..
IT/Linux Programming
2017. 7. 4. 20:58