博客
关于我
21全志r58m平台的framework在使用过程中会莫名的崩溃掉
阅读量:233 次
发布时间:2019-02-28

本文共 1185 字,大约阅读时间需要 3 分钟。

在使用21全志r58m平台的framework时,用户报告了莫名的崩溃问题。通过分析系统日志,发现崩溃发生在Binder_4进程中,信号类型为SIGFPE,代码为-6,且涉及sensors.exdroid.so和libsensorservice.so。这表明问题与传感器配置或驱动有关。

分析过程:

  • 崩溃原因:

    • 崩溃信号为SIGFPE,通常与浮点数运算或除法错误有关。
    • 进程为Binder_4,与系统服务相关,可能是传感器驱动或服务配置问题。
  • 传感器相关:

    • 崩溃路径涉及AccelSensor::setDelay,说明在设置传感器延迟时出现错误。
    • 日志显示传感器初始化失败,如AccelSensor::Delay()无法设置pollrate_ms,提示传感器配置问题。
  • 硬件检查:

    • 检查传感器硬件是否正常,确保传感器能够生成信号。
    • 使用测试工具验证传感器是否能正常工作,例如读取加速度数据。
  • 驱动和固件:

    • 检查传感器驱动和固件是否存在问题,是否有更新或修复的可用版本。
    • 查看HAL层和SensorService的配置,确认传感器参数是否正确设置。
  • BoardConfig.mk:

    • 核查BoardConfig.mk中的传感器配置,确保使用了正确的传感器类型和参数。
    • 检查是否有必要的传感器参数定义,如SW_BOARD_USES_SENSORS_TYPE是否正确配置。
  • 排查步骤:

  • 传感器测试:

    • 使用iostat或类似工具监控传感器的读写状态。
    • 尝试触发崩溃操作,观察传感器是否能正常响应。
  • 日志分析:

    • 查看是否有其他传感器相关的错误日志,确认是否有多个传感器出现问题。
    • 注意setDelay失败的具体原因,如权限问题或超时等。
  • 参数配置:

    • 检查传感器参数配置文件,确保所有必要的参数如pollrate_ms和delay被正确设置。
    • 如果使用了自定义传感器类型,确认其驱动和服务支持。
  • 驱动更新:

    • 查看最新的驱动版本,确认是否有已知的修复。
    • 如果有更新,进行回滚或升级,并观察问题是否解决。
  • 系统状态:

    • 确认系统在崩溃前后是否有异常日志或错误状态。
    • 检查是否有其他进程同时抛出类似错误,确认是否为环境问题。
  • 解决方案:

  • 修复驱动或固件:

    • 如果驱动或固件有更新,及时安装最新版本,确保兼容性和稳定性。
  • 优化传感器配置:

    • 根据文档或社区建议,调整传感器参数,如延迟设置是否过低或过高。
    • 确保所有传感器类型都被正确配置,避免遗漏或配置错误。
  • 检查硬件连接:

    • 确保传感器与主板连接正确,且接口类型(I2C/SPI)无误。
    • 检查电源供应,确保传感器获得稳定的电源。
  • 核对BoardConfig.mk:

    • 确保传感器类型和参数配置正确,尤其是在自定义传感器时。
    • 如果需要,添加额外的传感器参数或调试信息,帮助定位问题。
  • 通过以上步骤,能够系统地排查并解决传感器崩溃问题,确保系统稳定运行。

    转载地址:http://ugdp.baihongyu.com/

    你可能感兴趣的文章
    python 学习 面向对象编程
    查看>>
    Python 安装程序:“写入文件 C:\Python27\pythonw.exe 时出错“
    查看>>
    Python 无法安装包
    查看>>
    Python基础:集合与文件操作
    查看>>
    Python基础:搭建开发环境(1)
    查看>>
    PYTHON基础:如何阅读N个整数,直到#39;
    查看>>
    Python基础:11变量作用域和闭包
    查看>>
    Python基础: with模式和__enter__ 和 __exit__
    查看>>
    Python基础(7)--函数
    查看>>
    Python基础部分-while循环,格式化输出
    查看>>
    Python基础语法与执行脚本的3种方式
    查看>>
    python基础篇(1):type()
    查看>>
    python基础篇(15):闭包
    查看>>
    python基础篇(11):封装
    查看>>
    python基础篇(10):自定义包
    查看>>
    python基础篇(10):类、对象与构造方法
    查看>>
    python系列【仅供参考】:python斗地主
    查看>>
    Python基础教程(第2版 修订版) pdf
    查看>>
    python基础实践(四)
    查看>>
    Python基础学习笔记(九)常用数据类型转换函数
    查看>>