基于ARM的Linux驱动调试技术研究

2016-09-26 07:20:28巩琛蔡文
计算机应用与软件 2016年3期
关键词:进程调试

巩 琛 蔡 文

(上海师范大学信息与机电工程学院 上海 200234)



基于ARM的Linux驱动调试技术研究

巩琛蔡文

(上海师范大学信息与机电工程学院上海 200234)

在ARM上进行Linux驱动移植时,要对Linux内核代码进行修改、删减或添加,但这样做在运行时可能会遇到很多意想不到的错误,这时就需要去调试代码以找到出错的原因和位置。针对这一需要,提出并实现两种新的调试技术:第一种构造一个打印函数,把添加的打印信息单独存储,然后借助proc文件系统将其输出,实现了外加打印信息与内核自身打印信息的分离,使查找更加方便;其次利用系统时钟中断永不停息的特性确定系统僵死的位置。通过实验表明,该技术能快速有效地找到死循环的位置,省去了大量查找和分析代码的工作。

Linux调试proc文件系统系统时钟中断

0 引 言

如今,以ARM为核心处理器,搭载Linux操作系统的嵌入式产品越来越多,应用场景越来越广泛[1]。但由于硬件平台的多样性,并没有一套通用的Linux操作系统。开发相应的嵌入式产品时,需要工程师根据硬件平台外围设备的特性对Linux内核源码进行增减。这样一个移植过程中会出现各种各样的bug,此时就需要开发者运用各种调试手段去找到出错的地方和原因。本文基于Linux+ARM的实验平台(Linux选取2.6.31.14的版本;ARM架构芯片采用三星公司的s3c2440;BootLoader采用U-boot,根文件系统用Busybox创建[2,3]),提出并实现两种新的驱动调试技术。文中涉及到的交叉开发方面的知识不作详述。

1 构建proc文件输出私有调试信息

1.1整体思想概述

登录APP查看全文

猜你喜欢
进程调试
债券市场对外开放的进程与展望
中国外汇(2019年20期)2019-11-25 09:54:58
基于航拍无人机的设计与调试
电子制作(2018年12期)2018-08-01 00:47:44
核电厂主给水系统调试
中国核电(2017年1期)2017-05-17 06:10:11
无线通信中频线路窄带临界调试法及其应用
电子制作(2017年19期)2017-02-02 07:08:38
调压柜的调试与试运行探讨
工业电气设备控制系统的安装与调试
音频处理器的调试
我国高等教育改革进程与反思
教育与职业(2014年7期)2014-01-21 02:35:04
Linux僵死进程的产生与避免
男女平等进程中出现的新矛盾和新问题