![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
操作系统
ArionHill
这个作者很懒,什么都没留下…
展开
-
虚拟内存
按需页面调度和独立的虚拟地址空间的结合,对系统中内存的使用和管理造成了深远的影响.特别地,VM简化了链接和加载,代码和数据共享,以及应用程序的内存分配.简化链接: 独立的地址空间允许每个进程的内存映像使用相同的基本格式,而不管代码和数据实际存放在物理内存的何处.即,一个给定的Linux系统上的每个进程都使用相同的内存格式.对于64位地址空间,代码段总是从虚拟地址0x400000开始.数据段跟...原创 2018-06-04 14:29:59 · 175 阅读 · 0 评论 -
进程线程的区别
每个进程中的内容:地址空间,全局变量,打开文件,子进程,即将发生的报警,信号与信号处理程序,账户信息每个线程中的内容:程序计数器,寄存器,堆栈,状态1、 进程用于把资源集中到一起,而线程则是在CPU上被调度执行的实体2、 线程实体可以共享同一个地址空间和所有可用数据。多进程(具有不同地址空间)却不能3、 多线程是CPU密集型的,那么并不能获得性能上的增强,但如果存在大量计算和IO处理,...原创 2019-04-23 14:32:19 · 120 阅读 · 0 评论 -
进程间通信
8种进程间通信:共享内存、消息队列、信号量、信号、命名管道、无名管道、文件、socket共享内存用于在程序之间高效地共享数据POSIXshm_openshm_unlinkftruncatefstatmmapmunmapSystem V# 创建int shmget(key_t key, size_t size, int shmflg)# 连接共享内存段到进程地址空间v...原创 2019-07-12 15:46:12 · 184 阅读 · 0 评论 -
线程同步
互斥量、自旋锁、读写锁、条件变量、线程信号、全局变量死锁是指两个或两个以上的进程在执行过程中,因争夺资源而造成的一种互相等待的现象,若无外力作用,它们都将无法推进下去原因(1) 因为系统资源不足。(2) 进程推进顺序不当。(3) 资源分配不当等。如果系统资源充足,进程的资源请求都能够得到满足,死锁出现的可能性就很低,否则就会因争夺有限的资源而陷入死锁。其次,进程运行推进顺序与速度不同...原创 2019-07-12 16:39:36 · 150 阅读 · 0 评论