操作系统(第一章)
操作系统
1、操作系统概念、功能、目标
常见的操作系统:
-
Windows
windows系统是微软公司开发的,从上世纪80年的windows1.0开始,到现在的windows10,经历了漫长的30多年。windows系统的电脑,在个人电脑中占据着绝对主流的地位,全球市场占有率高达85%左右。最为典型的代表有:windows98、windowsXP、windows7、windows10。基本上4-5年会出现一个精品。windows电脑的优势:操作简单、入门快速、应用软件众多;windows电脑的缺点:吃内存厉害、对硬件要求高。
-
Mac Os
mac Os系统是苹果公司开发的一款高性能的电脑操作系统,深受一些专业人士的喜爱和追捧。Mac Os 系统在图形设计、影视制作等领域有着自己独特的优势,所以,我们在一些专业设计公司,大多看到的是mac Os系统的苹果电脑。mac Os系统目前的市场占有率达到8%左右,是目前电脑市场的第二大操作系统。现在,mac Os也可以在普通的PC电脑上安装使用,如果只是想体验一下,可能通过windows系统的虚拟机来进行安装。
-
Linux
Linux系统,对于绝大多数人来说,是比较陌生的。早期的Linux系统,跟微软的dos系统一样,是命令行字符操作模式,没有图片界面,所以,只有一些专业领域的高手才会涉及到,如:网站运维。后来,Linux系统也慢慢推出了图形模式,开始在个人电脑上也能使用了,如:deepin深度系统,centos都提供有图形界面。相对于windows系统,Linux系统占用硬件资源比较少,所以,大多数网站服务器会使用Linux作为操作系统。Linux系统是开源免费的。
-
Unix
Unix系统,是一款付费系统,是资格最老的一款电脑操作系统,诞生于上世纪70年代。Unix系统的安全性,在这几个操作系统中是最高的。目前, Unix系统只有命令行界面,没有图形界面,现在大多用在企业级别的服务器上,如:银行、电信等,很多公司的研发系统也是使用Unix系统平台的。还有一些操作系统是基于Unix系统开发的,如:苹果的mac Os系统。
-
Android
1.1、概念
裸机 -- > 操作系统 -- > 应用程序 -- > 用户
操作系统:
-
负责管理协调硬件、软件等计算机资源的工作
-
为上层的应用程序、用户提供简单易用的服务
-
操作系统是系统软件,而不是硬件
操作系统是指控制和管理整个计算机系统的硬件和软件资源,并合理地组织调度计算机的工作和资源的分配,以提供给用户和其他软件方便的接口和环境,它是计算机系统中最基本的系统软件。
①操作系统作为系统资源的管理者(这些资源包括软件、硬件、文件等),需要提供什么功能?
补充知识:进程是一个程序的执行过程。执行前需要将该程序房贷内存中,才能被CPU处理、
例如:
- 找到QQ相应文件夹 (文件管理)
- 双击打开QQ.exe (需要把该程序相关数据存放到内存当中)
- QQ程序正常运行 (对应的进程被处理机CPU处理)
- 开始视频聊天 (设备管理,需要将摄像头设备分配给进程)
②操作系统作为用户与计算机硬件之间的接口,要为上层的用户、应用程序提供简单易用的服务,需要实现什么功能?
命令接口:允许用户直接使用 包括:联机命令接口、脱机命令接口
程序接口:允许用户通过程序间接使用 由一组系统调用组成(程序接口=系统调用)
GUI:线代操作系统中最流行的图形用户接口 用户可以使用形象的图形界面进行操作,而不需要再记忆复杂的指令。
联机命令接口=交互式命令接口
特点:用户说一句,系统做一句
脱机命令接口=批处理命令接口
特点:用户说一堆,系统做一堆
③操作系统作为最接近硬件的层次,需要在纯硬件的基础上实现什么功能?
需要提供的功能和目标:实现对硬件机器的拓展
没有任何软件支持的计算机称为裸机。在裸机上安装的操作系统,可以提供资源管理功能和方便用户的服务功能,将裸机改造成功能更强、使用更方便的机器。
通常把覆盖了软件的机器称为扩展机器,又称之为虚拟机。
1.2、特征
四个特征:并发、共享、虚拟、异步
并发和共享是最基本的,二者互为存在条件
并发:指两个或多个事件在同一时间间隔内发生。这些事件宏观上是同时发生的,但在微观上是交替发生的。
并行:指两个或多个事件在同一时刻同时发生。
一个单核处理机(CPU)同一时刻只能执行一个程序,因此操作系统会负责多个程序交替执行(并发)
事实上,操作系统是伴随着“多道程序技术”而出现的。因此,操作系统和程序并发是一起诞生的。
共享:即共享资源,是指系统中的资源可供内存中多个并发执行的进程共同使用。
互斥共享方式:系统中的某些资源,虽然可以提供给多个进程使用,但一个时间段内只允许一个进程访问该资源
同时共享方式:系统中的某些资源,允许一个时间段内由多个进程"同时"对他们进行访问
所谓“同时”,是指在宏观上,微观上是交替地对该进程进行访问的。(分时共享)
并发和共享的关系:
并发性指计算机系统中同时存在多个运行着的程序。
共享性指系统中的资源可供内存多个并发执行的进程共同使用。
虚拟是指把一个物理上的实体变为若干个逻辑上的对应物,物理实体是实际存在的,而逻辑上对应物是用户感受到的。
一个程序需要放入内存并给它分配CPU才能执行
时分复用技术(虚拟处理器):虚拟技术中的"时分复用技术",微观上处理机在各个微小的时间段内交替着为各个进程服务。
空分复用技术(虚拟存储器技术):
没有并发性就谈不上虚拟性。
异步:是指在多道程序环境下,允许多个程序并发执行,但由于资源有限,进程的执行不是一贯到底的,而是走走停停,以不可预知的速度向前推进,这就是进程的异步性。
显然,如果失去了并发性,则系统只能串行地处理各个进程,每个进程的执行会一贯到底。只有系统拥有并发性,才有可能导致异步性
1.3、发展与分类
(1)手工操作阶段
主要缺点:用户独占全机,人机速度矛盾导致计算机资源利用率极低。
(2)批处理阶段
单道批处理系统:引入脱机输入/输出技术,并监督程序负责控制作业的输入、输出
主要优点:缓解了一定程度的人及速度矛盾,资源利用率有所提升。
主要缺点:内存中仅能有一道程序运行,只有该程序运行结束之后才能调入下一道程序。CPU有大量的时间是在空闲等待 I/O完成。资源利用率依然很低。
多道批处理系统:
主要优点:多道程序并发执行,共享计算机资源。资源利用率大幅提升,CPU和其他资源保持忙碌状态,系统吞吐量增大。
主要缺点:用户响应时间长,没有人机交互功能(用户提交自己的作业之后就只能等待计算机处理完成,中间不能控制自己的 作业执行)
分时操作系统:计算机以时间片为单位轮流为各个用户/作业服务,各个用户可以通过终端与计算机进行交互。
主要优点:用户请求可以被即时响应,解决了人机交互问题。允许多个用户同时使用一台计算机,并且用户对计算机的操作相 互独立,感受不到别人的存在。
主要缺点:不能优先处理一些紧急任务。操作系统对各个用户/作业都是完全公平的,循环的为每个用户/作业服务一个时间 片,不区分任务的紧急性。
实时操作系统:
主要优点:能够优先响应一写紧急任务,某些紧急任务不需时间片排队。
在实时操作系统的控制下,计算机系统接收到外部信号后及时进行处理,并且要在严格的时限内处理完事件。实时操作系统的主要特点是及时性和可靠性。
1.4、运行机制和结构
什么是指令?
一条高级代码翻译过来可能对应多条指令。指令就是处理器(CPU)能识别、执行的最基本命令。
两种指令:
特权指令:如内存清零指令(不允许用户程序使用的一些高级指令)
非特权指令:如普通的运算指令
两种处理器状态:用程序状态字寄存器(PSW)中的某些标志位来识别当前处理器处于什么状态。如0为用户态,1为核心态
用户态(目态):此时CPU只能执行非特权指令
核心态(管态):此时CPU可以执行特权、非特权指令
两种程序:
内核程序:操作系统的内核程序是系统的管理者,既可以执行特权指令,也可执行非特权指令,运行在核心态。
应用程序:为了保证系统的安全运行,普通应用程序只能执行非特权指令,运行在用户态。
操作系统中哪些功能应该由内核程序实现呢?