首页
学习
活动
专区
圈层
工具
发布
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    宋宝华:论Linux的页迁移(Page Migration)上集

    我认为有2种场景下,你会关注这个Page迁移的问题:一个是在Linux里面写实时程序,尤其是Linux的RT补丁打上后的情况,你希望你的应用有一个确定的时延,不希望跑着跑着你的Page正在换位置而导致的延迟...2.2 alloc_pages 当内核使能了COMPACTION,则Linux的底层buddy分配器会在alloc_pages()中尝试进行内存迁移以得到连续的大内存。...所以,工程中也可以考虑通过内核启动的bootargs来设置巨页,这样Linux开机的过程中,就可以直接从bootmem里面分配巨页,而不必在运行时通过order较高的alloc_pages()来获取。...所以Linux的NUMA自动均衡机制,会尝试将内存迁移到正在访问它的CPU节点所在的NODE,如下图中绿色的memory经常被CPU24访问,但是它位于NODE0的memory: ?...则Linux内核可能会将绿色内存迁移到CPU24所在的本地memory: ? 这样CPU24访问它的时候就会快很多。 显然NUMA_BALANCING也是依赖MIGRATION机制的: ?

    2.1K20

    宋宝华:论Linux的页迁移(Page Migration)完整版

    我认为有2种场景下,你会关注这个Page迁移的问题:一个是在Linux里面写实时程序,尤其是Linux的RT补丁打上后的情况,你希望你的应用有一个确定的时延,不希望跑着跑着你的Page正在换位置而导致的延迟...在Linux中,执行mlock()操作的时候,相应的VMA会被设置VM_LOCKED标记。...Linux内核可以用GUP(get_user_pages的衍生变体),来pin住page,从而避免相关的page被迁移或被swap代码释放。...一般情况下,当我们想在系统预留n个巨页的时候,若系统有m个NUMA节点,Linux会倾向于每个NUMA节点预留n/m个巨页。...这个时候我们可以借用Linux实时编程技术里面常常采用的,让malloc/free在一个存在的堆池发生分配和释放的技术: ?

    5.7K51

    宋宝华:为了不忘却的纪念,评Linux 5.13内核(上集)

    基于simplefb的framebuffer驱动 Mac Mini的设备树 这样一个东西,是没法用的,发烧友玩玩可以,但是我们感激并欣赏Hector Martin “marcan”领导的Asahi Linux...Linux内核的驱动子系统多达100多个,但是还是有极个别驱动不属于这100多类中的任何一类,于是在drivers下面有个misc: 现在内核碰到了类似的问题,它的资源要进行配额控制,但是不属于通用的类型...5.13内核,最励志的事情无疑是,"Landlock" Lands In Linux 5.13 !...在迭代了超过5年之后,安全组件landlock终于合入了Linux内核,这份始于2016年的爱情,终于有了一个美好的结局。...为此,Linux内核doc的维护者,LDD3的作者之一Jonathan Corbet发文指出:Kernel development is not for people who lack persistence

    96240

    腾讯云微搭使用

    平台整体介绍 快速了解微搭 低代码到底想解决什么? 低代码平台以低技术门槛,高复用的解决方案,以及出色的可定制化形态。...使得企业可以花费很少的成本投入就能够达成预期效果,相比传统方案要更划算 以极致的效率,解决产品应用需求和供应的各种问题 微搭低代码产品概述 微搭低代码WeDa是高效、高性能的拖拽式低代码开发平台,向上连接前端的行业业务...微搭将繁琐的底层架构和基础设施抽象化为图形界面,通过行业化模板、拖放式组件和可视化配置快速构建多端应用,免去了代码编写工作,完全专注于业务场景 平台生态优势 多团队协作:应用的多团队协作管理,子账号协同开发...模板是带有一些数据源的,可以点击『管理数据』进入到CMS系统 快速注册小程序 前往微信注册小程序 扫码授权认证 应用场景 适合ISV 个人开发者 中小企业场景 开发平台(个人) 微搭作为低码平台...,可实现多端、多行业应用的可视化开发 微搭平台已经在工业、教育、零售、政务等多个行业落地产品 已助力四川天府健康通、城市生活助手(welife)、江门人才岛和广州农园(橞家园)等多家企业完成千万级流量应用上线

    8.9K10
    领券