Chinaunix首页 | 论坛 | 博客
  • 博客访问: 538737
  • 博文数量: 139
  • 博客积分: 6000
  • 博客等级: 准将
  • 技术积分: 1840
  • 用 户 组: 普通用户
  • 注册时间: 2008-05-11 22:40
文章分类

全部博文(139)

文章存档

2011年(1)

2009年(3)

2008年(135)

我的朋友

分类:

2008-07-27 15:23:34

除了用户模式之外的6中处理器模式称为特权模式(privileged modes)。在这些模式下,程序可以访问所有的arm处理器共有7种模式。

用户模式(user,use) 正常程序执行模式

快速中断模式(fiq)用于高速数据传输和通道处理

外部中断模式(irq)用于通常的中断处理

特权模式(sve) 操作系统使用的一种保护模式

数据访问终止模式(abt)用于虚拟存储及存储保护

未定义指令终止模式(und)用于支持通过软件方针硬件的协处理器

系统模式(sys)用于运行特权级的操作系统任务

 

除了用户模式之外的6中处理器模式称为特权模式(privileged modes)。在这些模式下,程序可以访问所有的系统资源,也可以任意第进行处理器模式切换。其中,除系统模式外,其他5中特权模式又称为异常模式。

处理器模式可以通过软件控制进行切换,也可以通过外部中断或异常处理过程进行切换。大多数的用户程序运行在用户模式下。这时,应用程序不能够访问一些受操作系统保护的系统资源。应用程序也不能直接进行处理器模式的切换。当需要进行处理器模式切换时,应用程序可以产生异常处理,在异常处理过程中进行处理器处理器模式的切换。这种体系结构可以使系统控制整个系统的资源。

当应用程序发生异常中断时,处理器进入相应的异常模式。在每一种异常模式中都有一组寄存器,供相应的异常处理程序使用,这样就可以保证在进入异常模式时,拥护模式下的寄存器(保存了程序运行状态)不被破坏。

系统模式并不是通过异常过程进入的,它和用户模式具有完全一样的寄存器。但是系统模式属于特权模式,可以访问所有的系统资源,也可以直接进行处理器模式切换。它主要供操作系统任务使用。通常操作系统的任务需要访问所有的系统资源,同时该任务仍然使用拥护模式的寄存组,而不是使用异常模式下相应的寄存器组,这样可以保证当异常中断发生时任务状态不被破坏。

阅读(1898) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~