分类:
2008-07-27 15:23:34
除了用户模式之外的6中处理器模式称为特权模式(privileged modes)。在这些模式下,程序可以访问所有的arm处理器共有7种模式。
用户模式(user,use) 正常程序执行模式
快速中断模式(fiq)用于高速数据传输和通道处理
外部中断模式(irq)用于通常的中断处理
特权模式(sve) 操作系统使用的一种保护模式
数据访问终止模式(abt)用于虚拟存储及存储保护
未定义指令终止模式(und)用于支持通过软件方针硬件的协处理器
系统模式(sys)用于运行特权级的操作系统任务
除了用户模式之外的6中处理器模式称为特权模式(privileged modes)。在这些模式下,程序可以访问所有的系统资源,也可以任意第进行处理器模式切换。其中,除系统模式外,其他5中特权模式又称为异常模式。
处理器模式可以通过软件控制进行切换,也可以通过外部中断或异常处理过程进行切换。大多数的用户程序运行在用户模式下。这时,应用程序不能够访问一些受操作系统保护的系统资源。应用程序也不能直接进行处理器模式的切换。当需要进行处理器模式切换时,应用程序可以产生异常处理,在异常处理过程中进行处理器处理器模式的切换。这种体系结构可以使系统控制整个系统的资源。
当应用程序发生异常中断时,处理器进入相应的异常模式。在每一种异常模式中都有一组寄存器,供相应的异常处理程序使用,这样就可以保证在进入异常模式时,拥护模式下的寄存器(保存了程序运行状态)不被破坏。
系统模式并不是通过异常过程进入的,它和用户模式具有完全一样的寄存器。但是系统模式属于特权模式,可以访问所有的系统资源,也可以直接进行处理器模式切换。它主要供操作系统任务使用。通常操作系统的任务需要访问所有的系统资源,同时该任务仍然使用拥护模式的寄存组,而不是使用异常模式下相应的寄存器组,这样可以保证当异常中断发生时任务状态不被破坏。