일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 29 | 30 | 31 |
- slab
- memory
- multiqueue
- buddy_system
- blk-mq
- commit
- Apache
- allocator
- devicedriver
- fastpath
- proc
- kafka
- slub
- lruvec
- strex
- NDK
- 카프카
- BLOCK
- mm_struct
- Linux
- pmap
- spinlock
- vm_area_struct
- Android
- slowpath
- Network
- page
- vmalloc
- Kernel
- kmalloc
- Today
- Total
목록전체 글 (43)
Art of Pr0gr4m
ISO/IEC 9899:1999 ISO/IEC 9899:2011
프로그램이 파일의 끝 너머로 파일 오프셋을 옮기고 쓰기 작업을 하면, 파일 중간에 빈 공간이 생긴다. 이전의 파일 끝과 새로 쓴 바이트들 사이의 이 공간을 파일 구멍(file hole)이라고 한다. 프로그래밍 관점에서 보면 파일 구멍 속에서도 바이트들이 존재하고, 읽을 시 0으로 채워진 바이트들의 버퍼를 리턴한다. 하지만 파일 구멍은 디스크 공간을 차지하지 않고 파일 시스템은 나중에 파일 구멍에 데이터가 쓰여질 때 디스크 블록을 할당한다. 여기서, 디스크 공간 할당에 대해서 블록 할당의 개념을 잘 알아둬야 한다. 대부분의 파일 시스템이 파일 공간을 블록 단위 (1K / 2K / 4K 등)로 할당하기 때문에 파일 구멍이 블록 경계에 걸치지 않고 블록 안에 들어간다면, 구멍이 있든 없든 똑같이 블록 하나가 ..
임의의 프로젝트에서 특정 디렉토리만 복사해 올 때, 내부에 상대 경로로 지정된 심볼릭 링크 파일이 있다면 링크 파일이 깨질 수 있다. 물론 타겟 파일을 새로 작성해서 새로 연결하는 방법도 있겠지만, 깨진 파일이 많고 당장 디렉토리 내용들을 깨진 파일을 제외하고 빌드하고 싶을 수 있다. 이럴 때 깨진 심볼릭 링크 파일만 검색 / 삭제하는 다음 명령이 효과적이다. 깨진 심볼릭 링크 파일 검색 명령 옵션 $ find -L $DIR -maxdepth 1 -type l 깨진 심볼릭 링크 파일 삭제 옵션 $ find -L $DIR -maxdepth 1 -type l -delete (삭제에 경고 옵션이 없으니 주의하자)
재밌는 깃허브 블로그가 있어서 포스트 남깁니다. https://exploringdata.github.io/ 기존 데이터 분석 결과만 시각화 하는 거라 마이닝이라고 부르기는 애매하지 않나 싶지만, 아무튼 재밌는 내용이 꽤 있습니다.특히 제 눈에 가장 띄는건 프로그래밍 언어 상관도 시각화 포스트였습니다. https://exploringdata.github.io/vis/programming-languages-influence-network/ 역시 C, LISP, Smalltalk의 영향이 무지 큰걸 볼 수 있습니다.JAVA는 딱 생각한만큼만 크고, Assembly, Fortran과 awk는 생각보다 작았으며, Haskell은 생각보다 큰게 인상적이었습니다.ML은 아예 모르는 언어였는데 LISP류 언어에 큰 영..