摘要: 转载:http://hi.baidu.com/jingweiyoung/item/ae9fc81714be67dbbf9042b9这两天在看项目的数据结构定义及关系,遇到一些关于socket的知识点,还有一些C++的知识点,下面总结下:1.structepoll_event结构体epoll_event被用于注册所感兴趣的事件和回传所发生待处理的事件,定义如下:typedefunionepoll_data{void*ptr;intfd;__uint32_tu32;__uint64_tu64;}epoll_data_t;//保存触发事件的某个文件描述符相关的数据structepoll_event{ 阅读全文
posted @ 2013-05-24 13:52 麷飞花 阅读(865) 评论(0) 推荐(0)
摘要: NAME epoll - I/O event notification facilitySYNOPSIS #include <sys/epoll.h>DEscrīptION epoll is a variant of poll(2) that can be used either as Edge or Level Triggered interface and scales well to large numbers of watched fds. Three system calls are provided to set up and control an epoll set: 阅读全文
posted @ 2013-05-24 13:50 麷飞花 阅读(629) 评论(0) 推荐(0)
摘要: 有的程序可以通过编译,但在运行时会出现Segment fault(段错误)。这通常都是指针错误引起的。但这不像编译错误一样会提示到文件一行,而是没有任何信息。一种办法是用gdb的step, 一步一步寻找。但要step一个上万行的代码让人难以想象。 我们还有更好的办法,这就是core file。如果想让系统在信号中断造成的错误时产生core文件,我们需要在shell中按如下设置:#设置core大小为无限ulimit -c unlimited#设置文件大小为无限ulimit unlimited发生core dump之后,用gdb进行查看core文件的内容,以定位文件中引发core dump的行:g 阅读全文
posted @ 2013-05-21 15:12 麷飞花 阅读(11467) 评论(0) 推荐(0)
摘要: 在Linux下执行一个文件时候提示“权限不够”的解决办法如下转到那个文件的目录下面执行下面命令: chmod 777 filename 阅读全文
posted @ 2013-05-21 11:59 麷飞花 阅读(8640) 评论(0) 推荐(0)
摘要: 临界区和互斥锁的区别1、临界区只能用于对象在同一进程里线程间的互斥访问;互斥体可以用于对象进程间或线程间的互斥访问。2、临界区是非内核对象,只在用户态进行锁操作,速度快;互斥体是内核对象,在核心态进行锁操作,速度慢。3、临界区和互斥体在Windows平台都下可用;Linux下只有互斥体可用 阅读全文
posted @ 2013-05-21 11:46 麷飞花 阅读(1593) 评论(1) 推荐(0)
摘要: 字符串转换篇atofatoiatolgcvtstrtodstrtolstrtoultoasciitolowertoupper(1)atof(将字符串转换成浮点型数)相关函数atoi,atol,strtod,strtol,strtoul定义函数double atof(const char *nptr);函数说明atof()会扫描参数nptr字符串,跳过前面的空格字符,直到遇上数字或正负符号才开始做转换,而再遇到非数字或字符串结束时('\0')才结束转换,并将结果返回。参数nptr字符串可包含正负号、小数点或E(e)来表示指数部分,如123.456或123e-2。返回值返回转换后的 阅读全文
posted @ 2013-05-20 13:23 麷飞花 阅读(896) 评论(0) 推荐(0)
摘要: 报错:1130-host ... is not allowed to connect to this MySql server解决方法:1。 改表法。可能是你的帐号不允许从远程登陆,只能在localhost。这个时候只要在localhost的那台电脑,登入mysql后,更改 "mysql" 数据库里的 "user" 表里的 "host" 项,从"localhost"改称"%"mysql -u root -pvmwaremysql>use mysql;mysql>update user 阅读全文
posted @ 2013-05-17 13:30 麷飞花 阅读(133) 评论(0) 推荐(0)
摘要: 连接:http://hi.baidu.com/kedulinjl/item/023fec5aa813810ae6c4a556 vmware 中安装linux 后如何安装vmtool 在 vmware软件中 点击setting->vmware tools install mount /dev/cdrom /mnt/cdrom cd /mnt/cdrom 里面就有显卡驱动 登录root 点击setting->vmware tools install cd /tmp tar zxvf vmware-linux-tools.tar.gz cd vmware-linux-t... 阅读全文
posted @ 2013-05-17 11:12 麷飞花 阅读(891) 评论(0) 推荐(0)
摘要: 连接http://zhidao.baidu.com/question/330773204.html视频:http://www.tudou.com/programs/view/qPpeDT1aQIM/前面创建虚拟机的时候还是按你自己的设置怎么弄都行,最后别选创建完就启动然后再编辑创建好的虚拟机,把里面的从系统镜像启动改为从物理光驱启动,如果之前设置的就是插入光盘的话先把光盘弹出来,然后再重新设置从物理光驱启动,然后启动电源,到网卡检测完了后把光盘放到光驱就行了,速度慢了没读到光盘的话直接重启就可以了重点就是开机之前将光驱设置为物理光驱,里面不要有镜像,否则VM会自动为你安装linux 阅读全文
posted @ 2013-05-16 17:31 麷飞花 阅读(179) 评论(0) 推荐(0)
摘要: Linux端口的关闭和启用Linux下面貌似没有什么直接开启或者关闭端口的命令,因为若仅仅只是开启了端口而不把它与进程相联系的话,端口的开启与关闭就显得毫无意义了(开了端口却没有程序处理进来的数据)。也就是说,Linux里面端口的活动与进程是紧密相连的,如果想要关闭某个端口,那么只要杀掉它对应的进程就可以了。例如要关闭22号端口:$ netstat -anp | grep :22tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 1666/sshd# -a 显示所有活动的TCP连接,以及正在监听的TCP和UDP端口# -n 以数字形式表示地址和端口号,不试图... 阅读全文
posted @ 2013-05-15 17:17 麷飞花 阅读(618) 评论(0) 推荐(0)