我对于在 Linux 中实际使用(不理解)共享内存还比较陌生。我现在正在处理这样的情况,我需要分配一块连续的共享 64MB 内存。在学习如何正确使用共享内存时,我偶然发现了一些巨大的 TLB 选项shmget
;SHM_HUGE_2MB
和SHM_HUGE_1GB
(https://man7.org/linux/man-pages/man2/shmget.2.html)。
现在,我知道巨大的 TLB 对于大型连续内存来说非常有益(因为虚拟到物理地址的转换变得更加简单)。我的问题是,如果我SHM_HUGE_1GB
仅使用 64MB 内存,是否会产生不良副作用?或者我什至可以将它用于较小容量的内存吗?