Linux 学习
liuxuelinyl
这个作者很懒,什么都没留下…
展开
-
gdb 调试段错误(MIPS)
开发嵌入式Linux的时候经常会遇到segmentation fault,也就是段异常错误,一般是使用错误的指针访问内存导致。这种错误可以通过打开内核的异常信息输出,再用gdb对发生段异常的地址进行定位。 1.打开内核的异常信息输出: mips的内核代码关闭了arch/mips/mm/fault.c的do_page_fault():133中的这段代码: #if 0 printk("do转载 2012-11-11 13:20:34 · 2652 阅读 · 1 评论 -
GDB 反汇编
1、disassemble反汇编命令: disassemble 是以反汇编清单的形式输出内存的内容,表示的格式由命令set disassembly-flavor确定 1.1不带参数 默认的反汇编范围是 所选择帧的pc附近的函数 1.2单个参数 就是pc, 当然也可以是函数名,因为函数名 也是一个 地址; 这样范围就是该pc附近的函数 : disass func_name >>转载 2012-11-11 15:12:31 · 3515 阅读 · 0 评论 -
调试技术: Linux core dump file
调试技术: Linux core dump file 收藏 1. 前言: 有的程序可以通过编译, 但在运行时会出现Segment fault(段错误). 这通常都是指针错误引起的. 但这不像编译错误一样会提示到文件->行, 而是没有任何信息, 使得我们的调试变得困难起来. 2. gdb: 有一种办法是, 我们用gdb的step, 一步一步寻找. 这放在短小的代码中是可行的,转载 2012-11-11 15:28:22 · 971 阅读 · 1 评论 -
GDB调试core文件样例(如何定位Segment fault)
GDB调试core文件样例(如何定位Segment fault) core dump又叫核心转储, 当程序运行过程中发生异常, 程序异常退出时, 由操作系统把程序当前的内存状况存储在一个core文件中, 叫core dump. (linux中如果内存越界会收到SIGSEGV信号,然后就会core dump) 在程序运行的过程中,有的时候我们会遇到Segment fault(段错误)这样的错误。转载 2012-11-11 11:18:42 · 841 阅读 · 0 评论 -
信号量与锁
信号量用在多线程多任务同步的,一个线程完成了某一个动作就通过信号量告诉别的线程,别的线程再进行某些动作(大家都在semtake的时候,就阻塞在 哪里)。而互斥锁是用在多线程多任务互斥的,一个线程占用了某一个资源,那么别的线程就无法访问,直到这个线程unlock,其他的线程才开始可以利用这 个资源。比如对全局变量的访问,有时要加锁,操作完了,在解锁。有的时候锁和信号量会同时使用的” 也就是说,信号转载 2014-10-26 16:15:37 · 1115 阅读 · 0 评论 -
GCC_符号表_调试信息
GCC把C语言源文件('.c')编译成汇编语言文件('.s'),汇编器把汇编语言文件翻译成目标文件('.o'),最后由链接器链接所有的目标文件和有关的库生成可执行文件('a.out')。 如打开'-g'选项,GCC编译'.c'文件时,把附加的调试信息插进'.s'文件,这些调试信息经汇编器和链接器稍加转换一直传到可执行文件中。这些调试信息包括行号、变量的类型和作用域、函数名字、函数参数和函数转载 2013-03-05 22:20:24 · 2297 阅读 · 0 评论 -
linux c语言 select函数用法
转自 http://www.cnblogs.com/moonvan/archive/2012/05/26/2518881.html Select在Socket编程中还是比较重要的,可是对于初学Socket的人来说都不太爱用Select写程序,他们只是习惯写诸如 connect、accept、recv或recvfrom这样的阻塞程序(所谓阻塞方式block,顾名思义,就是进程或是线程执行转载 2016-03-31 18:21:47 · 492 阅读 · 0 评论 -
socket进程间通信
转自 http://blog.csdn.net/lanyang123456/article/details/40299623 socket在主机间和进程间使用,方法类似,主要区别是进程间通信使用的是sockaddr_un,而主机间的通信使用的是sockadd_in。 每个套接字都有其自己的地址格式,对于AF_UNIX域套接字来说,它的地址由结构sockaddr_un来描述,转载 2016-03-31 18:23:39 · 600 阅读 · 0 评论