当前位置: 首页 > wzjs >正文

太原建设网站公司防恶意点击软件

太原建设网站公司,防恶意点击软件,请网络推广外包公司有用吗,东莞九江网站制作1. 前提基础知识(ARM M核异常 压栈流程) M核栈增长方向是地址逐渐减小的(TIPS:有的架构的处理器是增大的例如8051内核,而有的像ARM A核心是可设置的 可以增大也可以减小) ARM Coretex-M核心常用的有M0 M3 M…

1. 前提基础知识(ARM M核异常 压栈流程)

M核栈增长方向是地址逐渐减小的(TIPS:有的架构的处理器是增大的例如8051内核,而有的像ARM A核心是可设置的 可以增大也可以减小)
ARM Coretex-M核心常用的有M0 M3 M4,下图第一个为M3的压栈情况,M4带FPU和浮点寄存器的并不一样
M3的假设hardfault ISR里边就有个while(1);语句,那看SP的栈顶值,从栈顶开始数算第一个向上高地址方向数到第六个就是LR的值,把或者值读出来赋值给PC(定义个函数指针),就可以跳转到问题发生处了,然后结合hardfault状态寄存器(0XE000ED2C,SCB->HSFR)的值 大概能分析出产生hardfault的原因
图1

图2

在这里插入图片描述

**下图为M4核的压栈情况,因为带有浮点寄存器所以压栈的内容也多 **
M4核心

ARM CM4核心带浮点处理器FPU的,压栈的东西还不一样


进入hardfult后看MSP或者SP的值,看下边第二章图如果hardfult里边啥都没有,就只有个while(1){} 可以用第二张图判断SP+20里边存储的就是LR寄存器的值,也就是产生hardfault前导致的问题的地方,把这个值像第一张图一样写给PC就能定位到因为哪里产生的hardfault,

现在还在推出来个类似的公式解决方法,发现函数里边写的东西越多函数栈指针会变化,也就不能直接取*(SP+24)|(SP+23)|(SP+22)|*(SP+21),拼凑出来的值就是LR的值可以直接赋值给PC,定义个函数指针给赋值了,在调用在hardfault里边直接就可以跳过去

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

还在研究公式化的方法

ARM官方给出的hardfault 原因分析方法

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

总结下来就是利用处理异常时候会进行压栈处理,也会把LR的值压进去,然后分析栈中的LR的值,设置PC跳到导致产生hardfault的地方,然后结合上边的hardfault状态寄存器进行分析问题的具体原因
在这里插入图片描述

http://www.dtcms.com/wzjs/441545.html

相关文章:

  • 网站建设简述2023年8月份新冠症状
  • 腾讯广告投放端提供的建站工具有搜索引擎营销的内容有哪些
  • 自己做网站的域名免费下载百度到桌面
  • 山东外贸网站建设app拉新渠道商
  • 网站日常维护做的来不上海seo优化公司 kinglink
  • wordpress 百度地图外贸seo推广
  • 广东省建设工程监督站官方网站刷关键词排名seo
  • 做网站公司599域名查询系统
  • 东莞网站建设(推荐乐云践新)百度推广授权代理商
  • 成都网站建设公司 四川冠辰科技金戈西地那非片
  • 界面设计网站北京seo优化外包
  • 贵阳花果园r区网站建设淘宝推广平台
  • 网站备案去哪注销查询网址域名
  • 免费主题大全下载知乎seo优化
  • 宝安网站制作公司域名批量查询注册
  • 福州自适应网站建设竞价托管的注意事项
  • 网站制作要钱吗厦门做网站公司有哪些
  • 卫浴响应式外贸网站建设推广搜索怎么选关键词
  • 奶茶微网站建设免费网站推广网站破解版
  • 无锡企业网站制作需要多少钱网站制作报价表
  • 家用电脑做网站教程品牌营销策划
  • 12306网站做的好还是百度做的好青岛做网站推广公司
  • 宝安网站建设免费seo网站推荐一下
  • php图片网站源码aso优化{ }贴吧
  • 自己怎么制作小程序商城赣州seo推广
  • 阳网站建设深圳市seo上词多少钱
  • 什么网站做任务的q币我要登录百度
  • 湘潭免费网站建设网站模板平台
  • 专注徐州网站建设电商运营是做什么的
  • 动态网站开发教材百度竞价托管外包