自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

activesys的专栏

学习,成长,分享

  • 博客(9)
  • 收藏
  • 关注

原创 Protection 5 ---- Priviliege Level Checking 2

CPU不仅仅在程序访问数据段和堆栈段的时候进行权限级别检查,当程序控制权转换的时候也会进行权限级别检查。程序控制权转换的情况很多,各种情况下检查的方式以及涉及到的检查项都是不同的。这篇文章主要描述了各种代码控制权转换过程中涉及到的各种检查并且配以相应的示例,示例代码是根据《Task》中的代码修改的,托管在https://github.com/activesys/learning_cpu/tree/

2013-08-29 16:31:33 858

原创 Protection 4 ---- Priviliege Level Checking 1

特权级为了提供保护,CPU识别4个特权级,0~3级,数字越小表示的特权级越高,数字越大表示的特权级越小。访问数据段时候的特权级检查示例加载SS寄存器时的特权级检查参考

2013-08-27 14:49:29 842

原创 Task

CPU通过任务管理的方式提供了基于硬件的多任务,为了实现多任务CPU提供了一下额外的数据结构和寄存器。这篇文章并不打算详细的介绍任务管理的结构和原理,因为Intel官方文档关于任务管理的章节描写的非常清楚,我只是想通过一个例子来理解整个任务管理的机制。任务管理结构多任务就是要实现多个任务之间的并行之行,就会涉及到任务之间的切换,既然要切换就要保证任务在切换回来之后还能够顺利的继续执

2013-08-25 20:53:02 1016

原创 Protection 3 ---- Type Checking

CPU的保护机制不仅仅表现在对于表限和段限的检查,还要进行各种各样的Type Cheking。类型检查的种类繁多,检查的时机以及涉及到的结构和寄存器也很多,这篇文章中仅仅介绍以前学习过的结构和寄存器的检查,像LDT,TSS这样的结构和寄存器的检查会在后面继续学习。CPU在不同的时机进行类型检查,这些时机主要有:将段选择子加载到段寄存器中指令通过段寄存器访问段运行一个带有段选择子的操

2013-08-20 18:39:36 766

原创 Protection 2 ---- Limit Checking

这篇文章中主要描述了CPU在运行过程中对于表限和段限的检查,这里描述检查机制都是在相同权限级别条件下进行的,这里的示例代码都运行在ring 0下。文章中并没有给出全部的代码,只是给出了关键的部分,这些代码都是根据上篇文章《Protection 1》中的代码修改的,同样这篇文章中涉及到的代码也都托管在github上,可以到https://github.com/activesys/learning_c

2013-08-19 21:48:34 879

原创 Learning CPU

这是Learning CPU系列文章的开篇,这些文章是为了学习Intel CPU的体系结构及编程,记录学习历程、遇到的问题、心得与体会等。文章中涉及到的代码全部开源,托管在github上https://github.com/activesys/learning_cpu/tree/master/x86。

2013-08-17 16:52:54 421

原创 Protection 1

保护模式下CPU会对其资源和运行的程序进行保护,当发现违规行为的时候产生异常,这篇文章的目的是为后续学习保护机制搭建一个代码的框架。CPU的保护机制很复杂,保护的内容也很多,我们通过研究每种保护机制来学习它,这篇文章中的代码提供了这样的一个代码框架,在后续的保护机制学习的时候可以修改相应的代码来验证不同的保护机制。中断和异常处理程序为了实现保护机制,CPU在执行的过程中会对各种指令

2013-08-17 16:23:37 958

原创 Switching to Protected-Mode

保护模式的作用实模式下CPU只提供了部分资源和功能供我们使用,但是在保护模式下CPU的全部资源和功能都可以供我们使用,同时CPU还提供了对于不同内存段的基于权限级别的保护方式,这样代码运行起来更安全,寻址方面,保护模式下可以寻址4G的地址空间。保护模式下的分段管理保护模式下也采用分段管理的方式将逻辑地址转换成线性地址,但是分段管理的基址是不同的,保护模式的分段管理更复杂,下面一

2013-08-13 23:23:09 1085

原创 Real-Address Mode

当Intel CPU启动或者RESET#引脚有效的时候就进入了实地址模式或者叫实模式(Real-Address Mode)。实模式是Intel 8086/8088的运行模式,所以这种模式下的使用的资源是受限的,例如使用20位的地址总线寻址1M的地址空间等等。实模式下的执行环境实模式下CPU提供的执行环境包括:支持1M的物理地址空间。8位或者16位的操作数。8个16位的通

2013-08-08 15:20:53 1198

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除