Welcome 微信登录
编程资源 图片资源库 蚂蚁家优选 PDF转换器 软件资源

软件开发小程序制作系统集成与运维空间租用硬件开发视频监控技术咨询与支持——联系电话:0311-88999002/88999003

首页 / 操作系统 / Linux

Linux应用调试技术之GDB和GDBServer

Linux应用调试技术之GDB和GDBServer

1、调试原理 GDB调试是应用程序在开发板上运行,然后在PC机上对开发板上得应用程序进行调试,PC机运行GDB,开发板上运行GDBServer。在应用程序调试的时候,pc机上的gdb向开发板上的GDBServer发出命令,而开发板上的gdbserver就会向应用程序发出信号,使应用程序停下来或者完成其他一些工作。2、安装GDB和GDBServer(gdb-7.4.tar.bz2) 2.1、GDB 1、下载:http://ftp.gnu.org...
GDB调试命令

GDB调试命令

1、查看源码:list [函数名][行数]2、暂停程序(1)设置断点:a、break + [源代码行号][源代码函数名][内存地址]b、break ... if condition...可以是上述任一参数,condition是条件。例如在循环体中可以设置break ... if i = 100 来设置循环次数(2)观察断点:a、watch + [变量][表达式] 当变量或表达式值改变时即停住程序。b、rwatch + [变量][表达式] 当变量或表达式被读...
Linux内核调试技术之修改内核定时器来定位系统僵死问题

Linux内核调试技术之修改内核定时器来定位系统僵死问题

1.简介 在内核调试中,会经常出现内核僵死的问题,也就是发生死循环,内核不能产生调度。导致内核失去响应。这种情况下我们可以采用修改系统内核中的系统时钟的中断来定位发生僵死的进程和函数名称。因为内核系统系统时钟采用的是硬件中断的形式存在,所以,软件发生僵死的时候,系统时钟照样会发生中断。 1.1、我们在命令行输入:# cat /proc/interrupts# cat /proc/interruptsCPU0 30: 8316 s3cS3C2410 Ti...
Linux内核调试技术之printk

Linux内核调试技术之printk

1、简介(基于s3c2440 linux)在内核调试技术之中,最简单的就是printk的使用了,它的用法和C语言应用程序中的printf使用类似,在应用程序中依靠的是stdio.h中的库,而在linux内核中没有这个库,所以在linux内核中,使用这个printk就要对内核的实现有一定的了解。printf和printk的区别:printk会在开头处加上"<N>"样式的字符,N的范围是0~7,表示这个信息的级别。当printk("<n>...
Java设计模式之单例模式(Singleton)

Java设计模式之单例模式(Singleton)

设计模式是前辈的一些经验总结之后的精髓,学习设计模式可以针对不同的问题给出更加优雅的解答单例模式可分为俩种:懒汉模式和饿汉模式。俩种模式分别有不同的优势和缺点懒汉模式class Singleton{private staticSingleton instance = new Singleton();private test(){}public static test getInstance(){return instance;}} 将构造函数私有化,不允许...
Java基础之IO流

Java基础之IO流

补充JavaSE的一些细节部分关于IO流的一些总结首先要介绍的是File类,File类用于对文件和目录的一些操作1.创建文件CreateNewFile()2.对文件的信息的获取getName(),getAbsolutePath()3.判断是否是文件isFile()4.遍历整个目录下的文件 File[] listFile(),返回一个元素为文件的对象数组,可以使用方法来遍历数组然后引入了流的概念以内存为参考系,以方向可以分为输入流(读),输出流(写)以流的内...
Hiberbate中的一对多关联查询

Hiberbate中的一对多关联查询

Hibernate中一对多关系的应用案例:一个人可以拥有多辆小轿车目的:通过hibernate的相关配置,利用HQL语句成功的查询出某人拥有某些车辆1、 项目结构 2、 domain类的创建详情(此处略去set和get方法)3、 数据库的表对应关系4、 Person.hbm.xml文件的配置5、Cars.hbm.xml的配置详情6.hibernate.cfg.xml中文件的引用7、用HQL语句查询某人拥有某车Hibernate3.1.2_...
Java基础篇Socket网络编程中的应用实例

Java基础篇Socket网络编程中的应用实例

说到java网络通讯章节的内容,刚入门的学员可能会感到比较头疼,应为Socket通信中一定会伴随有IO流的操作,当然对IO流比较熟练的哥们会觉得这是比较好玩的一章,因为一切都在他们的掌握之中,这样操作起来就显得非常得心应手,但是对于IO本来就不是多熟悉的哥们来说就有一定的困难了,在搞清楚IO流操作机制的同时还必须会应用到Socket通信中去,否则会对得到的结果感到非常郁闷和懊恼,下面就和大家一起分享一下自己遇到一点小麻烦后的感触以及给出的解决办法。要求:客...
DOM解析XML格式文件实例

DOM解析XML格式文件实例

以下给4种常见的xml文件的解析方式的分析对比:DOM DOM4J JDOM SAX解析XML文件的几种方式和区别答:Dom解析 在内存中创建一个DOM树,该结构通常需要加载整个文档然后才能做工作。由于它是基于信息层次的,因而DOM被认为是基于树或基于对象的,树在内存中是持久的,因此可以修改它以便应用程序能对数据和结构作出更改能随机访问文件内容,也可以修改原文件内容.SAX解析 SAX处理的优点非常类似于流媒体的优点。分析能够立即开始,而不是等待所有的数据...
XPath 详解及总结

XPath 详解及总结

XPath简介XPath是W3C的一个标准。它最主要的目的是为了在XML1.0或XML1.1文档节点树中定位节点所设计。目前有XPath1.0和XPath2.0两个版本。其中Xpath1.0是1999年成为W3C标准,而XPath2.0标准的确立是在2007年。W3C关于XPath的英文详细文档请见:http://www.w3.org/TR/xpath20/ 。XPath是一种表达式语言,它的返回值可能是节点,节点集合,原子值,以及节点和原子值的混合等。X...
如何使用XSLT的一个示范

如何使用XSLT的一个示范

写了个XSLT小示范,仅希望能给初学者一点参考价值。实例仅为了更多的应用到XSLT的各个元素去表现功能而并非最佳实践。在读这篇文章之前你应该就关于XSLT的基础概念有一些基本了解以及对XPath有比较熟练的掌握,因为XSLT是基于XPath去匹配需要应用的模板以及定位节点等。这篇文章不再赘述,在这篇实例中主要应用了以下一些常用的XSLT元素,如:<xsl:stylesheet>,<xsl:apply-templates>,<x...
Linux模块编程框架

Linux模块编程框架

Linux是单内核系统,可通用计算平台的外围设备是频繁变化的,不可能将所有的(包括将来即将出现的)设备的驱动程序都一次性编译进内核,为了解决这个问题,Linux提出了可加载内核模块(Loadable Kernel Module,LKM)的概念,允许一个设备驱动通过模块加载的方式,在内核运行起来之后"融入"内核,加载进内核的模块和本身就编译进内核的模块一模一样。一个程序在编译的地址的相对关系就已经确定了,运行的时候只是进行简单的偏移,为了使模块加载进内核后能...
Python中的字符串与字符编码详解

Python中的字符串与字符编码详解

本节内容:前言相关概念Python中的默认编码Python2与Python3中对字符串的支持字符编码转换一、前言Python中的字符编码是个老生常谈的话题,同行们都写过很多这方面的文章。有的人云亦云,也有的写得很深入。近日看到某知名培训机构的教学视频中再次谈及此问题,讲解的还是不尽人意,所以才想写这篇文字。一方面,梳理一下相关知识,另一方面,希望给其他人些许帮助。Python2的 默认编码 是ASCII,不能识别中文字符,需要显式指定字符编码;Python...
Python流程控制语句

Python流程控制语句

人们常说人生就是一个不断做选择题的过程:有的人没得选,只有一条路能走;有的人好一点,可以二选一;有些能力好或者家境好的人,可以有更多的选择;还有一些人在人生的迷茫期会在原地打转,找不到方向。对于相信有上帝的人来讲,这就好像是上帝事先为我们制定好了人生路线,也好像是那些神仙为唐曾师徒的取经之路提前设置的重重磨难,上帝和神仙掌控了一切。编程语言可以模拟人类生活的方方面面,程序员就像上帝和神仙一样可以通过编程语言中特殊的关键字控制程序的执行过程,这些关键字组成的...
Python中的运算符

Python中的运算符

说完常用的Python数据类型,再来说下运算符。运算符用于将各种类型的数据进行运算,让静态的数据跑起来。编程语言中的运算大致分为以下几个大类:算术运算, 用于加减乘除等数学运算赋值运算,用于接收运算符或方法调用返回的结果比较运算, 用于做大小或等值比较运算逻辑运算,用于做 与、或、非运算位运算, 用于二进制运算每种运算中所包含的符号称为相应的运算符,如 算术运算符、比较运算符等。一、算术运算运算(符)说明实例+两个对象相加2 + 3 结果为 5-两个对象相...
Python数据类型之“集合(Sets)与映射(Mapping)”

Python数据类型之“集合(Sets)与映射(Mapping)”

一、集合类型(Sets)集合对象是不同的(不可重复)hashable对象的无序集合。常见用法包括:成员关系测试、移除序列中的重复、以及科学计算,例如交集、并集、差分和对称差分。通俗点来说,集合是一个无序不重复元素的数据集,其基本功能是进行成员关系测试和消除重复元素。目前有两种内置的集合类型:set 和 frozenset。set类型是可变的--可以使用add() 和 remove()等方法更改其内容。由于它是可变的,它没有hash值,因此它不能被当做字典的...
Python数据类型之“文本序列(Text Sequence)”

Python数据类型之“文本序列(Text Sequence)”

Python中的文本序列类型Python中的文本数据由str对象或字符串进行处理。1.字符串字符串是Unicode码值的不可变序列。字符串字面量有多种形式:单引号:"允许嵌入"双"引号"双引号:"允许嵌入"单"引号"三引号:"""三个单引号""", """三个双引号"""说明:a) 三引号的字符串可以跨越多行,所关联的空格将包含在字符串文字中;b) 字符串也可以使用str构建函数从其他对象创建;c) 因为没有单独的“字符”类型,因此...
<< 1071 1072 1073 1074 1075 1076 1077 1078 1079 1080 >>