SPDX-License-Identifier: GPL-2.0 Chinese translated version of Documentation/arch/arm64/legacy_instructions.rst 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> Traditional Chinese maintainer: Hu Haowen <2023002089@link.tyut.edu.cn> --------------------------------------------------------------------- Documentation/arch/arm64/legacy_instructions.rst çš„ä¸æ–‡ç¿»è¯ 如果想評論或更新本文的內容,請直接è¯ç¹«åŽŸæ–‡æª”çš„ç¶è·è€…ã€‚å¦‚æžœä½ ä½¿ç”¨è‹±æ–‡ 交æµæœ‰å›°é›£çš„話,也å¯ä»¥å‘ä¸æ–‡ç‰ˆç¶è·è€…求助。如果本翻è¯æ›´æ–°ä¸åŠæ™‚或者翻 è¯å˜åœ¨å•é¡Œï¼Œè«‹è¯ç¹«ä¸æ–‡ç‰ˆç¶è·è€…。 本文翻è¯æ交時的 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> ç¹é«”ä¸æ–‡ç‰ˆæ ¡è¯è€…:胡皓文 Hu Haowen <2023002089@link.tyut.edu.cn> 以下爲æ£æ–‡ --------------------------------------------------------------------- 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 (ä¸æ”¯æŒæ··åˆå—節åºï¼‰ 在使能這個特性後被熱æ’入系統, 在應用ä¸å¯èƒ½æœƒå‡ºç¾ä¸å¯é 期的çµæžœã€‚