接前一篇文章:Linux内核中内存管理相关配置项的详细解析10
二十一、Track memory changes
对应配置变量为:CONFIG_MEM_SOFT_DIRTY。
此项只有选中和不选中两种状态,默认为选中。
此项的内核源码详细解释为:
This option enables memory changes tracking by introducing a
soft-dirty bit on pte-s. This bit it set when someone writes
into a page just as regular dirty bit, but unlike the latter
it can be cleared by hands.
See Documentation/admin-guide/mm/soft-dirty.rst for more details.
此选项通过在pte-s上引入软脏位来使能内存改变跟踪。当有人在页面中写入时,它会设置这个位,就像普通的脏位一样,但与后者不同的是,它可以手动清除。
有关更多详细信息,请参阅Documentation/admin-guide/mm/soft-dirty.rst。
二十二、Defer initialisation of struct pages to kthreads
对应配置变量为:CONFIG_DEFERRED_STRUCT_PAGE_INIT。
此项只有选中和不选中两种状态,默认为不选中。
此项的内核源码详细解释为:
Ordinarily all struct pages are initialised during early boot in a
single thread. On very large machines this can take a considerable
amount of time. If this option is set, large machines will bring up
a subset of memmap at boot and then initialise the rest in parallel.
This has a potential performance impact on tasks running early in the
lifetime of the system until these kthreads finish the
initialisation.
通常,所有的结构页都是在早期启动期间在单个线程中初始化的。在非常大的机器上,这可能需要相当长的时间。如果设置了此选项,大型机器将在启动时启动memmap的一个子集,然后并行初始化其余部分。这对系统生命周期早期运行的任务有潜在的性能影响,直到这些内核线程(kthread)完成初始化。
二十三、Enable idle page tracking
对应配置变量为:CONFIG_IDLE_PAGE_TRACKING。
此项只有选中和不选中两种状态,默认为选中。
此项的内核源码详细解释为:
This feature allows to estimate the amount of user pages that have
not been touched during a given period of time. This information can
be useful to tune memory cgroup limits and/or for job placement
within a compute cluster.
See Documentation/admin-guide/mm/idle_page_tracking.rst for
more details.
此功能允许估计在给定时间段内未被触及的用户页面的数量。此信息可用于调整内存组限制和/或用于计算集群内的作业布局。
有关更多详细信息,请参阅Documentation/admin guide/mm/idle_page_tracking.rst。