自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(33)
  • 资源 (3)
  • 收藏
  • 关注

原创 GNS3下ospf与isis的配置

整个网络的拓扑结构如下图所示

2013-09-10 20:01:14 5274

原创 linux下串口的阻塞和非阻塞操作

有两个可以进行控制串口阻塞性(同时控制read和write):一个是在打开串口的时候,open函数是否带O_NDELAY;第二个是可以在打开串口之后通过fcntl()函数进行控制。阻塞的定义:       对于read,block指当串口输入缓冲区没有数据的时候,read函数将会阻塞在这里,移植到串口输入缓冲区中有数据可读取,read读到了需要的字节数之后,返回值为读到的字节数;对于w

2012-04-12 17:46:39 49491 4

原创 通过sudo解决php执行linux脚本的权限问题

由于以前在虚拟机中每次都是以root用户身份登录和进行操作,所以基本都没有用到sudo,但是最近项目需要要进行这么个事:通过浏览器访问php网页,php网页里会调用执行linux下的一个脚本。本来这个事很简单的,但是我在实际操作的时候,发现每次通过浏览器访问时,脚本都没有被执行,而我在终端里面通过命令行执行php网页确又是没有任何问题的,当时就觉得很差异,后来仔细想了想,通过浏览器访问和直接在终端

2012-04-12 16:40:03 17053

原创 linux下iptables的用法

iptables由表和链组成:4条链分别是INPUT、OUTPUT、PREROUTING和POSTROUTING。1.INPUT:针对那些目的地址是本地的包2.OUTPUT:改变本地产生的包的目的地址3.PREROUTING:在包刚刚到达时改变目的地址4.POSTROUTING:在包最后离开前改变包的源地址,(一般此链作用在最后)三个表分别是nat表、filter表和m

2012-03-12 21:57:50 2088

原创 指针和数组名的区别

指针和数组名有如下区别:区别1 数组名指代一种数据结构,这种数据结构就是数组;char str[20];char *p=str;printf("%d \n",sizeof(str));//20printf("%d \n",sizeof(p));//4str指代数据结构——20个元素的char型数组。区别2 数组名可以转换为指向其指代实体的指针,而且是一个指针常量,不能作

2012-03-11 21:42:05 2675 3

原创 makefile用法

一个简单的makefile文件包含一系列的“规则”,如下目标... : 依赖...命令        目标是要生成的文件名称,一般是可执行文件或OBJ文件或一个执行的动作名称,诸如“clean”       (每个命令前面必须是一个tab字符)1.makefile文件里的赋值方法变量的定义语法形式如下:immediate = deferred immediate ?

2012-01-30 20:42:27 800

原创 /dev/VolGroup00/LogVol00:报错,无法启动linux解决方法

虚拟机开着的时候,电脑非正常关机时常常容易导致linux的文件系统和磁盘遭到损害而无法正常启动linux,我就碰到以下的一种情况:Checking filesystems /dev/VolGroup00/LogVol00 contains a file system with errors, check forced./dev/VolGroup00/LogVol00:Inodes th

2012-01-13 16:04:57 8378 1

原创 数组中,一个数出现一次,其余的数都出现2次,找出那个出现一次的数

要求如题所示。示例源代码如下所示#include #include int Findsigle(int a[],int n);int buff[21]={1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11};int main(void){ int result=0; result=Findsigle(bu

2012-01-11 19:10:05 836

原创 linux压缩与解压指令详解

关于压缩与解压的指令,《鸟哥的私房菜》中其实讲的比较详细了,我这里只是在鸟哥的基础上,提炼出一点内容,方便自己以后查看,谁叫自己脑袋瓜子记性不好咧。。常用的压缩指令有:gzip、bzip2和tar(compress已经out了,也就不管了)--gzip:建立的压缩档后缀名为.gz,zcat指令用来查看后缀名为gz的压缩档[root@www ~]# gzip [-cdtv#] 档

2012-01-07 15:08:38 690

原创 堆栈指针理解

堆栈指针sp在片内RAM128B中开辟栈区,并随时跟踪栈顶地址。它是按"先进后出"的原则存取数据。开机复位后,单片机栈底地址为07H。主要用来保存临时数据,局部变量和中断/自程序的返回地址。堆栈指针总是指向栈顶元素。所以数据入栈的时候,堆栈指针先加1,再压栈。向上增长方式。和计算机的方式一样。出栈的时候先弹出数据,堆栈指针再减1。        如果堆栈的实现是往上长的(就是说往顶

2011-12-16 10:25:28 9347

原创 指针函数和函数指针

1.指针函数指针函数:返回指针的函数。形式如下,int *pfun(int, int);其中*的优先级小于(),因此pfun表示为一个函数,函数返回一个指针,指向的内容为int型。2.函数指针函数指针:指向函数的指针变量int (*pfun)(int, int);通过括号强行将pfun首先与“*”结合,也就意味着,pfun是一个指针,接着与后面的“()”结合,说明该指针

2011-12-12 20:55:07 675

原创 PHP之间以及和C之间数据传递的格式

两个php之间数据传递以array数组的形式。php和c语言之间要通过byte数组,即string。因此涉及到数据格式的转换,以下是格式转换的函数。  /*ArrayToByte($a,$len) * $a: 需要转换的array数组 * $offset: 偏移量 * $len: 长度 * 返回值 转换后的byte数组 (asci

2011-11-14 17:48:42 2015

原创 PHP数据库(Sqlite)两种操作方法

PHP中数据库的操作有两类不同的函数,一种对应Sqlite2,另一种对应Sqlite3.第一种——Sqlite2$db = sqlite_open("data.db");//打开数据库创建数据表:$creat = "create table test1 (one,two,three,four);";$result1 = sqlite_query($db,$creat);插入

2011-11-14 17:22:38 1542

转载 linux 路由表维护

使用下面的 route 命令可以查看 Linux 内核路由表。 # routeDestination Gateway Genmask Flags Metric Ref Use Iface192.168.0.0 * 255.255.255.0 U 0 0 0 eth0

2011-11-09 11:01:08 961

转载 linux source命令及其与脚本的执行区别

source命令:source命令也称为“点命令”,也就是一个点符号(.),是bash的内部命令。功能:使Shell读入指定的Shell程序文件并依次执行文件中的所有语句source命令通常用于重新执行刚修改的初始化文件,使之立即生效,而不必注销并重新登录。用法:source filename 或 . filenamesource命令(从 C Shell 而来)是bash

2011-11-01 10:45:05 967

转载 彻底搞定C指针——指向指针的指针

一. 回顾指针概念: 今天我们又要学习一个叫做指向另一指针地址的指针。让我们先回顾一下指针的概念吧! 当我们程序如下申明变量: short int i; char a; short int * pi; 程序会在内存某地址空间上为各变量开辟空间,如下图所示。 内存地址→6     7      8     9     10     11    12    13     1

2011-10-20 17:33:07 537

原创 嵌入式linux下sqlite3数据库操作

query.c#include #include #include #include "sqlite3.h" #define _DEBUG_ int main( void ) { int i = 0 ; int nrow = 0, ncolumn = 0; char **azResult; //二维数组存放结果 sqlite3 *db

2011-10-20 14:19:21 6059

转载 TCP/IP协议详解

IP数据报的首部长度和数据长度都是可变长的,但总是4字节的整数倍。对于IPv4,4位版本字段是4。4位首部长度的数值是以4字节为单位的,最小值为5,也就是说首部长度最小是4x5=20字节,也就是不带任何选项的IP首部,4位能表示的最大值是15,也就是说首部长度最大是60字节。8位

2011-09-24 17:24:18 645

转载 想成为嵌入式程序员应知道的0x10个基本问题

预处理器(Preprocessor)1 . 用预处理指令#define 声明一个常数,用以表明1年中有多少秒(忽略闰年问题)         #define SECONDS_PER_YEAR (60 * 60 * 24 * 365)UL我在这想看到几件事情:1

2011-09-22 10:03:20 486

转载 Linux进程间通信——共享内存

共享内存是运行在同一台机器上的进程间通信最快的方式,因为数据不需要在不同的进程间复制。通常由一个进程创建一块共享内存区,其余进程对这块内存区进行读写。共享内存往往与其它通信机制,如信号量结合使用,来达到进程间的同步及互斥。//生成key_t  函数ftok()   每一个IP

2011-09-20 16:42:07 775

原创 class_device_creat和device_creat问题

我在linux-2.6.25的内核中编写驱动实例,为驱动自动创建设备节点时使用device_creat() globalmem_class = class_create(THIS_MODULE, "globalmem_sys_class");

2011-09-20 16:31:29 1301

转载 消除linux系统的shell和vi的报警声

铃声有三种风格:none, visible,1.消除shell的报警声,就是按tab键不对的响声:    在/etc/inputrc中加入一行:(我在RedHat9.0中尝试了)       set bell-style none     保存并重启系统即可。

2011-09-20 16:27:35 570

原创 循环语句中的break和continue区别

break表示跳出循环,continue表示结束本次循环示例程序如下:#include "stdio.h" void main() { int n,m; for(n=1;n<=10;n++) /*这个循环输出1 2 3 4, 在n是5

2011-09-20 16:26:24 536

转载 socket通信之http-server

#include #include #include #include #include #include #include #include #include #include #include #include #include

2011-09-20 16:24:58 650

原创 #pragma pack()改变结构中字节对齐方式

在C语言中,结构是一种复合数据类型,其构成元素既可以是基本数据类型(如int、long、float等)的变量,也可以是一些复合数据类型(如数组、结构、联合等)的数据单元。在结构中,编译器为结构的每个成员按其自然对(alignment)条件分配空间。各个成员按照它们被声明的顺序在内

2011-09-20 16:21:12 561

转载 在ARM Linux上使用Apache+PHP

在ARM Linux上使用Apache+PHP我相信这篇文章同样是国内很难搜到的一个HOWTO(呵呵,截至到我写出来之前),我的最初目的是在ARM上使用PHP,尝试了Busybox的httpd,以及boa都没有办法很方便的和PHP接口,因此我狠下心来,编译了Apache。在A

2011-09-20 16:18:52 3924

原创 linux下3G网卡的安装方法

第一步:#make menuconfig勾选中下面 Device Drivers->USB Support->    Support for Host-side USB    USB device filesystem    ECHI HCD (USB 2.0) support    OHCI HCD support    UHCI HCD (most Intel

2011-09-20 16:15:26 2060 2

原创 php soap举例及wsdl文件的生成

PHP 使用soap有两种方式。一、用wsdl文件服务器端myservice.phpphp class service { public function HelloWorld() { return "Hello"; } public function Add($a,$b) { return $a+$b; }

2011-09-20 16:05:15 5104

原创 unix域socket通信实例

socket服务器端:server.c//socket读写默认的是非阻塞的#include #include #include #include #include #include #include #include #include #inc

2011-09-20 15:54:35 8431

转载 arm体系

首先,ARM是一家英国的半导体公司。它发明了一种RISC处理器的体系结构(包括寄存器、寻址方式、指令集这些要素),但ARM公司本身不生产太多的处理器产品,而只是把这些体系结构的核心设计授权给其他设计CPU的公司使用并收取专利费,就像Qualcomm靠卖通信标准的专利赚钱一样。AR

2011-09-20 15:39:05 779

原创 TCP/IP协议——TCP/IP协议栈及框架

1  基于4层的TCP/IP协议栈基本描述基于4层的TCP/IP协议栈最具说服力的是:这一观点是由TCP/IP原始标准的创立者——美国国防部提出的,它与ISO/OSI参考模型的对应关系如下图:图1 TCP/IP协议栈层次结构与ISO/OSI参考模型的对应关系

2011-09-20 15:34:59 691

原创 中断编程

int request(unsigned int irq, void (*handler) (int irq,void *dev_id, struct pt_regs *regs), unsigned long ir

2011-09-16 10:24:38 468

原创 四种游泳姿势的动画图解,让你轻松学会游泳

一、蛙泳­蛙泳配合有一个顺口溜,在讲解蛙泳动作要领之前先介绍给大家:“划手腿不动,收手再收腿,先伸胳膊后蹬腿,并拢伸直漂一会儿。”从顺口溜中可以看到,手的动作是先于腿的动作。一定要在收手后再收腿,伸手后再蹬腿。­­手臂动作:­­1.外划。双手前伸,手掌倾斜大约45度(小拇指朝上)。双手同时向外、后方划,继而屈臂向后、向下方划。­­2.内划。掌心由外转向内,手带动小­

2010-03-08 15:04:00 1765 1

linux下rt3070wifi网卡的驱动移植

此压缩档里包含了rt3070网卡在linux下的驱动移植的详细文档,以及相关的源码,自己移植成功,在此分享下

2012-04-20

单片机控制sim900程序

里面包含stc12le5a60s单片机控制sim900的数据传输程序,两个串口,一个接入设备数据,一个接入gprs模块

2012-03-08

关于振荡器的orCAD课设

用orcad做课程设计的这个可能有点帮助的,都是些关于软件的东东

2010-03-04

空空如也

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

TA关注的人

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