在自考之——我看《操作系统概论》博客中,我对操作系统的知识进行了归纳和总结。这篇文章可以说是自己在第一次接触操作系统的内容之后的总结。总体来说,它能够帮助自己宏观把控这部分知识。何以见得?在软件设计师考试中同样会遇到这部分知识,感觉哪哪都熟悉,但是哪哪都提不起来。好在,我想起了自己当时的总结,看完之后,顿时轻松了许多。
操作系统的主要功能就是管理资源,包括硬件资源和软件资源。主要内容分为:处理器管理,存储管理,文件管理,设备管理,并发进程。并发进程可以说是在前几章的基础上产生的问题。
本文主要介绍处理器管理的一些内容:
先看下图:
假设图中的程序1,程序2,程序3,它们都分为3个步骤执行:输入(I),计算,输出(O)。
顺序执行:(看单道程序执行示意图)
在程序1的进程开启到结束的期间内,没有其他程序的进程在进行。在这段时间内,只有程序1在执行。它占有计算机的输入设备,CPU和输出资源。尽管在这段时间内,某一小段时间它不用输入设备,但是其他程序也不能用。
特点:
系统中只有一个程序在运行。
独占系统中所有资源。
不受外界影响。
并发执行:(看多道程序执行示意图)
在一段时间内,有两个或两个以上的程序同时处于开始运行但尚未结束的状态。
一个程序要执行,首先得把程序装入内存中,在装入内存之后,才能由CPU调度进行处理。
放入内存中的程序只有在执行完后,才会释放在内存中的空间。
在图中的“多道执行程序示意图”中,我们看到,程序1还没执行完毕,程序2,3 就都处在运行但未结束的阶段。
说明这几个程序都已在主存中。
这里就要引出单道批处理系统和多道批处理系统了。
单道和多道的主要区别是:
单道:一次只能在主存中装入1个程序。
多道:一次能在主存中装入多个程序。
所以在单道批处理系统中,当程序1装入内存后,执行输入,计算,输出完毕之后,释放了在内存中的空间,程序2才能再装入,进行输入,计算,输出。
在多道批处理系统中,当程序1装入内存后,只要内存剩余空间满足程序2,程序2也会装入内存中,这样他们就有机会交替使用计算机中的资源。
因此单道批处理系统和顺序执行联系到了一起。多道批处理系统和并发执行联系到了一起。
如图所示:
作业调度发生背景:主存只能存一个作业或者是主存空间有限的情况下,当输入井中有多个作业时,通过作业调度算法决定哪个作业优先调入主存中。
进程调度发生背景:CPU中在某一时刻只能执行一个作业,当主存中有多个处于就绪状态的作业时,通过进程调度算法决定哪个作业进入CPU。
总结:通过再次学习,了解一些概念的由来,任何概念的提出都有一定的理由和背景。我们知道了它们提出的背景的同时,加深了我们对知识点的理解。