linux
qinjinghua2012
这个作者很懒,什么都没留下…
展开
-
va_start、va_end及Vsprintf应用
一、已知函数中的例子。[cpp] view plaincopyprint?"font-size:16px;color:#3366FF;">"code" class="cpp">INT PalPrintf(const MMP_CHAR* format, ...) /*…为可变参数,不限定个数和类型。(后面采用专门的指针指向他)*/转载 2014-12-17 10:44:33 · 596 阅读 · 0 评论 -
OK6410挂载Ubuntu12.04中NFS文件系统
OK6410挂载Ubuntu12.04中NFS文件系统 =========================预先准备============================== OK6410开发板先预先装好飞凌公司提供的U-boot、内核以及文件系统源码,确保开机后可正常启动。 配置虚拟机Linux网络: IP:210.45.153.235 默认网关:210.原创 2015-01-16 00:20:05 · 770 阅读 · 0 评论 -
.tar.bz2 解压出错问题解决方案
下载了一个压缩文件:*.tar.bz2格式,用zxvf解压总是出错,以为是文件损坏.看了这篇文章,终于解压成功.从网络上下载到的源码包, 最常见的是 .tar.gz 包, 还有一部分是 .tar.bz2包要解压很简单 :.tar.gz 格式解压为 tar -zxvf xx.tar.gz转载 2015-01-17 20:20:23 · 3883 阅读 · 0 评论 -
linux stat函数讲解
表头文件: #include #include 定义函数: int stat(const char *file_name, struct stat *buf);函数说明: 通过文件名filename获取文件信息,并保存在buf所指的结构体stat中返回值: 执行成功则返回0,失败返回-1,错误代码存于errno错误代转载 2015-01-21 10:01:27 · 452 阅读 · 0 评论 -
成都国嵌-嵌入式linux必修实验手册完整版以及实验源码
emouse收集整理,转载请注明:emouse的技术专栏博客园:http://www.cnblogs.com/emouse/CSDN:http://blog.csdn.net/haozi_1989成都国嵌非常好的实验教材,建议配合视频教程学习。此教材是收费的,国嵌和视频一起一套资料580元,有兴趣的可以自己去淘宝上搜。因此这里是教材是网上流出的扫描版本,我进行了整理和压缩,不影转载 2015-01-20 17:10:20 · 1113 阅读 · 2 评论 -
基于H.264的远程视频监控
有兴趣的留言一起研究 开始做自己的毕业设计了,希望这个暑假能把毕业设计搞完,下学期就去找工作,希望能早到一份好工作。回到正题,经过几天的摸索对H.264远程监控有了一定的认识,特别是图像采集这一块。jpg、yuv、bmp,M-jpeg等。1、首先分析一下手上的资源: 手上有两款开发板,一款是4.3寸天嵌的tq2440,和一款友善的tiny6410,一个中星微的zc301摄转载 2015-01-21 00:45:14 · 6348 阅读 · 0 评论 -
fstat函数及struct stat结构
一、fstat 函数功能:由文件描述符取得文件状态。相关函数:stat 、lstat 、chmod 、chown 、readlink 、utime。头文件: #include #include 函数声明: int fstat (int filedes,struct *buf);转载 2015-01-21 09:54:58 · 581 阅读 · 1 评论 -
select函数总结
阻塞方式block,就是进程或是线程执行到这些函数时必须等待某个事件的发生,如果事件没有发生,进程或线程就被阻塞,函数不能立即返回。使用Select就可以完成非阻塞non-block,就是进程或线程执行此函数时不必非要等待事件的发生,一旦执行肯定返回,以返回值的不同来反映函数的执行情况,如果事件发生则与阻塞方式相同,若事件没有发生则返回一个代码来告知事件未发生,而进程或线程继续执行,所以效率较高。转载 2015-01-21 13:29:20 · 514 阅读 · 0 评论 -
利用V4L2编写的USB摄像头程序2【经OK6410验证成功】
#include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #define CLEAR(x) memset (&(x), 0, sizeof (x))struct buff转载 2015-01-22 02:06:15 · 1347 阅读 · 1 评论 -
assert()函数用法总结
assert宏的原型定义在中,其作用是如果它的条件返回错误,则终止程序执行,原型定义:#include assert.h>void assert( int expression ); assert的作用是现计算表达式 expression ,如果其值为假(即为0),那么它先向stderr打印一条出错信息,然后通过调用 abort 来终止程序运行。请看下面的程序清单badpt转载 2015-01-21 17:29:44 · 414 阅读 · 0 评论 -
《嵌入式Linux程序设计与应用案例》学习笔记
时间:2015-5-1 内容:《嵌入式Linux程序设计与应用案例》学习笔记---------------------------------------------------------------------------1、程序的分割当在建立大型程序时,如果把已经建好的函数分割出来,应用在其他程序里,可以帮助大型程序的开发。如果将一个main.c函数分解成mymain.原创 2015-05-01 23:56:06 · 812 阅读 · 0 评论 -
linux下解压命令大全
.tar 解包:tar xvf FileName.tar打包:tar cvf FileName.tar DirName(注:tar是打包,不是压缩!)———————————————.gz解压1:gunzip FileName.gz解压2:gzip -d FileName.gz压缩:gzip FileName.tar.gz 和 .tgz解压:tar z转载 2015-09-19 15:55:02 · 444 阅读 · 0 评论 -
Linux补丁学习笔记
Linux补丁学习笔记1、diff补丁的功能:比较两个文件(文件夹)的不同,然后记录下来。2、patch就是利用diff制作的补丁来实现源文件(夹)和目的文件(夹)的转换。2.1 给单个文件打补丁的方式,已知文件text0、text1。patch [option] [originalfile [patchfile]]originalfile的对象可以为text0也可以为te原创 2015-09-24 00:13:29 · 668 阅读 · 0 评论 -
Linux网络编程
1、 tcp程序设计代码1 server:[html] view plaincopy#include stdlib.h> #include stdio.h> #include errno.h> #include string.h> #include netdb.h> #include sys/types.转载 2015-01-14 23:55:08 · 450 阅读 · 0 评论 -
Linux消息队列
一、概念 消息队列就是一个消息的链表。可以把消息看作一个记录,具有特定的格式以及特定的优先级。对消息队列有写权限的进程可以向中按照一定的规则添加新消息;有读权限的进程则可以读走消息。读走就没有了。消息队列是随内核持续的。 只有内核重启或人工删除时,该消息才会被删除。在系统范围内,消息队列与键值唯一对应。二、步骤及思路1、取得键值2、打开、创建消息队转载 2015-01-14 03:11:19 · 442 阅读 · 0 评论 -
arm-linux-系列工具,ld,ar,as,objcopy
一些编译器相关知识学习。GNU GCC简介:GNU GCC是一套面向嵌入式领域的交叉编译工具,支持多种编程语言、多种优化选项并且能够支持分步编译、支持多种反汇编方式、支持多种调试信息格式,目前支持X86、ARM7、StrongARM、PPC4XX、MPC8XX、MIPS R3000等多种CPU。GNU GCC的基本功能包括:输出预处理后的C/C++源程序(展开头文件和替换宏转载 2014-12-16 23:52:53 · 792 阅读 · 0 评论 -
linux程序同时链接动态库与静态库
在应用程序需要连接外部库的情况下,linux默认对库的连接是使用动态库,在找不到动态库的情况下再选择静态库。使用方式为:gcc test.cpp -L. -ltestlib如果当前目录有两个库libtestlib.so libtestlib.a 则肯定是连接libtestlib.so。如果要指定为连接静态库则使用:gcc test.cpp -L. -static -ltes转载 2014-12-06 11:03:56 · 583 阅读 · 0 评论 -
Makefile中指示符“include”、“-include”和“sinclude”的区别
原文:http://blog.csdn.net/xiaozhi_su/article/details/4202779指示符“include”、“-include”和“sinclude”如果指示符“include”指定的文件不是以斜线开始(绝对路径,如/usr/src/Makefile...),而且当前目录下也不存在此文件;make将根据文件名试图在以下几个目录下查找:首转载 2014-12-06 09:26:45 · 515 阅读 · 0 评论 -
连接参数-Ttext
讨论-Ttext之前,先简单介绍一下工具:readelf -h 读取ELF可执行文件头readelf -S 查看ELF文件Section 信息objdump -d 看目标文件汇编代码 以典型的bootloader为例,我们分析-Ttext的实际作用。 首先来看具体的两条命令编译 $(CC) $(CFLAGS) -DKERNEL_ST转载 2014-12-06 11:09:35 · 2720 阅读 · 0 评论 -
shell脚本中局部变量
在shell中定义函数可以使代码模块化,便于复用代码。不过脚本本身的变量和函数的变量的作用域问题可能令你费解,在这里梳理一下这个问题。(1)Shell脚本中定义的变量是global的,其作用域从被定义的地方开始,到shell结束或被显示删除的地方为止。例1:脚本变量的作用域#!/bin/bash#define the function ltx_funcltx_f转载 2015-01-12 09:55:20 · 516 阅读 · 0 评论 -
详解N字节对齐
摘要:编译器通常采用的默认字节对齐规则:对于类型T,在n bit系统中,保证变量首地址在min(sizeof(T), n/8)字节位置上,以保证最少读周期。以下为原文:-----------------其实我也是一条分割线------------------ 所谓的字节对齐,就是各种类型的数据按照一定的规则在空间上排列,而不是顺序的一个接一个的排放,这个就是转载 2014-12-06 16:42:30 · 777 阅读 · 0 评论 -
ARM汇编中的ldr和adr的区别
ARM汇编有ldr指令以及ldr、adr伪指令,它们都可以将标号表达式作为操作数,下面通过分析一段代码以及对应的反汇编结果来说明它们的区别。ldr r0, _start adr r0, _start ldr r0, =_start _start: b _start 编译的时候设置 RO 为 0x30000000,下面是反汇编的结果:0x00000000:转载 2014-12-07 21:16:35 · 719 阅读 · 0 评论 -
文件编程:系统调用方式
1、创建文件int creat(const char *filename, mode_t mode)filename:要创建的文件名(包含路径,缺省为当前路径)mode:创建模式常见创建模式:S_IRUSR 可读S_IWUSR 可写S_IXUSR转载 2015-01-12 22:20:07 · 523 阅读 · 0 评论 -
跟我一起写 Makefile
陈皓 概述 —— 什么是makefile?或许很多Winodws的程序员都不知道这个东西,因为那些Windows的IDE都为你做了这个工作,但我觉得要作一个好的和professional的程序员,makefile还是要懂。这就好像现在有这么多的HTML的编辑器,但如果你想成为一个专业人士,你还是要了解HTML的标识的含义。特别在Unix下的软件编译,你就不能不自己写makefi转载 2014-12-07 15:56:31 · 770 阅读 · 0 评论 -
U-boot第二阶段分析
U-boot第二阶段分析一、U-boot第二阶段概述上面有两篇文关于u-boot第一阶段的介绍,这两篇文章是从网上找到的,由于分析的很详细,看完这后觉得对这两篇文章u-boot第一阶段的介绍已经比较完美了,所以分享出来。从这篇文章开始分析u-boot的第二阶段。如果你只把u-boot理解成引导kernel的一段代码的话,u-boot完全没有必要设计成现在这样的一种软转载 2014-12-08 08:43:05 · 590 阅读 · 0 评论 -
U-boot第一阶段分析
u-boot是在单板刚启动的时候执行的一段程序。其作用是将内核从flash、硬盘等介质上拷贝到内存中,并传递给内核一些启动参数并跳转到内核去执行。由于u-boot的代码非常的依赖于不同的体系结构。对u-boot的分析也只能提炼出不同体系结构的共性,做相应的总结。总的说来,u-boot所做到工作分为两个阶段。第一个阶段是将u-boot第二阶段的代码拷贝到ram空间,跳转到第二阶段代码执行。第转载 2014-12-07 22:24:39 · 746 阅读 · 0 评论 -
Linux中U盘的挂载、卸载、格式化
一、在Ubuntu12.04系统中,实现对U盘的挂在、卸载。1、首先确定U盘的挂载点:fdisk -l 例如得到如下: Device Boot Start End Blocks Id System /dev/sdb1 8192 7744511 3868160 b W95 FAT32原创 2015-09-23 15:33:52 · 2482 阅读 · 0 评论