![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Linux
西西^^
这个作者很懒,什么都没留下…
展开
-
Linux的文件类型权限与目录配置
一、目录存储层次二、文件权限Linux最优秀的地方在于多用户多任务,为了保密各个用户的档案数据,所以档案权限管理很重要在Linux中任何档案都有 user 、group、other 三种身份的个别权限...原创 2019-01-09 16:17:19 · 162 阅读 · 0 评论 -
[Linux]makefile文件
两种写法:原创 2019-04-14 23:44:21 · 147 阅读 · 0 评论 -
Linux----多进程通讯
进程之间通讯总共有五种方式,下面分别来分析一、管道管道又分为有名管道和无名管道。(1)有名管道原创 2019-04-09 22:49:40 · 179 阅读 · 0 评论 -
Linux----线程与进程的区别
一、概念进程 是在内存上运行着的程序线程 是轻量级的进程。是进程内部的一条执行序列(一组有序指令),或者说是执行流。一个进程至少有一条线程,就是main函数所代表的执行序列,通过线程库可以创建线程(即函数线程),一个进程中所有的线程是并发执行的。 主线程仅仅代表进程执行的第一条线程。当主线程通过线程库创建出函数线程以后,所有线程就没有任何区别。二、进程与线程的区别a、进程是资源分配的...原创 2019-04-14 23:45:12 · 108 阅读 · 0 评论 -
TCP高性能服务器编程----进程池、线程池
一、概念服务器启动则创建n(固定值,有限值)个子进程或者函数线程,创建的子进程或者函数线程在服务器终止时销毁,如果有客户端链接,则分配一个子进程或者线程为其服务,服务完成之后则继续等待分配下一个客户端二、线程池相比多线程的优势1、创建的进程或者线程是有限的,服务器的系统代价比较小,一般不会达到系统限制的值2、服务器不需要频繁的创建、销毁进程或者线程,只是在服务器启动时创建,结束时销毁3、...原创 2019-04-22 18:19:03 · 275 阅读 · 0 评论 -
I/O复用----select
在之前的进程池、线程池中,一个进程或线程同一时刻只能处理一个客户端,也就是说进程或者线程经常阻塞在recv,是对进程或者线程的浪费,因此有了I/O复用一、概念I/O复用:将N个文件描述法统一监视,当其中某些文件描述符上有事件发生,则程序只处理有事件发生的文件描述符有三种:select、poll、epoll(linux独有)二、select头文件:#include<sys/selec...原创 2019-04-22 20:58:00 · 151 阅读 · 0 评论 -
I/O复用----poll
一、使用int poll(struct pollfd *fds,int nfds,int timeout);(1) struct pollfd{int fd; //关注的文件描述符short events; // 关注的是文件描述符上的哪种事件short revents; // 由内核修改的,返回此文件描述符上发生的事件类型(必须是events指定的关注的事件)(2)nfds:...原创 2019-04-22 21:38:55 · 153 阅读 · 0 评论 -
I/0复用----epoll
一、使用epoll使用一组函数来实现来完成任务,而不是单个函数(1) int epoll_create(int size); 创建内核事件表内核事件表:在系统内核中创建一个用于记录用户关注的文件描述符上的事件的一个表select : fd_set read; // 用户空间poll :struct pollfd fds[n] //用户空间返回值: 失败返回-1 成功返回内核...原创 2019-04-22 22:16:16 · 99 阅读 · 0 评论 -
进程、线程、协程
一、进程进程拥有自己独立的堆和栈,既不共享堆,亦不共享栈,进程由操作系统调度。二、线程线程拥有自己独立的栈和共享的堆,共享堆,不共享栈,线程亦由操作系统调度(标准线程是的)。三、协程协程(coroutine)是一种比线程更轻量级的并发执行单元,它的切换开销和内存栈的占用大小都比线程要小。只要内存足够,在一个线程中可有上万个或更多的协程。跨平台跨体系架构无需线程上下文切换的开销无需...原创 2019-06-25 19:33:43 · 141 阅读 · 0 评论