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 今天的故事,让我们从上面这个图 ...
随机推荐
- dubbo接口快速测试技巧
在分布式系统的开发中,用到了dubbo+zookeeper技术,最近遇到一个问题,产品上线后,我负责的模块出了问题,某个bean中某个字段的值一直为null,而这个bean是我调用注册在zookeep ...
- windows 老掉牙CMD的命令
再老,也得温习下: net use \\' /user:'administrator' //ipc连接 net use \\127.0.0.1\ipc$ /delete //退出ipc net use ...
- Android版本信息及与Linux和Java的关系
1.Android与Linux和Java的关系 Android严格来说,不能算是Linux,Android是一个统称,具体来说,是Google用了Linux的一个核心,用这个核心来管理进程,控制硬件. ...
- WindowsServer2008安装IIS相关服务
控制面板->程序->打开或关闭Windows功能 添加角色,选择IIS服务器,选择以下角色服务,如果添加过就选择添加角色服务 如果出现500错误,这个跟程序没有多大关系,可以试一下以下操作 ...
- Debian9安装SSH并允许root用户SSH登录
安装SSH # apt install openssh-server openssh-client 启动SSH服务 # /etc/init.d/ssh start 添加SSH开机启动 # update ...
- NSSM - the Non-Sucking Service Manager
nssm is a service helper which doesn't suck. srvany and other service helper programs suck because t ...
- hdu 1159(DP+字符串最长公共序列)
http://blog.csdn.net/a_eagle/article/details/7213236 公共序列可以用一个二维数组dp[i][j]保存每个点时的最大数字,本质就是一个双向比较. dp ...
- Oracle数据库基本操作(一) —— Oracle数据库体系结构介绍、DDL、DCL、DML
一.Oracle数据库介绍 1.基本介绍 Oracle数据库系统是美国ORACLE公司(甲骨文)提供的以分布式数据库为核心的一组软件产品,是目前最流行的客户/服务器(CLIENT/SERVER)或B/ ...
- bat批处理中如何获取前一天日期
网上找了好久在批处理中生成前一日期的代码段 但网上找到的代码对 每个月的1号和每年的1号计算前一日期时,总会报错,然后要加很多的逻辑判断 想了想,可以用.net写个EXE程序,用.net实现获取前一日 ...
- axios中的qs
qs是一个npm仓库所管理的包,可通过npm install qs命令进行安装. 1. qs.parse()将URL解析成对象的形式 const Qs = require('qs'); let url ...