文章分类 - 操作系统
摘要:1.信号量 信号量(singal)、互斥量(mutex)、事件对象(event)是由操作系统内部维护的一组数据。 它们由系统内核维护,对所有进程(线程)都是可见的,因此可以被用于信息传递。例如实现资源锁和进行线程唤醒通知等。 信号量:本质是一个技术器,只能进行P和V操作。 P操作:若信号量大于0,则
阅读全文
posted @ 2022-03-20 14:58
Cheung-10
摘要:1.进程 当一个用户程序启动时,操作系统会为其启动一个进程,其中包括运行程序所需要的各种资源。 也就是说,进程是一个包含了运行一个程序所需的各种资源的容器。 进程包括的资源包括: 1)线程,一个进程可以有一或者多个线程。最开始创建的是进程的主线程。 2)代码和数据,保存在内存用户空间中,创建进程时从
阅读全文
posted @ 2022-03-19 19:42
Cheung-10
摘要:参考文章:https://mp.weixin.qq.com/s/xej6klx2q0G1fp82_vKCOg 减少IO拷贝的目的是将数据直接从IO源(外存等)直接读取到目标(内存、网卡等)位置,而尽量减少在内存中的复制拷贝(通常是由于系统缓存IO机制带来的问题)。 主要思路有三种: 1. 用户态直接
阅读全文
posted @ 2021-10-21 22:25
Cheung-10
摘要:在内存上与单个进程有关的数据可分作两个部分: 储存在用户空间的,代码段、堆栈等。 存储在内核空间的,存储器情况、页表等。 1. 用户空间 包括以下区域: a. 代码段,保存机器指令,动态链接库和多个进程运行的相同程序共享同一个代码段。 b. 未初始化数据段,未初始化的全局变量、静态变量,一般会被自动
阅读全文
posted @ 2021-10-21 21:58
Cheung-10
摘要:操作系统对主存(和其他辅助主存的资源)的一套抽象机制。 虚拟内存技术为每个进程提供了一个一致、私有的进程空间,从进程角度看,它似乎得到了一块连续的内存空间。 这是因为操作系统在内核中为每个进程都维护了一张页表,用以做内存地址映射。 1.地址概念 物理地址:硬件访问内存时使用的地址,是固定的。 虚拟内
阅读全文
posted @ 2021-10-21 21:49
Cheung-10
摘要:参考博客: https://segmentfault.com/a/1190000003063859 https://zhuanlan.zhihu.com/p/95872805 当一次IO操作执行时,会产生数据等待时间。通常这个时间不短,因此在Linux中产生了多种网络模式IO复用方案。 阻塞/非阻塞
阅读全文
posted @ 2021-10-12 15:34
Cheung-10
摘要:参考博客: https://sccarterrans.github.io/IO%E6%A8%A1%E5%9E%8B-%E7%BC%93%E5%AD%98IO%E4%B8%8E%E7%9B%B4%E6%8E%A5IO/ https://cloud.tencent.com/developer/news/
阅读全文
posted @ 2021-10-12 11:53
Cheung-10