- 博客(9)
- 资源 (7)
- 收藏
- 关注
原创 gcc为formal parm生成dwarf调试信息
本次问题从一个bug入手,源文件非常简单,只包含一个函数:int call2b(char c, float f1, short 2, double d1, int i, float f2, long l, double d2){ c='a';f1=0.0;s=5;d1=0.0; i=6; f2 = 0.1;l=7;d2=0.2return i;}该函数使用
2015-04-20 09:12:19 1381
原创 linux系统时钟
硬件上,一个soc上面有:时钟源、定时器。时钟源用于产生不同频率的clock,用于不同的模块,比如ahb和apb总线的频率不同;以及用于不同的cpu模式下,比如低功耗模式下的clock的频率更低。定时器是时钟clock作为输入,进行计数,周期性产生中断,定时器的计数周期都是可编程的。这是硬件上时钟和定时器的概念。而软件上,一般linux系统中提及比较多的概念有:系统时钟、rtc时钟以及loca
2015-04-06 16:19:56 1228
原创 由errno到linux的tls实现机制
1. 起因:在使用gdb调试程序时,碰到的一个问题导致了本次对tls的学习。该问题是:被调试程序调用了一个库函数后,对errno进行判断。而我希望知道errno的具体的值,所以就直接使用“print errno”命令。这时候竟然出现“can't access memory ...”。接下来,我就尝试了在源程序中加入一行printf("%d",errno).的语句,结果是能打印出errno的
2015-04-03 15:02:25 2167
原创 基于linux多线程调试分析的ecos多任务调试设计
本文分析linux的多线程调试的实现机制和代码框架,给出基于jtag调试方式的ecos多任务调试的代码框架和实现机制的设计。
2015-03-09 16:20:48 1881
翻译 dwarf2调试信息格式——chapter1,2
1. 引言简单的说,调试信息就是在机器码和对应的源代码之间建立某种映射关系,用于提高调试程序的能力。1.1 历史DWARF的全称是"Debugging With Attributed RecordFormats",遵从GNU FDL授权。现在已经有dwarf1,dwarf2,dwarf3三个版本。Dwarf最初被贝尔实验室设计用来供Unix System V的sdb调试器
2015-02-14 17:06:45 3152
原创 gdb对于linux应用程序调试实现机制浅析
1.1 Gdb对于linux应用程序调试实现机制介绍了gdb通过ptrace系统调用实现linux应用程序测试的机制,包括主要从linux内核角度分析,阐述linux内核对于ptrace调试linux应用程序的实现机制
2015-02-14 16:31:01 1727
原创 kgdb模块移植分析文档
1.概述本文通过分析X86的KGDB内核调试实现机制,理清KGDB内核调试的原理。最后给出KGDB移植至c-sky的可行性方案。本文后续分为两个章节。第二章主要结合代码分析分析X86体系结构下,KGDB内核调试的实现机制。第三章结合第二章的分析对比,提出KGDB内核调试在c-sky嵌入式平台上的移植的实现方案。2.原理分析2.1简介Kgdb是Linux内核本身提供的一种内核调试
2014-12-15 09:47:11 1401 2
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人