- 博客(12)
- 资源 (16)
- 收藏
- 关注
转载 gcc常见参数说明
1.gcc包含的c/c++编译器gcc,cc,c++,g++,gcc和cc是一样的,c++和g++是一样的。一般c程序就用gcc编译,c++程序就用g++编译。2.gcc的基本用法gcc test.c这样将编译出一个名为a.out的程序gcc test.c -o test这样将编译出一个名为test的程序,-o参数用来指定生成程序的名字3.为什么会出现undef
2012-07-18 15:27:27 1385
原创 常见的makefile写法
1、目标名称,摆脱手动设置目标名称TARGET = $(notdir $(CURDIR))all:$(TARGET) CMD....$(CURDIR) 表示Makfile当前目录全路径$(notdir $(path)) 表示把path目录去掉路径名,只留当前目录名这样就可以得到Makefile当前目录名称,用目录名作为目标程序名是一个不错的选择2、使用include,把
2012-07-17 14:37:53 14261
原创 linux基础编程 链路层socket 摆脱winPcap 夸网段socket通信 可夸平台移植
在linux环境中要从链路层(MAC)直接收发数据帧,可以通过libpcap与libnet两个动态库来分别完成收与发的工作。虽然它已被广泛使用,但在要求进行跨平台移植的软件中使用就很难办到了。。这是一种更为直接地、无须安装其它库的从MAC层收发数据帧的方式,即通过定义链路层的套接字来完成。下面的代码也是我做的项目中的代码(夸网段访问网络中的嵌入式设备),去掉了敏感部分,和大家共享!但是
2012-07-11 20:50:43 5372 5
原创 linux基础编程 套接字socket 完整的服务器端多线程socket程序
此段程序来自我的一个项目中,稍微做了些修改,运行稳定,客户端程序比较简单所以未编写,可以用socket调试工具测试此段代码费话不多说,直接上代码#include #include #include #include #include #include #include #include #include #include #include #include#d
2012-07-11 16:59:43 9674 2
转载 linux基础编程 共享内存 使用内存映射接口mmap系统调用
采用共享内存通信的一个显而易见的好处是效率高,因为进程可以直接读写内存,而不需要任何数据的拷贝。对于像管道和消息队列等通信方式,则需要在内核和用户空间进行四次的数据拷贝,而共享内存则只拷贝两次数据[1]:一次从输入文件到共享内存区,另一次从共享内存区到输出文件。实际上,进程之间在共享内存时,并不总是读写少量数据后就解除映射,有新的通信时,再重新建立共享内存区域。而是保持共享区域,直到通信完毕为止,
2012-07-11 15:24:51 3205
原创 linux基础编程 共享内存 通过消息队列实现同步 shmget
共享内存可以被描述成内存一个区域(段)的映射,这个区域可以被更多的进程所共享。这是IPC机制中最快的一种形式,因为它不需要中间环节,而是把信息直接从一个内存段映射到调用进程的地址空间。 一个段可以直接由一个进程创建,随后,可以有任意多的进程对其读和写。但是,一旦内存被共享之后,对共享内存的访问同步需要由其他 IPC 机制,例如消息队列来实现。包含文件1、msg.c2、msg.h3、
2012-07-11 14:08:18 6340
原创 linux基础编程 消息队列 msgsnd
实际上,消息队列常常保存在链表结构中。拥有权限的进程可以向消息队列中写入或读取消息。消息队列本身是异步的,它允许接收者在消息发送很长时间后再取回消息,这和大多数通信协议是不同的。例如WWW中使用的HTTP协议是同步的,因为客户端在发出请求后必须等待服务器回应。然而,很多情况下我们需要异步的通信协议。比如,一个进程通知另一个进程发生了一个事件,但不需要等待回应。但消息队列的异步特点,也造成了一个
2012-07-11 10:51:05 4316
原创 linux基础编程 多线程同步 pthread_cond_signal
条件变量同步锁示例此例根据上一篇文章修改请包含上一篇中的两个文件(未做任何改动)1/ pthread_mutex.h2/ pthread_mutex.c上一篇的thread.c文件修改如下/*多线程同步示例,条件变量同步锁*/#include #include #include #include #include "pthread_mutex.h
2012-07-10 21:57:51 2536
原创 linux基础编程 多线程中的互斥锁 pthread_mutex_lock
pthread_mutex.h头文件#ifndef __SEM_UTIL_H__#define __SEM_UTIL_H__typedef void* SemHandl_t;SemHandl_t MakeSem(); ///< Initialize the semaphore.int SemRelease(SemHandl_t hndlSem); ///< Unlock the
2012-07-10 20:19:40 7104
原创 linux基础编程 多线程
linux线程/* 演示linux线程的基本操作,高级用法请看程序下面转载的内容*/#include #include #include #include #define __DEBUG#ifdef __DEBUG#define DBG(fmt,args...) fprintf(stdout, fmt, ##args)#else#define DBG(fmt
2012-07-10 10:04:37 2297 1
转载 DDR内存 时序指南
DDR 内存 既然叫做双倍速率SDRAM(Dual date rate SDRSM),就是说是SDRAM的升级换代产品。从技术上分析,DDR SDRAM最重要的改变是在界面数据传输上,其在时钟信号上升缘与下降缘时各传输一次数据,这使得DDR的数据传输速率为传统SDRAM的两倍。那么大家就应该知道了,我们所说的DDR400,DDR333,DDR266,他们的工作频率其实仅为那些数值的一半,也就是说D
2012-07-09 10:04:17 37986
转载 nand的几个名词 oob bbt ecc
例如Samsung K9F1208U0B,数据存储容量为64MB,采用块页式存储管理。8个I/O 引脚充当数据、地址、命令的复用端口。 芯片内部存储布局及存储操作特点: 一片Nand flash为一个设备(device), 其数据存储分层为: 1 (Device) = 4096 (Blocks) 1 (Block) - = 32 (Pages/Row
2012-07-04 10:11:42 1404
成功实现ONVIF协议RTSP-Video-Stream与OnvifDeviceManager的对接
2012-11-22
onvif discovery 服务端(设备端)实例
2012-11-14
09电子设计大赛 NEC赞助芯片 SPWM D78F1203 本科组必用
2009-09-01
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人