自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

转载 recv, recvfrom, recvmsg用于接收数据

1. recv#include ssize_t recv(int sockfd, void * buf, size_t nbytes, int flags);返回值:已字节计数的消息长度,若无可用消息或者对方已经按序结束则返回0,出错返回-1flag有以下值:MSG_OOB:     如果协议支持,接收带外数据MSG_PEER:    返回报文内容而不是真正取走报文

2013-04-27 11:07:51 7991

转载 高级路由ip rule

linux 高级路由即基于策略的路由比传统路由在功能上更强大,使用也更灵活,它不仅能够根据目的地址来转发路径而且也能够根据报文大小、应用或ip源地址来选择路由转发路径从而让系统管理员能轻松做到:1、 管制某台计算机的带宽。2、 管制通向某台计算机的带宽3、 帮助你公平地共享带宽4、 保护你的网络不受DOS的攻击5、 保护你的Internet不受到你的客户的攻击6、 把多台服

2013-03-25 11:26:57 1999

转载 core文件调试

core 文件作者:张华2006年8月2日 当我们的程序崩溃时,内核有可能把该程序当前内存映射到core文件里,方便程序员找到程序出现问题的地方。最常出现的,几乎所有C程序员都出现过的错误就是“段错误”了。也是最难查出问题原因的一个错误。下面我们就针对“段错误”来分析core文件的产生、以及我们如何利用core文件找到出现崩溃的地方。 何谓core文件    当一个程序

2013-02-28 14:46:13 1020

转载 宽带认证技术比较 PPPoE 和 IPoE

1、 概述随着城域网宽带业务的发展,可运营、可管理的网络建设理念已经深入人心。 市场方面,随着用户数量的增多,每用户带宽增大,产生ADSL/ADSL2+/FTTH/GPON等高带宽接入方式,极大提高了用户网络使用体验,电脑成为网络接入的主要设备。采用动态IP地址,每用户带宽控制的PPPoE设备逐渐演变为电信运营商主要的接入方式。随着IP网络的迅速发展,人们产生了把所有智能设备联网的需求。同时互

2013-02-20 08:52:59 12637 1

转载 ccid驱动支持

编这个有几点要注意,一是交叉编译的工具链,二是安装路径要统一,比如大家都一起安装到ccid下面。三是如果在虚拟机上编,可能会出libusb找不到的问题。而在服务器上,就没有这个问题。本总近一周的血泪啊。              CCID(USB Chip/Smart Card Interface Devices-USB芯片智能卡接口设备)标准是由几大国际级IT企业共同制定的一个标准,

2012-11-16 16:03:55 5543 1

转载 MIPS与ARM的区别

主要是网上的,描述若有偏差,还请大家见谅 :)特别提示:关于多线程,现在MIPS32 34KC已经实现了MT,而且Kernel从2.6.17开始已经有了对其的支持。我会在以后的文章中详细介绍。//////////////////////////////////////1.流水线结构 pipeline    - MIPS 是最简单的体系结构之一,所以使大学喜欢选择 M

2012-09-20 10:06:04 3006

转载 popen使用的小例子

最近需要监控Squid服务器的一些运行状态,需要通过Squid的一些命令来获取,linux c中有个很好用的接口,popen。    popen() 函数通过创建一个管道,调用 fork 产生一个子进程,执行一个 shell 以运行命令来开启一个进程。这个进程必须由 pclose() 函数关闭,而不是 fclose() 函数。pclose() 函数关闭标准 I/O 流,等待命令执行结束,然后返

2012-07-06 09:54:50 1300

转载 找不到libstdc++.so.5库文件

新装的Ubuntu中使用一些程序出现:libstdc++.so.5: cannot open shared object file: No such file or directorysudo apt-get install libstdc++5 末果,说找不到这个包,但是有 libstdc++6那么选择手动安装:1. 下载安装包: wget -c http://lug.mtu.e

2012-05-19 15:06:12 2173

转载 关于udelay(); mdelay(); ndelay(); msleep();

在Linux Driver开发中,经常要用到延迟函数:msleep,mdelay/udelay.虽然msleep和mdelay都有延迟的作用,但他们是有区别的.mdeday还忙等待函数,在延迟过程中无法运行其他任务.这个延迟的时间是准确的.是需要等待多少时间就会真正等待多少时间.而msleep是休眠函数,它不涉及忙等待.你如果是msleep(10),那实际上延迟的时间,大部分时候是要多于1

2012-05-09 15:41:35 6658 1

转载 大端模式和小端模式

大端格式:在这种格式中,字数据的高字节存储在低地址中,而字数据的低字节则存放在高地址中,如图2.1所示:小端格式:与大端存储格式相反,在小端存储格式中,低地址中存放的是字数据的低字节,高地址存放的是字数据的高字节。如图2.2所示: 请写一个C函数,若处理器是Big_endian的,则返回0;若是Little_endian的,则返回1解答: int check

2012-03-30 10:29:39 1029 1

转载 ioctl 用法(转)

文件描述符是低层的输入和输出接口。描述符可以表示到设备、管道或套接字的连接,这些连接用于与另一个进程或普通文件进行通信。I/O 控制 (ioctl) 函数调用可以用来对特殊文件的基础设备参数进行操作。它们可以完成与打开的文件描述符相关联的控制功能。这些命令涉及文件、流、普通数据链路控制以及其他各种设备。  本文将讨论 AIX Version 5.3 中提供的与网络操作和套接字相关的命令。在下列

2012-03-14 11:21:03 1669

原创 linux定时器Timer的用法

例子一:#include#include#include#include#include  MODULE_LICENSE("GPL");MODULE_AUTHOR("James");MODULE_DESCRIPTION("Timer Module");struct timer_list timer;void timer_func(in

2012-03-05 15:44:17 14827 2

转载 关于get_ds, set_fs, get_fs函数的使用

在linux内核编程时,进行系统调用(如文件操作)时如果要访问用户空间的参数,可以用set_fs,get_ds等函数实现访问。get_ds获得kernel的内存访问地址范围(IA32是4GB),set_fs是设置当前的地址访问限制值,get_fs是取得当前的地址访问限制值。进程由用户态进入核态,linux进程的task_struct结构中的成员addr_limit也应该由0xBFFFFFFF变为0

2012-02-13 10:33:15 5818

转载 mysql_store_result()与mysql_use_result()的比较

函数mysql_store_result()与mysql_use_result()类似,它们都有连接处理程序参数,并返回结果集。但实际上两者间的区别还是很大的。两个函数之间首要的区别在于从服务器上检索结果集的行。当调用时,mysql_store_result()立即检索所有的行,而 mysql_use_result()启动查询,但实际上并未获取任何行,mysql_store_result()假设随

2011-11-18 09:13:38 1219

转载 快速提升MySQL可扩展性的五大绝招

在可扩展性方面,客户的要求变得越来越多,功能列表上经常会出现20条、50条甚至多达100多条要求,但总的来说,我们可以把它们缩短为五个大类,通过五条途径来解决可扩展性问题:1. 调整查询操作对查询进行优化能够让你付出最少的精力就得到最多的成果。将查询功能完善的发挥出来,达

2011-10-19 08:43:32 1107

转载 标准库函数perror用法(打印出错误原因信息字符串)

表头文件 #include定义函数 void perror(const char *s);函数说明        perror ( )用 来 将 上 一 个 函 数 发 生 错 误 的 原 因 输 出 到 标 准 错误 (stderr) 。参数 s 所

2011-10-09 08:37:43 2924

原创 linux环境下java版本的升级和卸载

本总的机器安装的时候带了一个java1.4的版本,但是最近要跑的程序,要求1.6以上的版本。本总不得已,开始升级。       先去sun的官方网站下载了一个官方版本:jre-6u27-linux-i586-rpm.bin。       然后开始卸载原版本,先用rpm -

2011-09-29 16:08:07 16006

转载 Linux下Java环境的安装和配置

一、下载JDK自己下载吧,步骤不用写了吧;我下载的是jdk-1_5_0_11-linux-i586.bin在www.java.sun.com下,我下的是Jre-6u27-linux-i586-rpm.bin这个安装版本。二、安装(1)在usr下新建

2011-09-03 15:04:26 1235

转载 在linux下编写动态链接库的步骤

类似Windows系统中的动态链接库,Linux中也有相应的共享库用以支持代码的复用。Windows中为*.dll,而Linux中为*.so,我来详细的告诉你如何在linux下编写动态库,以及如何使用它.在linux下编写动态链接库的步骤: 1.

2011-08-03 13:55:54 2207

转载 Linux 环境变量

参考:http://www.51cto.com/art/200512/14259.htm================================Linux是一个多用户的操作系统。每个用户登录系统后,都会有一个专用的运行环境。通常每个用户默认的环境都是相同的,这个默认环境实际上就是一组环境变量的定义。用户可以对自己的运行环境进行定制,其方法就是修改相应的系统环境变量。常见的环

2011-06-29 16:16:00 1076

原创 linux 下时间函数strftime()的用法

<br />strftime() 函数将时间格式化<br />我们可以使用strftime()函数将时间格式化为我们想要的格式。它的原型如下:<br />size_t strftime(<br />char *strDest,<br />size_t maxsize,<br />const char *format,<br />const struct tm *timeptr<br />);<br />我们可以根据format指向字符串中格式命令把timeptr中保存的时间信息放在strDest指向的字符串

2011-05-29 18:48:00 3359

转载 QinQ原理及技术(QinQ白皮书)

<br />随着以太网技术在运营商网络中的大量部署(即城域以太网),利用802.1Q VLAN对用户进行隔离和标识受到很大限制,因为IEEE802.1Q中定义的VLAN tag域只有12个比特,仅能表示4K个VLAN,这对于城域以太网中需要标识的大量用户捉襟见肘,于是QinQ技术应运而生。<br />QinQ最初主要是为拓展VLAN的数量空间而产生的,它是在原有的802.1Q报文的基础上又增加一层802.1Q标签实现,使VLAN数量增加到4K*4K,随着城域以太网的发展以及运营商精细化运作的要求,QinQ的

2011-04-20 16:25:00 4621

转载 linux下iso文件的制做和解压

<br />1. 制作ISO镜像文件<br /><br />切换为root账户,执行命令<br />  cp /dev/cdrom XXXXX.iso<br />XXXXX.iso即为需要命名的ISO文件名。执行之后,光盘上所有文件就被映射成XXXXX.iso<br /><br />2. 加载ISO文件<br />在root账户下执行命令<br />  rm -rf /dev/cdrom<br />  ln -s /dev/loop7 /dev/cdrom<br />  losetup /dev/loop7

2011-04-12 20:20:00 5117

转载 IPv6 地址格式

IPv6 地址格式<br />IPv6 地址大小为 128 位。首选的 IPv6 地址表示为:xxxx:xxxx:xxxx:xxxx:xxxx:xxxx:xxxx:xxxx,其中每个 x 是代表一个 4 位的十六进制数字。IPv6 地址范围从 0000:0000:0000:0000:0000:0000:0000:0000 至 ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff。 <br />IPv4的地址是由32位二进制码组成。格式为xxx.xxx.xxx.xxx,其中的x代表的

2011-03-31 16:03:00 30249 2

转载 inline函数

<br />一)inline函数(摘自C++ Primer的第三版)<br />         在函数声明或定义中函数返回类型前加上关键字inline即把min()指定为内联。<br />   inline int min(int first, int secend) {/****/};<br />      inline函数对编译器而言必须是可见的,以便它能够在调用点内展开该函数。与非inline函数不同的是,inline函数必须在调用该函数的每个文本文件中定义。当然,对于同一程序的不同文件,如果inl

2011-03-22 19:49:00 962

转载 C/C++ extern的用法实例

用例子给你示范 // 1.cpp int x = 10; // 2.cpp 注意没有包含1.cpp #include using namespace std; extern int x;int main () { cout //则输出10 两个文件同在一个项目(project)中,你不包含某个文件(cpp)而可以用它内部定义的变量,(里是.pp不是.h, 因为在.h中定义的数据不能在.cpp中用除非这个.cpp包含这个.h文件) 例: // 1.h #include void print() { std::

2011-02-20 22:40:00 2148

转载 指向指针的指针

<br />采用指向指针的指针操作,一般用于在函数内部来改变采用指针方式传进函数的主函数的指什的指向.<br /> <br />这是我的一个认识盲区,以前我觉得只要传进的是指针,就能够改变值,现在看来,是有所区别的.指针所指的值可以被改变,但指针本身的值是不会被改变的.实际上,函数调用时会对每一个参数进行一个隐含的赋值操作。<br /> <br />我们想在函数pro()中改变指针p的值(记住:是指针p的值,而不是p所指向的地址的值)。能实现吗?结果是不能,为什么?我们来分析一下 <br /><br />先

2010-12-08 16:57:00 659

转载 细说 #pragma pack(n)

在C语言中,结构是一种复合数据类型,其构成元素既可以是基本数据类型(如int、long、float等)的变量,也可以是一些复合数据类型(如数组、结构、联合等)的数据单元。在结构中,编译器为结构的每个成员按其自然对界(alignment)条件分配空间。各个成员按照它们被声明的顺序在内存中顺序存储,第一个成员的地址和整个结构的地址相同。例如,下面的结构各成员空间分配情况:struct test {     char x1;     short x2;     float x3;     char x4;};结构

2010-11-24 11:14:00 417

转载 C语言中有关string的函数详解

<br />@函数名称:   strdup <br />函数原型:   char *strdup(const char *s) <br />函数功能:   字符串拷贝,目的空间由该函数分配  <br />函数返回:   指向拷贝后的字符串指针 <br />参数说明:   src-待拷贝的源字符串 <br />所属文件:   <string.h> <br />#include <stdio.h> <br />#include <string.h> <br />#include <alloc.h> <br />

2010-11-15 16:41:00 620

转载 在linux前台和后台运行程序

为什么要在linux命令前加上 ./ <br />简述<br />在chinaunix 论坛里找到的答案<br />原来Quote: unix或linux中除了path系统变量外的目录下的命令都要加./修改用户的 .bash_profile 在 PATH一行最后加上 ":." (一个冒号,一个点) <br />然后退出重新登陆用户就ok了! PATH中没有定义路径,加上就ok了<br />./表示当前目录,这是因为linux的默认搜索目录里没有当前目录,所以如果你在当前目录需要执行程序就要加上路径,./用全

2010-10-15 16:38:00 6511

转载 异步socket函数使用说明

select函数:      <br />系统提供select函数来实现多路复用输入/输出模型。原型:   <br />        #include   <sys/time.h>   <br />        #include   <unistd.h>   <br />        int   select(int   maxfd,fd_set   *rdset,fd_set   *wrset,fd_set   *exset,struct   timeval   *timeout);   <br /

2010-10-13 16:03:00 643

转载 Linux下使用minicom进行串口调试(DB9三芯)

 这几天在做串口方面的东西,先用minicom试了一下串口,做了一个小结,请大家多多指教.一、使用工具Windows XP        串口调试器  Comport Debuger V1.10Red Hat Linux 9.0    Minicom  2.00.0二、 初始化设置串口调试器    端口号 COM1  波特率 9600  数据位 8  停止位 1  校验位 None              串口状态为打开  线路状态默认  可选按16进制发送和接收Minic

2010-09-27 15:38:00 2828 1

转载 getopt函数的功能

<br />头文件: #include<unistd.h><br />定义函数<br />int getopt(int argc,char * const argv[ ],const char * optstring);<br />函数说明 <br />getopt()用来分析命令行参数。参数argc和argv是由main()传递的参数个 数和内容。参数optstring 则代表欲处理的选项字符串。此函数会返回在argv 中下一个的选项字母,此字母会对应参数optstring 中的字母。如果选项字符串里的字

2010-09-19 11:11:00 818

原创 jiffies溢出与时间先后比较

<br />1. 概述 <br />在Linux内核中,TCP/IP协议栈在很多用到时间比较的地方都使用了jiffies?本文介绍了什么是jiffies,jiffies溢出可能造成的问题,使用time_after等宏来正确地比较时间及其背后的原理。 2. jiffies简介 2.1 时钟中断 <br />在Linux内核中,TCP/IP协议栈在很多用到时间比较的地方都使用了jiffies。 <br />那么jiffies是什么呢?我们知道,操作系统应该能够在将来某个时刻准时调度某个任务,所以需要一种能保证任

2010-09-02 10:14:00 1168 1

转载 c语言中的结构(struct)和联合(union)简介

<br />                  联       合(union)  <br />    1. 联合说明和联合变量定义  <br />    联合也是一种新的数据类型, 它是一种特殊形式的变量。  <br />    联合说明和联合变量定义与结构十分相似。其形式为:  <br />     union 联合名{  <br />          数据类型 成员名;  <br />          数据类型 成员名;  <br />          ...  <br />     } 联合变

2010-09-01 15:06:00 872

转载 ftp ALG 功能实现的概要说明

<br />     近阶段了解了一下ALG(应用层网关Application Layer Gateway),有些体会做一个记录,以供以后查阅。<br />     ALG,Application Layer Gateway的缩写,这是一般网络设备或者主机都必备的一个小模块,那ALG是为了完成一个什么功能呢?这首先要从IPV4的地址过少说起,因为IPV4地址过少,所以规定了部分地址给内部分配使用,这种地址段在互联网上是不分配的,其中有10.X.X.X和192.168.X.X,一般公司较大的就用前一种,公司较

2010-08-24 20:00:00 10370 1

转载 如何打开服务器上的某个端口

公司同事开发了一个小软件,可以很方便的管理网站,但是在服务器上安装完以后,发现本地无法连接到服务器上那个软件,经过一系列排查,基本可以认定为服务器的这个端口没有打开。<br /><br />      开发的这个软件使用的是30001和30010两个TCP端口。通过咨询机房技术人员,告知这两个端口在机房的路由器中是打开的。这样问题只能出在服务器上。首先我们想到了服务器的防火墙,我们都知道当启用了系统自带的防火墙以后,可以在里面设置打开指定的端口,但是当前这台服务器根本没有启用防火墙。更别说在里面设置可以生效

2010-07-10 10:44:00 7183

原创 mysql数据库的恢复(frm、Myd、MyI文件仍存在)

<br />问题背景:<br />  服务器被攻击,数据库A被删!<平台:Windows 2003><br /><br />目前进展:<br />  1.用恢复软件把数据库A中的frm、Myd、MyI文件进行还原,但访问数据库时,则提示Incorrect information in file<br />  2.浏览数据库时发现有几张表提示使用中,从而不能正常访问与操作表<br /><br />问题:<br />  如何在保证不丢失数据的前提下,可以正常访问数据库<br /><br />自己尝试过的办法:<

2010-06-12 10:39:00 4538

转载 利用Oracle Enterprise Manager的扩展监控功能开发MySQL Plugin用于MySQL数据库监控

 4月2日,中国首届数据库技术大会在北京盛大召开。在这一面向数据库及商业智能技术专业人群的技术盛会上,各路DBA高手云集,悉数分享各自在数据库技术领域深入研究的体会和经验。不论是演讲人还是听会人都抱着分享、学习、进步的愿望,充分互动与交流。    两天的DTCC大会覆盖数据库的架构设计、性能优化、存储安全和系统监控等七大主题。在这个众多数据库高手云集的会场,女性DBA实在是凤毛麟角。第二天下午

2010-04-26 14:55:00 1439

转载 对数据库系统的全面、精确、自动化的监控

 4月2日,中国首届数据库技术大会在北京盛大召开。在这一面向数据库及商业智能技术专业人群的技术盛会上,各路DBA高手云集,悉数分享各自在数据库技术领域深入研究的体会和经验。不论是演讲人还是听会人都抱着分享、学习、进步的愿望,充分互动与交流。    DTCC大会第二天,数据库分析监控与运维分析专场人头攒动,并没有因清明小长假的到来而影响大家学习的热情。正在台上演讲的是淘宝网数据库技术专家、产品D

2010-04-26 14:38:00 1111

空空如也

空空如也

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

TA关注的人

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