摘要:
转载:http://blog.csdn.net/ubuntulover/article/details/7581317(1) 从静态存储区域分配。内存在程序编译的时候就已经分配好,这块内存在程序的整个运行期间都存在。例如全局变量,static变量。(2) 在栈上创建。在执行函数时,函数内局部变量的存储单元都可以在栈上创建,函数执行结束时这些存储单元自动被释放。栈内存分配运算内置于处理器的指令集中,效率很高,但是分配的内存容量有限。(3)从堆上分配,亦称动态内存分配。程序在运行的时候用malloc或new申请任意多少的内存,程序员自己负责在何时用free或delete释放内存。动态内存的生存期由 阅读全文
摘要:
glob库函数用于Linux文件系统中路径名称的模式匹配,即查找文件系统中指定模式的路径。注意,这不是正则表达式匹配,虽然有些相似,但还是有点差别。glob函数原型 #include int glob(const char *pattern, int flags, int errfunc(const char *epath, int eerrno), glob_t *pglob); glob函数搜索匹配 函数pattern中的参数,如/*是匹配根文件下的所有文件(不包括隐藏文件,要找的隐藏文件需要从新匹配),然后会将匹配出的结果存放到 pglob,即第4个参数中,第二个参数能选择匹配模式,如. 阅读全文
摘要:
转载:http://blog.csdn.net/universsky/article/details/8866402linux中grep命令的使用grep (global search regular expression(RE) and print out the line,全面搜索正则表达式并把行打印出来)是一种强大的文本搜索工具,它能使用正则表达式搜索文本,并把匹配的行打印出来。Unix的grep家族包 括grep、egrep和fgrep。grep命令是一种强大的文本搜索工具,它能使用正则表达式搜索文本,并把匹 配的行打印出来。grep全称是Global Regular Expressi 阅读全文
摘要:
转载:http://www.cppblog.com/aa19870406/archive/2012/07/12/183018.htmlhttp://www.cnblogs.com/mydomain/archive/2011/08/23/2150567.html编写 TCP/SOCK_STREAM 服务程序时,SO_REUSEADDR到底什么意思?这个套接字选项通知内核,如果端口忙,但TCP状态位于 TIME_WAIT ,可以重用端口。如果端口忙,而TCP状态位于其他状态,重用端口时依旧得到一个错误信息,指明"地址已经使用中"。如果你的服务程序停止后想立即重 启,而新套接字依 阅读全文
摘要:
转载:http://hi.baidu.com/zorro_knight/item/37af9e8c9dc71253e73d1924linux下的socket INADDR_ANY表示的是一个服务器上所有的网卡(服务器可能不止一个网卡)多个本地ip地址都进行绑定端口号,进行侦听。不光是多个网卡的问题.见如下server listen:80 0.0.0.0 //INADDR_ANY,外部的client ask 从哪个server的地址近来都可以连接到80端口.8088 192.168.1.11 //外部的client ask 从server地址192.168.1.11进来才可以连接... 阅读全文
摘要:
转载:http://www.cnblogs.com/zzx1045917067/archive/2012/12/19/2824552.html内核空间和用户空间是现代操作系统的两种工作模式,内核模块运行在内核空间,而用户态应 用程序运行在用户空间。它们代表不同的级别,而对系统资源具有不同的访问权限。内核模块运行在最高级别(内核态),这个级下所有的操作都受系统信任,而应 用程序运行在较低级别(用户态)。在这个级别,处理器控制着对硬件的直接访问以及对内存的非授权访问。内核态和用户态有自己的内存映射,即自己的地址空 间。处理器总处于以下状态中的一种:1、内核态,运行于进程上下文,内核代表进程运行于内 阅读全文