我对Linux mmap将文件放到主内存中的方式(在我的上下文中为执行,但我想mmap进程在写入和读取方面是相同的)及其使用的大小感兴趣。
因此,我知道Linux使用的页面调度通常为4kB页面大小(我在内核中可以找到这个大小吗?)。但这对分配的内存到底意味着什么:假设您的二进制文件大小只有几千个字节,让我们说5812B,然后执行它。内核中会发生什么:它是否分配2 * 4kB,然后将5812B复制到该空间中,从而在第二页中浪费了大于3KB的主内存?
如果有人知道内核资源中定义了pagesize的文件,那就太好了。
我想第二个问题也非常简单:我以5812B为文件大小。大小是从inode取得的,对吗?