![](https://img-blog.csdnimg.cn/20201014180756922.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
计算机操作系统
灰色大猫
这个作者很懒,什么都没留下…
展开
-
OS学习笔记——处理器调度1
处理器调度的过程就是为待处理的作业或进程分配处理器的过程。处理器调度的层次:1. 高级调度高级调度又叫做宏观调度或作业调度,需要作出两个决定,一个是要从驻留在外存后备队列中调入多少个作业,二是调入哪几个作业;然后为被选中的作业创建进程,并分配必要的系统资源,如内存、外设等。最后把新创建的进程放入就绪队列中,等待被调度执行。高级调度的时间尺度通常是分钟、小时或天。原创 2017-12-08 14:57:39 · 383 阅读 · 0 评论 -
OS学习笔记——存储管理方式
分配方式分为:连续分配 和 离散分配1.连续分配方式 单一连续分配:内存被分为用户区和系统区。适用于单用户单任务操作系统。 分区式分配方式:(1)固定分区 分成若干区域 内存分配与回收:通常将内存分区根据其大小进行排队,并为之建立一张分区说明表。表中包含各分区的区号原创 2018-01-17 13:25:27 · 728 阅读 · 0 评论 -
OS学习笔记——多线程模型
多线程模型主要分为三种:多对一模型/一对一模型/多对多模型多对一模型:允许将多个用户级线程映射到一个内核线程。线程管理是在用户空间进行的,效率比较高。如果有一个线程执行了阻塞系统调用,那么整个进程就会阻塞。所以任意时刻只允许一个线程访问内核,这样多个线程不能并行运行在多处理器上。一对一模型:每个用户线程映射到一个内核线程。当一个线程执行阻塞系统调用,该模型允许另一个线程原创 2017-12-07 23:56:06 · 565 阅读 · 0 评论 -
OS学习笔记——进程与线程
程序的顺序执行:顺序性、封闭性(一旦运行就独占系统资源,只有本程序才能改变资源状态,运行结果不受外界条件的影响)、可再现性。程序的并发执行:间断性(运行快的如果需要运行慢的程序的结果才能继续,就得先停下来,等结果出来继续运行) 失去封闭性、不可再现性(并发过程中,如果AB俩程序先后顺序不同,会造成结果不同,即结果不一定能复现)操作系统以进程的方式运行应用程序,进程不但包括应原创 2017-12-07 17:25:46 · 386 阅读 · 0 评论 -
OS学习笔记——管程
管程由过程、变量及数据结构组成,它们共同构建了一个特殊的模块或软件包。进程可以在任意时刻调用管程中的进程,但不允许使用管程外的过程访问管程内的数据结构。管程在任一时刻都只能有一个活跃进程。这一特性可以帮助管程有效地实现互斥。管程作为一种特殊的程序被编译器识别,每当进程调用管程时,编译器都会采用与其他过程调用不同的方法来处理。这种方法的独特之处在于,当一个进程调用管程中的过程时,该过程中的前几条原创 2017-12-12 13:16:50 · 1085 阅读 · 0 评论 -
OS学习笔记——哲学家进餐问题
问题可以描述为:五个哲学家一生都在思考和进餐中度过。吃饭的时候必须拿起两侧的筷子,吃完就放下。是否能编写程序且不产生死锁?最直接的解法int N = 5;Philosopher(int i){ while(TRUE){ thinking; take_chop(i); take_chop(i+1原创 2017-12-11 14:50:07 · 794 阅读 · 0 评论 -
OS学习笔记——生产者消费者问题
缓冲池是临界资源,因此需要为其设置一个互斥信号量mutex。此外,为了让生产者和消费者都能正确使用空、满缓冲区,还需要设置两个资源信号量empty和full,empty和full的初值分别为n和0. 在进程选择缓冲区时,还需要使用两个特殊指针in和out,分别指向生产者使用的空缓冲区和消费者使用的满缓冲区。每当in或out当前指向的缓冲区被生产者或消费者使用之后,需要后移一个缓冲区。semap原创 2017-12-10 23:17:29 · 672 阅读 · 0 评论 -
OS学习笔记——操作系统概论
现代操作系统都具有三大特性:并发性、共享性、虚拟和异步特性。 1.并发性。若在一个时间段内发生多个事件,则这几个事件具有并发性。并行性指的是多个事件在同一个时间点发生。单处理机中每个特定时刻CPU中只能有一个程序运行,所以这些程序是具有并发性,而没有并行性的。多处理机中,多个独立运行的程序就能并行运行。 2.共享性:多个并发执行的程序按照一定的规则共同使用操作系统所管原创 2017-12-01 19:56:28 · 716 阅读 · 0 评论 -
OS学习笔记——进程同步与死锁1
进程的同步对于需要相互合作的进程,执行顺序需要在某些特定时刻进行协调,先达到条件的进程需要等待后到达的进程,此时进程之间存在制约关系。典型例子是:A负责视频数据采集,B负责把A采集到的数据进行压缩处理。进程互斥:当多个进程需要使用相同的资源,而此类资源在任意时刻只能供一个进程使用,获得资源的进程可以继续执行,没有获得资源的进程就需要等待。典型例子:P1 和 P2都需原创 2017-12-10 16:24:54 · 284 阅读 · 0 评论 -
OS学习笔记——处理器调度2
当引起进程调度的事件发生的时候,首先要保存当前进程A的上下文,然后执行调度程序,在调度程序的控制下确定是否要进行切换,以及切换到哪个进程。如果要切换到另一进程B,则需要记录放弃CPU的进程A的现场信息(如PC,通用寄存器的内容等),把CPU分配给B进程,并恢复进程B的上下文,从上次切换前位置继续执行进程B代码。进程调度方式可以分为非抢占式和抢占式两种。非抢占式:调度程序一旦原创 2017-12-08 20:51:24 · 469 阅读 · 0 评论