- 博客(47)
- 收藏
- 关注
转载 Makefile中常用的函数
原文:http://linux.chinaunix.net/techdoc/develop/2009/07/09/1122854.shtml 在Makefile中可以使用函数来处理变量,从而让我们的命令或是规则更为的灵活和具有智能。make所支持的函数也不算很多,不过已经足够我们的操作了。函数调用后,函数的返回值可以当做变量来使用。一、函数的调用语法函数调用,很像变量的使用,也是以
2015-05-22 11:09:31 403
原创 GDB常用命令及省略形式(别名)
命令简写形式说明backtracebt/where显示backtracebreak 设备断点continuec/cont继续运行deleted删除断点finish
2015-05-22 09:13:44 1091
原创 #6调试器(GDB)的基本方法(之二)
attach到进程l attach pidattach 之后就能使用普通的gdb命令,可以使用print显示变量,也可以设置断点,使用contiune (c)可以恢复程序运行。l info proc 显示进行信息条件断点l break 断点 if 条件(gdb) break N if conditionl condition 断点编号条件该命
2015-05-21 17:27:38 568
原创 调试器(GDB)的基本使用方法(之一)
调试流程:1、 带着调试选项编译、构建调试对象2、 启动调试器1) 设置断点2) 显示栈帧3) 显示值4) 继续执行 准备gcc –Wall –O2 –gMakefile中添加 CFLAGS = -Wall –O2–gconfigure脚本 ./configure CFLAGS=”-Wall
2015-05-21 14:46:16 452
原创 获取进程的内核转储
l 启用内核转储ulimit –cunlimited 或者 ulimit –c limit_sizel 要用gdb调试生成的内核转储文件 $gdb–c core.xxx ./a.outl 在专用目录中生成内核转储 通过sysctl变量kernel.core_pattern设置。 kernel.core_pattern中可
2015-05-21 14:44:22 1748
原创 Debug Hacks 深入调试的技术和工具(一) 热身准备
热身准备调试是什么测试就是确认程序是否与规格一致的工作。程序行为与期待行为不一致,就称为BUG,测试就是寻找程序中的BUG的过程。通过某种方法发现BUG进行修正的过程。Debug hacks的地图程序异常结束时的对应方法 程序不结束时的对应方法内核有问题的现象调试的心得复现bugl 复现BUG:创造条件与产生BUG的环境一致1.
2015-05-19 11:25:52 1508
原创 ffmpeg(一)—— 环境搭建,使用code::blocks
在windows下使用code::blocks搭建ffmpeg的学习环境:一、下载code::blocks + mingwffmpeg-dev, ffmpeg-sharedsdl-dev二、安装和配置1、安装code::blocks和mingw2、把ffmpeg-dev和sdl-dev中的include和lib加入到code::blocks的编译环境中。3、把ffm
2014-02-25 22:02:48 2354
转载 linux下core文件设置与查看
程序异常推出时,内核会生成一个core文件(是内存映像以及调试信息)。可以通过使用gdb来查看core文件,指示出导致程序出错的代码所在的文件和行数。 1、查看系统中core文件生成的开关是否打开 1)使用ulimit -c命令可查看core文件的生成开关,若结果为0,则便是关闭了此功能,不会生成core文件。2、设置core文件生成 1)使用命令ulimit -c
2013-12-29 21:46:31 974
转载 定时函数setitimer
Linux setitimer对于电脑使用的玩家的常用软件,然后我就学习及深入的研究Linux setitimer,在这里和大家一起探讨Linux setitimer的使用方法,希望对大家有用。Linux setitimer()为Linux的API,并非C语言的Standard Library,Linux setitimer()有两个功能,一是指定一段时间后,才执行某个function,二是每间格
2013-12-26 16:26:54 971
转载 容易产生歧义的Integer.getInteger和Integer.valueOf方法
Integer类有两个看起来很类似的静态方法,一个是Integer.getInteger(String),另外一个是Integer.valueOf(String)。如果只看方法名称的话,很容易将这两个方法的功能区分开来,还是让我们来看看Java文档。 Integer.getInteger(String)的功能是根据指定的名称得到系统属性的整数值。第一个参数将被认为是系统属性的名称。系
2013-06-27 13:09:41 1137
转载 linux下打印带有颜色的字体
[转自:http://blog.csdn.net/hitrose27/article/details/6675655]echo -e "\033[32;49;1m [DONE] \033[39;49;0m"输出结果 :[DONE] [background_number;foreground_number m################################
2013-01-30 12:34:35 475
原创 linux系统学习(一) (linux基础)
man page数字代表1 使用者在shell环境中可以操作的命令或可运行文件2 系统核心可呼叫的函数与工具等3 一些常用的函数(function)与函式库(library),大部分为C的函式库(libc)4 装置文件的说明,通常在/dev下的文件5 配置文件或者是某些文件的格式6 游戏(games)7 惯例与协议等,例如Linux文件系统、网络协议、ASCII cod
2012-12-26 19:02:24 367
原创 编译安装内核
1、下载linux的内核文件,可到http://kernel.org/下载。我下载的是2.6.34.13版本。2、通过ftp把内核文件linux-2.6.34.13.tar.bz2传到/usr/src目录下,解压文件到当前目录。3、进入/usr/src/linux-2.6.34.13/, 使用make menuconfig命令进行配置,使用此命令要求系统中已经安装ncurse,如果系统中没
2012-12-26 18:52:52 553
转载 汉字编码与编程相关问题总结:ASCII、机内码、区位码、国标码、Unicode码是如何转换的
一、ASCII、机内码、区位码、国标码、Unicode码他们之间是如何转换的,方程式是什么汉字系统中的过程包括区位码、国标码和机内码,其中的转换关系如下:1.区位码(十进制)转换成区位码(十六进制)。 这里要把前两个位换成十六进制,然后后两位换成十六进制。 例如,某汉字的区位码是5448,这样把54转换为16进制数36;再把位码48转换为16进制数为30,得到十六进制数3630。
2012-09-24 16:53:57 11836
原创 解析不了域名
今天工作中随到的问题:描述问题的邮件======================================== 在测试“使用域名解析升级地址”的时候出现问题: 在使用域名解析升级地址的方式进行升级时,升级程序在编码板通过NSF启动可以正常升级,但在编码板通过FLASH启动时,出现域名不可解析的问题,测试的方法是:1.更改cat /etc/resolv.conf 为
2012-09-04 17:51:07 1260
转载 shell脚本中一些特殊符号
最近在学习shell编程,转一篇1、{} 大括号:用法一:通配符扩展 eg: ls my_{finger,toe}s这条命令相当于如下命令的组合:ls my_fingers my_toeseg: mkdir {userA,userB,userC}-{home,bin,data}我们将得到 userA-home, userA-bin, userA-data,
2012-09-03 22:01:17 702
转载 CentOS 修改IP地址, DNS, 网关
原文地址:http://www.21andy.com/blog/20100227/1717.html一、CentOS 修改IP地址修改对应网卡的IP地址的配置文件# vi /etc/sysconfig/network-scripts/ifcfg-eth0修改以下内容DEVICE=eth0 #描述网卡对应的设备别名,例如ifcfg-eth0的文件中它为eth0
2012-09-01 11:20:32 640
转载 在linux shell中使用for遍历产生的递增数字序列的N种方法
原文地址:http://blog.ihipop.info/2010/11/1845.html使用seq产生123for i in `seq 1 100`;doecho $idone使用条件循环123for((i=1;i100;i++));doecho$idone
2012-08-31 16:38:50 6216 1
原创 用到的函数
STATFS(2) Linux Programmer's Manual STATFS(2)NAME statfs, fstatfs - get file system statisticsSYNOPSIS #include
2012-08-27 10:51:04 411
原创 用到的linux命令
1、dmesg dmesg命令用于打印Linux系统开机启动信息,kernel会将开机信息存储在ring buffer中。您若是开机时来不及查看信息,可利用dmesg来查看(print or control the kernel ring buffer)。开机信息亦保存在/var/log/dmesg的文件里。某些硬件设备(比如七号信令卡、语音卡之类)在安装的时候,通常会安装驱动程序(
2012-08-21 11:45:47 429
转载 排序
插入排序1.直接插入排序原理:将数组分为无序区和有序区两个区,然后不断将无序区的第一个元素按大小顺序插入到有序区中去,最终将所有无序区元素都移动到有序区完成排序。要点:设立哨兵,作为临时存储和判断数组边界之用。实现:Void InsertSort(Node L[],int length){Int i,j;//分别为有序区和无序
2012-08-14 23:04:25 365
原创 关于C语言的一个问题
考虑int a[100];printf("%d\n", sizeof(a));printf("%p, %p\n", a, a + 1);打印的结果是:4000xbfd8b124, 0xbfd8b128对于第一个结果分析,a应该是数据的首地址,但对于下一结果分析,a又是数组第一个元素的首地址。想想为什么?
2012-08-08 10:34:43 882
转载 一个.vimrc的示例
<!--pre {font-family:monospace; color:#f8f8f2; background-color:#1b1d1e}body {font-family:monospace; color:#f8f8f2; background-color:#1b1d1e}.lnr {color:#bcbcbc; background-color
2012-07-07 11:47:47 5788 1
转载 .vimrc编写指南
原文地址:http://edyfox.codecarver.org/html/_vimrc_for_beginners.htmlVIM 中可供用户定制的选项非常非常多,作为初学者,我们没有必要了解这么多东西。下面,滇狐简单列出了一些最常用的配置项,大家可以根据自己的需要将这些内容添加到自己的 .vimrc 中。1 基本设置set nocp 该命令指定让 VIM 工作在不
2012-07-07 11:22:19 2219
转载 ffmpeg常用数据结构
原文地址:http://my.oschina.net/u/555701/blog/56748先上一个图:AVCodecContext这是一个描述编解码器上下文的数据结构,包含了众多编解码器需要的参数信息,如下列出了部分比较重要的域:typedef struct AVCodecContext { ...... /** * some cod
2012-07-05 18:35:58 2997
转载 时间戳问题汇总
原文地址:http://hi.baidu.com/ilovejoy/blog/item/3da717eca51d7b302797917a.html/cmtid/a50c1c1837ec330935fa419b大家好 我刚接触流媒体不久, 现在遇到一个非常奇怪的问题,向各位大侠请假,请你们指点。 问题是这样的 用一个 VLC(流媒体客户端) 去请求流媒体服务器上的数据, 但是获得
2012-07-03 15:04:55 934
转载 rtp协议详解/rtcp协议详解
原文地址 http://www.cnblogs.com/li0803/archive/2010/11/20/1882792.html1、简介 目前,在IP网络中实现实时语音、视频通信和应用已经成为网络应用的一个主流技术和发展方向,本文详细介绍IP协议族中用于实时语音、视频数据传输的标准协议RTP( Real-time Transport Protocol)和RTCP(RT
2012-06-28 14:45:56 493
原创 作为函数参数的多维数组想到的两个问题
《C和指针》中对多维数组作为函数的参数有这个的描述:作为函数参数的多维数组名的传递方式和一维数组名相同——实际上传递的是个指向数组第一个元素的指针。但是,两者之间的区别在于,多维数组的每个元素本身是另外一个数组,编译器需要知道它的维数,以便为函数形参的下标表达进行求值。这个论述,对于一般的int形二维数组,并没有什么异议;但对于字符串数组,情况似乎就有点不同了。下面有一个例子:#i
2012-05-28 12:53:12 532
原创 C语言实现动态数组
现正在做一个项目,要使用动态数组,本想在网站上找一个代码,由于这个项目比较急,本想在网站上找个现成的代码直接用,可是找来找到,就觉得adm_qxx兄写的还算规则,可后来发现动态数组最重要的动态扩展部分竟然没有实现,所以我就修改了adm_qxx的代码,并贴在下面。#incl
2011-08-22 11:36:19 936 1
原创 一、网络编程之基础知识:链路层
链路层的三个目的:1)为IP模块发送和接收IP数据;2)为ARP模块发送ARP请求和接收ARP应答;3)为RARP发送RARP请求和接收RARP应答。1、以太网和IEEE802封装以太网:由DEC,Intel,Xerox公司公布的一个标准,采用CSMA/CD的媒体接入方法;IEE
2011-07-24 15:27:29 719
转载 程序员技术练级攻略 --陈皓
原文地址:http://coolshell.cn/articles/4990.html月光博客6月12日发表了《写给新手程序员的一封信》,翻译自《An open letter to those who want to start programming》,我的朋友(他在本站的id
2011-07-19 11:16:16 754
转载 信号可靠、不可靠的原因
原文地址:http://blogold.chinaunix.net/u1/48788/showart.php?id=2270724早期的信号,也就是前32位的信号,在处理信号时,不具备阻塞该信号的能力(也就是不支持排队),只能忽略,这时候就可能丢失信号。使用不可靠信号时注意:1)
2011-07-15 15:02:31 1543
转载 [转]linux系统调用fork, vfork, clone
原文地址:http://memorymyann.iteye.com/blog/235638fork,vfork,clone都是linux的系统调用,用来创建子进程的(确切说vfork创造出来的是线程)。先介绍下进程必须的4要点:a.要有一段程序供该进程运行,就像一场戏剧要有一个剧
2011-07-14 23:38:26 463
转载 [转]磁盘为什么只能分四个主分区
主分区,也称为主磁盘分区,和扩展分区、逻辑分区一样,是一种分区类型。主分区中不能再划分其他类型的分区,因此每个主分区都相当于一个逻辑磁盘(在这一点上主分区和逻辑分区很相似,但主分区是直接在硬盘上划分的,逻辑分区则必须建立于扩展分区中)。 实际上在早期的硬盘分
2011-07-05 18:36:59 2078
转载 [转]学习linux/unix编程方法的建议
看了这篇文章,看来自己的路还很长,想成为一个合格的程序员,并不是一件简单的事情。努力吧,呆娃!下面是原文,转过来,作为我程序员之路的一个参考!==============================================首先先学学编辑器,vim,
2011-07-03 22:47:48 624 2
转载 建议性锁和强制性锁
今天在看APUE的时候看对建议性锁和强制性锁这两个概念理解不是很清晰,到网上找了些资料,大概了解了。 下面是原文(原文地址:http://blog.csdn.net/ptn3900/archive/2011/06/16/6548404.aspx) fcntl有强大的功能,它能够复制一个现有的描述符,获得/设置文件描述符标记,获得/设置文件状态标记,获得/设置异步I/O所有权,获得/设置纪录锁。
2011-06-30 18:47:00 815
转载 (转)linux shell 不同进制数据转换(二进制,八进制,十六进制,base64)
原文地址:http://www.cnblogs.com/chengmo/archive/2010/10/14/1851570.html shell可以在不调用第3方命令,表示不同进制数据。这里总结以下表示方法。shell 脚本默认数值是由10 进制数处理,除非这个数字某种特殊的标记法或前缀开头. 才可以表示其它进制类型数值。如:以 0 开头就是 8 进制.以0x 开头就是16 进制数
2011-06-28 11:00:00 2104 1
原创 使用Cygwin编译CFE
1、Cygwin的安装 注意devel一定要安装,此处安装编辑器 2、进入../CFE/CFE/bcm97405A/build 执行make命令或者sde-make,可以在build目录下编译出一个cfe.bin的文件 3、烧写CFE 1)把cfe.bin放进/tftpboot/目录下 2)把开发板进入CFE模式 3)执行ifconfig eth0 –auto 4
2011-06-28 01:46:00 2671 1
原创 linux下使用stat函数不可以取得超过2G的大文件的解决方法
定义#define _FILE_OFFSET_BITS 64先记下,还不知道是什么原因,估计是使用 _FILE_OFFSET_BITS 这个宏是定义了 off_t 这个系统定义的变量。我在头文件中竟然没有找到 off_t 在哪定义。奇怪,有时间再好好研究下,先记下这个解决方法。
2011-06-27 09:46:00 1923
转载 可重入函数与不可重入函数(转)
转自:http://www.cppblog.com/franksunny/archive/2007/08/03/29269.html主要用于多任务环境中,一个可重入的函数简单来说就是可以被中断的函数,也就是说,可以在这个函数执行的任何时刻中断它,转入OS调度下去执行另外一段代码,而返回控制时不会出现什么错误;而不可重入的函数由于使用了一些系统资源,比如全局变量区,中断向量表等,所以它如果被
2011-06-11 18:44:00 435
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人