05 2013 档案

摘要:转载于http://www.52rd.com/Blog/Detail_RD.Blog_renjwjx_17460.html互斥锁尽管在Posix Thread中同样可以使用IPC的信号量机制来实现互斥锁mutex功能,但显然semphore的功能过于强大了,在Posix Thread中定义了另外一套专门用于线程同步的mutex函数。1. 创建和销毁有两种方法创建互斥锁,静态方式和动态方式。POSIX定义了一个宏PTHREAD_MUTEX_INITIALIZER来静态初始化互斥锁,方法如下: pthread_mutex_t mutex=PTHREAD_MUTEX_INITIALIZER; 在Li 阅读全文
posted @ 2013-05-25 13:26 麷飞花 阅读(305) 评论(0) 推荐(0)
摘要:hpp,顾名思义等于.h加上.cpp,在boost、Xerces等开源库中频繁出现,偶在机缘巧合之下,学得一招半式,遂记录如下,以供参考学习。 hpp,其实质就是将.cpp的实现代码混入.h头文件当中,定义与实现都包含在同一文件,则该类的调用者只需要include该hpp文件即可,无需再将cpp加入到project中进行编译。而实现代码将直接编译到调用者的obj文件中,不再生成单独的obj,采用hpp将大幅度减少调用project中的cpp文件数与编译次数,也不用再发布烦人的lib与dll,因此非常适合用来编写公用的开源库。 hpp的优点不少,但是编写中有以下几点要注意:1、不可包含全局对象和 阅读全文
posted @ 2013-05-25 09:20 麷飞花 阅读(986) 评论(0) 推荐(0)
摘要:转载: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 麷飞花 阅读(631) 评论(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 麷飞花 阅读(11468) 评论(0) 推荐(0)
摘要:在Linux下执行一个文件时候提示“权限不够”的解决办法如下转到那个文件的目录下面执行下面命令: chmod 777 filename 阅读全文
posted @ 2013-05-21 11:59 麷飞花 阅读(8644) 评论(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 麷飞花 阅读(180) 评论(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 麷飞花 阅读(619) 评论(0) 推荐(0)
摘要:一:列文件清单1. List(gdb) list line1,line2二:执行程序要想运行准备调试的程序,可使用run命令,在它后面可以跟随发给该程序的任何参数,包括标准输入和标准输出说明符(<和>)和外壳通配符(*、?、[、])在内。如果你使用不带参数的run命令,gdb就再次使用你给予前一条run命令的参数,这是很有用的。利用set args 命令就可以修改发送给程序的参数,而使用show args 命令就可以查看其缺省参数的列表。(gdb)set args –b –x(gdb) show argsbacktrace命令为堆栈提供向后跟踪功能。Backtrace 命令产生一张 阅读全文
posted @ 2013-05-15 11:18 麷飞花 阅读(116) 评论(0) 推荐(0)
摘要:01-.tar格式解包:[*******]$ tar xvf FileName.tar打包:[*******]$ tar cvf FileName.tar DirName(注:tar是打包,不是压缩!)02-.gz格式解压1:[*******]$ gunzip FileName.gz解压2:[*******]$ gzip -d FileName.gz压 缩:[*******]$ gzip FileName03-.tar.gz格式解压:[*******]$ tar zxvf FileName.tar.gz压缩:[*******]$ tar zcvf FileName.tar.gz DirName 阅读全文
posted @ 2013-05-14 13:11 麷飞花 阅读(342) 评论(0) 推荐(0)
摘要:#include <linux/***.h> 是在linux-2.6.29/include/linux下面寻找源文件。#include <asm/***.h> 是在linux-2.6.29/arch/arm/include/asm下面寻找源文件。#include <mach/***.h> 是在linux-2.6.29/arch/arm/mach-s3c2410/include/mach下面寻找源文件。#include <plat/regs-adc.h>在linux-2.6.31_TX2440A20100510/linux-2.6.31_TX244 阅读全文
posted @ 2013-05-13 16:39 麷飞花 阅读(285) 评论(0) 推荐(0)
摘要:如果mysql不支持远程连接,会出现提示:错误代码是1130,ERROR 1130: Host * is not allowed to connect to this MySQL server 。解决此问题有以下2个方法:localhost改成%进入mysql的BIN目录代码如下复制代码mysql -u root -pmysql>use mysql;mysql>update user set host =’%'where user =’root’;mysql>flush privileges;具体分析1、在本机登入mysql后,更改“mysql”数据库里的“user” 阅读全文
posted @ 2013-05-12 18:07 麷飞花 阅读(378) 评论(0) 推荐(0)
摘要:转载于:http://www.anbob.com/archives/579.htmlmysql> insert into core_user(login_name,real_name,password,email,create_time,is_disab….. ‘> quit ‘> exit ‘> ; ‘> \ ‘> \c ‘> /c终止批处理操作吗(Y/N)? y遇到上面的情况无法终于sql编辑,最后没办法ctrl+c,强退了mysql ,后来找了一下官方文档,上面是有说明的,前面的提示符很重要,要用 ‘\c 退出————————以下官方的说明--- 阅读全文
posted @ 2013-05-12 18:05 麷飞花 阅读(2692) 评论(1) 推荐(0)
摘要:步聚:1,下载源代码 http://download.chinaunix.net/down.php?id=34&ResourceID=19&site=12,编译源代码,可参考帮助文件INSTALL。# tar zvxf vsftd-xxx.tar.gz# cd vsftd-xxx# more INSTALL 里面详细介绍安装过程# make 生成二进制文件# make install 安装 注意和上面的INSTALL的大小写区别3,安装配置文件# cp vsftpd.conf /etc# cp RedHat/vsftpd.pam /etc/pam.d/ftp cp成ftp文件, 阅读全文
posted @ 2013-05-11 07:51 麷飞花 阅读(569) 评论(0) 推荐(0)
只有注册用户登录后才能阅读该文。
posted @ 2013-05-09 22:36 麷飞花 阅读(8) 评论(0) 推荐(0)