[PATCH 1/2] docs/zh_CN: update DAMON usage sysfs documentation

In review
From:Doehyun Baek <doehyunbaek@gmail.com>
Date:
Message-ID:<20260523094420.741003-2-doehyunbaek@gmail.com>
Patch:v1 · 1/2
Language:Mixed
Patch-ID:7049e20068bb1350993bc28de0a45edf9575c9ac
Files:Documentation/translations/zh_CN/admin-guide/mm/damon/usage.rst

Patch content 1 changed file

The DAMON usage documentation translation is missing recent sysfsinterface updates that are already documented in the English version,including refresh_ms, addr_unit, obsolete_target, goal_tuner, nid, andmax_nr_snapshots. Update the Simplified Chinese translation for those stale sysfs entries. Signed-off-by: Doehyun Baek <doehyunbaek@gmail.com>--- .../zh_CN/admin-guide/mm/damon/usage.rst      | 56 +++++++++++++------ 1 file changed, 40 insertions(+), 16 deletions(-) diff --git a/Documentation/translations/zh_CN/admin-guide/mm/damon/usage.rst b/Documentation/translations/zh_CN/admin-guide/mm/damon/usage.rstindex 9d7cb51be493..3fbfa9df9935 100644--- a/Documentation/translations/zh_CN/admin-guide/mm/damon/usage.rst+++ b/Documentation/translations/zh_CN/admin-guide/mm/damon/usage.rst@@ -15,6 +15,10 @@  DAMON 为不同的用户提供了下面这些接口。 +- *专用DAMON模块。*+  :ref:`这 <damon_modules_special_purpose>` 是为构建、发布或管理带有专用DAMON用法的内+  核的用户准备的。使用它,用户可以在构建、启动或运行时以简单的方式为给定目的使用DAMON的主要+  功能。 - *DAMON用户空间工具。*   `这 <https://github.com/damonitor/damo>`_ 为有这特权的人, 如系统管理员,希望有一个刚好   可以工作的人性化界面。@@ -55,14 +59,14 @@ DAMON sysfs接口的文件层次结构如下图所示。在下图中,父子关      /sys/kernel/mm/damon/admin     │ kdamonds/nr_kdamonds-    │ │ 0/state,pid+    │ │ 0/state,pid,refresh_ms     │ │ │ contexts/nr_contexts-    │ │ │ │ 0/operations+    │ │ │ │ 0/operations,addr_unit     │ │ │ │ │ monitoring_attrs/     │ │ │ │ │ │ intervals/sample_us,aggr_us,update_us     │ │ │ │ │ │ nr_regions/min,max     │ │ │ │ │ targets/nr_targets-    │ │ │ │ │ │ 0/pid_target+    │ │ │ │ │ │ 0/pid_target,obsolete_target     │ │ │ │ │ │ │ regions/nr_regions     │ │ │ │ │ │ │ │ 0/start,end     │ │ │ │ │ │ │ │ ...@@ -73,10 +77,12 @@ DAMON sysfs接口的文件层次结构如下图所示。在下图中,父子关     │ │ │ │ │ │ │ │ sz/min,max     │ │ │ │ │ │ │ │ nr_accesses/min,max     │ │ │ │ │ │ │ │ age/min,max-    │ │ │ │ │ │ │ quotas/ms,bytes,reset_interval_ms+    │ │ │ │ │ │ │ quotas/ms,bytes,reset_interval_ms,goal_tuner     │ │ │ │ │ │ │ │ weights/sz_permil,nr_accesses_permil,age_permil+    │ │ │ │ │ │ │ │ goals/nr_goals+    │ │ │ │ │ │ │ │ │ 0/target_metric,target_value,current_value,nid     │ │ │ │ │ │ │ watermarks/metric,interval_us,high,mid,low-    │ │ │ │ │ │ │ stats/nr_tried,sz_tried,nr_applied,sz_applied,qt_exceeds+    │ │ │ │ │ │ │ stats/nr_tried,sz_tried,nr_applied,sz_applied,qt_exceeds,nr_snapshots,max_nr_snapshots     │ │ │ │ │ │ │ tried_regions/     │ │ │ │ │ │ │ │ 0/start,end,nr_accesses,age     │ │ │ │ │ │ │ │ ...@@ -104,7 +110,8 @@ kdamonds/ kdamonds/<N>/ ------------- -在每个kdamond目录中,存在两个文件(``state`` 和 ``pid`` )和一个目录( ``contexts`` )。+在每个kdamond目录中,存在三个文件(``state``、``pid`` 和 ``refresh_ms``)和一个目录+(``contexts``)。  读取 ``state`` 时,如果kdamond当前正在运行,则返回 ``on`` ,如果没有运行则返回 ``off`` 。 写入 ``on`` 或 ``off`` 使kdamond处于状态。向 ``state`` 文件写 ``update_schemes_stats`` ,@@ -117,6 +124,10 @@ kdamonds/<N>/  如果状态为 ``on``,读取 ``pid`` 显示kdamond线程的pid。 +用户可以要求内核通过 ``refresh_ms`` 文件周期性地更新显示自动调优参数和DAMOS统计信息的文件。+向该文件写入希望的更新时间间隔(毫秒)。如果间隔为零,则禁用周期性更新。读取该文件会显示当前+设置的时间间隔。+ ``contexts`` 目录包含控制这个kdamond要执行的监测上下文的文件。  kdamonds/<N>/contexts/@@ -129,8 +140,8 @@ kdamonds/<N>/contexts/ contexts/<N>/ ------------- -在每个上下文目录中,存在一个文件(``operations``)和三个目录(``monitoring_attrs``,-``targets``, 和 ``schemes``)。+在每个上下文目录中,存在两个文件(``operations`` 和 ``addr_unit``)和三个目录+(``monitoring_attrs``、``targets`` 和 ``schemes``)。  DAMON支持多种类型的监测操作,包括对虚拟地址空间和物理地址空间的监测。你可以通过向文件 中写入以下关键词之一,并从文件中读取,来设置和获取DAMON将为上下文使用何种类型的监测操作。@@ -138,6 +149,8 @@ DAMON支持多种类型的监测操作,包括对虚拟地址空间和物理地  - vaddr: 监测特定进程的虚拟地址空间  - paddr: 监视系统的物理地址空间 +``addr_unit`` 文件用于设置和获取操作集的 :ref:`地址单位 <damon_design_addr_unit>` 参数。+ contexts/<N>/monitoring_attrs/ ------------------------------ @@ -161,11 +174,15 @@ contexts/<N>/targets/ targets/<N>/ ------------ -在每个目标目录中,存在一个文件(``pid_target``)和一个目录(``regions``)。+在每个目标目录中,存在两个文件(``pid_target`` 和 ``obsolete_target``)和一个目录+(``regions``)。  如果你把 ``vaddr`` 写到 ``contexts/<N>/operations`` 中,每个目标应该是一个进程。你 可以通过将进程的pid写到 ``pid_target`` 文件中来指定DAMON的进程。 +用户可以向 ``obsolete_target`` 文件写入非零值并提交它(向 ``state`` 文件写入 ``commit``),+从目标数组中间选择性地删除目标。+ targets/<N>/regions ------------------- @@ -239,14 +256,20 @@ schemes/<N>/quotas/ 当预计超过配额限制时,DAMON会根据 ``目标访问模式`` 的大小、访问频率和年龄,对找到的内存区域 进行优先排序。为了进行个性化的优先排序,用户可以为这三个属性设置权重。 -在 ``quotas`` 目录下,存在三个文件(``ms``, ``bytes``, ``reset_interval_ms``)和一个-目录(``weights``),其中有三个文件(``sz_permil``, ``nr_accesses_permil``, 和-``age_permil``)。+在 ``quotas`` 目录下,存在四个文件(``ms``、``bytes``、``reset_interval_ms`` 和+``goal_tuner``)和两个目录(``weights`` 和 ``goals``)。  你可以设置以毫秒为单位的 ``时间配额`` ,以字节为单位的 ``大小配额`` ,以及以毫秒为单位的 ``重 置间隔`` ,分别向这三个文件写入数值。你还可以通过向 ``weights`` 目录下的三个文件写入数值来设 置大小、访问频率和年龄的优先权,单位为千分之一。 +你可以通过向 ``goal_tuner`` 文件写入算法名称,设置要使用的基于目标的有效配额自动调优算法。+读取该文件会返回当前选定的调优器算法。++``goals`` 目录用于设置自动配额调优目标。每个目标目录包含 ``target_metric``、+``target_value``、``current_value`` 和 ``nid`` 文件。用户可以读写这些文件来设置和获取配额+自动调优目标的参数。+ schemes/<N>/watermarks/ ----------------------- @@ -271,10 +294,11 @@ schemes/<N>/stats/ DAMON统计每个方案被尝试应用的区域的总数量和字节数,每个方案被成功应用的区域的两个数字,以及 超过配额限制的总数量。这些统计数据可用于在线分析或调整方案。 -可以通过读取 ``stats`` 目录下的文件(``nr_tried``, ``sz_tried``, ``nr_applied``,-``sz_applied``, 和 ``qt_exceeds``))分别检索这些统计数据。这些文件不是实时更新的,所以-你应该要求DAMON sysfs接口通过在相关的 ``kdamonds/<N>/state`` 文件中写入一个特殊的关键字-``update_schemes_stats`` 来更新统计信息的文件内容。+可以通过读取 ``stats`` 目录下的文件(``nr_tried``、``sz_tried``、``nr_applied``、+``sz_applied``、``qt_exceeds``、``nr_snapshots`` 和 ``max_nr_snapshots``)分别检索这些+统计数据。这些文件默认不是实时更新的。你应该要求DAMON sysfs接口通过 ``refresh_ms`` 周期性地+更新这些文件,或者通过在相关的 ``kdamonds/<N>/state`` 文件中写入一个特殊的关键字+``update_schemes_stats`` 来执行一次性更新。  schemes/<N>/tried_regions/ ---------------------------- 2.43.0