Linux 内核内存分配函数:kzalloc、kmalloc 和 kvalloc 深入解析
kzalloc、kmalloc 和 kvalloc 都是 Linux 内核中用来分配内存的函数。
-
kzalloc 函数分配的内存会被清零。
-
kmalloc 函数分配的内存不会被清零。
-
kvalloc 函数分配的内存是按页对齐的,也就是说,它会分配大小为页大小的内存块,并且返回的地址是页对齐的。
总的来说,这三个函数都是用来在内核中分配内存的,但它们的使用方式有所不同,需要根据具体需求来选择使用哪一个函数。
kzalloc 适合分配需要初始化为零值的内存块,例如结构体、数组等。kmalloc 适合分配不需要初始化为零值的内存块,例如字符缓冲区等。kvalloc 适合分配需要进行页对齐的内存块,例如物理内存映射等。
原文地址: https://www.cveoy.top/t/topic/n209 著作权归作者所有。请勿转载和采集!