UNIX环境编程
文章平均质量分 50
skyie
这个作者很懒,什么都没留下…
展开
-
tar 命令使用
tar命令详解-c: 建立压缩档案-x:解压-t:查看内容-r:向压缩归档文件末尾追加文件-u:更新原压缩包中的文件这五个是独立的命令,压缩解压都要用到其中一个,可以和别的命令连用但只能用其中一个。下面的参数是根据需要在压缩或解压档案时可选的。-z:有gzip属性的-j:有bz2属性的-Z:有compress属性的-v:显示所有过程-O:将文件解开到原创 2015-08-01 20:03:55 · 304 阅读 · 0 评论 -
动态链接相关
转载自:http://chenzhou123520.iteye.com/blog/1925196linux上启动Memcache报错:Shell代码 [root@localhost memcached]# ./bin/memcached -d -m 2048 -p 11211 -u root ./bin/memcached: error while lo转载 2015-05-03 21:45:24 · 565 阅读 · 0 评论 -
linux 环境变量
1.概述Linux是一个多用户的操作系统。多用户意味着每个用户登录系统后,都有自己专用的运行环境。而这个环境是由一组变量所定义,这组变量被称为环境变量。用户可以对自己的环境变量进行修改以达到对环境的要求。环境变量是和Shell紧密相关的,它是通过Shell命令来设置的。环境变量又可以被所有当前用户所运行的程序所使用。对于bash来说,可以通过变量名来访问相应的环境变量。2.显示转载 2015-05-05 23:13:17 · 387 阅读 · 0 评论 -
TIPC 链接
http://sourceforge.jp/projects/sfnet_tipc/releases/原创 2015-04-24 22:59:21 · 950 阅读 · 0 评论 -
测试代码
#include #include #include #include #include #define BUFSIZE 1024/* popen 的例子 */void test_popen(){ FILE* fp; char buf[BUFSIZ]; const char* cmd = "uname -a"; int readnum;原创 2015-04-20 20:05:38 · 570 阅读 · 0 评论 -
C++四种类型转换
C++的四种cast操作符的区别并非我的原创----------------------------------------------------------------------Q:什么是C风格转换?什么是static_cast, dynamic_cast 以及 reinterpret_cast?区别是什么?为什么要注意?A:转换的含义是通过改变一个变量的类型为别的类型从转载 2013-10-01 22:03:24 · 555 阅读 · 0 评论 -
【Windows核心编程】Windows常见数据类型
一,常见数据类型 WORD: 16位无符号整形数据 DWORD: 32位无符号整型数据(DWORD32) DWORD64: 64位无符号整型数据 INT: 32位有符号整型数据类型 INT_PTR: 指向INT数据类型的指针类型转载 2013-05-10 23:46:59 · 485 阅读 · 0 评论 -
设计模式C++实现(1)——工厂模式
转自http://blog.csdn.net/wuzhekai1985 软件领域中的设计模式为开发人员提供了一种使用专家设计经验的有效途径。设计模式中运用了面向对象编程语言的重要特性:封装、继承、多态,真正领悟设计模式的精髓是可能一个漫长的过程,需要大量实践经验的积累。最近看设计模式的书,对于每个模式,用C++写了个小例子,加深一下理解。主要参考《大话设计模式》和《设计模式:可复用面向转载 2012-10-20 17:15:54 · 483 阅读 · 0 评论 -
[收集]c++抽象类、纯虚函数以及巧用纯虚析构函数实现接口类
在Java、C#中有关键词abstract指明抽象函数、抽象类,但是在C++中没有这个关键词,很显然,在C++也会需要只需要在基类声明某函数的情况,而不需要写具体的实现,那C++中是如何实现这一功能的,答案是纯虚函数。 含有纯虚函数的类是抽象类,不能生成对象,只能派生。他派生的类的纯虚函数没有被改写,那么它的派生类还是个抽象类。定义纯虚函数就是为了让基类不可实例化化,因为实例化这样的抽象数据结构本转载 2012-10-16 17:30:45 · 1990 阅读 · 0 评论 -
fork,vfork,clone区别
fork,vfork,clone都是linux的系统调用,用来创建子进程的(确切说vfork创造出来的是线程)。先介绍下进程必须的4要点:a.要有一段程序供该进程运行,就像一场戏剧要有一个剧本一样。该程序是可以被多个进程共享的,多场戏剧用一个剧本一样。b.有起码的私有财产,就是进程专用的系统堆栈空间。c.有“户口”,既操作系统所说的进程控制块,在linux中具体实现转载 2016-03-20 16:03:53 · 468 阅读 · 0 评论 -
recv 函数用法
int recv( SOCKET s, char FAR *buf, int len, int flags ); 不论是客户还是服务器应用程序都用recv函数从TCP连接的另一端接收数据。该函数的第一个参数指定接收端套接字描述符;第二个参数指明一个缓冲区,该缓冲区用来存放recv函数接收到的数据;第三个参数指明buf的长度;原创 2013-04-26 20:01:23 · 2236 阅读 · 0 评论 -
epoll示例
server端#include #include #include #include #include #include #include #include #include #define BUF_SIZE 20void do_connect(int fd){ fprintf(stderr, "start process fd %d\n", fd);}void原创 2015-04-20 20:21:57 · 401 阅读 · 0 评论 -
select 示例
server/** * select server端测试代码 */#include #include #include #include #include #include #include #include #define PORT 8888#define ADDR "127.0.0.1"#define MAX_FD 1024int server_init原创 2015-04-20 21:14:18 · 446 阅读 · 0 评论 -
LD_DEBUG使用
LD_DEBUG1.LD_DEBUG 可以用来查看程序搜索库的路径,使用方法如下: LD_DEBUG=libs ./your_program LD_DEBUG=help 查看命令使用方法 2.执行 find /usr -name libevent-1.4.so.2 得知libevnet=1.4.so.2已经安装,但是不在默认共享库的查找路径下.库路径在该目录下:/usr/local/lib/原创 2015-05-03 21:31:59 · 6773 阅读 · 0 评论 -
linux 时间处理
http://blog.csdn.net/cywosp/article/details/25839551在程序中时间处理往往是一个麻烦的事,Linux系统提供了很多关于时间处理的函数,我们可以用这些函数来完成我们所需要的功能。那么在程序中一般会关心哪些时间问题呢?真实时间:程序运行的时间,即程序启动到程序消亡所用时间或程序运行到现在所经过的时间进程时间:一个进程所使转载 2015-05-01 15:41:00 · 634 阅读 · 0 评论 -
netlink机制
转载自:http://www.cnblogs.com/iceocean/articles/1594195.htmlNetlink 是一种特殊的 socket,它是 Linux 所特有的,类似于 BSD 中的AF_ROUTE 但又远比它的功能强大,目前在最新的 Linux 内核(2.6.14)中使用netlink 进行应用与内核通信的应用很多,包括:路由 daemon(NETLI转载 2015-05-01 10:30:55 · 399 阅读 · 0 评论 -
Linux 动态库与静态库
转载自:http://blog.chinaunix.net/uid-23069658-id-3142046.html今天我们主要来说说Linux系统下基于动态库(.so)和静态(.a)的程序那些猫腻。在这之前,我们需要了解一下源代码到可执行程序之间到底发生了什么神奇而美妙的事情。 在Linux操作系统中,普遍使用ELF格式作为可执行程序或者程序生成过程中的中间格式。ELF(Exe转载 2015-07-29 13:40:04 · 488 阅读 · 0 评论 -
linux内存映射mmap原理分析
linux内存映射mmap原理分析内存映射,简而言之就是将用户空间的一段内存区域映射到内核空间,映射成功后,用户对这段内存区域的修改可以直接反映到内核空间,同样,内核空间对这段区域的修改也直接反映用户空间。那么对于内核空间用户空间两者之间需要大量数据传输等操作的话效率是非常高的。以下是一个把普遍文件映射到用户空间的内存区域的示意图。图一:二、转载 2015-07-29 22:56:28 · 623 阅读 · 0 评论 -
socket linger 选项
当调用closesocket关闭套接字时,SO_LINGER将决定系统如何处理残存在套接字发送队列中的数据。处理方式无非两种:丢弃或者将数据继续发送至对端,优雅关闭连接。事实上,SO_LINGER并不被推荐使用,大多数情况下我们推荐使用默认的关闭方式(即下方表格中的第一种情况)。下方代码段显示linger结构语法,表格为不同参数情况下的套接字行为。typedef struct li转载 2017-02-15 11:44:47 · 1592 阅读 · 0 评论