自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(19)
  • 收藏
  • 关注

原创 goahead2

User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 2.0.50727; CIBA) Host: 192.168.90.50 Content-Length: 32 Connection: Keep-Alive Cache-Control: no-cache name=adfs&address=fdsafdsa&ok=OK

2011-02-18 22:44:00 1681

原创 goahead

<br />注:最近在做goAhead web server和移植其到TI芯片+linux上,这里先转一篇相关的文章来学习下,希望有所帮助。。。<br />*******************************<br />* web server大全之GoAhead移植 *<br />*******************************<br />    2009/02/14  [email protected]  www.armecos.com<br />    <br />    很多人希望在

2011-02-18 22:42:00 4221

原创 PPP拨号

<br />欢迎看看我的另一个小窝,说不定有意外的惊喜哦 ^_^ www.devres.info<br />由于一个嵌入式平台上项目开发的需要,在arm平台上实施ppp拨号上网。说起这个linux平台的ppp拨号上网,也许很多人觉很简单,网上的成功的例子很多!不错,你说的对,但是我还要给点我的看法,就是这个简单的ppp拨号折腾了我的时间之长,我都不好意思讲。但是,现在看来这个过程学到了好多的东西,得到很多分析能力的锻炼。现在成功移植到arm开发板上。特写日志于此,分享我的这段时间以来的总结:<br />li

2011-02-11 13:51:00 11376

原创 AT收短信

<br />通常,发送和接收短信的终端都是通过串行接口连接电脑,这类设备用得比较多的是GSM Modem和手机。这类设备通常都支持PDU模式,但仍有少数设备只支持Text模式。<br />设备硬件连接好以后可以通过发送AT指令测试设备是否连接正确能否正常通讯。在这里我使用Windows自带的“超级终端”工具进行通讯。此工具可以在程序——附件——通讯里面找到,如果没有请确认是否安装了此组件。或者在运行里面输入“hypertrm”也可以快速启动“超级终端”。<br />以下所有范例均以Siemens M55手机

2011-01-18 23:11:00 1624

原创 AT+CPMS

<br />一些概念:<br />MEM1:读取和删除短信所在的内存空间。<br />MEM2:写入短信和发送短信所在的内存空间。<br />MEM3:接收到的短信的储存位置。<br />具体用法:<br />1、语句:<br />AT+CPMS=?<br />作用:<br />测试命令。用于得到手机所支持的储存位置的列表。在我的SIEMENS M55手机上返回:<br />AT+CPMS=?<br />+CPMS: ("MT","SM","ME"),("MT","SM","ME"),("MT","SM",

2011-01-18 23:06:00 3906

原创 AT指令

<br />AT+CNMI的使用<br />短消息类(class)的概念:根据指定储存的位置,短消息分为class 0 – 3四个类。也可以不指定类(no class),由ME按默认设置进行处理,存储到内存或者SIM卡中。在TPDU的TP-DCS字节中,当bit7-bit4为00x1, 01x1, 1111时,bit1-bit0指出消息所属类: <br />00 – class 0:只显示,不储存 <br />01 – class 1:储存在ME内存中 <br />02 – class 2:储存在SIM卡中

2011-01-18 23:03:00 1081

原创 通用Makefile

<br />本文推荐了一个用于对 C/C++ 程序进行编译和连接以产生可执行程序的通用 Makefile。 <br /><br />在使用 Makefile 之前,只需对它进行一些简单的设置即可;而且一经设置,即使以后对源程序文件有所增减一般也不再需要改动 Makefile。因此,即便是一个没有学习过 Makefile 书写规则的人,也可以为自己的 C/C++ 程序快速建立一个可工作的 Makefile。 <br /><br />这个 Makefile 可以在 GNU Make 和 GCC 编译器下正常工作

2011-01-13 16:23:00 7328

原创 静态库

<br />写了一个编译静态库和动态库的Makefile文档,修改Makefile中STATIC的值能够编译静态库或动态库。<br />  MakefileSTATIC=0<br />  LIBPATH=lib<br />  CFLAGS=-Wall<br />  LDFLAGS=-I$(LIBPATH) -L$(LIBPATH) -lfunc<br />  ifeq ($(STATIC), 1)<br />  LIB=$(LIBPATH)/libfunc.a<br />  else<br />  LIB=

2011-01-13 16:17:00 640

原创 linux多线程

<br />1 引言 <br />  线程(thread)技术早在60年代就被提出,但真正应用多线程到操作系统中去,是在80年代中期,solaris是这方面的佼佼者。传统的Unix也支持线程的概念,但是在一个进程(process)中只允许有一个线程,这样多线程就意味着多进程。现在,多线程技术已经被许多操作系统所支持,包括Windows/NT,当然,也包括Linux。 <br />  为什么有了进程的概念后,还要再引入线程呢?使用多线程到底有哪些好处?什么的系统应该选用多线程?我们首先必须回答这些问题。 <b

2010-12-27 23:08:00 336

转载 iconv

<br />利用iconv()函数可以把GB2312汉字转为Unicode,可怎么能使输入为GB2312 机内码呢。 <br />源码如下: <br /><br />#include "iconv.h" <br />#include <string.h> <br />#include <stdio.h> <br />#define OUTLEN 255 <br />/*代码转换:从一种编码转为另一种编码*/ <br />int code_convert(char *from_charset,char *to

2010-12-24 22:30:00 480

转载 sock recv

<br />cv函数返回值说明<br />TechDocs2010-05-29 16:06:21阅读695评论0  字号:大中小 订阅<br />recv函数<br /><br />int recv( SOCKET s, char FAR *buf, int len, int flags);<br />不论是客户还是服务器应用程序都用recv函数从TCP连接的另一端接收数据。该函数的第一个参数指定接收端套接字描述符;<br />第二个参数指明一个缓冲区,该缓冲区用来存放recv函数接收到的数据;<br />

2010-12-02 22:54:00 2865

转载 socket编程

<br />什么是Socket<br />   Socket接口是TCP/IP网络的API,Socket接口定义了许多函数或例程,程序员可以用它们来开发TCP/IP网络上的应用程序。要学Internet上的TCP/IP网络编程,必须理解Socket接口。<br />    Socket接口设计者最先是将接口放在Unix操作系统里面的。如果了解Unix系统的输入和输出的话,就很容易了解Socket了。网络的 Socket数据传输是一种特殊的I/O,Socket也是一种文件描述符。Socket也具有一个类似于打

2010-11-28 10:20:00 442

转载 linux 线程池实现

<br />本文给出了一个通用的线程池框架,该框架将与线程执行相关的任务进行了高层次的抽象,使之与具体的执行任务无关。另外该线程池具有动态伸缩性,它能根据执行任务的轻重自动调整线程池中线程的数量。文章的最后,我们给出一个简单示例程序,通过该示例程序,我们会发现,通过该线程池框架执行多线程任务是多么的简单。 <br /><br /><br />为什么需要线程池 <br />目前的大多数网络服务器,包括Web服务器、Email服务器以及数据库服务器等都具有一个共同点,就是单位时间内必须处理数目巨大的连接请求,但

2010-11-26 23:38:00 629

原创 Linux下通用线程池的构建

Linux下通用线程池的构建 <br />版权所有 codesky.net 2003-2005 <br />发表时间:2003-11-13    关键字:不详 <br /><br />Linux下通用线程池的创建与使用 <br />本文给出了一个通用的线程池框架,该框架将与线程执行相关的任务进行了高层次的抽象,使之与具体的执行任务无关。另外该线程池具有动态伸缩性,它能根据执行任务的轻重自动调整线程池中线程的数量。文章的最后,我们给出一个简单示例程序,通过该示例程序,我们会发现,通过该线程池框架执行多线程任务

2010-11-26 23:27:00 451

转载 linux线程池的C语言实现

<br /> 来源: ChinaUnix博客  日期: 2008.06.17 17:34 (共有0条评论) 我要评论 通常我们使用多线程的方式是,需要时创建一个新的线程,在这个新的线程里执行特定的任务,然后在任务完成后退出。这在一般的应用里已经能够满足我们应用的需要,毕竟我们并不是什么时候都需要创建大量的线程,并在它们执行一个简单的任务后销毁。但是在一些web、email、database等应用里,比如彩铃,我们的应用在任何时候都要准备应对数目巨大的连接请求,同时,这些请求所要完成的任务却又可能非常的简单,

2010-11-26 23:24:00 476

转载 VC实现线程池

VC实现线程池      这两天在做关于网络蜘蛛的程序,希望可以通过线程池来提高程序的性能,网上搜索了一下,看到这方面的东西还不少,跟大家分享一下!~有许多应用程序创建的线程花费了大量时间在睡眠状态来等待事件的发生。还有一些线程进入睡眠状态后定期被唤醒以轮询工作方式来改变或者更新状态信息。线程池可以让你更有效地使用线程,它为你的应用程序提供一个由系统管理的工作者线程池。至少会有一个线程来监听放到线程池的所有等待操作,当等待操作完成后,线程池中将会有一个工作者线程来执行相应的回调函数。<br />  你也可以

2010-11-26 23:20:00 340

转载 realloc

realloc目录C语言函数realloc函数简介应用举例详细说明及注意要点C语言函数realloc函数简介应用举例详细说明及注意要点展开编辑本段C语言函数realloc函数简介原型:extern void *realloc(void *mem_address, unsigned int newsize);   语法:指针名=(数据类型*)realloc(要改变内存大小的指针名,新的大小)。   头文件:#include 有些编译器需要#include ,在TC2.0中可以使用alloc.h头文件   功

2010-11-21 18:35:00 895

转载 串口参数

<br />串口编程<br />查询硬件的方式:查询方式、中断方式、DMA方式。串口很多是使用中断方式,这种方式一般来讲对CPU比较有效。<br />UART的操作主要包括以下几个部分:<br />      数据发送;数据接受;产生中断;产生波特率;Loopback模式;红外模式;自动流控模式;<br />      串口参数的配置主要包括:波特率、数据位、停止位、流控协议。<br />在linux下操作串口与操作文件相同。<br />在使用串口之前必须设置相关配置,包括:波特率、数据位、校验位、停止位等

2010-11-20 10:14:00 3634

转载 linux下的串口编程

这有个友善的串口例程,参考下吧,用gcc编译可以在linux下用# include <stdio.h># include <stdlib.h># include <termio.h># include <unistd.h># include <fcntl.h># include <getopt.h># include <time.h># include <errno.h># include <string.h>int CommFd, TtyFd;stati

2010-11-20 10:04:00 783

空空如也

空空如也

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

TA关注的人

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