
Linux
huygft
这个作者很懒,什么都没留下…
展开
-
Could not get lock /var/lib/apt/lists/lock - open (11: Resource temporarily unavailable)
sudo apt-get update更新时出现上面的错误解决办法:① sudo rm /var/cache/apt/archives/locksudo rm /var/dpkg/lock②ps aux | grep apt③sudo kill -9 pid (把这些进程都杀掉再次sudo apt-get update就可以了)...原创 2018-03-26 11:07:49 · 788 阅读 · 0 评论 -
Linux中绝对时间和相对时间总结
1、系统绝对时间2、相对时间3、基本原语,使用时间的相关函数,以及处理方法。原创 2018-06-28 21:30:57 · 9960 阅读 · 3 评论 -
Centos安装man pages
1、安装man pages:yum install man2、安装pthread的man pages:yum -y install man-pages原创 2018-06-04 10:44:38 · 4385 阅读 · 0 评论 -
信号(七)信号捕捉
一、利用signal函数来简单捕捉信号#include <signal.h>typedef void (*sighandler_t)(int); //定义一个函数指针类型,其中函数的返回值为void,函数参数为int;其实一个函数的函数名就是函数指针sighandler_t signal(int signum, sighandler_t handler);//函数返回值:s...原创 2018-04-12 22:26:39 · 572 阅读 · 0 评论 -
Linux下IPC方法-内存映射区(一)文件进程间通信
1、使用文件进行进程间通信的理论依据是,fork之后,父子进程共享打开文件的文件描述符;也就是共享打开的文件。2、父子进程通过文件进行进程间通信://父子进程共享打开的文件描述符,使用文件进行进程间通信#include<stdio.h>#include<unistd.h>#include<string.h>#include<stdlib.h>...原创 2018-04-06 17:08:11 · 471 阅读 · 0 评论 -
Linux下七种文件类型总结
1、Linux下七种文件类型文件类型标识文件类型-普通文件d目录l 符号链接s(伪文件)套接字b(伪文件)块设备c(伪文件)字符设备p(伪文件)管道2、占用存储空间的类型:文件、目录、符号链接。符号链接记录的是路径,路径不长时存在innode里面。 其他四种:套接字、块设备、字符设备、管道是伪文件,不占用磁盘空间。...原创 2018-04-06 16:04:26 · 15141 阅读 · 2 评论 -
信号(六)信号集操作函数
一、内核通过读取未决信号集来判断信号是否应该被处理。信号屏蔽字mask可以影响未决信号集。为我们可以在应用程序中自定义set来改变mask,来达到屏蔽指定信号的目的。二、信号集设定:sigset_t set;//typedef unsigned long sigset_t; int sigemptyset(sigset_t *set); //将某个信号集清零int sigfillset(...原创 2018-04-11 23:15:03 · 384 阅读 · 0 评论 -
信号(三)Kill函数和Kill命令
一、Kill命令 1、Kill命令: kill -信号编号/信号名 pid 2、Kill命令其实是用来发送信号的,我们常用的Kill -9 pid只是给某个进程发送9号信号而已,而不是说杀死该进程。 二、Kill函数 1、作用:给指定进程发送指定信号。(不一定会杀死进程,取决于发送的是什么信号) 2、函数原型、返回值(man 2 kill 查看) ①函数原型:...原创 2018-04-10 22:33:08 · 7693 阅读 · 0 评论 -
利用mmap函数实现多进程文件拷贝
这里利用mmap函数创建内存映射区的方式来实现多个进程对文件进行拷贝的功能。其中利用到的函数主要有access、lseek、open、ftruncate、mmap、munmap、fork。其中主要步骤如下:①利用access判断要复制的文件是否存在,如果存在就用open函数打开,不存在的话就返回错误。②利用lseek函数获取要复制文件的大小,其中利用了SEEK_END宏,意思是知道文件尾。③利用m...原创 2018-04-02 22:52:21 · 1515 阅读 · 0 评论 -
信号(二)信号的四个要素
一、信号的四个要素是:信号名、信号编号、信号默认动作、事件描述。 Linux中查看各个信号详情使用命令: man 7 signal二、信号的编号(可以用kill -l 查看信号的编号) 1、信号的分类 ①常规信号:信号编号1-31号的信号 ②实时信号:信号编号32-64的信号 2、为什么上图中有些信号的有三个编号? 答:三个值分别是三个不...原创 2018-04-09 21:38:27 · 1146 阅读 · 0 评论 -
exec函数族
概述:一般来说,fork创建一个子进程后,父子进程会执行相同的程序(fork后面的代码);此时如果要让子进程执行其他的程序就需要用到exec函数了。当进程调用exec函数时,该进程的用户空间代码和数据会完全被新的进程替换,从新程序的启动例程(main函数或者叫启动伊始程序)开始执行。调用exec并不创建新的进程,故调用exec函数前后进程的ID不变化。1、exec函数族有什么作用? 运行一个进程...原创 2018-03-26 21:49:08 · 242 阅读 · 0 评论 -
Linux下IPC总结
1、什么是IPC? IPC:interprocess communication-进程间通信 Linux环境下,进程地址空间相互独立,每个进程各自有不同的用户地址空间。任何一个进程的全局变量在另一个进程中都看不到,所以进程和进程间不能互相访问,要交换数据必须通过内核,在内核中开辟一块缓存区,进程1把数据从用户空间拷贝到内存缓冲区,进程2再从内存缓冲区中把数据读走,内核提供的这种机制称为...原创 2018-03-26 19:37:52 · 1043 阅读 · 0 评论 -
Linux下IPC方法-内存映射区(二)mmap函数解析
1、存储映射I/O的概念及为什么要用内存映射区? 存储映射I/O(memory-mapped I/O):使一个磁盘文件与存储空间中的一个缓冲区相映射。于是从缓冲区中取数据就相当于读文件中的相应字节了。将数据存入缓冲区则相应的字节就写入到文件。这样就可以在不适用read和write函数的情况下,使用地址(指针)完成I/O操作。2、内存映射区的特点? 既可以在有血缘关系进程间,也可以在非血...原创 2018-03-26 19:37:13 · 250 阅读 · 0 评论 -
Linux下IPC方法-FIFO
1、原创 2018-03-26 19:36:43 · 210 阅读 · 0 评论 -
Linux下IPC方法-PIPE
1、原创 2018-03-26 19:35:52 · 223 阅读 · 0 评论 -
信号(一)基本概念
一、很多事物或者是说很多系统的设计都是从生活中启发的,信号在生活中常见的是“信号弹”和“摔杯为号”,而我们可以从中总结出来信号有三个主要特性:①简单 ②不能携带大量数据 ③满足某个特定条件才发送 。二、Linux中信号执行的机制:进程A给进程B发送信号,进程B收到信号前执行自己的相应指令;收到信号后,不管进程B执行到什么位置,都必须要暂停执行;去处理信号,当信号处理完后再回去执行原来的指令。从信号...原创 2018-04-08 21:14:37 · 451 阅读 · 0 评论 -
Makefile中要编译多线程是报undefined reference to `pthread_create'类似错误
Makefile中要编译包含线程库的文件时,把-lpthread放在哪里呢?答:把-lpthread放在链接那句编译命令的最后即可啦。如: $(CC) -o test_threadpool main.o threadpool.o -lpthread编译阶段是不用加这个参数的。...原创 2018-08-16 17:31:24 · 2899 阅读 · 1 评论