加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > Linux > 正文

linux – 使用mmap的Emacs缓冲区分配

发布时间:2020-12-14 02:18:59 所属栏目:Linux 来源:网络整理
导读:为什么默认情况下在cygwin,freebsd和irix6-5上激活mmap缓冲区分配但不在 linux上激活? 请参阅emacs / src / config.h中的USE_MMAP_FOR_BUFFERS. 和emacs / configure.in中的use_mmap_for_buffers. 基于mmap的访问不是优于正常的缓冲区分配吗? 解决方法 默
为什么默认情况下在cygwin,freebsd和irix6-5上激活mmap缓冲区分配但不在 linux上激活?

请参阅emacs / src / config.h中的USE_MMAP_FOR_BUFFERS.
和emacs / configure.in中的use_mmap_for_buffers.

基于mmap的访问不是优于正常的缓冲区分配吗?

解决方法

默认的glibc malloc()使用mmap进行大量分配;来自malloc(3)联机帮助页. “当分配大于MMAP_THRESHOLD字节的内存块时,glibc
malloc()实现使用mmap(2)将内存分配为私有匿名映射.
MMAP_THRESHOLD默认为128 kB,但可以使用mallopt(3)进行调整.“

也许在其他平台上切换到mmap是为了解决那些不能自己做的差的malloc()实现?

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读