Linux内核中内存管理相关配置项的详细解析1

news2024/11/29 4:28:00

本文基于kernel 6.1.0,针对于“Linux/x86 6.1.0 Kernel Configuration”中的“Memory Management options”项下的各个子配置项(如下图所示)进行详细解析。

 

一、Support for paging of anonymous memory (swap)

这个选项以前位于“General Setup”中,后改到“Memory Management options”下。此选项将使你的内核支持虚拟内存,也就是让你的计算机好象拥有比实际内存更多的内存空间用来执行很大的程序。此项只包含选中(*)即Y和不选中()即N,默认为选中。

“Support for paging of anonymous memory (swap)”项展开后如下图所示:

1. Compressed cache for swap pages(交换页的压缩缓存)

此项也是只有选中和不选中两种状态。只有当选中时,下边的选项才会出现,否则只是这样:

 此项的内核源码详细解释为:

A lightweight compressed cache for swap pages. It takes

pages that are in the process of being swapped out and attempts to

compress them into a dynamically allocated RAM-based memory pool.

This can result in a significant I/O reduction on swap device and,

in the case where decompressing from RAM is faster than swap device

reads, can also improve workload performance. 

交换页的轻量级压缩缓存。其获取正在换出的页面,并尝试将它们压缩到动态分配的基于RAM的内存池中。这可以显著减少交换设备上的I/O(操作),并在从RAM解压缩比交换设备读取快的情况下,也还能够提高工作负载性能。

 

2. Enable the compressed cache for swap pages by default(默认情况下为交换页启用(使能)压缩缓存)

此项也只有选中和不选中两种状态。默认为不选中。

此项的内核源码详细解释为:

If selected, the compressed cache for swap pages will be enabled

at boot, otherwise it will be disabled.

The selection made here can be overridden by using the kernel

command line 'zswap.enabled=' option.

如果被选中,交换页的压缩缓存将在引导(启动)时被启用;否则其将被禁止。

此处所做的选择可以通过使用内核命令行“zswap.enabled=”选项来覆盖。

其它选项将在后续文章中继续介绍。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/626440.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

deepin 安装 MySQL

1.下载网址:MySQL :: Begin Your Downloadhttps://dev.mysql.com/downloads/file/?id519241 不用注册,直接下载 2. 打开下载文件:mysql ......deb 文件 3 选择步骤:选ubuntu bionic 4 ->MySQL Server&Cluster->mysq…

钢铁废水除氟

钢铁工业废水含多种污染物,包括大量的挥发酚、氟化物、石油类、悬浮物、砷、铅等有害物质。其中含氟工业废水的大量排放,不仅污染环境,还会危害到农作物和牲畜的生长发育,并且可以通过食物链影响到人体健康。所以对含氟废水需降氟…

去掉字符串中的空格,通过正则根据不同的需求分别能去掉前、后、前后、中间的空格。

正则小tips: 正则表达式 - 修饰符 gglobal - 全局匹配 正则表达式 - 元字符 ^匹配输入字符串的开始位置。*匹配前面的子表达式零次或多次。$匹配输入字符串的结束位置。\s 匹配任何空白字符,包括空格、制表符、换页符等等。 匹配前面的子表达式一次…

【计算机组成与体系结构Ⅰ】章节测试(5-7)

在CPU中跟踪指令后继地址的寄存器是___。 A 主存地址寄存器 B 程序计数器 (我的答案) C 指令寄存器 D 状态条件寄存器 下面描述的RISC机器基本概念中,正确的表述是 __。 A. RISC机器不一定是流水CPU. B. RISC机器一定是流水CPU. &#…

基于Tensorflow+SDD+Python人脸口罩识别系统(深度学习)含全部工程源码及模型+视频演示+图片数据集

目录 前言总体设计系统整体结构图系统流程图 运行环境Python 环境Anaconda 环境搭建 模块实现1. 数据预处理2. 模型构建及算法实现3. 模型生成 系统测试1. 训练准确率2. 运行结果 工程源代码下载其它资料下载 前言 在当今全球范围内,新冠疫情对我们的生活方式带来了…

单核 CPU 支持 Java 多线程吗?我们来一起看看吧

1 前言 由于现在大多计算机都是多核CPU,多线程往往会比单线程更快,更能够提高并发,但提高并发并不意味着启动更多的线程来执行。更多的线程意味着线程创建销毁开销加大、上下文非常频繁,你的程序反而不能支持更高的TPS。 2 时间…

超图使用问题汇总

超图使用问题汇总 切地图栅格瓦片的时候,必须确认生成地图的源数据坐标系已经被识别,否则无法进行全球剖分 下图就是未识别坐标系的情况 切地图矢量瓦片的时候,需要使用idesktopx来切,idesktop无法生成矢量瓦片。 矢量瓦片切片时…

Ubuntu安装docker-compose

官网 Install Compose standalone curl -SL https://github.com/docker/compose/releases/download/v2.18.1/docker-compose-linux-x86_64 -o /usr/local/bin/docker-compose离线 下载文件 开启vpn浏览器https://github.com/docker/compose/releases/download/v2.18.1/dock…

第九篇:强化学习Q-learning算法 通俗介绍

你好,我是郭震(zhenguo) 今天介绍强化学习第九篇:Q-learning算法 前面我们介绍强化学习基本概念,马尔科夫决策过程,策略迭代和值迭代,这些组成强化学习的基础。 从今天开始逐步介绍常用强化学习算法&#x…

QT调用linux外部命令或者shell script

目录 原文链接:https://blog.csdn.net/YMGogre/article/details/128973098 0、本文使用的环境配置: 1、新建一个简单的Shell脚本: 2、在Qt中启动外部Shell脚本: 2.1、使用标准库中提供的方法 —— system() 2.2、使用Qt提供…

接口抓包分析与Mock实战

这里写目录标题 一、知识点梳理1、接口抓包需要具备的能力2、接口抓包原理 二、Charles 基础使用三、charles抓包分析四、Charles 使用1、过滤:Filter、Focus2、重发:Repeat、Repeat Advanced3、修改请求:Compose4、弱网:Throttle…

实验3 Tomasulo算法【计算机系统结构】

实验3 Tomasulo算法【计算机系统结构】 前言推荐实验3 Tomasulo算法1 实验目的2 实验平台3 实验内容和步骤4 实验总结与心得 最后 前言 2023-6-9 9:19:50 以下内容源自《【计算机系统结构】》 仅供学习交流使用 推荐 实验2 指令调度和延迟分支【计算机系统结构】 实验3 To…

webgpu之旅03

19854902 319854902 319854902 319854902 webgpu交Q流群我们找个例子看看别人的renderer three.js v152 首先init函数 看见中间有个对象 WebGPURenderPipelines 跟进去看看 这个构造函数里可以看见有这么些数据 get( renderObject ) {const device this.device;const cache …

Meetup 报名|06.17 StarRocks Friends 与你相约上海

StarRocks & Friends 是由 StarRocks 社区发起的城市线下 meetup,旨在联合社区与行业的专家小伙伴们分享基于 StarRocks 的最佳实践、大数据分析的前沿技术和 StarRocks 生态融合等热门话题。 不远千里奔赴,只为与你相聚。这个夏天,让我们…

Vue+springboot小区居民外出登记信息管理系统

系统采用更加便于维护和使用的JAVA语言,其可拓展性高且更富于表现力,方便基本信息、外出申请、健康信息、外来人员等功能。通过Spring Boot框架来进行网页编程,其方便易用、移植适用性广、更加安全可靠。数据库方面则选用的是体积小、速度快、…

【安装教程】Win10上安装Microsoft To-Do客户端(手机端)

这里写自定义目录标题 操作方法操作说明辅助疑难问题 操作方法 此方法是应用于微软商店无法安装、安装不成功等情况 操作说明 原文:手把手教你在Win10上安装Microsoft To-Do客户端:https://www.jianshu.com/p/32a1ea417cba 1.访问微软网站,找到To-Do的…

【深入浅出 Spring Security(七)】RememberMe的实现原理详讲

RememberMe 的实现原理 一、RememberMe 的基本使用二、RememberMeAuthenticationFilter 源码分析RememberMeServicesTokenBasedRememberMeServicesTokenBasedRememberMeServices 中对 processAutoLoginCookie 方法的实现总结原理图式 三、提高安全性PersistentTokenBasedRememb…

【数据分析之道-Matplotlib(八)】Matplotlib箱线图

文章目录 专栏导读1、Matplotlib箱线图boxplot()基本语法2、Matplotlib箱线图boxplot()举例异常值3、Matplotlib箱线图boxplot()样式定义4、Matplotlib箱线图boxplot()举例带缺口5、Matplotlib箱线图boxplot()举例横向显示6、Matplotlib箱线图boxplot()举例显示平均值7、Matplo…

电子企业实施数字化工厂建设之前,需要注意哪些

随着工业4.0时代的到来,数字化工厂建设已成为越来越多电子企业的重要议题。数字化工厂管理系统能够提高生产效率、降低成本、提高产品质量等多个方面的优势,对于企业的可持续发展具有重要意义。然而,在实施电子企业数字化工厂建设之前&#x…

【Flutter】widgets (6) Stateful Widget 有状态组件的生命周期

文章目录 一、前言二、StatefulWidget的生命周期三、State对象的生命周期四、initState(), didUpdateWidget(), dispose()方法的用途五、StatefulWidget和State对象的生命周期六、代码示例七、总结一、前言 在上一篇文章中,我们初步认识了什么是Stateful Widget 有状态组件。…