Linux kernel Linux内核模块有内存限制吗?

Linux kernel Linux内核模块有内存限制吗?,linux-kernel,linux-device-driver,Linux Kernel,Linux Device Driver,Linux内核模块对内存使用是否有任何限制,即代码段大小、全局内存量或其他任何限制 在2.6.35中,如果要加载的模块长度超过64 MB,则load_模块退出: vmalloc用于为模块分配空间-如果您试图分配的页面超过物理内存中的可用页面数,则此操作将失败,而这可能只会成为RAM较低的嵌入式设备的问题 此外,还使用了kzalloc和kmalloc。根据分配器使用的SLAB、SLOB、SLUB,也可能有限制。SLAB定义了一个KMALLOC_MAX_SIZE,它定义了一次调用KMALLOC可以分

Linux内核模块对内存使用是否有任何限制,即代码段大小、全局内存量或其他任何限制

在2.6.35中,如果要加载的模块长度超过64 MB,则load_模块退出: vmalloc用于为模块分配空间-如果您试图分配的页面超过物理内存中的可用页面数,则此操作将失败,而这可能只会成为RAM较低的嵌入式设备的问题 此外,还使用了kzalloc和kmalloc。根据分配器使用的SLAB、SLOB、SLUB,也可能有限制。SLAB定义了一个KMALLOC_MAX_SIZE,它定义了一次调用KMALLOC可以分配的最大字节数。 在2.6.35中,如果要加载的模块长度超过64 MB,则load_模块退出: vmalloc用于为模块分配空间-如果您试图分配的页面超过物理内存中的可用页面数,则此操作将失败,而这可能只会成为RAM较低的嵌入式设备的问题 此外,还使用了kzalloc和kmalloc。根据分配器使用的SLAB、SLOB、SLUB,也可能有限制。SLAB定义了一个KMALLOC_MAX_SIZE,它定义了一次调用KMALLOC可以分配的最大字节数。