Linux
文章平均质量分 77
longhopefor
自强不息
展开
-
Linux压缩总结
Linux下最常用的打包程序就是tar了,使用tar程序打出来的包我们常称为tar包,tar包文件的命令通常都是以.tar结尾的。生成tar包后,就可以用其它的程序来进行压缩了,所以首先就来讲讲tar命令的基本用法: tar命令的选项有很多(用man tar可以查看到),但常用的就那么几个选项,下面 来举例说明一下: # tar -cf all.tar *.jpg 这条原创 2014-02-28 15:19:26 · 611 阅读 · 0 评论 -
UNIX环境高级编程--“apue.h”问题
由于apue.h头文件为作者自己编写而非系统自带,故需要自行添加!,具体步骤如下:第一:打开网站 http://www.apuebook.com/第二:选择合适的版本(一共有三个版本,根据书的版本选择)下载源码source code 解压: tar -zxvf src.2e.tar.gz 得到apue.2e 复制apue.h 到原创 2014-03-27 16:28:22 · 597 阅读 · 0 评论 -
linux进程通信之共享内存
共享内存允许两个或多个进程共享一给定的存储区,因为数据不需要来回复制,所以是最快的一种进程间通信机制。共享内存可以通过mmap()映射普通文件(特殊情况下还可以采用匿名映射)机制实现,也可以通过系统V共享内存机制实现。应用接口和原理很简单,内部机制复杂。为了实现更安全通信,往往还与信号量等同步机制共同使用。下面主要介绍系统V共享内存机制,主要用到的系统API包括:1.shmget函数:获得一个原创 2014-07-25 16:01:01 · 909 阅读 · 0 评论 -
hash_set 在g++下编译出现not declare的问题
今天在Ubuntu下写一个程序的时候用到了hash_set容器,出现一点问题,在这里记录一下,先说一下,hash_*系列例如hash_map,hash_set 等已经被废弃了,C++11用unordered_map,unordered_set等来替代,但是我用的g++ 4.6.1警告说C++11特性是实验性的,貌似到4.8才完全支持。所以就改用hash_set了,写了如下的程序:#includ原创 2014-07-04 21:19:59 · 5688 阅读 · 0 评论 -
linux进程通信之SYSTEM V信号量
信号量的使用主要是用来保护共享资源,使得资源在一个时刻只有一个进程(线程)所拥有。信号量的值为正的时候,说明它空闲。所测试的线程可以锁定而使用它。若为0,说明它被占用,测试的线程要进入睡眠队列中,等待被唤醒。一、信号量的分类:在学习信号量之前,我们必须先知道——Linux提供两种信号量:(1) 内核信号量,由内核控制路径使用。(2) 用户态进程使用的信号量,这种信号量又分为POSI原创 2014-07-25 19:38:24 · 1401 阅读 · 0 评论 -
关于Segmentation fault错误
今天写程序时候出现了Segmentation fault,在网上查了一些资料,基本上的原因是,非法的内存访问。例如数组的越界,在循环操作时循环变量的控制问题,也有字符串拷贝时长度溢出,指针指向了非法的空间,还有就是申明一个指针,但却没有对其初始化,就直接引用,或者没有开辟内存空间就释放内存,下面是自己找的一些可能情况,当做提醒自己吧。1.内存访问越界 a) 由于使用错误的下标原创 2014-07-07 18:02:03 · 2167 阅读 · 0 评论 -
linux 网络编程 socket bind failed 问题解决
今天写一个简单的socket网络通讯的程序的时候,用ctrl+c结束服务器端程序之后,再次启动服务器出现了bind failed:the address already in use的错误。在网上查了一下以后找到了原因,在此记录一下。这个IBM的官网上说到了这一点:http://www.ibm.com/developerworks/cn/linux/l-sockpit/。详细介绍如下:原创 2014-07-09 15:28:45 · 10893 阅读 · 0 评论 -
linux线程间通信之条件变量和互斥量
条件变量是线程间的一种同步机制,原创 2014-07-28 21:58:25 · 1360 阅读 · 0 评论 -
linux编程实例--简单多进程服务器
主要利用fork事先创建若干个进程,并发处理多个客户端的连接,返回当前系统时间。具体代码如下:server.c# include # include # include # include # include # include # include # include # include #define BUFFLEN 1024#define SERVER_PORT原创 2014-08-13 17:22:00 · 895 阅读 · 0 评论