kcalloc() 함수는 어떤 역할을 수행할까요? 구현부를 보겠습니다. inline void *kcalloc(size_t n, size_t size, gfp_t flags){ return kmalloc_array(n, size, flags | __GFP_ZERO);} kcalloc() 함수를 보니 자신에게 전달된 인자를 kmalloc_array() 함수에 그대로 전달하는데,마지막 인자의 속성을 변경합니다. flags에 __GFP_ZERO 플래그와 OR 비트 연산을 한 결과를 마지막 인자로 전달하는 것입니다. kmalloc_array() 함수를 호출해 메모리를 할당할 때 0으로 초기화해 달라는 의미죠. 이 점만 빼면 kcalloc() 함수는 kmalloc_array() 함수와 같은 역할을 수행합니다.
Continue reading ...