您好、欢迎来到现金彩票网!
当前位置:彩之网 > 中断机制 >

关于BOOTLOADER的向量中断运作机制的疑惑

发布时间:2019-07-03 21:59 来源:未知 编辑:admin

  程序设定EINT0为IRQ类型的中断,使用向量中断。那么中断流程应该是:中断源被触发-程序跳转到0x18(IRQ中断)-自动判断该中断来源-跳转到0x20(中断源为EINT0)-执行0x20上的跳转指令-执行相应的中断处理函数。

  假设程序被下载到0x0c000000,执行go 0x0c000000,从0x0c000000运行程序。但此时源程序原来的地址0x18和0x20将变成0x0c000018和0x0c000020。而实际0x18地址上的内容,是由bootloader的start.s决定中断响应指令(与下载的程序该地址的内容不同),而且start.s上0x20也不是跳转到EINT0中断处理函数的指令。这里让我产生疑惑:

  用bootloader运行有中断函数的程序,当中断发生时,按ARM的体系结构,应该是执行bootloader的0x18上的指令,那么这不就等于忽略了原程序的0x18或0x20上的中断响应指令吗?

  但我知道这是不可能的,因为同一个bootloader不需修改就可以运行各种含有中断处理函数的程序,那么bootloader是如何控制程序从0x18跳转到0x0c000018的呢?还是使用别的方式?展开我来答

  可选中1个或多个下面的关键词,搜索相关资料。也可直接点“搜索资料”搜索整个问题。

  展开全部路由循环 很好理解啊 就是一个数据包被来回反复的传递 比方说A路由器上有一个网段192.168.1.0 255.255.255.0 路由器B通过动态路由协议学到了这个路由条目 如果哪天这个网段断了 路由器A无法和这个网段通信 它就会发出路由查询给B B收到这个路由查询并且对照路由表 发觉这个网段是连接在路由器A上的 于是反馈给A 这样就形成了循环 虽然由于水平分割 路由器A会把这个反馈丢弃 但想象一下如果有许多路由器组成的电信级网络中 将会发生多么混乱的事 由于距离向量协议通告更新定期发送 网络的一部分发生变化 将最终影响网络中的每台路由器 最终完成收敛 但也为路由循环提供了时间差 而链路状态协议的收敛速度就快得多

http://ando2.com/zhongduanjizhi/158.html
锟斤拷锟斤拷锟斤拷QQ微锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷微锟斤拷
关于我们|联系我们|版权声明|网站地图|
Copyright © 2002-2019 现金彩票 版权所有