OpenCloudOS-Kernel/Documentation/zh_CN/arm64/legacy_instructions.txt

73 lines
3.4 KiB
Plaintext
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

Chinese translated version of Documentation/arm64/legacy_instructions.txt
If you have any comment or update to the content, please contact the
original document maintainer directly. However, if you have a problem
communicating in English you can also ask the Chinese maintainer for
help. Contact the Chinese maintainer if this translation is outdated
or if there is a problem with the translation.
Maintainer: Punit Agrawal <punit.agrawal@arm.com>
Suzuki K. Poulose <suzuki.poulose@arm.com>
Chinese maintainer: Fu Wei <wefu@redhat.com>
---------------------------------------------------------------------
Documentation/arm64/legacy_instructions.txt 的中文翻译
如果想评论或更新本文的内容,请直接联系原文档的维护者。如果你使用英文
交流有困难的话,也可以向中文版维护者求助。如果本翻译更新不及时或者翻
译存在问题,请联系中文版维护者。
本文翻译提交时的 Git 检出点为: bc465aa9d045feb0e13b4a8f32cc33c1943f62d6
英文版维护者: Punit Agrawal <punit.agrawal@arm.com>
Suzuki K. Poulose <suzuki.poulose@arm.com>
中文版维护者: 傅炜 Fu Wei <wefu@redhat.com>
中文版翻译者: 傅炜 Fu Wei <wefu@redhat.com>
中文版校译者: 傅炜 Fu Wei <wefu@redhat.com>
以下为正文
---------------------------------------------------------------------
Linux 内核在 arm64 上的移植提供了一个基础框架,以支持构架中正在被淘汰或已废弃指令的模拟执行。
这个基础框架的代码使用未定义指令钩子hooks来支持模拟。如果指令存在它也允许在硬件中启用该指令。
模拟模式可通过写 sysctl 节点(/proc/sys/abi来控制。
不同的执行方式及 sysctl 节点的相应值,解释如下:
* Undef未定义
值: 0
产生未定义指令终止异常。它是那些构架中已废弃的指令,如 SWP的默认处理方式。
* Emulate模拟
值: 1
使用软件模拟方式。为解决软件迁移问题,这种模拟指令模式的使用是被跟踪的,并会发出速率限制警告。
它是那些构架中正在被淘汰的指令,如 CP15 barriers隔离指令的默认处理方式。
* Hardware Execution硬件执行
值: 2
虽然标记为正在被淘汰,但一些实现可能提供硬件执行这些指令的使能/禁用操作。
使用硬件执行一般会有更好的性能,但将无法收集运行时对正被淘汰指令的使用统计数据。
默认执行模式依赖于指令在构架中状态。正在被淘汰的指令应该以模拟Emulate作为默认模式
而已废弃的指令必须默认使用未定义Undef模式
注意:指令模拟可能无法应对所有情况。更多详情请参考单独的指令注释。
受支持的遗留指令
-------------
* SWP{B}
节点: /proc/sys/abi/swp
状态: 已废弃
默认执行方式: Undef (0)
* CP15 Barriers
节点: /proc/sys/abi/cp15_barrier
状态: 正被淘汰,不推荐使用
默认执行方式: Emulate (1)
* SETEND
节点: /proc/sys/abi/setend
状态: 正被淘汰,不推荐使用
默认执行方式: Emulate (1)*
注:为了使能这个特性,系统中的所有 CPU 必须在 EL0 支持混合字节序。
如果一个新的 CPU (不支持混合字节序) 在使能这个特性后被热插入系统,
在应用中可能会出现不可预期的结果。