![](https://img-blog.csdnimg.cn/20201014180756926.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Linux
文章平均质量分 71
foooooods
我不懒啊
展开
-
OSI七层模型
物理层:主要定义物理设备标准,如网线的接口类型,光纤的接口类型,各种传输介质的传输速率等,他的主要作用是传输比特流(就是由1,0转化为电流强弱来进行传输,到达目的地后再转化为1,0,也就是我们常说的数模转换与模数转换)这一层的数据叫做比特。 数据链路层:定义了如何让格式化数据以帧为单位进行传输,以及如何控制对物理介质的访问,这一层通常还提供错误检测和纠正,以确保数据的可靠传输。 网络层:在位于...原创 2019-10-26 14:59:45 · 186 阅读 · 0 评论 -
TIME_WAIT状态
客户端在接收到服务器的结束报文段之后,并没有直接进入closed状态,而是转移到了TIME_WAIT状态,在这个状态,客户端连接要等待一段长为2msl的时间(报文的最大生存时间),才能完全关闭,msl是tcp报文段在网络中的最大生存时间,标准文档的建议值是2min.TIME_WAIT状态存在的原因有两点:可靠的终止tcp连接 保证迟来的tcp报文段有足够的时间被识别并被丢弃第一个原...原创 2019-10-25 23:46:02 · 454 阅读 · 0 评论 -
总结一下操作系统里面的几个算法
1.作业调度算法2.进程调度算法3.银行家算法4.页面置换算法5.磁盘调度算法1.作业调度算法(1)先来先服务(FCFS) (2)短作业优先(SJF) (3)优先级调度算法(PSA) (4)高响应比优先调度算法(HRRN) 在批处理系统中,fcfs算法所考虑的只是作业等待时间,而忽视了...原创 2018-06-15 09:06:44 · 7196 阅读 · 1 评论 -
fork()函数
计算机程序设计中的分叉函数返回值: 若成功调用一次则返回两个值,子进程返回0,父进程返回子进程标记;否则,出错返回-1。fork函数将运行着的程序分成2个(几乎)完全一样的进程,每个进程都启动一个从代码的同一位置开始执行的线程。这两个进程中的线程继续执行,就像是两个用户同时启动了该应用程序的两个副本(是副本人所以内存不共享)打印出来三个A,,创建了三个进程,,如in...原创 2018-05-17 17:23:12 · 8330 阅读 · 0 评论 -
进程地址空间 实模式和保护模式
进程地址空间是虚拟地址空间就要把他转化位物理地址,通过mm_struct中有个pgd 的指针指向页目录表,,通过页目录表可以找到对应的页表,然后通过页表找到物理页面,这样就把虚拟地址转换成了物理地址开始第一:实模式下程序的运行回顾.程序运行的实质是什么?其实很简单,就是指令的执行,显然CPU是指令得以执行的硬件保障,那么CPU如何知道指令在什么地方呢?...原创 2019-01-15 02:44:48 · 673 阅读 · 0 评论 -
静态库和共享库的区别
根据链接时期不同,库分为静态库和动态库。静态库是在程序编译时链接的,动态库是在程序运行时链接的。 库是预先编译好的方法的集合 ,linux上库的命名一般为libxxx.a(静态库)libxxx.so(动态库),库文件常存放的地点为/lib或/usr/lib,库对应的头文件一般存放在/usr/include中 下面介绍两种库:1.静态库的生...原创 2018-05-09 23:02:44 · 11892 阅读 · 7 评论 -
高性能io框架库libevnet 简介
libevent 库简介libevent 是一款事件驱动的网络开发包,由于采用c语言开发 ,体积小,跨平台,速度极快,大量开源项目使用了libevent比如谷歌浏览器,和分布式告诉缓存系统memcached,libevnet支持kqueue,select,poll,epoll,iocp(非阻塞的工作模式),事件内部机制完全独立于公开的额事件api,libevnet 支持跨平台,可在lin...原创 2019-09-26 13:26:01 · 776 阅读 · 0 评论 -
IO复用-——select
IO复用使得程序能够监听多个文件描述符,这对提高程序的性能至关重要。通常,网络程序在下列情况下需要使用IO复用技术。客户端程序需要同时处理多个socket 客户端程序需要同时处理用户输入和网络连接 tcp服务器要同时处理连接套接字和监听套接字 服务器需要同时处理tcp请求和udp请求 服务器同时要监听多个端口或者处理多种服务select系统调用在一段指定时间内监听用户感兴趣的文件...原创 2019-09-28 17:24:11 · 152 阅读 · 0 评论 -
IO复用——poll系统调用
poll系统调用和select 系统调用类似,也是在指定时间内轮询一定数量的文件描述符,以测试其中是否有就绪着,poll 原型如下:#include<poll.h>int poll(struct pollfd*fds,nfds_t nfds,int timeout);(1)参数fds是一个pofffd结构类型的数组,它指定我们所有感兴趣的文件描述符上发生的可读可写和异常的...原创 2019-09-28 20:50:22 · 232 阅读 · 0 评论