TrustZone 监控模式和 IFAR、IFSR、DFAR、DFSR

     2023-02-19     108

关键词:

【中文标题】TrustZone 监控模式和 IFAR、IFSR、DFAR、DFSR【英文标题】:TrustZone monitor mode and IFAR, IFSR, DFAR, DFSR 【发布时间】:2014-03-31 14:44:50 【问题描述】:

ARM TrustZone monitor mode 可以在监控模式下捕获异常。监控模式始终在安全世界或上下文中执行。正常情况下陷入监控模式instruction abortdata fault向量,我们怎么知道是什么地址和原因导致了故障?

IFSRIFARDFSRDFAR 是存储的 CP15 寄存器。

【问题讨论】:

【参考方案1】:

值得注意的是,只能将外部中止配置为在监视模式下进行,因此不会捕获MMU访问错误。

至于主要问题:所有安全/非安全分组寄存器的状态在监控模式下由 cp15 安全配置寄存器 NS 位的状态控制:当它被设置时,您访问非安全版本,并且在确定时访问安全版本。

以下是一些内联gcc 代码,它允许任何安全世界 模式检查这些CP15 寄存器。

    #define MODE_MONITOR 0x16
    unsigned int mode;
    unsigned int world;
    unsigned int dfar;
    unsigned int dfsr;
    unsigned int ifar;
    unsigned int ifsr;

    asm (" mrs %0, cpsr\n"                 /* Save mode. */
         " mrc p15, 0, %1, c1, c1, 0\n"
         " orr  %1, %1, #1\n"              /* Set NS bit in SCR. */
         " cpsid aif, %6\n"                /* To monitor mode... */
         " mcr p15, 0, %1, c1, c1, 0\n"
         " mrc p15, 0, %2, c6, c0, 0\n"
         " mrc p15, 0, %3, c5, c0, 0\n"
         " mrc p15, 0, %4, c6, c0, 2\n"
         " mrc p15, 0, %5, c5, c0, 1\n"
         " bic  %1, %1, #1\n"              /* Clear NS bit in SCR. */
         " mcr  p15, 0, %1, c1, c1, 0\n"
         " isb\n"
         " msr cpsr, %0\n"
         : "=&r" (mode), "=&r" (world),
           "=r"(dfar), "=r"(dfsr),
           "=r"(ifar), "=r"(ifsr)
         : "I" (MODE_MONITOR));
    printf("DFAR: %.8x dfsr: %.8x IFAR: %.8x ifsr: %.8x\n",
           dfar, dfsr, ifar, ifsr);

【讨论】:

这很奇怪;都是这样的CP15 寄存器吗?因此,当您处于监控状态时,应用安全 MMU 状态,但如果设置了 NS 位,您可以看到非安全 TTBR 等? 正确。监控模式是“特殊的”。 您能否解释一下“所以当您处于监控状态时,安全 MMU 状态适用,但如果设置了 NS 位,您可以看到非安全 TTBR 等?”跨度> @mSO:监控模式本身是始终安全的。因此,在监视模式或任何其他安全模式下执行时分配的 TLB 条目是安全的 (NSTID=0),无论 NS 位的状态如何。

zabbix主动模式和被动模式监控

[[email protected]etc]#catzabbix_agentd.confLogFile=/var/log/zabbix/zabbix_agentd.logEnableRemoteCommands=1Server=127.0.0.1,10.9.92.88 #被动监控模式,必须配置此项,否则agentd起不了ServerActive=10.9.92.88:10051 查看详情

主动模式和被动模式添加监控主机添加自定义模板自动发现

...对客户端来讲的被动模式,服务端会主动连接客户端获取监控项目数据,客户端被动地接收连接,并把监控信息传递给服务端主动模式,客户端会主动把监控数据汇报给服务端,服务端只负责接收即可。当客户端数量非常多时,... 查看详情

主动模式和被动模式,添加监控主机,添加自定义模板,处理图形中的乱码,自动发现

...对客户端来讲的被动模式,服务端会主动连接客户端获取监控项目数据,客户端被动地接受连接,并把监控信息传递给服务端主动模式,客户端会主动把监控数据汇报给服务端,服务端只负责接收即可。当客户端数量非常多时,... 查看详情

zabbix主动模式和被动模式的区别

zabbix监控主被动模式被动模式zabbix服务器从监控端拉数据,主动模式zabbixagent主动向服务器推数据。zabbix监控默认为被动模式,zabbixagent被动的接受ZabbixServer的监控指令并返回数据。zabbix主动模式为zabbixagent主动向zabbixServe... 查看详情

zabbix的主动模式和被动模式添加监控主机添加自定义模板处理图形中的乱码自动发现

...对客户端来讲的被动模式,服务端会主动连接客户端获取监控项目数据,客户端被动地接受连接,并把监控信息传递给服务端主动模式,客户端会主动把监控数据汇报给服务端,服务端只负责接收即可。当客户端数量非常多时,... 查看详情

六十主动模式和被动模式添加监控主机添加自定义模板处理图形中的乱码自动发现

六十五、主动模式和被动模式、添加监控主机、添加自定义模板、处理图形中的乱码、自动发现一、主动模式和被动模式主动或者被动是相对客户端来讲的被动模式,服务端会主动连接客户端获取监控项目数据,客户端被动地接... 查看详情

主动模式和被动模式添加监控主机添加自定义模板处理图形中的乱码自动发现(代码片段)

主动模式和被动模式添加监控主机到web界面的监控中心进行配置添加主机之前先建立主机群组再添加主机,主机名称和可见名称都写hanshuo-02(在客户端配置文件里边定义的)添加自定义模板从自带的模板里边找一些适合自己的... 查看详情

主动模式和被动模式添加监控主机添加自定义模板处理图形中的乱码自动发现

...对客户端来讲的被动模式,服务端会主动连接客户端获取监控项目数据,客户端被动地接受连接,并把监控信息传递给服务端主动模式,客户端会主动把监控数据汇报给服务端,服务端只负责接收即可。当客户端数量非常多时,... 查看详情

38-zabbix故障自愈和主动监控模式以及java程序监控

Zabbix实现故障自愈功能当zabbix服务监控到指定的监控项异常时,可以通过指定的操作使故障自动恢复案例:以nginx服务为例,当nginx服务停止时,自动重启服务,实现故障自愈功能#ZabbixAgent开启远程命令功能在agent配置中添加AllowKey=sys... 查看详情

66.主动模式和被动模式添加监控主机添加自定义模板处理图形中的乱码自动发现

...对客户端来讲的被动模式,服务端会主动连接客户端获取监控项目数据,客户端被动地接受连接,并把监控信息传递给服务端主动模式,客户端会主动把监控数据汇报给服务端,服务端只负责接收即可。当客户端数量非常多时,... 查看详情

zabbix主动和被动模式添加监控主机和自动以模板处理图形中的乱码自动发现

...于客户端来讲的被动模式,服务端会主动连接客户端获取监控项目数据,客户端被动的接受连接,并把监控信息传递给服务端。服务端要到所有的客户端上取数据再返回放到数据库。主动模式,客户端会主动把监控数据汇报给服... 查看详情

监控工具glances(代码片段)

一、前言监控是运维管理中必不可少的使用工具,简而有效的监控工具可以降低运维维护成本,提高效率,有效保障业务长期稳定运行。二、简介Glances监控工具是功能强大简单易用的在线监控工具。Glances支持gpm图形模式和Glances... 查看详情

19.7主动模式和被动模式19.8添加监控主机19.9添加自定义模板19.10处理图形

19.7主动模式和被动模式19.8添加监控主机19.9添加自定义模板19.10处理图形中的乱码19.11自动发现 查看详情

19.7主动模式和被动模式19.8添加监控主机19.9添加自定义模板19.10处理图形

19.7主动模式和被动模式19.8添加监控主机19.9添加自定义模板19.10处理图形中的乱码19.11自动发现 查看详情

主动模式和被动模式客户端

...P只能客户端制定IPTABLES规则NAT配置主机群组模版预设一些监控项目的集合主机没有启动agent添加主机线添加群组创建主机客户端IP添加完之后应用集监控项的一个集合更方便的管理监控项监控项监控的项CUP相关触发器针对某一个... 查看详情

监控工具glances(代码片段)

一、前言监控是运维管理中必不可少的使用工具,简而有效的监控工具可以降低运维维护成本,提高效率,有效保障业务长期稳定运行。二、简介Glances监控工具是功能强大简单易用的在线监控工具。Glances支持gpm图形模式和Glances... 查看详情

如何设置 TrustZone 开发环境

】如何设置TrustZone开发环境【英文标题】:HowtosetupaTrustZonedevelopmentenvironment【发布时间】:2018-06-1923:03:16【问题描述】:我想开始玩ARMTrustZone,所以我想设置一个开发环境,不幸的是我觉得我仍然缺少一些东西,我不知道如何将... 查看详情

监控工具glances(代码片段)

作者:独笔孤行@TaoCloud一、前言监控是运维管理中必不可少的使用工具,简而有效的监控工具可以降低运维维护成本,提高效率,有效保障业务长期稳定运行。二、简介Glances监控工具是功能强大简单易用的在线监控工具。Glances... 查看详情