출처: AOSP

소문자 a랑 대문자 B를 text파일(대소문자구별)에 넣고, 소문자로만 된 text파일을 다시 읽어서 무슨 글자가 있나 확인하는 로직이다.  간단하면서 잘 동작한다.

Posted by code cat

Makefile에서 가끔 파일의 존재 여부를 보고 선행 작업을 해줘야 할 때가 있다. 그럴 때는 다음의 간단한 예제를 보고 응용하자.

  (예제를 위한 거니 밑에처럼 하지는 말자...)


Posted by code cat

리눅스에 tar를 이용해서 분할 압축을 할려면,


tar cfz - 압축디렉터리 | split -b 1000m - 압축파일이름.tar.gz_


이렇게 하면 압축파일이름.tar.gz_aa, 압축파일이름.tar.gz_ab, 압축파일이름.tar.gz_ac, ... 

이렇게 분할되어 나온다.


풀 때는,


cat 압축파일이름.tar.gz_* | tar xfz -


로 풀면 된다.

Posted by code cat
리눅스/커널2012. 10. 15. 15:15

리눅스에서 slab allocator 초기화를 할 때(아마 다른 곳에서도 쓰이지 않을까 싶다) 나오는데, 이는 void 포인터를 표헌할 수 있는 바이트 수를 말한다.

Posted by code cat
리눅스/커널2012. 10. 15. 09:29

출처: Professional Linux Kernel Architecture

division 보다 multiplication 이 빠르기에,


C = A/B 를 하는 대신, C = A * 1/B를 하는 방식이다.  


역시 B가 1/B가 되므로 이 경우, B의 값이 compile-time에 알려진 경우에 한정된다.


커널에서는 다음의 함수에서 위에 내용에 대한 부분을 확인 할 수 있다.


reciprocal_divide(A, reciprocal_value(B))


'리눅스 > 커널' 카테고리의 다른 글

initarray_cache vs arraycache_init  (0) 2012.10.21
BYTES_PER_WORD  (0) 2012.10.15
linux kernel, mem_init()  (0) 2012.10.05
루프백(loopback) 장치 vs 루프(loop) 장치  (0) 2012.10.03
가상 메모리 관리  (0) 2012.10.03
Posted by code cat