[转载]页级的保护措施

一、      页的三种保护措施:

★    两种权限保护:supervisor(0、1及2级)和user(3级)

★    两种访问限制:read-only 及 read/write

★  PAE 下的 No Exceute 属性保护

二、      supervisor/user保护措施

★ PDE/PTE 的 U/S域,0时:supervisor访问权限。  1时:user访问权限

★ PDE/PTE 的U/S为0时:所参考的 page 只能 CPU 在 supervisor 模式下被访问。

★ PDE/PTE 的U/S为1时:所参考的 page 可以在 CPU 任意模式下被访问。

1、supervisor模式

★ CPL 为0、1及2时,processor处理于supervisor  模式。

2、user模式

★ CPL 为 3 时,processor  处理于 user模式。

三、      read-only/read-write保护措施

★    PDE/PTE 的 W/R域,0时:read-only类型。  1时:read-write类型。

★    CR0.WP 为 0时,processor在 supervisor模式下能 read/write 任意 page(包括user及 supervisor模式的 read-only类型的 page)

★    CR0.WP 为 1时,限制 processor在 supervisor模式下对所有read-only类型的  page进行 write操作(user及 supervisor模式的 page的  read/write类型的 page 允许 write)。

 

1、read-only类型  page

★ PDE/PTE 的 W/R标志被清 0,此时属于 read-only类型  page

★ processor 在 user模式下,只能 read

★ processor 在 supervisor模式下,且 CR0.WP为 0时,可以  read-write

2、read-write类型  page

★ PDE/PTE 的 W/R标志被置 1,此时属于 read-write类型  page

★ processor 在 user模式下,可以对 user模式的 page进行  read-write

★ processor 在 supervisor模式下,可以对supervisor/user模式的 page进行  read-write

四、PDE与 PTE保护措施的组合

1、page属于supervisor/user模式?

IF (PDE.U/S = 1) AND(PTE.U/S = 1) THEN

page = user

ELSE

page = supervisor

END

2、page属于  read-only/read-write类型?

★一般情况下:

IF (PDE.W/R = 1) AND(PTE.W/R = 1) THEN

   page = read-write

ELSE

    page = read-only

END

★    processor 处理于 supervisor且 CR0.WP = 0情况下:

page = read-write

★    processor 处理于 supervisor且 CR0.WP = 1情况下:

IF (PDE.W/R = 1) AND(PTE.W/R = 1) THEN

    page = read-write

ELSE

    page = read-only

END

五、      PAE下的 No Exceute (不可执行)保护措施

★    PDE/PTE 的 NX标志: 0时:可执行, 1时:不可执行。

★    PDE/PTE 的 NX保护措施组合:

IF (PDE.NX = 1) OR(PTE.NX = 1) THEN

    page = No Exceute

ELSE

    page = Exceute

END

时间: 2024-08-29 22:19:01

[转载]页级的保护措施的相关文章

操作系统学习(十一) 、页级保护

一.页级保护方式 页目录和页表表项中的读写标志R/W和用户/超级用户标识U/S提供了分段机制保护属性的一个子集.分页机制只识别两级权限.特权级0.1和2被归类为超级用户级,而特权级3被称为普通用户级.普通用户级的页面可以被标志成只读/可执行或可读/可写/可执行.超级用户级的页面 对于超级用户来说总是可读/可写/可执行的,但普通用户不可访问. 对于分段机制,在最外层用户级执行的程序只能访问用户级的页面,但是在任何超级用户层(0.1.2)执行的程序 不仅可以访问用户层的页面,也可以访问超级用户层的页

[数据库事务与锁]详解五: MySQL中的行级锁,表级锁,页级锁

注明: 本文转载自http://www.hollischuang.com/archives/914 在计算机科学中,锁是在执行多线程时用于强行限制资源访问的同步机制,即用于在并发控制中保证对互斥要求的满足. 在数据库的锁机制中介绍过,在DBMS中,可以按照锁的粒度把数据库锁分为行级锁(INNODB引擎).表级锁(MYISAM引擎)和页级锁(BDB引擎 ). 行级锁 行级锁是Mysql中锁定粒度最细的一种锁,表示只针对当前操作的行进行加锁.行级锁能大大减少数据库操作的冲突.其加锁粒度最小,但加锁的

MySQL行级锁、表级锁、页级锁详细介绍

原文链接:http://www.jb51.net/article/50047.htm 页级:引擎 BDB.表级:引擎 MyISAM , 理解为锁住整个表,可以同时读,写不行行级:引擎 INNODB , 单独的一行记录加锁 表级,直接锁定整张表,在你锁定期间,其它进程无法对该表进行写操作.如果你是写锁,则其它进程则读也不允许行级,,仅对指定的记录进行加锁,这样其它进程还是可以对同一个表中的其它记录进行操作.页级,表级锁速度快,但冲突多,行级冲突少,但速度慢.所以取了折衷的页级,一次锁定相邻的一组记

MySQL行级锁,表级锁,页级锁详解

页级:引擎 BDB. 表级:引擎 MyISAM , 理解为锁住整个表,可以同时读,写不行 行级:引擎 INNODB , 单独的一行记录加锁 表级,直接锁定整张表,在你锁定期间,其它进程无法对该表进行写操作.如果你是写锁,则其它进程则读也不允许 行级,,仅对指定的记录进行加锁,这样其它进程还是可以对同一个表中的其它记录进行操作. 页级,表级锁速度快,但冲突多,行级冲突少,但速度慢.所以取了折衷的页级,一次锁定相邻的一组记录. MySQL 5.1支持对MyISAM和MEMORY表进行表级锁定,对BD

.NET DLL 保护措施详解(五)常规条件下的破解

为了证实在常规手段破解下能有效保护程序核心功能(演示版本对AES加解密算法及数据库的密钥(一段字符串)进行了保护),特对此DLL保护思路进行相应的测试,包含了反编译及反射测试,看是否能得到AES加解密算法的密钥及数据库字符串. 反编译: 我这里使用了.net dll反编译工具ILSpy,以下为真实截图. 1. NetProtect.BLLDemo.dll 2. NetProtect.ConsoleApplication1.exe 3. NetProtect.CoreClr.dll 综合上图,可以

CSS三种引入方式:内联、页级、外联

1.内联CSS 内联CSS也可称为行内CSS或者行级CSS,它直接在标签内部引入,显著的优点是十分的便捷.高效:但是同时也造成了不能够重用样式的缺点,如果代码行数到达一定长度不建议采用.通常内联CSS作为测试使用,可以查找代码中bug. 1 <body> 2 <div style="width: 65px;height: 20px;border: 1px solid;">测试元素</div> 3 </body> 2.页级CSS 页级CSS

.NET DLL 保护措施详解(三)最终效果

针对.NET DLL 保护措施详解所述思路完成最终的实现,以下为程序包下载地址 下载 注意: 运行环境为.net4.0,需要安装VS2015 C++可发行组件包vc_redist.x86.exe.然后运行NetProtect.ConsoleApplication1.exe即可查看运行结果 NetProtect.CoreClr.dll库库提供了加密.解密.获取一段密钥的功能封装且指定了只能由NetProtect.ConsoleApplication1.exe及NetProtect.BLLDemo.

【转】MySQL中的行级锁,表级锁,页级锁

在计算机科学中,锁是在执行多线程时用于强行限制资源访问的同步机制,即用于在并发控制中保证对互斥要求的满足. 在数据库的锁机制中介绍过,在DBMS中,可以按照锁的粒度把数据库锁分为行级锁(INNODB引擎).表级锁(MYISAM引擎)和页级锁(BDB引擎 ). 行级锁 行级锁是Mysql中锁定粒度最细的一种锁,表示只针对当前操作的行进行加锁.行级锁能大大减少数据库操作的冲突.其加锁粒度最小,但加锁的开销也最大.行级锁分为共享锁 和 排他锁. 特点 开销大,加锁慢:会出现死锁:锁定粒度最小,发生锁冲

【转载】SSD断电保护

异常掉电的隐患 若没有合理的掉电保护机制,而异常掉电的发生又不可避免,当发生异常掉电,会引发很多问题. (1)丢盘 异常掉电,会使得映射表来不及保存,丢失逻辑地址到物理地址的映射,待重新上电后,SSD将无法被BIOS识别.只能通过返厂维修解决问题,然而所谓返厂维修是通过重新开卡解决你的丢盘问题.重新开卡也就意味着所有用户数据的丢失! (2)丢失缓存中的数据 SSD一般都采用SDRAM或者DDR(也即DDR SDRAM)做缓存,其中SDRAM是非易失性存储介质,断电之后数据会丢失. (3)导致误判