自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

好行者

探究...

  • 博客(53)
  • 资源 (6)
  • 收藏
  • 关注

转载 C\C++编程细节学习

~~~~~函数指针和指针函数区别~~~~~1 函数指针变量    在C语言中,一个函数总是占用一段连续的内存区,而函数名就是该函数所占内存区的首地址。我们可以把函数的这个首地址(或称入口地址)赋予一个指针变量,使该指针变量指向该函数。然后通过指针变量就可以找到并调用这个函数。我们把这种指向函数的指针变量称为“函数指针变量”。函数指针变量定义的一般形式为:类型说明符  (*指针变量名

2012-03-31 15:35:05 707

原创 屏蔽Qt的qWarning() qDebug()语句输出

1.屏蔽Qt的qWarning()语句输出在工程文件.pro文件中添加DEFINES += QT_NO_WARNING_OUTPUT2.屏蔽Qt的qDebug()语句输出在工程文件.pro文件中添加DEFINES += QT_NO_DEBUG_OUTPUT3.两个都屏蔽在工程文件.pro文件中添加DEFINES += QT_NO_WARNING_

2012-03-29 10:29:52 2659

原创 ubuntu安装cscope

cscope源码下载地址 http://cscope.sourceforge.net/$ tar -jxvf cscope-1.5.7a.tar.bz2$ cd cscope-1.5.7a.tar.bz2$ ./configure$ make$ sudo make install$ cscope --version(make install 时要用sudo权限,安装

2012-03-29 00:46:19 4339

原创 在Ubuntu下手动安装最新版 firefox 及 flash player

本文是参考清风博客的文章写的 http://www.billdeng.com/archives/409.html 。环境:Ubuntu 10.04一、安装最新版firefox系统自带的firefox版本是3.6的,目前最新版是11.0版。下载(选择linux中文版):http://www.mozilla.org/en-US/firefox/all.html下载后,解压得

2012-03-29 00:12:46 1385

转载 ubuntu右键添加打开终端

可能有很多人从Redhat等Linux发行版转到ubuntu上面来遇到的第一个最常用的问题就是,右键单击桌面,发现没有“打开终端”这个选项,下面介绍两种方法来在右键添加“打开终端”这个选项。第一种方法:安装一个包,即可在右键里面添加一个“打开终端”的菜单。sudo apt-get install nautilus-open-terminal第二种方法:进入主目录的.

2012-03-28 19:39:46 586

原创 在mini2440上移植QtEmbedded遇到的问题

1.移植完成执行程序出现的经典的Segmentation fault问题        此错误其实是图形缓冲区linuxfb的问题(http://blog.163.com/luoyi07040125@126/blog/static/832084512010112594719899/),两种解决方法:1)修改qt-embedded-linux-opensource-src-4.5.0/s

2012-03-26 11:52:13 1321

原创 linux 关机 重启 注销 中断 命令

(1)关机命令 shutdown/haltA. shutdown   1) $ shutdown –help \ man shutdown  查看shutdown命令如何使用  2) $ sudo shutdown -h now  现在立即关机  3) $ sudo shutdown -r now  现在立即重启  4) $ sudo shutdown

2012-03-19 18:42:44 1929

转载 C/C++中调用SQLITE3

C/C++中调用SQLITE3的基本步骤Sqlite 是一个面向嵌入式系统的数据库,编译完成只有200K,同时支持2T的数据记录。对于嵌入式设备是一个很好的数据库引擎。本文通过一个小例子说明如何在C 与C++调用Sqlite API完成数据库的创建、插入数据与查询数据。本文的开发环境为(Redhat9.0 + Qtopia2.1.2 + Sqlite3)安装Sqli

2012-03-19 13:18:04 1309

原创 ucosII学习笔记-1

内核结构学习                    一.临界段(Critical Sections)。    代码的临界段也称为临界区。程序执行到临界区时,不允许有中断进入,因此在进入临界区前要关中断,执行完临界区马上开中断。    μC/OS-Ⅱ中的这两个宏调用分别是:OS_ENTER_CRITICAL()和OS_EXIT_CRITICAL()。因为这两个宏的定义取决于所用的微处理器

2012-03-19 12:54:12 571

原创 收集的文章

博客二篇——从图像到视频:http://blog.csdn.net/Sasoritattoo/archive/2011/03/05/6225570.aspx ACL文章Linux的Netfilter框架深度思考-对比Cisco的ACL-  http://blog.csdn.net/dog250/article/details/6572779

2012-03-19 12:52:37 325

转载 ASCII码表

ASCII码表信息在计算机上是用二进制表示的,这种表示法让人理解就很困难。因此计算机上都配有输入和输出设备,这些设备的主要目的就是,以一种人类可阅读的形式将信息在这些设备上显示出来供人阅读理解。为保证人类和设备,设备和计算机之间能进行正确的信息交换,人们编制的统一的信息交换代码,这就是ASCII码表,它的全称是“美国信息交换标准代码”。 八进制

2012-03-19 12:52:09 604

转载 51单片机的data,xdata,code区别详解

dATa: 固定指前面0x00-0x7f的128个RAM,可以用acc直接读写的,速度最快,生成的代码也最小。idATa:固定指前面0x00-0xff的256个RAM,其中前128和dATa的128完全相同,只是因为访问的方式不同。idATa是用类似C中的指针方式访问的。汇编中的语句为:mox ACC,@Rx.(不重要的补充:c中idATa做指针式的访问效果很好)xdATa:

2012-03-19 12:51:16 31641

转载 H-JTAG + Keil uVsion4调试ARM

ARM的调试可以用Keil+H-Jetag调试,刚开始时不知道怎么设置H-Jetag,在网上查了一下,被人误导了,根据别人的说法,手动修改Keil的tool.ini文件,让我忙了两天,就是搞不定,并且网上到处都是这种做法,以下内容摘自H-JETAG用户手册,适用于uVsion4:KEIL 的配置KEIL FOR ARM 是KEIL 公司开发的IDE。下面将介绍如何配置KEIL FOR

2012-03-19 12:50:31 2571 1

转载 SQLite3命令简要说明(官方翻译)

官方原文地址:http://www.sqlite.org/sqlite.html        SQLite库包含一个名字叫做sqlite3的命令行,它可以让用户手工输入并执行面向SQLite数据库的SQL命令。本文档提供一个样使用sqlite3的简要说明。 开始        启动sqlite3程序,仅仅需要敲入带有SQLite数据库名字的"sqlite3"命令即可。如果文件不存在,

2012-03-19 12:48:44 692

转载 安装使用数据库系统Sqlite3

安装使用数据库系统Sqlite3安装数据库系统Sqlite3:apt-get install sqlite sqlite3检查数据库安装结果:sqlite3 test.db.database.exit提供下面的命令我们应该可以看到文件test.db。ls安装Sqlite3编译需要的工具包:apt-get install libsqlite

2012-03-19 12:23:10 777

转载 sqlite3简单教程整理

一、Ubuntu下安装sqlite31.介绍:sqlite3是linux上的小巧的数据库,一个文件就是一个数据库。2.安装:  要安装sqlite3,可以在终端提示符后运行下列命令:  sudo apt-get install sqlite3  检查版本  sqlite3 -version3.测试  当前目录下建立test.db测试数据库文件  sqlite

2012-03-19 12:08:07 9021

原创 Qt中的多线程编程

Qt中的多线程编程1、系统对多线程编程的支持2、Qt中的线程类3、用户自定义事件在多线程编程中的应用4、利用定时器机制实现多线程编程https://www.ibm.com/developerworks/cn/linux/l-qt-mthrd/

2012-03-19 12:06:57 609

转载 linux设备模型之uart驱动架构分析

一:前言接着前面的终端控制台分析,接下来分析serial的驱动.在linux中,serial也对应着终端,通常被称为串口终端.在shell上,我们看到的/dev/ttyS*就是串口终端所对应的设备节点.在分析具体的serial驱动之前.有必要先分析uart驱动架构.uart是Universal Asynchronous Receiver and Transmitter的缩写.翻译成

2012-03-19 12:05:18 1828

原创 qtopia-2.2.0在linux上的安装(基于mini2440)

时间:2011-10-26环境:fedora9、ubuntu10.04x86-qtopia、arm-qtopiagcc-4.3.x、g++-4.3.xarm-linux-4.3.2 一、x86-qtopia的安装    x86-qtopia的安装不管在哪一版本中的linux中,必须采用gcc-4.3.x、g++-4.3

2012-03-18 10:05:15 1369 1

转载 史上最经典的Linux内核学习方法论

内核文档  内核代码中包含有大量的文档,这些文档对于学习理解内核有着不可估量的价值,记住,在任何时候,它们在我们心目中的地位都应该高于那些各式的内核参考书。下面是一些内核新人所应该阅读的文档。  README  这个文件首先简单介绍了Linux内核的背景,然后描述了如何配置和编译内核,最后还告诉我们出现问题时应该怎么办。  Documentation/Changes

2012-03-18 09:57:08 842

转载 mini2440的 linux内核移植

mini2440的Linux内核移植参考网上的资料将linux-2.6.30.5的内核移植到了mini2440开发板,现把移植过程整理下来备忘。电脑主机系统:Ubuntu 9.04 mini2440开发板bootloader:supervivi交叉编译器使用友善之臂提供的符合EABI标准的交叉编译器 arm-linux-gcc-4.3.2

2012-03-18 09:56:38 3378

转载 yaffs2 移植到mini2440上出现的编译错误

linux内核版本:2.6.36.1OS:ubuntu 10.4开发板:友善mini2440bootloader: supervivi在输入make zImage后,出现如下错误:fs/yaffs2/yaffs_fs.c:310: warning: initialization from incompatible pointer typefs/yaffs

2012-03-18 09:54:09 3717

转载 yaffs2文件系统移植

1、Linux2.6.37下移植yaffs文件系统原始的linux内核是不支持Yaffs2文件系统的,我们首先需要下载yaffs2的内核补丁,给内核打上yaff2补丁才能使内核支持该文件系统。yaffs2 老版本不支持2.6.36以上内核。 网上下载的yaffs2常见版本(点击http://www.aleph1.co.uk/cgi-bin/viewcvs.cgi/下方的Do

2012-03-18 09:53:03 8629

转载 信号量sem_t,互斥锁pthread_mutex_t的使用

信号量的数据类型为结构sem_t,它本质上是一个长整型的数。------函数sem_init()用来初始化一个信号量。       它的原型为: extern int sem_init __P ((sem_t *__sem, int __pshared, unsigned int __value));sem为指向信号量结构的一个指针;pshare

2012-03-18 09:48:55 2307

转载 Linux下C++类的线程函数

最近在用C++编写一个RTSP的客户端,由于要用到线程,根据C编程的经验,写了如下代码:class LiRtspSession{    public:       void* MainThreadFunc(void* pvData);       void* AudioProcThreadFunc(void* pvData);       void Connect();

2012-03-18 09:47:26 982

原创 Linux编程注意问题

时间:2011-06-13一、线程为什么gcc编译通过, g++编译失败?实例如下:#include stdio.h>#include stdlib.h>#include pthread.h>void thread(void){    int i;    for(i=0;i3;i++)     printf("This is a

2012-03-18 09:47:01 790

转载 Linux信号量

Linux下的进程通信(IPC) POSIX无名信号量 System V信号量 System V消息队列 System V共享内存 1。POSIX无名信号量 如果你学习过操作系统,那么肯定熟悉PV操作了.PV操作是原子 操作.也就是操作是不可以中断的,在一定的时间内,只能够有一个进程的代码在CPU上面 执行.在系统当中,有时候为了顺利的使用和保护共享资源,大家提

2012-03-18 09:44:02 3039

转载 Linux进程控制

一、linux进程控制-fork()二、linux进程控制-wait()三、linux进程控制-exit()四、linux进程控制-exec系列  一、linux进程控制-fork()进程配置有唯一的进程控制块PCB,由proc结构和usr结构组成。下面依次介绍进程相关的系统调用:1:fork()函数          创建一个子进程

2012-03-18 09:39:20 2584

原创 Linux网络编程

时间:2011-05-03Linux socket 编程,第一部分了解 IP 网络和网络层使用 C 编写客户机应用程序使用 C 编写服务器应用程序使用 Python 编写套接字应用程序http://www.ibm.com/developerworks/cn/education/linux/l-sock/index.html Linux socket 编程,第二部

2012-03-18 09:38:28 487

原创 Linux多线程

时间:2011-05-03Posix线程编程指南(1)线程创建线程取消http://www.ibm.com/developerworks/cn/linux/thread/posix_threadapi/part1/ Posix线程编程指南(2)概念及作用创建和注销访问使用范例https://www.ibm.com/developerworks/cn/

2012-03-18 09:37:47 440

原创 Linux环境进程间通信

时间:2011-05-03                              Linux环境进程间通信 Linux环境进程间通信(一)——管道及有名管道1、 管道概述及相关API应用2、 有名管道概述及相关API应用http://www.ibm.com/developerworks/cn/linux/l-ipc/part1/ Linux环境进程间通信(二):

2012-03-18 09:37:06 443

原创 Linux串口编程

时间:2011-05-03Linux下串口编程入门串口简介串口操作打开串口设置串口读写串口关闭串口例子http://www.ibm.com/developerworks/cn/linux/l-serials/index.html  Linux串口上网的简单实现Linux简单串口上网原理Linux串口上网设备加载和注销形式编写字符设备驱动程序编写伪网络设备

2012-03-18 09:36:23 469

转载 共享内存的管理-注意信号SIGSEGV和SIGBUS(修改)

涉及共享内存的管理就不能不提到访问共享内存对象。谈到访问共享内存对象就要留神“SIGSEGV和SIGBUS”这两个信号。系统分配内存页来承载内存映射区,由于内存页大小是固定的,所以存在多余的页空间空闲,比如待映射文件大小为5000 bytes,内存映射区大小也为5000 bytes。而一个内存页大小4096,系统势必要分配两页来承载,这时空闲的有效空间为从5000-8191,如果进程访问这段地

2012-03-18 09:29:02 667

转载 Linux 进程通信 内存映射技术

Linux 进程通信 内存映射技术 共享内存可以说是最有用的进程间通信方式,也是最快的IPC形式。两个不同进程A、B共享内存的意思是,同一块物理内存被映射到进程A、B各自的进程地址空间。进程A可以即时看到进程B对共享内存中数据的更新,反之亦然。由于多个进程共享同一块内存区域,必然需要某种同步机制,互斥锁和信号量都可以。采用共享内存通信的一个显而易见的好处是效率高,因

2012-03-18 09:28:30 565

转载 进程创建:exec 和 exit 问题

exec(2) 和 exit(2) 系统调用的工作方式与这些函数在单线程进程中的工作方式相同,但以下情况例外。在多线程应用程序中,这些函数将销毁地址空间中的所有线程。销毁所有执行资源和所有活动线程之前,这两个调用将阻塞。exec() 重新生成进程时,exec() 将创建单个轻量进程 (lightweight process, LWP)。进程启动代码将生成初始线程。通常,如果初始

2012-03-17 11:29:00 789

转载 什么是系统调用

定义:linux内核中设置了一组用于实现系统功能的子程序,成为系统调用。系统调用和普通库函数调用非常相似,只是系统调用由操作系统核心提供,运行于核心态,而普通的函数调用由函数库或用户自己提供,运行于用户态。如何工作:一般的,进程是不能访问内核的。它不能访问内核所占内存空间也不能调用内核函数。CPU硬件决定了这些(这就是为什么它被称作"保护模式")。系统调用是这些规则的一个例外。其原

2012-03-17 11:28:27 641

原创 Linux 压缩包、解压缩包

时间:2012-03-14压缩包工具安装:1.压缩包:.tar :           tar -cvf  xxx.tar  xxx.gz :             gzip xxx.tar.gz\.tgz : tar -cvzf xxx.tar.gz xxx \ tar -cvzf xxx.tgz xxx.bz

2012-03-17 11:24:18 598

原创 Linux网络相关配置(IP配置\DNS配置等)

时间:2012-03-14 一、使用配置命令(即时生效,重启失效)(1)配置IPlinux$ sudo ifconfig eth0 192.168.2.30 netmask 255.255.255.0 up说明:eth0                 第一个网卡,其他依次为eth1,ethx192.168.2.30 IP地址netmask 255.255.255.

2012-03-17 11:22:50 676

原创 安装更改gcc或g++版本

时间:2012-03-14以gcc-4.3和g++-4.3为例:sudo apt-get install gcc-4.3 g++-4.3之后进入/usr/bin:cd /usr/bin先删除和gcc4.4关联的gcc:sudo rm gccsudo rm g++再建个软连接sudo ln -s gcc-4.3 gccsud

2012-03-17 11:21:59 1480

原创 双Linux虚拟机串口通信

\\.\pipe\com_1    (server、client)两边:stty ispeed 115200 ospeed 115200 -F /dev/ttyS1      server: cat /dev/ttyS1      client: echo hello world > /dev/ttyS1

2012-03-17 11:21:02 1268

端到端QoS网络设计

一本绝版QoS相关的PDF书,端到端QoS网络设计。

2013-06-19

android基础教程和源码

android基础教程和源码

2012-03-17

html5简明教程

html5简明教程。。感兴趣的可以下来看看

2012-03-17

Android开发教程

Android开发教程。。感兴趣的可以下来看看

2012-03-17

android中文教程

android中文教程

2012-03-17

Linux常用C函数

Linux常用C函数

2012-03-17

空空如也

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

TA关注的人

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