最近复习自考的操作系统资料主要分为六部分介绍操作系统知识,分别为:引论、处理器管理、存储管理、文件管理、设备管理和并发进程。操作系统在计算机系统硬件和软件中起到一个承上启下的作用,类似于三层架构中的业务逻辑层(个人之见)。最近的博文将会分章节对操作系统知识总结 。
引论--有关操作系统的基础知识
什么是操作系统?
操作系统(Operating System)是管理计算机系统资源、控制程序执行、改善人机界面和为应用软件提供支持的一种系统软件。
操作系统的功能?
从资源管理的观点看,操作系统的功能可分为:处理器管理、存储管理、文件管理和设备管理。
处理器管理的主要工作是:进行处理器的分配调度,尤其是在多道程序或多用户的情况下,要求运行的程序数目往往大于处理器的个数,这就需要按照一定的策略进行分配调度处理器。
存储管理:是对主存储器进行管理,根据用户程序的要求为它分配主存空间和实现重定位,同时还保护用户存放在主存储器中的程序和数据不被破坏。必要时可以提供虚拟存储技术,扩充主存空间,为用户提供比实际容量大的虚拟存储空间。
文件管理:面向用户实现按名存取,支持对文件的存储,检索以及解决文件的共享、保护和保密等问题。
设备管理:负责管理各类外围设备,包括分配、启动和故障处理等。为了提高设备的使用效率,还实现虚拟设备。
并发进程:在多道程序设计系统中,作为单个作业可以同时执行,而每一个作业又需要有多个进程的协作来完成。因此,系统会同时存在着许多进程,在单处理器的情况下,这些进程轮流的占用处理器,即一个进程的工作没有全部完成之前,另一个进程就开始工作,我们说这些可同时执行的进程具有并发性,并且把可同时执行的进程称为“并发进程”
操作系统的形成?
早期的计算机上是没有操作系统的,那时候计算机速度低,外围设备少,编制和运行一个程序也比较简单,程序的装入、调试以及控制程序的运行都是由程序员通过控制台上的开关来实现的,随着计算机的发展,出现了第二代计算机。它的速度高,外围设备也较多,功能也较强,所以在采用手工操作方式已不能适应。主要表现在两个方面:首先,手工操作不能进行复杂的控制,不能满足功能较强的第二代计算机的需要;其次,手工操作速度慢,会降低计算机的使用效率。所以,设计一种能管理计算机系统资源和控制程序运行的软件是必不可少的。操作系统就是在这种需求下形成的。
处理器的工作状态?
任何一个程序必须占用处理器后才能执行,而在一个计算机系统中往往同时存在多个程序,既有系统程序,又有用户程序,它们都要占用处理器,让处理器按自己的要求同时存在多个多个程序,既有系统程序,又有用户程序,它们都要占用处理器,因此,处理器应有不同的工作状态,以区分当前正在执行的指令是操作系统的还是用户程序的。
为了保证计算机系统能正确可靠地工作,经常把由CPU执行的指令分成两类:特权指令和非特权指令。把不允许用户程序中直接使用的指令称为特权指令,其余的为非特权指令。
为避免用户程序中错误地使用特权指令,计算机硬件结构中的中央处理器具有两种工作状态:目态和管态。当中央处理器处于目态时,不允许执行特权指令;当中央处理器处于管态时,可执行包括特权指令在内的一切指令。所以当操作系统占用中央处理器时,应让中央管理器在管态工作;当用户程序占用中央处理器时,应让中央处理器在目态工作
回顾过去,展望未来?
这篇博文主要介绍了一些我认为有关操作系统基础比较重要的知识,我一直认为要想熟练掌握一个事物,必须先要了解它的过去,这样才会遥望事物未来的发展.历经三年计算机知识的学习,我一直不知道操作系统是在什么情况下被微软帝国开发的.为什么微软帝国可以寡头垄断个人计算机系统领域?原来,微软在社会性质不断变化过程中找到了计算机发展的根本需求.就是这个需求决定了微软帝国的发展.当然比尔盖茨对操作系统产生的需求的前瞻性是我们更加需要学习和培养的.对需求前瞻性的正确判断,让中国人创造出自己的计算机领域技术,摆脱不断学习舶来品的现状.话虽如此,还要一步一个脚印向前走,把前人留下来的知识化为己有才能突破历史.