(2)uboot详解——处理器工作模式

(2)uboot详解——处理器工作模式


前面一篇文章我们了解到当开发板上电以后,会将uboot的前4k内容复制到stepping stone中运行,现在来分析这4k代码到底做了些什么。

从前面一篇文章的最后一张图可以看到uboot的运行流程,当reset以后,uboot做的第一个动作就是设置cpu的运行模式,这篇文章将详细介绍cpu运行模式的相关知识。

人有生老病死,如果把我们的计算机比作一个生命的话,那么它也有一个生老病死的一个过程,唯一的区别是它没有情绪,没有高兴和悲伤,也不会发脾气,更不会无理取闹,因为对它来说,任何事件的发生都是有原因的,要么是硬件问题,要么是程序问题,它总是勤勤恳恳的按照我们的程序指令一条一条的执行着。然而,虽然它没有自己的情绪,但是它却有着作为“生命”基本的特征,开机是它“生命”开始,死机是它“生命”的结束,死法有多种,谁都不知道会是哪一种,也许是发烧过热了,也许是温度太低芯片出问题了,也许是短路了,也许是正常关机了等等,这些都不重要,重要的是它能够通过重启”活过来“,而我们却不行。。

上面扯远了,回到正题。作为”生命“,它在不同的情况下会处于不同的状态,它”生病“时,会进入异常模式,它休克时会进入中止模式,它需要先处理其他事情时会进入中断模式,它迷茫时会进入未定义指令终止模式,它正常工作在用户模式或系统模式,虽然这样类比不太恰当,也不够严密,但我又不是科学家,管他呢。

开发板刚上电的时候就像是一个baby,它需要受到”保护“,需要一个”成长的环境“,同时也要被教导该做什么,怎么做,所以板子reset的时候,首先需要进入到一种保护模式中,在这个模式中完成一些硬件的初始化和寄存器的配置,这个模式的名称叫:管理模式


ARM 有七种模式:

处理器工作模式

   特权模式

异常模式

说明

用户(user)模式

 

 

用户程序运行模式

系统(system)模式

该组模式下可以

任意访问系统资源

 

运行特权级的操作系统任务

一般中断(IRQ)模式

通常由系统异常状态

切换进该组模式

普通中断模式

快速中断(FIQ</

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值