970|0

3836

帖子

19

TA的资源

纯净的硅(中级)

楼主
 

ARM的编程模式和7种模式 [复制链接]

ARM采用的是32位架构

ARM阅读

    --Byte:        8   bits

    --Halfword:  16  bits(2 byte)  半字

    --Word:       32  bits(4 byte)

 

大部分ARM core提供:  core(核心)

  --ARM指令集(32 bit)        (有些占内存、时间快)

 --Thumb指令集(16 bit)      (省内存、但是浪费时间)

 --Thumb2指令集(16 & 32bit)(ARM v7(S5PV210) 大概2005年才开始推出) 

 

Jazelle cores 支持 Java bytecode

/************************************************************************************************/

ARM有7种基本工作模式(6个特权模式和一个用户模式)

----User(用户模式): 非特权模式,大部分任务执行在这种模式                     

 

----FIQ(快速中断):当一个高优先级(fast)中断产生时将会进入这种模式   -- |

----IRQ(普通中断):当一个低优先级(nomal)中断产生时会进入这种模式      |

----Supervisor(管理模式):当复位或软中断指令执行时将会进入这种模式        |-------异常模式

----Abort(异常模式):当存取异常时会进入这种模式                                    |

----Under(未定义模式):当执行未定义指令时会进入这种模式                  -- |

 

----System(系统模式):使用和User模式相同寄存器的特权模式

 

注意:

     除了User(用户模式)是Normal(普通模式)外,其他6种都是Privilege(特权模式)。

     Privilege中除Sys模式外,其余5种为异常模式

     各种模式的切换,可以是程序员通过代码主动切换(通过写CPSR寄存器);也可以是CPU在某些情况下自动切换。

     各种模式下权限和可以访问的寄存器不同。

 

 

为什么需要那么多种模式?

CPU 是硬件,OS是软件,软件的设计要依赖硬件的特性,硬件的设计要考虑软件需要,便于实现软件特性。

操作系统有安全级别要求,因此CPU设计多种模式为了方便操作系统的多种角色安全等级需要。

 

 
点赞 关注

回复
举报
您需要登录后才可以回帖 登录 | 注册

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/9 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表