【译】x86程序员手册22-6.4页级保护
6.4 Page-Level Protection 页级保护
Two kinds of protection are related to pages:
与页相关的保护有两类:
- Restriction of addressable domain. 可寻址域的约束
- Type checking. 类型检验
6.4.1 Page-Table Entries Hold Protection Parameters页表项保存保护参数
Figure 6-10 highlights the fields of PDEs and PTEs that control access to pages.
图6-10高亮了控制访问页的PDE和PTE(page directory entries and page table entries)的部分段。

6.4.1.1 Restricting Addressable Domain 可寻址域的约束
The concept of privilege for pages is implemented by assigning each page to one of two levels:
页特权概念通过将每个页分配给两级中的一个来实现:
- Supervisor level (U/S=0) -- for the operating system and other systems software and related data.
特权级(U/S = 0) —— 分配给操作系统和其他系统软件和相关数据。
- User level (U/S=1) -- for applications procedures and data.
用户级(U/S = 1) —— 分配给应用程序和数据
The current level (U or S) is related to CPL. If CPL is 0, 1, or 2, the processor is executing at supervisor level. If CPL is 3, the processor is executing at user level.
当前级别(U或S)与CPL相关。如果CPL是0、1或2,处理器运行在超级用户级别。如果CPL是3,则处理器运行在用户级别。
When the processor is executing at supervisor level, all pages are addressable, but, when the processor is executing at user level, only pages that belong to the user level are addressable.
当处理器运行在超级用户级别时,所有页都可寻址,但当片日历运行在用户级别时,仅有那些属于用户级别的是可寻址的。
6.4.1.2 Type Checking 类型检查
At the level of page addressing, two types are defined:
在页寻址级别中,定义了两类:
- Read-only access (R/W=0) 只读 (R/W = 0)
- Read/write access (R/W=1) 读/写 (R/W = 1)
When the processor is executing at supervisor level, all pages are both readable and writable. When the processor is executing at user level, only pages that belong to user level and are marked for read/write access are writable; pages that belong to supervisor level are neither readable nor writable from user level.
当处理器运行在超级用户级别时,所有页即可读,也可写。当处理器运行在用户有级别时,仅当页属于用户级别,并且并标记为读写的才可写入;属于超级用户的页对于用户级别来说即不可读,也不可写。
6.4.2 Combining Protection of Both Levels of Page Tables 在页表上二个级别的组合保护
For any one page, the protection attributes of its page directory entry may differ from those of its page table entry. The 80386 computes the effective protection attributes for a page by examining the protection attributes in both the directory and the page table. Table 6-5 shows the effective protection provided by the possible combinations of protection attributes.
对于任何一页,页目录项的保护属性都不同于页表顶。80386通过检查目录和页表的保护属性来计算保护效果。表6-5显示了通过保护属性可能组合所达到的保护效果。
Table 6-5. Combining Directory and Page Protection
Page Directory Entry Page Table Entry Combined Protection
U/S R/W U/S R/W U/S R/W
S-0 R-0 S-0 R-0 S x
S-0 R-0 S-0 W-1 S x
S-0 R-0 U-1 R-0 S x
S-0 R-0 U-1 W-1 S x
S-0 W-1 S-0 R-0 S x
S-0 W-1 S-0 W-1 S x
S-0 W-1 U-1 R-0 S x
S-0 W-1 U-1 W-1 S x
U-1 R-0 S-0 R-0 S x
U-1 R-0 S-0 W-1 S x
U-1 R-0 U-1 R-0 U R
U-1 R-0 U-1 W-1 U R
U-1 W-1 S-0 R-0 S x
U-1 W-1 S-0 W-1 S x
U-1 W-1 U-1 R-0 U R
U-1 W-1 U-1 W-1 U W
Note
S -- Supervisor
R -- Read only
U -- User
W -- Read and Write
x indicates that when the combined U/S attribute is S, the R/W attribute
is not checked.
6.4.3 Overrides to Page Protection 对页保护的覆盖
Certain accesses are checked as if they are privilege-level 0 references, even if CPL = 3:
对某些权限进行检查,就象它们处在特权级0下,哪怕CPL等于3:
- LDT, GDT, TSS, IDT references. 对LDT、GDT、TSS和IDT的引用
- Access to inner stack during ring-crossing CALL/INT.
在跨特权级间进行CALL/INT期间访问内部栈。
【译】x86程序员手册22-6.4页级保护的更多相关文章
- 【译】x86程序员手册00 - 翻译起因
从上一次学习MIT的操作系统课程又过去了一年.上次学习并没有坚持下去.想来虽有种种原因,其还在自身无法坚持罢了.故此次再鼓起勇气重新学习,发现课程都已由2014改版为2016了.但大部分内容并没有改变 ...
- 【译】x86程序员手册01
Intel 80386 Reference Programmer's Manual 80386程序员参考手册 Chapter 1 -- Introduction to the 80386 第1章 - ...
- 【译】x86程序员手册03 - 2.1内存组织和分段
2.1 Memory Organization and Segmentation 内存组织和分段 The physical memory of an 80386 system is organized ...
- 【译】x86程序员手册18-6.3.1描述符保存保护参数
6.3 Segment-Level Protection 段级保护 All five aspects of protection apply to segment translation: 段转换时会 ...
- 【译】x86程序员手册15-5.2页转换
5.2 Page Translation 页转换 In the second phase of address transformation, the 80386 transforms a linea ...
- 【译】x86程序员手册38-10.2实在址模式下的软件初始化
10.2 Software Initialization for Real-Address Mode 实地址模式的软件初始化 In real-address mode a few structur ...
- 【译】x86程序员手册16-5.3联合使用段与分页转换
5.3 Combining Segment and Page Translation 联合使用段与分页转换 Figure 5-12 combines Figure 5-2 and Figure 5- ...
- 【译】x86程序员手册09-第3章程序指令集
注:觉得本章内容与理解操作系统不直接相关,所以本章并未看完,也就没有翻译完,放在这里中是为了保证手册的完整.有兴趣的人可以去原址查看. https://pdos.csail.mit.edu/6.828 ...
- 【译】x86程序员手册08 -2.6中断和异常
2.6 Interrupts and Exceptions 中断和异常 The 80386 has two mechanisms for interrupting program execution: ...
随机推荐
- PLC基础入门
PLC编程入门基础技术知识学习 2016-06-27 xjp7879 摘自 电工技术知... 第一章 可编程控制器简介 可编程序控制器,英文称Programmable Controlle ...
- windows 7中添加新硬件的两种方法(本地回环网卡)
最近在windows7上使用VMwareWorkstation7玩一些实验,遇到需要配置不同网络的问题. 因为在windows2003server上习惯使用要本地回环网卡了,那就想着在Windows7 ...
- Vmware worksiation中使用ISO
Vmware技巧: 用ISO安装系统,需要添加2个CD设备. IDE 1 中选择 autoinst.iso IDE 2 中选择 “要安装的系统”.iso 简单讲:Vmware模拟机上需要模拟两次i ...
- HDU 5371 Manacher
点击打开链接 题意:给定一串数字.求最长的一段连续的数字,将它平均分为三段.满足第一段和第二段是回文的.第一段和第三段相等 思路:第一段和第二段是回文的.那么第二段和第三段也是回文的,将数列进行Man ...
- 南阳OJ独木舟上的旅行
/*独木舟上的旅行 时间限制:3000 ms | 内存限制:65535 KB 难度:2 描写叙述 进行一次独木舟的旅行活动.独木舟能够在港口租到,而且之间没有差别. 一条独木舟最多仅仅能乘坐 ...
- iOS 多线程,ARC
iOS自己创建的线程需要自己定时的创建autorelease pools,否则对象不能及时自动释放. 方法1是不对的,while中的对象会无法及时释放. 1:-(void)Thread{ @autor ...
- #pragma pack (n) 惹的祸
今天遇到了一个问题,使用数据流传输的数据在解析的时候数据错位.想了非常久,发现是#pragma pack (n)惹的祸. 首先.解析方使用了编译字节设置,可是在发送方没有使用,于是用相同的结构体解析数 ...
- 洛谷 P1383 高级打字机==codevs 3333 高级打字机
P1383 高级打字机 18通过 118提交 题目提供者yeszy 标签倍增图论高级数据结构福建省历届夏令营 难度省选/NOI- 提交该题 讨论 题解 记录 最新讨论 暂时没有讨论 题目描述 早苗入手 ...
- convex hull
1 什么是convex hull 就是凸包,是计算几何中的一个概念,计算几何是计算机图形学的基础之一. 对于二维平面来说是这样的:对于二维平面上的点集,凸包是位于最外层的点构成的包围其它所有的点的凸多 ...
- 一张图轻松记住PHP的*类*以及private和protected的区别
上图概要的说了下php类的特性,类的方法同属性类似. 图中B类继承自A类,B是A的子类,$x和$y都是B的实例化对象. 1. 原型引用:[A:: . B:: ],仅限public stati ...