Merge branch 'misc.namei' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs
[linux-2.6-microblaze.git] / Documentation / translations / zh_TW / arm64 / tagged-pointers.txt
1 SPDX-License-Identifier: GPL-2.0
2
3 Chinese translated version of Documentation/arm64/tagged-pointers.rst
4
5 If you have any comment or update to the content, please contact the
6 original document maintainer directly.  However, if you have a problem
7 communicating in English you can also ask the Chinese maintainer for
8 help.  Contact the Chinese maintainer if this translation is outdated
9 or if there is a problem with the translation.
10
11 Maintainer: Will Deacon <will.deacon@arm.com>
12 Chinese maintainer: Fu Wei <wefu@redhat.com>
13 Traditional Chinese maintainer: Hu Haowen <src.res@email.cn>
14 ---------------------------------------------------------------------
15 Documentation/arm64/tagged-pointers.rst 的中文翻譯
16
17 如果想評論或更新本文的內容,請直接聯繫原文檔的維護者。如果你使用英文
18 交流有困難的話,也可以向中文版維護者求助。如果本翻譯更新不及時或者翻
19 譯存在問題,請聯繫中文版維護者。
20
21 英文版維護者: Will Deacon <will.deacon@arm.com>
22 中文版維護者: 傅煒  Fu Wei <wefu@redhat.com>
23 中文版翻譯者: 傅煒  Fu Wei <wefu@redhat.com>
24 中文版校譯者: 傅煒  Fu Wei <wefu@redhat.com>
25 繁體中文版校譯者: 胡皓文  Hu Haowen <src.res@email.cn>
26
27 以下爲正文
28 ---------------------------------------------------------------------
29                 Linux 在 AArch64 中帶標記的虛擬地址
30                 =================================
31
32 作者: Will Deacon <will.deacon@arm.com>
33 日期: 2013 年 06 月 12 日
34
35 本文檔簡述了在 AArch64 地址轉換系統中提供的帶標記的虛擬地址及其在
36 AArch64 Linux 中的潛在用途。
37
38 內核提供的地址轉換表配置使通過 TTBR0 完成的虛擬地址轉換(即用戶空間
39 映射),其虛擬地址的最高 8 位(63:56)會被轉換硬體所忽略。這種機制
40 讓這些位可供應用程式自由使用,其注意事項如下:
41
42         (1) 內核要求所有傳遞到 EL1 的用戶空間地址帶有 0x00 標記。
43             這意味著任何攜帶用戶空間虛擬地址的系統調用(syscall)
44             參數 *必須* 在陷入內核前使它們的最高字節被清零。
45
46         (2) 非零標記在傳遞信號時不被保存。這意味著在應用程式中利用了
47             標記的信號處理函數無法依賴 siginfo_t 的用戶空間虛擬
48             地址所攜帶的包含其內部域信息的標記。此規則的一個例外是
49             當信號是在調試觀察點的異常處理程序中產生的,此時標記的
50             信息將被保存。
51
52         (3) 當使用帶標記的指針時需特別留心,因爲僅對兩個虛擬地址
53             的高字節,C 編譯器很可能無法判斷它們是不同的。
54
55 此構架會阻止對帶標記的 PC 指針的利用,因此在異常返回時,其高字節
56 將被設置成一個爲 「55」 的擴展符。
57