<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/P ...
分类:
其他好文 时间:
2020-03-02 13:03:16
阅读次数:
42
问:什么是I/O复用? 答:I/O复用就是让一个进程/或者线程,操作多个I/O,保证不会阻塞到某个特定的I/O.即一个进程可以处理多个请求,常见的I/O有select,poll,epoll(Linux特有)。 select: #include <sys/select.h> #include >sys ...
分类:
系统相关 时间:
2020-03-01 10:58:52
阅读次数:
89
1.文件IO 文件IO属于linux系统中关于文件操作的系统调用,对于文件的操作也是跟标准IO一样,打开文件 > 操作文件 > 关闭文件。 文件IO和标准IO的比较: 标准IO 文件IO 代表打开的文件 文件流指针(FILE*) 文件描述符(fd) 打开文件/关闭文件 fopen/fclose op ...
分类:
其他好文 时间:
2020-02-29 00:47:01
阅读次数:
95
为什么使用epoll 这个是老生常谈了,四个字,多路复用,要不单线程只能停等排队。另外select和poll不如epoll强大好用。 程序结构漫谈 代码很简陋,基本属于玩具。但是还是随便谈谈。 在单线程模型下使用epoll,只能使用一个epoll的instance同时监听socket描述符和conn ...
分类:
编程语言 时间:
2020-02-25 21:48:22
阅读次数:
91
class Foo: def __init__(self,key,hope_type): self.key=key self.hope_type=hope_type def __get__(self, instance, owner): print('输出get') return instance. ...
分类:
编程语言 时间:
2020-02-23 18:41:58
阅读次数:
90
由于中断这块的知识和代码都占较大篇幅,因此分成两章来讲,上一讲 【自制操作系统08】中断 讲述了中断的理论知识,本讲开始上代码 一、到目前为止的程序流程图 为了让大家清楚目前的程序进度,画了到目前为止的程序流程图,如下。 右半部分的时序图,就是我们今天要做做的事情,其实一句话就是:初始化中断描述符表 ...
分类:
其他好文 时间:
2020-02-21 20:41:36
阅读次数:
64
{ //https://www.cnblogs.com/blankqdb/archive/2012/08/30/2663859.html 1. send解析 sockfd:指定发送端套接字描述符。 buff: 存放要发送数据的缓冲区 nbytes: 实际要改善的数据的字节数 flags: 一般设置为 ...
分类:
系统相关 时间:
2020-02-17 01:06:54
阅读次数:
73
sysctl.conf #增加tcp侦听队列 net.core.somaxconn = 2048 #修改内核分配内存的方式(1:内核允许分配所有的物理内存) vm.overcommit_memory = 1 #进程最大打开文件描述符数 fs.file-max = 1000000 #socket 读写 ...
分类:
系统相关 时间:
2020-02-14 22:18:50
阅读次数:
100
1.Linux的应用程序是怎么调用驱动程序的? 2.应用程序的open是怎么与驱动的open对应起来的?(https://blog.csdn.net/dengdun6257/article/details/102283350) 应用层: 当应用程序调用open打开设备文件时会返回一个文件描述符,以供 ...
分类:
系统相关 时间:
2020-02-12 20:19:43
阅读次数:
83
evutil: 用于抽象不同平台网络实现差异的通用功能。 event和event_base: libevent的核心,为各种平台特定的、基于事件的非阻塞 IO后端提供抽象API,让程序可以知道套接字何时已经准备好,可以读或者写,并且处理基本的超时功能,检测OS信号。用 libevent 函数之前需要 ...
分类:
其他好文 时间:
2020-02-12 13:08:43
阅读次数:
64