KMALLC Y VMALLOT RETRENDE LA DIRECCIÓN LÓGICA?
-
21-12-2019 - |
Pregunta
Aunque hay muchos hilos que se están ejecutando en KMALLOC y VMALLOC, pero no obtuve mi respuesta exacta, así que lo estoy poniendo aquí.
Ya lo sé,
kmalloc: es la API del kernel que asigna físicamente también la memoria virtualmente contigua.
vmalloc: es la API del kernel que asigna la memoria físicamente no contigua pero virtualmente contigua.
Ahora, mi pregunta es: en ambos casos (KMALLOC o VMALLOC) dirección o decir puntero devuelto por ambas API, ¿la dirección lógica es correcta?
La gestión de la memoria siempre ha sido parte gris para mí en Linux Kernel, así que por favor corríjame si mi comprensión está mal.
Solución
Sí, el puntero puede ser dederferenciado en su código para acceder a la memoria asignada.
Aquellas funciones que devuelven otro tipo de referencia de memoria no devuelven void*
, creo.Por lo general, devuelven unsigned long
o typedef'd tipos.