中断
摘要:根据中断源的不同,可把中断分为硬件中断和软中断两大类。 硬件中断和软中断的区别:硬件中断是由外设引发的,软中断是执行中断指令产生的。硬件中断的中断号是由中断控制器提供的,软中断的中断号由指令直接指出,无需使用中断控制器。硬件中断是可屏蔽的,软中断不可屏蔽。 中断处理过程都要经历以下步骤: 请求中断→
阅读全文
posted @
2020-06-11 11:51
topass123
阅读(184)
推荐(0) 编辑
分页管理方式和分段管理方式的区别
摘要:1、目的 分页:页是信息的物理单位,分页是为了实现离散分配方式,以消减内存的外零头,提高内存的利用率。或者说,分页仅仅是由于系统管理的需要不是用户的需要。 分段:段是信息的逻辑单位,它含有一组其意义相对完整的信息,分段的目的是为了能更好的满足用户的需要。 2、长度 分页:页的大小固定且由系统决定,由
阅读全文
posted @
2020-05-23 15:13
topass123
阅读(2210)
推荐(0) 编辑
操作系统概述
摘要:操作系统: 操作系统是指控制和管理整个计算机系统的硬件和软件资源,并合理的组织调度计算机的工作和资源的分配,以提供给用户和其他软件方便的接口和环境集合。 操作系统的特征 操作系统的基本特征包括并发、共享、虚拟和异步 操作系统的发展: 1、手工操作阶段 2、脱机输入输出阶段 3、批处理阶段 批处理技术
阅读全文
posted @
2020-05-22 07:55
topass123
阅读(255)
推荐(0) 编辑
操作系统内存管理
摘要:操作系统的内存管理主要做什么? 操作系统的内存管理主要负责内存的分配与回收(malloc 函数:申请内存,free 函数:释放内存),另外地址转换也就是将逻辑地址转换成相应的物理地址等功能也是操作系统内存管理做的事情。 页表与快表: 快表与页表的提出是为了解决: 虚拟地址到物理地址的转换要快。 解决
阅读全文
posted @
2020-05-11 16:02
topass123
阅读(219)
推荐(0) 编辑
页面调度的问题
摘要:颠簸 颠簸本质上是指频繁的页调度行为,具体来讲,进程发生缺页中断,这时,必须置换某一页。然而,其他所有的页都在使用,它置换一个页,但又立刻再次需要这个页。因此,会不断产生缺页中断,导致整个系统的效率急剧下降,这种现象称为颠簸(抖动)。 内存颠簸的解决策略包括: 如果是因为页面替换策略失误,可以修改替
阅读全文
posted @
2020-05-06 15:26
topass123
阅读(250)
推荐(0) 编辑
进程同步机制
摘要:进程同步机制: 原子操作 原子操作(atomic operation)指的是由多步操作组成的一个操作。如果该操作不能原子地执行,则要么执行完所有步骤,要么一步也不执行,不可能只执行所有步骤的一个子集。 信号量机制 信号量(semaphore)的数据结构为一个值和一个指针,指针指向等待该信号量的下一个
阅读全文
posted @
2020-05-06 15:21
topass123
阅读(232)
推荐(0) 编辑
进程调度策略
摘要:先来先服务调度算法FCFS:队列实现,非抢占,先请求CPU的进程先分配到CPU,可以作为作业调度算法也可以作为进程调度算法;按作业或者进程到达的先后顺序依次调度,对于长作业比较有利; 最短作业优先调度算法SJF:作业调度算法,算法从就绪队列中选择估计时间最短的作业进行处理,直到得出结果或者无法继续执
阅读全文
posted @
2020-05-06 15:06
topass123
阅读(368)
推荐(0) 编辑
内存管理有哪几种方式
摘要:内存管理有块式管理,页式管理,段式和段页式管理。现在常用段页式管理。 块式管理:把主存分为一大块、一大块的,当所需的程序片断不在主存时就分配一块主存空间,把程序片断load入主存,就算所需的程序片度只有几个字节也只能把这一块分配给它。这样会造成很大的浪费,平均浪费了50%的内存空间,但是易于管理。
阅读全文
posted @
2020-05-06 14:53
topass123
阅读(4651)
推荐(0) 编辑
线程同步和互斥的区别
摘要:互斥是指某一资源同时只允许一个访问者对其进行访问,具有唯一性和排它性。但互斥无法限制访问者对资源的访问顺序,即访问是无序的。 同步是指在互斥的基础上(大多数情况),通过其它机制实现访问者对资源的有序访问。 同步其实已经实现了互斥,所以同步是一种更为复杂的互斥。 互斥是一种特殊的同步。 所谓互斥,就是
阅读全文
posted @
2020-04-29 14:54
topass123
阅读(329)
推荐(0) 编辑
同步与异步
摘要:同步: 同步的定义:是指一个进程在执行某个请求的时候,若该请求需要一段时间才能返回信息,那么,这个进程将会一直等待下去,直到收到返回信息才继续执行下去。 特点: 同步是阻塞模式; 同步是按顺序执行,执行完一个再执行下一个,需要等待,协调运行; 异步: 是指进程不需要一直等下去,而是继续执行下面的操作
阅读全文
posted @
2020-04-29 14:51
topass123
阅读(161)
推荐(0) 编辑
页面置换算法
摘要:操作系统将内存按照页面进行管理,在需要的时候才把进程相应的部分调入内存。当产生缺页中断时,需要选择一个页面写入。如果要换出的页面在内存中被修改过,变成了“脏”页面,那就需要先写会到磁盘。页面置换算法,就是要选出最合适的一个页面,使得置换的效率最高。 一、最优页面置换算法 最理想的状态下,我们给页面做
阅读全文
posted @
2020-04-29 14:46
topass123
阅读(330)
推荐(0) 编辑
内存池、进程池、线程池
摘要:线程池:线程池的原理很简单,类似于操作系统中的缓冲区的概念,它的流程如下:先启动若干数量的线程,并让这些线程都处于睡眠状态,当需要一个开辟一个线程去做具体的工作时,就会唤醒线程池中的某一个睡眠线程,让它去做具体工作,当工作完成后,线程又处于睡眠状态,而不是将线程销毁。 进程池与线程池同理。 内存池:
阅读全文
posted @
2020-04-29 13:53
topass123
阅读(208)
推荐(0) 编辑
为什么进程上下文切换比线程上下文切换代价高?
摘要:进程切换分两步: 1.切换页目录以使用新的地址空间 2.切换内核栈和硬件上下文 对于linux来说,线程和进程的最大区别就在于地址空间,对于线程切换,第1步是不需要做的,第2是进程和线程切换都要做的。 切换的性能消耗: 1、线程上下文切换和进程上下问切换一个最主要的区别是线程的切换虚拟内存空间依然是
阅读全文
posted @
2020-04-29 13:07
topass123
阅读(3295)
推荐(0) 编辑
死锁问题
摘要:死锁的概念 所谓死锁是指两个或两个以上的进程在执行过程中,因争夺资源而造成的一种互相等待的现象,若无外力作用, 它们都将无法推进下去,此时称系统处于死锁状态或系统产生了死锁。 死锁产生的四个必要条件 互斥条件:一个资源每次只能被一个进程使用;若其他进程申请使用该资源,必须等到该资源被释放为止; 请求
阅读全文
posted @
2020-04-22 21:14
topass123
阅读(136)
推荐(0) 编辑
进程的三种状态
摘要:进程的状态有:运行态,就绪台,阻塞态。如下图示: 注意区别就绪状态和等待状态:就绪状态是指进程仅缺少cpu,只要获得cpu资源就立即执行;而等待状态是指进程需要其他资源(除了cpu)或等待某一事件。 用户态和核心态的区别。 当一个任务(进程)执行系统调用而陷入内核代码中执行时,我们就称进程处于内核运
阅读全文
posted @
2020-04-22 15:43
topass123
阅读(2482)
推荐(1) 编辑
线程的同步与实现
摘要:线程同步的方式: 1)临界区:通过对多线程的串行化来访问公共资源或者一段代码,速度快,适合控制数据访问 2)互斥量:只有用户互斥对象的线程才可以访问公共资源。互斥不仅仅能够实现统一应用程序的公共资源安全共享,还可以实现不同应用的公共资源的安全共享。 3)信号量:它允许同一时刻多个线程访问同一资源,但
阅读全文
posted @
2020-04-22 14:36
topass123
阅读(138)
推荐(0) 编辑
进程间通信详解
摘要:一、管道 管道,通常指无名管道,是 UNIX 系统IPC最古老的形式。 1、特点: 它是半双工的(即数据只能在一个方向上流动),具有固定的读端和写端。 它只能用于具有亲缘关系的进程之间的通信(也是父子进程或者兄弟进程之间)。 它可以看成是一种特殊的文件,对于它的读写也可以使用普通的read、writ
阅读全文
posted @
2020-04-22 11:25
topass123
阅读(278)
推荐(0) 编辑
进程和线程以及它们的区别
摘要:进程?线程? 进程是对运行程序的封装,是系统进行资源调度和分配的基本单位,实现了操作系统的并发。 其实现的过程:用户运行xx程序,系统就创建一个进程同时为其分配(内存空间,磁盘空间,I/O设备)资源,将该进程放到就绪队列中等待,被进程调度器选中。这就运行起来了。 线程是进程的子任务,是cpu调度和分
阅读全文
posted @
2020-04-22 11:06
topass123
阅读(222)
推荐(0) 编辑