自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(59)
  • 资源 (13)
  • 收藏
  • 关注

转载 自动变量的潜在问题

关于C语言自动变量的一个基本规则是:声明自动变量的函数已经返回后,不能再引用这些自动变量。 下面就此问题进行测试。 测试环境:     编译器:GCC 4.2.4     OS:Ubuntu 8.04 LTS 首先编写一个简单的C程序,暂且命名为test_auto_val.c。 [cpp] view plaincopyprint?#inc

2013-03-03 16:53:14 601

转载 setjmp和longjmp 再议

setjmp和longjmp是C语言独有的,只有将它们结合起来使用,才能达到程序控制流有效转移的目的,按照程序员的预先设计的意图,去实现对程序中可能出现的异常进行集中处理。先来看一下这两个函数的定义吧:setjmp和longjmp的函数原型在setjmp.h中函数原型:int setjmp(jmp_buf envbuf);setjmp函数用缓冲区envbuf保存系统堆栈的内容,

2013-03-03 15:58:17 349

转载 进程及其进程环境

6.1.1  基本概念程序是保存在磁盘上的可执行代码和数据的映像. 进程是正在运行的程序. 一个程序可以同时有多个进程实例, 它们互相没有关系.6.1.2  main 函数main 函数 C/C++ 程序的入口函数, 但并不是进程真正开始执行的地方. main 函数的参数包括命令行参数个数以及参数数组.====================================

2013-03-03 15:11:38 1237

原创 Google App Engine Launcher无法启动问题解决

今天在启动Google App Engine Launcher的时候它提示以下内容See the logfile GoolgleAppEngineLauncher.exe.log for details打开错误日志文件GoolgleAppEngineLauncher.exe.log发现其内容为Traceback (most recent call last):

2012-12-01 20:14:32 3076

转载 HOG特征

HOG即histogram of oriented gradient, 是用于目标检测的特征描述子,该技术将图像局部出现的方向梯度次数进行计数,该方法和边缘方向直方图、scale-invariant feature transform类似,不同的是hog的计算基于一致空间的密度矩阵来提高准确率。Navneet Dalal and Bill Triggs首先在05年的CVPR中提出HOG,用

2012-11-12 20:11:28 586

原创 linux内核中断和时钟初步整理及其问题解答

Linux的中断和时钟对于linux学习中,一般是中断和时钟一起学习。在linux内核中,时钟的处理也是采用中断的方式,内核软件的定时也是最终要依赖于时钟,时钟要依赖于中断,所以中断是首先要学习的。中断服务程序的执行是不需要存在于进程上下文的,所以这也要求中断是越短越好,也就是说我们不希望打扰原来的程序很长时间, 要尽快返回刚才的中断位置继续执行原来的程序。中断源分类是很多的:1 可屏

2012-11-11 21:45:20 748

转载 linux 内核定时器编程

1.linux内核定时器基本结构和函数1)struct timer_list 一个struct timer_list对应了一个定时器。#include 以下列出常用的接口:struct timer_list  {   /*....*/   unsigned long expires;//定时器服务函数开始执行时间   void (*function)(unsigne

2012-11-09 11:00:48 930

转载 u-boot主要的数据结构

u-boot的主要功能是用于引导OS的,但是本身也提供许多强大的功能,可以通过输入命令行来完成许多操作。所以它本身也是一个很完备的系统。u-boot的大部分操作都是围绕它自身的数据结构,这些数据结构是通用的,但是不同的板子初始化这些数据就不一样了。所以u-boot的通用代码是依赖于这些重要的数据结构的。这里说的数据结构其实就是一些全局变量。 1)gd 全局数据变量指针,它保存了u-boot运行

2012-10-15 20:20:23 1031

原创 JPEG 编解码器 霍夫曼编码

arm11中的JPEG 编解码器霍夫曼编码是一种被广泛应用而且非常有效的数据压缩技术,根据待压缩数据的特征,一个可压缩掉20%~90%。这里考虑的数据指的是字符串序列。要理解霍夫曼编码,先要理解霍夫曼树,即最优二叉树,是一类带权路径长度最短的树。路径是指从树中一个结点到另一个结点之间的通路,路径上的分支数目称为路径长度。树的路径长度是从树根到每一个叶子之间的路径长度

2012-10-12 16:08:07 2786

转载 S3C2440的中断寄存器

S3C2440的中断寄存器:1.中断分两大类:内部中断和外部中断。2.外部中断。24个外部中断占用GPF0-GPF7(EINT0-EINT7),GPG0-GPG15(EINT8-EINT23)。用这些脚做中断输入,则必须配置引脚为中断,并且不要上拉。具体参考datesheet数据手册。寄存器:EXTINT0-EXTINT2:三个寄存器设定EINT0-EINT23的触发方式。

2012-10-11 20:40:48 468

转载 U-boot start.s 详解(转自搜狐微博)

说明:1、红色为汇编命令;棕色为gnu汇编命令;蓝色为寄存器;黑色为变量、常量、数字等;绿色为注释。2、部分比较繁琐的注释用白色标出。.globl _start      @将_start声明为“全局变量”,且可以被外部引用。globl: makes the symbol visible to ld,在别的程序中出现:ldr   pc._star时,程序将跳转到这个地方执行

2012-10-11 16:14:40 1445

原创 浮点数比较

我们都知道在C++数与数的比较我们都知道用==,!==等等方法,但在浮点数比较中刚可有行用这种,首先,浮点数在计算机当中是以二进制的方式表达的,所以无法表达其精度,其次计算机浮点数的精度float类型下,只有七位,在进行浮点运算的时候,这个精度往往会导致运算的结果和实际期望的结果之间有误差。。。这样我们会自然而然想到fabs(a-b)>epsilon这个方法,但它也不稳妥,首先,epsli

2012-10-09 16:22:27 415

转载 this module

结构体struct module在内核中代表一个内核模块,通过insmod(实际执行init_module系统调用)把自己编写的内核模块插入内核时,模块便与一个struct module结构体相关联,并成为内核的一部分。下面是结构体struct module的完整定义,接下来会逐个解释:struct module{enum module_state state;struct lis

2012-10-07 21:44:02 440

转载 我理解的逻辑地址、线性地址、物理地址和虚拟地址

本贴涉及的硬件平台是X86,如果是其它平台,嘻嘻,不保证能一一对号入座,但是举一反三,我想是完全可行的。一、概念物理地址(physical address)用于内存芯片级的单元寻址,与处理器和CPU连接的地址总线相对应。——这个概念应该是这几个概念中最好理解的一个,但是值得一提的是,虽然可以直接把物理地址理解成插在机器上那根内存本身,把内存看成一个从0字节一直到最大空量逐字

2012-10-07 11:14:26 394

转载 Linux_信号量使用实例详解

实例篇:1.定义带有设备并发控制方案的结构体(诸如信号量,自旋锁等,反正前边那么多了)我是一名高手,告诉大家一个高手的习惯,就是喜欢也习惯把将某设备所使用的自旋锁,信号量等辅助手段也放到设备结构体中,就像下边这样:struct csyncontrol_dev{    struct cdev cdev;//cdev结构体    unsigned char mem[CSYNCONT

2012-10-03 17:05:11 1077 1

转载 poll和select

转自:http://blog.csdn.net/nailding2/article/details/68581991 等待队列实现原理1.1 功能介绍进程有多种状态,当进程做好准备后,它就处于就绪状态(TASK_RUNNING),放入运行队列,等待内核调度器来调度。当然,同一时刻可能有多个进程进入就绪状态,但是却可能只有1个CPU是空闲的,所以最后能不能在CPU上运

2012-09-17 21:30:47 579

转载 linux 内核地址空间和进程地址空间

内核地址空间分布直接映射区:线性空间中从3G开始最大896M的区间,为直接内存映射区,该区域的线性地址和物理地址存在线性转换关系:线性地址=3G+物理地址。动态内存映射区:该区域由内核函数vmalloc来分配,特点是:线性空间连续,但是对应的物理空间不一定连续。vmalloc分配的线性地址所对应的物理页可能处于低端内存,也可能处于高端内存。永久内存映射区:该区域可访问高端内存。

2012-09-05 11:17:33 408

原创 linux 内核升级 centos

因为开需要编译2.6.38的uboot,奈何自己的linux 是内核版本太低,编译uboot经常出错,于是想自己升级下内核,内核升级一直想做,但是一直没成功,忙活两天,查找很多资料,出了很多错误,终于升级成功,相信以后遇到此类问题就很好解决了,手动操作10分钟差不多了。自己的是centos5.5版本的,vm。编译内核其实很简单,不过在Fedora里面(其实Ubuntu也一样),如果安装了官

2012-09-02 11:10:13 623

原创 Linux 文件属性

1、 Linux 文件属性概说;Linux 文件或目录的属性主要包括:文件或目录的节点、种类、权限模式、链接数量、所归属的用户和用户组、最近访问或修改的时间等内容;[root@localhost ~]# ls -lih总计 104K2408949 -rwxr-xr-x 1 root root    7 04-21 12:47 lsfile.sh2408830 d

2012-08-31 10:43:37 461

转载 操作系统中PV操作

操作系统的进程管理中,PV是重点和难点。信号量:信号量是个数据结构。struct semaphore{int value;pcb *blockqueue;}mutex;其中value是信号量的值;blockqueue是等待使用该信号量的进程排成的队列的对手指针。p操作:当一个进程对信号量mutex执行p操作时,执行两个动作:mutex.valu–;        //申请一个资

2012-08-27 16:35:05 1633

原创 ADS1.2的卸载重新安装不上的问题

ARM ADS1.2 卸载后重装,但是总是在 modify repair remove界面,无法正常安装。解决方法:删除安装目录,删除注册表HKEY_CURRENT_USER\SOFTWARE\ARM Limited\ARM Developer SuiteHKEY_LOCAL_MACHINE\SOFTWARE\ARM Limited\ARM Developer Suite然后HKEY_LOCAL_

2012-08-26 09:50:24 3795

转载 mcc、mbuild和mex命令详解 (dynamic )

好多学习Matlab扩展编程的人经常把这几个命令给搞混淆的,下面我就给大家仔细讲讲,希望呢给大家讲明白!先简单的说说mcc、mbuild和mex到底怎么回事:mcc将M文件转换成C/C++文件和相应的MEX包裹文件(需要Matlab编辑器),但在特定条件下可以自动调用mbuild或者mexmex将C/C++文件(入口函数为mexfunction())编译成MEX(DLL

2012-08-24 09:55:38 2124

转载 fotk的陷阱

根据pathname指定的文件(或目录)名称,以及proj_id参数指定的数字,ftok函数为IPC对象生成一个唯一性的键值。在实际应用中,很容易产生的一个理解是,在proj_id相同的情况下,只要文件(或目录)名称不变,就可以确保ftok返回始终一致的键值。然而,这个理解并非完全正确,有可能给应用开发埋下很隐晦的陷阱。因为ftok的实现存在这样的风险,即在访问同一共享内存的多个进程先后调用fto

2012-08-23 16:21:29 10020

转载 exit()和_exit()函数

进程就好比人一样有其生命,我们通过fork()函数来创建一个进程,那么我们又是如何来中止进程呢。进程退出 1.在Linux中任何让一个进程退出 进程退出表示进程即将结束。在Linux中进程退出分为了正常退出和异常退出两种。1>正常退出 a. 在main()函数中执行return 。 b.调用exit()函数 c.调用_exit

2012-08-19 19:40:28 361

转载 red hat 5.5 U盘安装

1、下载redhat下载地址:ed2k://|file|%5B%E7%BA%A2%E5%B8%BDLinux.5.5.for.x86.%E6%9C%8D%E5%8A%A1%E5%99%A8%E7%89%88%5D.rhel-server-5.5-i386-dvd.iso|3111600128|c31ef40064e8ad1a1f59078c39a4bbda|h=7dktorhoclc3vxgs

2012-08-13 19:58:45 1496

转载 RHEL5.5安装Yum笔记

经常使用CentOS,已经很习惯它自带的yum,由于工作需要用到rhel(Red Hat Enterprise Linux),尽管CentOS和rhel具有同样的内核,但rhel默认并不支持(YUM是RedHat Linux在线安装更新及软件的工具,但是这是RHEL5的收费功能,如果没有购买Redhat的服务时不能使用RHEL5的更新源的,会提示注册)。由于CentOS是从Redhat演化而来

2012-08-13 14:29:33 2922

原创 static 静态全局变量 按照实型关键字成员有序的结构体数组的对分查找

在查看“按照实型关键字成员有序的结构体数组的对分查找”的算法时候,在VS上调试一下,发现很多错误。  int rbkey(p,n,a,b,m)  int n,*m;  BISERCH *p[];  double  a,b;  { int i,j,k;    i=1; j=n;    while (i      { k=(i+j)/2;        if (((

2012-08-12 09:37:51 1664

转载 tchar.h

Visual C++支持多字节字符集 (MBCS)多字节字符集 (MBCS) 是一种替代 Unicode 以支持无法用单字节表示的字符集(如日文和中文)的方法。为国际市场编程时应考虑使用 Unicode 或 MBCS,或使程序能够通过更改开关来生成支持两种字符集之一的程序。最常见的 MBCS 实现是双字节字符集 (DBCS)。一般来说,Visual C++(尤其是 MFC)完全支持 D

2012-08-11 19:34:41 1059

原创 arm-linux-gcc安装

以前都是用实验室电脑,今天自己在笔记本上安装了天嵌科技ARM开发板的交叉编绎器,随手记下安装过程,其中有一些设置,虽说比较简单,但对于新手来说可能也有一些难度,下面就详细说一下安装过程,顺便自己备案一下。准备:EABI-4.3.3_EmbedSky_20100610.tar压编包,我是用的开发板配套光盘自己带的,网上也有下载,官方名全称arm-linux-gcc。1:进入/opt/在名令提

2012-08-09 20:32:40 592

原创 堆算法排序 结构定义 link2005

昨天晚上在演算编译堆排序法对结构体一维数组进行关键字排序时候,遇到一些问题,把这些问题总结在这里,以待参考:1 堆排序法:堆排序法,就是通过堆这种数据结构来实现排序,算法复杂度为O(nlogn)。堆是一种完全二叉树且所有的父节点均大于(或小于)其子节点。堆排序就是将所有待排序的元素组成一个堆,然后不断弹出堆顶的元素并调用函数维持堆序,直到所有元素均被弹出后,排序完成。被弹出的元素序列即

2012-08-08 10:43:19 698

原创 计算字符个数

#includeint main(){    long nc;    nc = 0;    while(getchar() != '0')        {            ++nc;        }    printf("%ld\n", nc);}很简答的程序

2012-08-05 22:03:12 431 1

原创 浅拷贝和深拷贝

浅拷贝就比如像引用类型,而深拷贝就比如值类型。  浅拷贝是指源对象与拷贝对象共用一份实体,仅仅是引用的变量不同(名称不同)。对其中任何一个对象的改动都会影响另外一个对象。举个例子,一个人一开始叫张三,后来改名叫李四了,可是还是同一个人,不管是张三缺胳膊少腿还是李四缺胳膊少腿,都是这个人倒霉。深拷贝是指源对象与拷贝对象互相独立,其中任何一个对象的改动都不会对另外一个对象造成影响。举个例子,一

2012-08-05 10:53:06 1335

转载 C语言小秘密之断言

每次写摘要我都觉得是一件很头疼的事儿,因为我知道摘要真的很重要,它几乎直接就决定了读者的数量。可能花了九六二虎之力写出来的东西,因为摘要的失败而前功尽弃,因为绝大多数的读者看文章之前都会浏览下摘要,如果他们发现摘要“不对口”,没有什么特色和吸引人的地方,那么轻则采用一目十行的方法看完全文,重则对文章判“死刑”,一篇文章的好坏虽然不能用摘要来衡量,但是它却常常被读者用来衡量一篇文章的好坏,从而成为了

2012-08-05 10:33:38 365

转载 vector C++ 详细用法

vector是C++标准模板库中的部分内容,它是一个多功能的,能够操作多种数据结构和算法的模板类和函数库。vector之所以被认为是一个容器,是因为它能够像容器一样存放各种类型的对象,简单地说,vector是一个能够存放任意类型的动态数组,能够增加和压缩数据。  为了可以使用vector,必须在你的头文件中包含下面的代码:  #include   vector属于std命名

2012-08-04 19:52:17 232

转载 Linux 共享库: LD_LIBRARY_PATH 与ld.so.conf

Linux 运行的时候,是如何管理共享库(*.so)的?在 Linux 下面,共享库的寻找和加载是由 /lib/ld.so 实现的。 ld.so 在标准路经(/lib, /usr/lib) 中寻找应用程序用到的共享库。但是,如果需要用到的共享库在非标准路经,ld.so 怎么找到它呢?目前,Linux 通用的做法是将非标准路经加入 /etc/ld.so.conf,然后运行 ldcon

2012-08-04 15:42:16 421

转载 [性能优化] 【技术扫盲】剖析安卓软件的安装位置(小米论坛)

在这里我对原帖的内容做以下两点补充:一、安卓手机的RAM、ROM、SD卡到底相当于电脑的什么?上面的作者也说了,RAM、ROM、SD卡是不同的存储器。如果非要做比较的话应该是这样的:手机的RAM   电脑的内存条手机的ROM   电脑的硬盘手机的SD卡   电脑的外置USB存储器(比如U盘、移动硬盘之类)这样比较应该很容易理解为什么说ROM读写速度一定比SD卡快了吧。%

2012-07-25 18:30:38 1617

原创 vs2010环境下提示找不到d3dx9.h,及其“dxerr.lib”。

这俩天学校大修土木,科技楼光纤被铲断,实验室断网,很久没更新博客。不过昨天晚上承蒙学校打开校园无线。上午帮一小妹妹整个程序,程序内容不大了解,主要是做仿真用的。但是遇到些问题,在这里记录下,留待日后查看,学习。 运行程序提示,无法打开d3dx9.h,我们知道d3dx9.h是在DirectX  SDK中的,我们只是需要下载下来就可以了。安装完之后,设置好路径,提示无法找到dxerr.lib.

2012-07-24 15:37:09 16816 1

转载 无线mesh网络(多跳(multi-hop)网络)

无线mesh网络,由mesh routers(路由器)和mesh clients(客户端)组成,其中mesh routers构成骨干网络,并和有线的internet网相连接,负责为mesh clients提供多跳的无线internet连接。  无线Mesh网络(无线网状网络)也称为“多跳(multi-hop)”网络,它是一种与传统无线网络完全不同的新型无线网络技术。   在传统的无线局域网

2012-07-16 09:10:52 17193

原创 随笔 数据对其 active插件 绚丽

http://www.cnblogs.com/hardcandy/archive/2011/08/08/2131377.html       一不小心看见这篇文章,界面感觉干净,但是又有点“绚丽”,不错。

2012-07-10 21:30:07 430

转载 ZStack Monitor and Test(MT)功能简介与Z-tool使用介绍

好长一段时间没写新的东西了,最近又在筹划两款新的产品,一个BB板和一个钮扣电池供电的独立传感器节点。最近一两周的时间会与大家见面,同时为回馈老客户与VIP会员对“飞比”的支持,BB板将采取赠送的方式。细则将会在产品发行时通知大家。    言归正传,一直有网友对MT功能与Z-tool的应用很关注,但网上相关的资料又非常少,甚至TI的英文文档也没有独立一个文档介绍这一部分。结合自己的经验,想对

2012-07-10 20:48:52 8693 5

嵌入式Linux_C语言应用程序设计_华清远见

嵌入式Linux_C语言应用程序设计 华清远见出品 是6.5M版本,超级清晰,非222M,绝对的超级清晰,原版PDF,非扫描版和分割版。

2012-08-11

锋硕电子科技有限公司出的培训文档

锋硕电子科技有限公司出的培训文档,主要是讲解的z—stack协议栈, 这打包文件中有:通用信道传输,无线透传,多跳组播,系统应用开发 指导,远程开关控制,远程数据采集,API函数。这些培训文档讲解的 很清楚相信是学习zigbee的好帮手。

2012-06-24

太原科技大学 09年矩阵试题

太原科技大学09年矩阵考试试题,相信对大家会有帮助

2012-01-09

uCOS_II_2.52源码中文译注

uCOS_II_2.52源码中文译注,经典,对初学者和开发者有很大的帮助

2011-12-06

数字信号处理——理论、算法与实现,matlab,FORTRAN,C

含有《数字信号处理-理论、算法与实现》一书中所涉及到的绝大部分算法。 \Dsp_c C语言编写的算法程序。 \Dsp_fortran FORTRAN语言编写的算法程序。 \Dsp_matlab 用MATLAB编写的信号处理程序,包含本书各个章节的 大部分例题。 胡广书 版本的数字信号处理

2011-11-18

MATLAB 神经网络30个案例分析

MATLAB 神经网络30个案例分析,适合研究生和本科生使用,非常好的东西

2011-11-18

matlab,神经网络,lms算法,数字信号处理,通信网络

matlab,数字信号,神经网络,通信网络,matlab源码,电子系的用得多,打包下载吧

2011-11-10

对称日计算程序

对称日求法,比如20111102,表示2011年11月02日 倒过来也是

2011-11-10

tcp-ip详解卷

《TCP/IP详解,协议》是一本完整而详细的TCP/IP协议指南。描述了属于每一层的各个协议以及它们如何在不同操作系统中运行。卷二中有很多实例。

2011-10-07

GPRS MODEM调试工具

一种调试工具 我想有时候会用到的,很方面

2011-10-07

基于单片机的信号发生器设计 可调波形频率

基于protues的单片机开发,信号发生器设计,可以产生方波正弦波,锯齿波,对于幅度和频率也是可以调整。有完整程序设计

2011-09-27

无线通信技术

通信语音是目前通信领域中比较热门的话题,而采用蓝牙技术则是对于语音通信的创新。

2011-09-16

空空如也

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

TA关注的人

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