OS考研复习笔记——操作系统的定义、目标、作用和发展的主要动力
计算机系统由硬件和软件两部分组成。操作系统(OS,Operating System)是配置在计算机硬件上的第一层软件,是对硬件系统的首次补充。
硬件:计算机物理设备,即各种处理机存储器、输入/输出设备、通信设备等。
软件:指由计算机硬件执行以完成一定任务的所有程序以及数据
(一)操作系统的定义
操作系统(OS,Operating System)是一个管理计算机系统资源、控制程序运行的系统软件,它为用户提供了一个方便、安全、可靠的工作环境和界面。
作为计算机系统的控制和指挥中心,操作系统就是一个软件,而且是一个系统软件(System Software)。它的运行既可依赖于计算机系统的硬件(Hardware),又要管理计算机系统的一切硬件设施。
(二)操作系统的目标
目前存在多种类型的OS,不同类型的OS,其目标各有所侧重。一般来说,就有其中以下几点:
1.有效性
有效性是推动操作系统发展最主要的动力。
操作系统使计算机的内存、CPU、I/O设备等资源得到充分的利用。并且还能够合理地组织计算机的工作流程,从而进一步改善系统的资源利用率和提高系统的吞吐量。
操作系统的有效性包括以下两个含意:
1)提高系统资源利用率 2)提高系统的吞吐量
2.方便性
操作系统的设计应尽量使得计算机系统更容易得到使用。
方便些和有效性是设计操作系统时最重要的两个目标。
3.可扩充性
操作系统采用了模块化结构,以便于增加新的功能模块和修改以前的功能模块。
OS具有很好的可扩充性,能够适应计算机硬件、体系结构以及应用发展的要求。
4.开放性
由于生产厂家生产了各种不同类型的计算机和设备,就出现了兼容性的问题,为使来自不同厂家的计算机和设备能够通过网络加以集成化,并且能够正确、有效地协同工作,实现应用的可移植性和互操作性。要求操作系统(OS)必须建立一个统一开放的开放环境就是OS要具有开放性的前提。
(三)操作系统的作用
从不同的角度来观察操作系统的作用,从一般用户的角度来看,可把OS看作是用户与计算机硬件系统之间的接口,从资源管理的角度来看,可把OS看作是计算机系统资源的管理者。
OS实现了对计算机资源的抽象,隐藏了对硬件操作的细节。
1.操作系统作为用户与计算机硬件系统之间的接口
操作系统作为用户与计算机硬件西永之间的接口的含义是:OS处于用户与计算机硬件系统之间,用户通过OS来使用计算机系统。**注意**:操作系统是一个系统软件,这类型的接口属于软件接口。
OS作为接口的示意图:
从图中可以看出,用户可以通过三种方式使用计算机:
1.命令方式 2.系统调用方式 3.图形、窗口方式 2.OS作为计算机系统资源的管理者
在计算机系统中,通常都包含了硬件和软件资源,归纳起来可将资源分为四类:处理器、存储器、I/O设备以及信息(数据和程序)。
相应地,OS的主要功能也正是针对这四类资源进行有效的管理,即: 1)处理机管理:用于分配和控制处理机 2)存储器管理:主要负责内存的分配和回收 3)I/O设备管理:负责I/O设备的分配和操纵 4)文件管理:负责文件的存取、共享和保护 3.OS实现了对计算机资源的抽象
在裸机(完全无软件的计算机系统)上安装OS后,便可变成一台功能显著增强,使用极为方便的多层扩充机器或多层虚拟机。
OS是铺设在计算机硬件上的多层系统软件,不仅增强了系统的功能,也隐藏了对硬件操作的细节,而且也实现了对计算机硬件操作的多个层次的抽象。
(四)推动操作系统发展的主要动力
推动操作系统发展的主要动力,可以归结为如下四个方面:
1.不断提高计算机资源的利用率
在计算机发展初期,系统特别昂贵,提高计算机系统中各种资源的利用率,这是OS最初发展的推动力。由此形成了自动地对一批作业进行处理的多道批处理系统。
在20世纪60年代和70年代,出现了能有效提高I/O设备和CPU利用率的SPOOLing系统和改善存储器系统利用率的虚拟存储器技术,以及在网络环境下,在服务器上配置了允许所有的网络用户访问的文件系统和数据库系统。
2.方便用户
当资源利用率不高的问题得到解决,用户在上机、调试程序时的不方便性就成了主要矛盾。随后就形成了允许用户进行人机交互的分时系统,或称为多用户系统。
在10年代初出现了受到用户欢迎的图形化用户界面。
3.器件的不断更新换代
微电子技术的发展,也推动了计算机器件,特别是微机芯片的更新,使得计算机性能得到了提高。
在多处理机发张的同时,外部设备也得到了发展。
4.计算机体系结构的不断发展。
计算机体系结构的发展,也推动了OS的发展并产生新的操作系统类型。
所有的内容都是属于考研备考笔记,如有错误,请大家指出。
不介意的可以直接上我的GitHub:https://github.com/Soler0502H/Postgraduate_notebook_for_SJTU_Software_Program
OS考研复习笔记——操作系统的定义、目标、作用和发展的主要动力的更多相关文章
- Angular复习笔记7-路由(下)
Angular复习笔记7-路由(下) 这是angular路由的第二篇,也是最后一篇.继续上一章的内容 路由跳转 Web应用中的页面跳转,指的是应用响应某个事件,从一个页面跳转到另一个页面的行为.对于使 ...
- Angular复习笔记5-指令
Angular复习笔记5-指令 在Angular中,指令是一个重要的概念,它作用在特定的DOM元素上,可以扩展这个元素的功能,为元素增加新的行为.本质上,组件可以被理解为一种带有视图的指令.组件继承自 ...
- angular复习笔记4-模板
Angular复习笔记4-模板 简介 模板是一种自定义的标准化页面,通过模板和模板中的数据结合,可以生成各种各样的网页.在Angular中,模板的默认语言是HTML,几乎所有的HTML语法在模板中都是 ...
- Java基础复习笔记系列 九 网络编程
Java基础复习笔记系列之 网络编程 学习资料参考: 1.http://www.icoolxue.com/ 2. 1.网络编程的基础概念. TCP/IP协议:Socket编程:IP地址. 中国和美国之 ...
- AJax 学习笔记二(onreadystatechange的作用)
AJax 学习笔记二(onreadystatechange的作用) 当发送一个请求后,客户端无法确定什么时候会完成这个请求,所以需要用事件机制来捕获请求的状态XMLHttpRequest对象提供了on ...
- Angular复习笔记7-路由(上)
Angular复习笔记7-路由(上) 关于Angular路由的部分将分为上下两篇来介绍.这是第一篇. 概述 路由所要解决的核心问题是通过建立URL和页面的对应关系,使得不同的页面可以用不同的URL来表 ...
- Angular复习笔记6-依赖注入
Angular复习笔记6-依赖注入 依赖注入(DependencyInjection)是Angular实现重要功能的一种设计模式.一个大型应用的开发通常会涉及很多组件和服务,这些组件和服务之间有着错综 ...
- Java二次复习笔记(1)
Java二次复习笔记(1) Java采用的默认字符编码集是Unicode. byte=byte+byte报错,值为int,而byte+=byte不报错.同样short = short+short报错, ...
- Java基础复习笔记系列 八 多线程编程
Java基础复习笔记系列之 多线程编程 参考地址: http://blog.csdn.net/xuweilinjijis/article/details/8878649 今天的故事,让我们从上面这个图 ...
随机推荐
- value power two
/** *topPower2 use to set unsigned int to power of two *@param value input value *@return return the ...
- 002javascript变量&数据类型
•变量 –JavaScript 是一种弱类型的脚本语言 –var c = 3:即变量的声明(变量使用之前必须加var声明,编程规范) –变量的命名规则! •1.变量命名必须以字母或是下标符号”_”或者 ...
- clipse validation 优化设置
- linux mint 19安装最新社区版docker
sudo apt-get update sudo apt-get install \ apt-transport-https \ ca-certificates \ curl \ software-p ...
- css定位问题的记录
postion:relative是子块级元素面向父级元素的相对定位,定位关键字使用left/right/top/bottom.兄弟块元素之间相对进行定位,但是position移动后,原位置依然保留.而 ...
- C#中判断系统的架构(32位,还是64位)
一种很简单的方法就是根据IntPtr类型的Size属性来判断, //IntPtr.Size在64位为8,在32位为4 public static Boolean Is64Bit() { ) retur ...
- <机器学习实战>读书笔记--朴素贝叶斯
1.朴素贝叶斯法是基于贝叶斯定理与特征条件独立假设的分类方法, 最为广泛的两种分类模型是决策树模型(Decision Tree Model)和朴素贝叶斯模型(Naive Bayesian Model, ...
- jar 不是内部或外部命令 CLASS_PATH设置
JDK安装没有问题,%JAVA_HOME% 和 path %JAVA_HOME%\bin 设置都没有问题 设置CLASS_PATH CLASS_PATH .;%JAVA_HOME%\l ...
- Java大法之面向对象
总觉得要写点东西,写写自己对知识的理解,对自己学的东西是否编程自己的了.我在想,如果让自己用自己的语言来解释,什么是面向对象,我可能会愣一下,我问自己什么是面向对象的时候,我想了想,自言自语说:面向对 ...
- IOS项目之弹出动画终结篇
在之前写过IOS项目之弹出动画一.IOS项目之弹出动画二.IOS项目之弹出动画三,今天来一个终极封装已经上传到Github上弹出动画总结篇UIPopoverTableView. UIPopoverTa ...