自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

yang_dk的专栏

小熊不去的动物园

  • 博客(39)
  • 收藏
  • 关注

原创 洁癖&吐槽

我是一个有代码洁癖的人

2016-09-24 17:41:47 401

原创 Makefile自动依赖所有需要的头文件

最近由于项目的一些变化,需要摒弃掉用IDE编译的方式,改为使用Makefile手动编译。有一个问题,折腾了好些时间,就是怎么处理自动依赖。我对完成这件事情有两个要求一是生成的.d .o文件必须独立存放,不要放在.c源文件的目录下,以免污染了source目录。二是.c会include的所有.h文件,如果有更新,此.c也必须要重新编译。最后选择了对.d文件进行二次改造来达到目的。

2015-04-21 11:13:45 2370

原创 太懒了

很多年没在CSDN写文章了,诸多原因,都是借口,不必多说。刚翻了一下之前的文章,虽然很多比较幼稚,但是确是记录了当时不断的在学习的具体过程。然而最近一篇居然是7年前写的,感情自从临近毕业出去实习开始,就没有更新过了,工作忙是我能想到的诸多借口之一,我真是太懒了

2015-04-21 10:15:33 499

原创 神奇的pthread_join

函数pthread_join用来等待一个线程的结束。函数原型为:   extern int pthread_join __P ((pthread_t __th, void**__thread_return));   第一个参数为被等待的线程标识符,第二个参数为一个用户定义的指针,它可以用来存储被等待线程的返回值。这个函数是一个线程阻塞的函数,调用它的函数将一直等待到被等待的线程结束为止,当函数返回

2008-06-03 12:11:00 4879 1

原创 使用信号实现线程同步

主要使用了sigwait与pthread_kill//------------------------------------------------// signaltest.c// 作者:yang_dk// // 子线程阻塞,等待信号,然后输出字符串// 主线程从键盘录入字符,给子线程发信号//------------------------------------

2008-05-30 19:48:00 1075 2

原创 Pthread使用手册

 #include 1、创建int pthread_create( pthread_t *tid, const pthread_attr_t *attr, void *(* func) (void *), void *arg );attr: 线程属性包括:优先级、初始栈大小,是否应该成为一个守护线程。缺省设置,NULL后面是线程要执行的函数和参数成功返回 02、等待一个给定线程终止int pthr

2008-05-23 09:31:00 4957

原创 linux-2.6.24.4内核移植到s3c2440----使用busybox-1.9.2制作根文件系统

  2.6.24.4内核移植到s3c2440----之使用busybox-1.9.2制作根文件系统 ---------------------------------------------------------------------------------------------------移植环境:主机:CentOS 5.1交叉编译器:arm-linux-gcc-3

2008-05-09 14:59:00 10875

原创 DM9000移植笔记

 在前面移植好内核和文件系统之后,开始考虑网卡的通信了。网上好多关于DM9000驱动的例子,大同小异,但是一律照搬都是不行,最多的只能发现设备,到最后还是ping不通,花费九牛二虎之力,终于还是弄好了。看到ping通其他主机,真是舒了一口气。 首先,移植驱动要做的这么几个事情1、 要让系统能检测到设备2、 初始化它3、 让驱动找到收发的接口,一般也就是中断/DMA(具体

2008-05-01 17:00:00 10989 11

原创 移植内核2.6.24.4到S3C2440

  百经周折,终于新内核启动了新的系统。多谢小卒的指导,还有这两篇文章的作者,给了我很多帮助。http://blog.chinaunix.net/u2/63560/showart_511924.htmlhttp://blog.csdn.net/hongjiujing/archive/2007/09/19/1790842.aspx很多工作还刚开始,先记录下来,别以后自己都忘了。

2008-04-17 14:06:00 12486 10

转载 Linux内核引导参数

1.“boot=”   此参数指明包含引导扇区的设备名(如:/dev/had),若此项忽略,则从当前的根分区中读取引导扇区。   2.“root=”   此参数告诉内核启动时以哪个设备作为根文件系统使用,其设定值为构造内核时根文件系统的设备名,可用的设备名有:   (1)/dev/hdaN~/dev/hddN:ST-506兼容硬盘,a到d上的N个分区   (2)/dev/sdaN~/dev/sde

2008-04-16 21:41:00 1116

转载 关于/etc/fstab

http://www.4oa.com/Article/html/5/379/383/2005/8602.htmlfstab中存放了与分区有关的重要信息,其中每一行为一个分区记录,每一行又可分为六个部份,下面以/dev/hda7 /ext2 defaults 1 1为例逐个说明: 1. 第一项是您想要mount的储存装置的实体位置,如hdb或如上例的/dev/hda7。 2.

2008-04-15 17:03:00 926

原创 移植Qtopia4到S3C2440

 准备工作:有arm-linux-gcc arm-linux-g++ ,并且环境变量的问题已经解决。就是可以直接在命令行使用这两个命令了。据说4.3.3起来之后触屏是反向的。用4.2.1的qmountlinxutp_qws.h和qmouselinuxtp_qws.cpp替代4.3.3./configure –embedded arm –prefix /tmp/qtopia –xpl

2008-04-14 10:43:00 3619

原创 centos使用光盘作为本地的yum源

在/etc/yum.repos.d/目录下,有两个文件 CentOS-Base.repo和CentOS-Media.repo其中CentOS-Base.repo记录着网络上的yum源的地址和路径信息等CentOS-Media.repo记录着可以从本地作为yum源的介质和路径。其中还有这样一个说明:# CentOS-Media.repo## This repo is used t

2008-03-31 12:11:00 3127

转载 linux下request_mem_region的粗略理解

 linux下request_mem_region的粗略理解文章来源:http://gliethttp.cublog.cn  Linux把基于I/O映射方式的I/O端口和基于内存映射方式的I/O端口资源统称为“I/O区域”(I/O Region)。I/O Region仍然是一种I/O资源,因此它仍然可以用resource结构类型来描述。  Linux是以一种倒置的树形结构来管理每一类I

2008-02-25 14:00:00 8394

转载 makefile中wildcard notdir patsubst的简单介绍

1、wildcard : 扩展通配符2、notdir : 去除路径3、patsubst :替换通配符例子:建立一个测试目录,在测试目录下建立一个名为sub的子目录$ mkdir test$ cd test$ mkdir sub在test下,建立a.c和b.c2个文件,在sub目录下,建立sa.c和sb.c2 个文件建立一个简单的makefilesrc=$(wildcard *.c ./

2008-02-24 20:02:00 21957 2

转载 Linux内核wait_queue深入分析

前几天在看驱动的时候碰到了等待队列,上网去搜了一下,再结合代码看了一下,深有体会.在 kernel 里,wait_queue 的应用很广,举凡 device driver,semaphore 等方面都会使用到 wait_queue 来 implement。所以,它算是 kernel 里蛮 基本的一个数据结构。首先,我们得明白,linux中的所有的进程都由task_struct这个结构管理。在生

2008-01-03 15:31:00 975

原创 算法擂台代码:时间表达

从同学处翻看《程序员》2007年12月刊,有个算法擂台比较有意思,试了着写了个代码。一看要求"解答提交时间,最好能早于当月15日",今天已20。加上懒得注释。就贴上来了,好久没写文章了也是。题目的要求:输入数字,输出相应的英文时间表达语句,当输入为0,0时结束退出样例输入:8 2112 455 00 300 0样例输出:it is twenty-one pass eight.it is a

2007-12-20 15:15:00 937

原创 ndoutils(ndo2db)安装难点

 1、ndoutils的编译当万事具备,开始要编译安装的时候,仍需要注意三点:1、要指明使用的数据库类型,数据库的lib库,数据库的头文件。./configure –enable-mysql --with-mysql-inc=… –with-mysql-lib=…2、编译时如出现类似于 ”xxxxxx ceil” 的错误,请在src下的Makefile中修改CFLAGS的值

2007-10-17 10:10:00 7922 3

原创 分布式nagios监控环境建立的详细步骤

 多个nagios+ndoutils+1个mysql环境的配置在单个nagios+ndoutils+mysql工作正常的情况下,分布式的环境搭建也就是配置的问题,不需要其它任何的软件或者工具。下面举一例说明: 环境: hostA:(192.168.1.2)         nagiosA + ndoutilsA+mysqlA            HostB:(192.16

2007-10-17 09:53:00 2018

原创 nagios配置难点

 1、设置Apache2服务器,让apache2启动时加载nagios       Nagios安装好之后,我们需要从浏览器去察看nagios的监控信息,否则如果直接去看nagios的log文件,人会疯掉的。       那么,如何才能从浏览器看到nagios的信息呢?这时需要用到apache2服务器,也就是基于apache2的基础上,通过浏览器去访问nagios的数据信息。   

2007-10-16 13:25:00 2644 1

原创 nagios,ndoutils简要安装步骤及分布式监控环境的建立

 1、nagios简要安装步骤(前提是Apache2服务器工作正常)a)        建立nagios用户及用户组b)        源码安装3步走(六条命令)c)        设置Apache2服务器d)        安装nagios插件(3步走)e)        重起apache2f)          添加授权用户及密码g)        配置Nagi

2007-10-16 13:16:00 1909

原创 注册表学习笔记

新买的机子,中关村装机时被"优化"了一下,结果右键的新建菜单被优化掉了。解决办法:(注意:修改之前请备份注册表)运行:regedit进入注册表编辑器进入[HKEY_CLASSES_ROOT/Directory/Background/shellex/ContextMenuHandlers/]发现"New"被优化掉了。在ContexMenuHandlers下新建一项,起名"

2007-09-14 13:01:00 703

转载 unicode扫盲

这几天学习和工作需要,接触unicode,发现一篇好文,共享原文出处:http://hi.baidu.com/bluewater163/blog/item/1bee0cade73d8b0b4b36d68b.htmlUnicode是一种字符编码规范 。  先从ASCII说起。ASCII是用来表示英文字符的一种编码规范,每个ASCII字符占用1个字节(8bits)   因此,ASCII

2007-09-12 17:57:00 674

原创 ndoutils简要安装步骤

 详细见安装目录的README首先安装nagios, nagios-plugin.然后安装ndoutils.安装包,需要的库, perl一定要预先安装或准备好。例如libmath, libdbd-mysql-perl, libmysql-dev(具体名字可能有错误,我记不太清楚了,可以用aptitude search 查找,缺什么装什么 )。按照NDOUTILS里的README文件进行。1..

2007-08-19 11:46:00 1508 3

原创 nagios学习笔记

    折腾了半个月,基本上对nagios有个入门级的了解。对于Nagios,很多人说它很复杂,当然他确实不是那么太容易理解,一是由于了解它的人不是很多,中文的文档也几乎没有,其他人在网上配置的文档自己拿来不一定好使。开始我也很郁闷,琢磨了一段时间之后,发现也是有路可寻的。要了解Nagios,最重要就是理解它的配置文件了,而最关键几个配置文件,如主配置文件nagios.cfg,hosts.

2007-08-11 03:39:00 1083

原创 嵌入式开发学习笔记(YL2440,一些需要注意的地方)

 1、 用Jtag烧写bootloader时,如果点击bat文件一闪而过,是因为没装驱动。2、 Bootloader中给lcd画图之前先Delay(10毫秒左右就行),否则整个bootloader死掉没法启动。目前还不知道为什么3、 Bootloader分区(分区0)中最后一些块用来存放bootloader的配置信息,重新烧写bootloader时需要erase掉,否则烧完之后起来还是

2007-08-07 18:18:00 1411 2

原创 debian下以光盘为apt源安装软件包

在debian下,用apt方式安装软件除了可以以网络上的资源为源之外,还可以使用本地的资源。下面我就以安装GCC的过程为例,说一下整个过程。平台:debian 4.0 图形界面资源:CD一张 debian-40r0-i386-CD-1.iso刻录的0,增加光盘源使用命令#apt-cdrom add系统会提示将你要添加为源的光盘放入光驱然后enter继续,就自动添加好了1,查看源列表

2007-07-24 15:12:00 10047

原创 qt4第二例:mini图片浏览器

很简单的一个图片浏览器,可以从打开按钮打开图片文件。上一张和下一张的功能还没实现。程序代码如下头文件:picbrowser.h/**//**        文件:picbrowser.h*        作者:yangdk*        Email:[email protected]*        主页:http://blog.csdn.net/yang_dk*/#ifndef _PI

2007-06-08 23:46:00 2057 4

原创 用java写一个复数类Complex

由于java库中没有提供复数的操作,应同学的需求,写了一个复数的类。有两个构造方法不带参数和带参数的,不带参数时默认实部虚部都为0。还有这些基本的方法,看名字就知道了。  public double getReal()      { return this.real; }  //得到实部 public double getImage()     { return this.img; }  //

2007-06-05 17:32:00 24966 1

原创 qt4第一例:mini计数器

不要qt designer,像写java程序一样,把控件一个一个写到界面上。刚开始来个简单的计数器。程序执行的结果如图:程序很简单,由三个源文件组成,分别是caculator.h,caculator.cpp,main.cpp代码如下: 1、caculator.h /**//**    文件:caculator.h*    作者:yangdk*    email:ji

2007-05-30 21:40:00 1047

转载 vmware的网络连接方式

1.bridge : 默认使用vmnet0 将虚拟机的ip设置与主机同网段未使用ip,其余与主机相同: 例如主机ip是10.70.54.31,设置虚拟机ip为10.70.54.22。netmask,broadcast,gateway,dns都与主机相同即可实现虚拟机主机 虚拟机互联网 通信。 2.nat : 默认使用vmnet8 将虚拟机设置成使用dhcp方式上网,windows下选择"自动获取i

2007-05-21 15:40:00 1187

原创 学习心得:嵌入式linux开发环境的建立

刚开始学习嵌入式的时候,周围没有人请教,幸好的是有一块板子,至少可以摸着石头过河。 在网上找了很多资料,看的很晕,没个人写的都不一样,针对不同的板子,也许方法各异,后来才发现都是殊途同归,即使有些微差异,也是大同。可是在初学者看来却很迷茫 ,至少我曾经经历过那样的迷茫。绝大多数的linux软件开发都是以native方式进行的,就是本机(host)开发,调试,本机运行的方式。但这种方式不适合于嵌

2007-05-21 15:18:00 11576 3

原创 对csdn的blog的一点抱怨

        一段时间以来都在忙着开发,编程,没怎么写文章,自开了这个blog以来还没写几篇文章。倒是在这里的朋友们那学习了不少。今天正好一个阶段刚完成,想认真地写点最近这段时间的心得。于是从晚饭后6点左右开始很热情地开始写,到现在两个小时了,有点累,想休息一下一会继续,于是点了一下左上角的保存按钮,结果......全没了!!!???我以为保存到什么地方了,结果到处找不到,也许是我没写标题或者什

2007-05-17 20:36:00 725

转载 Makefile规则及符号说明

 本文包括以下几个内容GNU make  makefile 基本结构 makefile 变量 GNU make 的主要预定义变量 隐含规则  运行 make 1  GNU make在大型的开发项目中,通常有几十到上百个的源文件,如果每次均手工键入 gcc 命令进行编译的话,则会非常不方便。因此,人们通常利用 make 工具来自动完成编译工作。这些工作包括:如果仅修改

2007-05-14 14:28:00 3551

转载 Linux 下串口通信的编程

 Linux 环境下串口通信的编程作者:david zhou原文地址:http://blog.tom.com/blog/read.php?bloggerid=611041&blogid=30021    串口设备无论是在工控领域,还是在嵌入式设备领域,应用都非常广泛。而串口编程也就显得必不可少。偶然的一次机会,需要使用串口,而且操作系统还要求是Linux,因此,趁着这次机会,综合别人的代码,进行了

2007-05-07 14:37:00 1389

原创 fc6下用KDevelop开发Qt4

fc6自带的是qt3.3.所以需要自己安装qt4,安装qt4和设置环境变量的过程见我的上一篇文章http://blog.csdn.net/yang_dk/archive/2007/04/23/1576486.aspx安装和设置好环境变量之后source /etc/profilesource /root/.bash_profile(有些可能需要重启机子)在终端输入echo $QTDIR如果出来的是/

2007-04-24 13:37:00 2289

原创 fc6下找不到Qt assistant的问题的解决方法

fc6默认安装了Kdevelop3.3.?和qt3.3.6,但是qt的assistant并没有安装,所以在敲入assistant之后并没有出来预想中的qt assistant,而是蹦出来一个错误说 /usr/share/doc/qt-devel-3.3.6/html/index.html 找不到因为assistant命令打开的是$QTDIR/bin下的assistant,assistant链接到/

2007-04-23 19:32:00 3637

转载 slickedit for linux手动破解方法

关于visual slickedit v11 linux trial版三句话破解一、slickedit/bin/vs文件中偏移量0x24DBF处,改成9个0x90(nop)二、slickedit/bin/vs文件中偏移量0x24DC8处,改成5个0x90(nop)三、slickedit/bin/vs文件中偏移量0x96E09处,0F 84 改成 90 E9 两句话破解visual

2007-04-20 13:37:00 2838

转载 Qt4,想说爱你不容易

出处:统一教学网 作者:tonylk 的 Blog       著名的QT库前一阵子升级到4.xx版本 了,我目前在开发的一个基于QT3的软件,由于受到QThread的各种困扰,因此打算尝试将代码升级到QT4,但是当我实际开始升级工作后,才发现 QT3和QT4的变化实在是太大了,最后导致我几乎修改了程序中的所有文件,幸好目前开发工作还只是开了个头,只修改了40多个类

2007-04-20 12:40:00 1171

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除