He,YuanHui —— 业精于勤荒于嬉,行成于思毁于随

如果你喜欢一个事,又有这样的才干,那就把整个人都投入进去,就要象一把刀直扎下去直到刀柄一样,不要问为什么,也不要管会碰到什么。

  博客园 :: 首页 :: 博问 :: 闪存 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::

随笔分类 -  Linux

上一页 1 2 3 下一页

摘要:Multiple Rulesets in rsyslog Starting with version 4.5.0 and 5.1.1, rsyslog supports multiple rulesets within a single configuration. This is especially useful for routing the recpetion of remote messages to a set of specific rules. Note that the input module must support binding to non-standard rul 阅读全文
posted @ 2010-12-30 12:47 He,YuanHui 阅读(588) 评论(0) 推荐(0) 编辑

摘要:一 printf 和fprintf 的关系 1 printf() #include stdio.h int printf( const char *format, ... ); printf()函数根据format(格式)给出的格式打印输出到STDOUT(标准输出)和其它参数中.对于输出格式,有 %c 字符 %d 带符号整数 %i 带符号整数 %e 科学计数法, 使用小写"e" %E 科学计数法, 使用大写"E" %f 浮点数 %g 使用%e或%f中较短的一个 %G 使用%E或%f中较短的一个 %o 八进制 %s 一串字符 //后面对应的参数为字符串指针%u 无符号整数 %x 无符号十六进 阅读全文
posted @ 2010-12-30 10:55 He,YuanHui 阅读(466) 评论(0) 推荐(0) 编辑

摘要:fcntl和select函数彻底搞明白第一、fcntl函数详细使用 fcntl有强大的功能,它能够复制一个现有的描述符,获得/设置文件描述符标记,获得/设置文件状态标记,获得/设置异步I/O所有权,获得/设置纪录锁。 当多个用户共同使用,操作一个文件的情况,Linux通常采用的方法就是给文件上锁,来避免共享资源产生竞争的状态。 fcntl文件锁有两种类型:建议性锁和强制性锁 建议性锁是这样规定的:每个使用上锁文件的进程都要检查是否有锁存在,当然还得尊重已有的锁。内核和系统总体上都坚持不使用建议性锁,它们依靠程序员遵守这个规定。 强制性锁是由内核执行的。当文件被上锁来进行写入操作时,在锁定该文件 阅读全文
posted @ 2010-12-20 18:10 He,YuanHui 阅读(852) 评论(0) 推荐(0) 编辑

摘要:ubuntu下串口调试助手推荐: cutecom先上个PP图,cutecom的主界面如下所示:在WinXP下经常用的是minicom,或者是自己写的小工具,cutecom相对于minicom而言,多了一个输入命令历史列表,这个功能不错。下边说下安装,在ubuntu下比较简单,直接用新立得软件包管理器安装即可使用命令cutecom启动。这里额接的是usb转串口,pl2303,其名字叫ttyUSB0。ubuntu内已经集成了驱动,不需要再安装,插入usb转串口后,使用dmesg | grep usb,可以查看其安装情况。我这边输出显示有这样一句:[11117.004678] usb 4-1: pl 阅读全文
posted @ 2010-12-20 14:50 He,YuanHui 阅读(5725) 评论(0) 推荐(0) 编辑

摘要:大多的MySQL都是装在Linux上的,而我们的本机上一般都会装MySQL-Front.那如何用MySQL-Front连接远端Linux系统上的mysql呢?用MySQL-Front连接远端的MYSQL就会有些问题。大多提示1045错误:"Access denied for user duan@192.168.0.104,请检查用户名和口令".怎么回事呢?首先让我们看一下远端MYSQL的用户表my... 阅读全文
posted @ 2010-12-02 12:40 He,YuanHui 阅读(4542) 评论(0) 推荐(0) 编辑

摘要:=================================================本文为khler原作,转载必须确保本文完整并完整保留原作者信息及本文原始链接E-mail: khler@163.comQQ:23381103MSN:pragmac@hotmail.com=================================================主要有两个方法,其... 阅读全文
posted @ 2010-11-10 09:34 He,YuanHui 阅读(32638) 评论(1) 推荐(1) 编辑

摘要:当客户端保持着与服务器端的连接,这时服务器端断开,再开启服务器时会出现:Address already in usr 可以用netstat -anp | more 可以看到客户端还保持着与服务器的连接(还在使用服务器bind的端口)。这是由于client没有执行close,连接还会等待client的FIN包一段时间。解决方法是使用setsockopt,使得socket可以被重用,是最常用的服务器编... 阅读全文
posted @ 2010-10-28 15:32 He,YuanHui 阅读(1012) 评论(0) 推荐(0) 编辑

摘要:网上到处流传着“妙用select函数”实现超时等待的帖子,虽然不失为一种可选做法,但总有些不符合业务需要的前提条件,比如必须为非阻塞模式,select的文件描述符必须小于系统限制(一般是32)等等。但实际使用中,往往使用阻塞模式进行通讯,但又不想一直被阻塞,比如recv函数,如果等待指定时间接收不到信息,就认为超时。 使用setsockopt函数就可以达到此效果,下面一段文... 阅读全文
posted @ 2010-10-27 22:37 He,YuanHui 阅读(1383) 评论(0) 推荐(1) 编辑

摘要:=================================================本文为khler原作,转载必须确保本文完整并完整保留原作者信息及本文原始链接E-mail: khler@163.comQQ:23381103MSN:pragmac@hotmail.com原址:http://www.cnblogs.com/khler/archive/2010/09/27/1836559... 阅读全文
posted @ 2010-09-27 10:51 He,YuanHui 阅读(3606) 评论(3) 推荐(0) 编辑

摘要:在Widnows XP下的FTP服务器中有中文文件名 ,今天使用ftp命令,发现不能显示中文文件名,只能显示????。于是到网上查了一些资料,也没有找到好的解决方法,只是有人说使用图形化的ftp工具gftp,安装方法:sudo apt-get install gftp,另外还要增加中文字符编码zh_CN.GBK即可即可。在这里总结一下Ubuntu下增加中文字符编码的方法。一. Ubuntu默认的中... 阅读全文
posted @ 2010-09-27 09:22 He,YuanHui 阅读(1096) 评论(0) 推荐(0) 编辑

摘要:1. 前言  Unix界有一句名言:“一行shell脚本胜过万行C程序”,虽然这句话有些夸张,但不可否认的是,借助脚本确实能够极大的简化一些编程工作。比如实现一个ping程序来测试网络的连通性,实现ping函数需要写上200~300行代码,为什么不能直接调用系统的ping命令呢?通常在程序中通过 system函数来调用shell命令。但是,system函数仅返回命令是否执行... 阅读全文
posted @ 2010-09-26 15:02 He,YuanHui 阅读(621) 评论(0) 推荐(1) 编辑

摘要:C/C++中,sizeof()是编译时由编译器计算结果的,所以在需要高性能的地方,你大可以放心使用而不必担心性能问题! 阅读全文
posted @ 2010-09-26 09:04 He,YuanHui 阅读(735) 评论(2) 推荐(0) 编辑

摘要:好几年没用C/C++了,由于项目需要,重拾C/C++,使用中时不时的有种亲切感涌来。由于C/C++的自由,让人痛苦但更是让人喜欢的原因,一些经验和技巧显得尤为重要。 最近总是想不明白,一个函数返回一个内存或者对象的指针,那么这个指针指向的对象(内存)到底由谁来释放?要知道,函数返回指针,通常是给外部临时使用的,其指向的内存通常由函数或者成员函数所在的对象自己来管理,其实就是遵从一个原则:自己的事自... 阅读全文
posted @ 2010-09-23 19:09 He,YuanHui 阅读(3273) 评论(0) 推荐(0) 编辑

摘要:查看内核版本: uname -a查看Ubuntu版本:cat /etc/issue 阅读全文
posted @ 2010-09-19 16:31 He,YuanHui 阅读(406) 评论(0) 推荐(0) 编辑

摘要:最近接的项目是模拟多个socket 客户端与服务器进行通信。由于Linux 系统的限制,在/usr/include/linux/posix_types.h文件中有如下的宏定义:#undef __FD_SETSIZE#define __FD_SETSIZE 1024这个宏是对最大文件描述符的定义为1024。当需要1024个以上的fd时,例如select()函数就会侦听出错。因此需要将1024改成需要... 阅读全文
posted @ 2010-09-19 14:17 He,YuanHui 阅读(725) 评论(0) 推荐(0) 编辑

摘要:设置守护进程过程:1.创建子进程,父进程退出2.在子进程中创建新会话3.改变当前目录为根目录4.重设文件权限掩码5.关闭文件描述符*6.守护进程里,忽略SIGCHLD信号 (即使fork两次,新进程由init接管,不进行signal(SIGCHLD,SIG_IGN)操作,也会产生僵尸进程。)守护进程简介  在linux或者unix操作系统中在系统的引导的时候会开启很多服务,这些服务就叫做守护进程。... 阅读全文
posted @ 2010-09-19 14:06 He,YuanHui 阅读(388) 评论(0) 推荐(1) 编辑

摘要:守护进程在Linux/Unix系统中有着广泛的应用。有时,开发人员也想把自己的程序变成守护进程。在创建一个守护进程的时候,要接触到子进程、进程组、会晤期、信号机制、文件、目录和控制终端等多个概念。因此守护进程还是比较复杂的,在这里详细地讨论Linux/Unix的守护进程的编写,总结出八条经验,并给出应用范例。编程要点1.屏蔽一些有关控制终端操作的信号。防止在守护进程没有正常运转起来时,控制终端受到... 阅读全文
posted @ 2010-09-19 14:03 He,YuanHui 阅读(313) 评论(0) 推荐(0) 编辑

摘要:一般当一个进程终止后都会发送SIGCHLD信号给它的父进程,并由此变为僵死进程直到父进程接收了其状态报告其资源才会被系统释放; 处理方法有3种: 1. 当子进程终止时父进程接收SIGCHLD信号并调用waitpid()函数接收其状态报告,最好用sigaction(),signal()不可靠; 2. 通过函数sigaction指明标志SA_NOCLDWAIT来指定信号SIGCHLD的动作,这使得内核在调用者的子进程终止时不创建僵死进程。 3. 二次fork调用; 阅读全文
posted @ 2010-09-19 14:00 He,YuanHui 阅读(446) 评论(0) 推荐(0) 编辑

摘要:本文来自Valgrind 官方网站的《Quick Start Guide》,建议读者直接到其网站上获取更详细的信息:http://www.valgrind.org/docs/manual/quick-start.html#quick-start.prepare1.IntroductionThe Valgrind tool suite provides a number of debugging a... 阅读全文
posted @ 2010-09-16 19:25 He,YuanHui 阅读(800) 评论(0) 推荐(0) 编辑

摘要:原文地址:http://www.upsdn.net/html/2006-11/775.html感谢作者给我们提供这么好的文章,解决了我的问题! ——khler简而言之,产生段错误就是访问了错误的内存段,一般是你没有权限,或者根本就不存在对应的物理内存,尤其常见的是访问0地址.一般来说,段错误就是指访问的内存超出了系统所给这个程序的内存空间,通常这个值是由gdtr来保存的,他... 阅读全文
posted @ 2010-09-16 19:00 He,YuanHui 阅读(1216) 评论(0) 推荐(0) 编辑

上一页 1 2 3 下一页

Add to Google