王道 —— 操作系统的概念(定义)、功能和目标

1、知识总览

在这里插入图片描述

2、操作系统的概念(定义)

结合生活经验来理解计算机系统的层次结构:

我们想要组装一台电脑需要经过以下步骤:

  1. 购买一台裸机;
  2. 在裸机上安装windows操作系统;
  3. 在安装操作系统之后的电脑上安装各种软件,如QQ;
  4. 安装QQ后就可以使用QQ和朋友进行聊天;

所以计算机系统的层次结构可以简单表示如下:
在这里插入图片描述
计算机系统的层次结构由下至上依次是裸机,裸机上面是操作系统,基于操作系统可以按照一些应用程序(软件),用户可以使用这些软件;可以看到用户和操作系统是有一部分相接的,操作系统即使没有安装应用程序(软件),用户也可以直接使用操作系统执行任务,比如设置系统时间,用户和操作系统是可以有直接交互的,大多数情况下,用户都是通过软件和操作系统进行交互的;

裸机中的硬件就是我们所熟悉的各种硬件,例如CPU、内存、硬盘等;应用程序就是QQ、IE浏览器、英雄联盟等;

在这里插入图片描述

从中间往两边看,操作系统位于软件和硬件的中间层次,操作系统负责管理协调硬件、软件等计算机资源的工作;从下往上看,操作系统是在用户和应用程序下面的层次,需要为上层的应用程序、用户提供简单易用的服务;从上往下看,操作系统是最接近硬件的系统软件,操作系统是一个软件而不是硬件;

操作系统(Operating System,OS)是指控制和管理整个计算机系统的硬件和软件资源,并合理地组织调度计算机的工作和资源分配,以提供给用户和其它软件方便的接口和环境,它是计算机系统中最基本的系统软件。

指控制和管理整个计算机系统的硬件和软件资源,并合理地组织调度计算机的工作和资源分配,这句话的意思就是从中间往两边看,操作系统作为硬件和软件的中间层次发挥的作用;

提供给用户和其它软件方便的接口和环境,这是从下往上看,操作系统需要为用户和应用程序提供方便的接口;

它是计算机系统中最基本的系统软件,这是从上往下看,操作系统是最接近硬件的软件;

通过直观的例子理解操作系统的具体作用:打开windows操作系统的“任务管理器”(快捷键:Ctrl+Alt+Del):
在这里插入图片描述
在上面的界面中可以看到操作系统对软件的管理和对硬件的管理;

2、操作系统的功能和目标

首先考虑三个问题:

  1. 操作系统作为系统资源的管理者(这些资源包括软件、硬件、文件等),需要提供什么功能?
  2. 操作系统作为用户与计算机硬件之间的接口,要为其上层的用户、应用程序提供简单易用的服务,需要实现什么功能?
  3. 操作系统作为最接近硬件的层次,需要在纯硬件的基础上实现什么功能?

下面我们按照上面的结构依次分析操作系统需要实现的功能和目标。

2.1 操作系统的功能和目标 —— 作为系统资源的管理者

补充知识:进程是一个程序的执行过程,执行前需要将该程序放到内存中,才能被CPU处理。

来看生活中经常遇到的一个例子:用QQ和朋友视频聊天的过程:

  • step1:在各个文件夹中找到QQ安装的位置(如D:/Tencent/QQ/Bin);
  • step2:找到QQ.exe文件,双击打开QQ.exe文件;
  • step3:QQ程序正常运行;
  • step4:开始和朋友视频聊天;

在这里插入图片描述
看一下上面的过程,第一步需要逐层打开文件夹,找到QQ.exe这个程序(可执行文件)的存放位置;可以看到,在各级文件夹下都会有各种各样的文件存放在当前文件夹下,这些文件被有组织地放到一起,这是操作系统需要完成的事情,也就是操作系统的文件管理功能;

第二步中双击打开QQ.exe文件,为了执行QQ.exe文件,操作系统需要把该程序的相关数据放到内存中,这些数据放到内存中的哪些位置需要由操作系统进行控制,这就是操作系统的第二个功能——存储器管理或者内存管理;

第三步是QQ正常运行,一个程序能够正常运行,需要对应的进程被处理机(CPU)处理,计算机中除了QQ这个程序之外,还可能同时运行其他程序,例如微信等,这些进程都需要等待CPU资源的分配,CPU的资源分配给哪个进行是由操作系统进行处理的,这就是操作系统提供的第三个功能——处理机管理;

第四步中开始和朋友进行聊天需要将摄像头设备分配给进程,这个设备分配给进程,进程用完之后把设备使用权回收,这些事情是操作系统需要提供的第四个功能——设备管理;

在实现以上四个功能的时候,操作系统需要保证这些资源的管理是安全高效的,这是操作系统所追求的目标;

2.2 操作系统的功能和目标 —— 作为用户和计算机硬件之间的接口

操作系统作为用户和计算机硬件之间的接口需要提供以下功能:

  • 命令接口:运行用户直接使用;
  • 程序接口:允许用户通过程序间接使用;
  • GUI:现代操作系统中最流行的图形用户接口;

在这里插入图片描述

2.2.1 命令接口

命令接口又可以分为联机命令接口和脱机命令接口;

以上所有提供给用户的接口(命令接口、程序接口、GUI用户图形界面)统称为“用户接口”;

在这里插入图片描述
联机命令接口实例(Windows系统):联机命令接口=交互式命令接口

  • step1:win键+R;
  • step2:输入cmd,按回车,打开命令解释器;
  • step3:尝试使用time指令;

在这里插入图片描述

脱机命令接口实例(Windows系统):脱机命令接口=批处理命令接口

使用windows系统的搜索功能,搜索C盘中的*.bat文件,用记事本任意打开一个:

在这里插入图片描述

看似其内容很复杂,其实其和联机命令中的time指令是类似的,这里只是把一系列的指令串联起来,然后列成一系列的指令清单。当我们双击.bat文件时,操作系统会根据用户给出的一系列指令来逐条执行,这就是典型的脱机命令接口,或者说是批处理命令接口。

2.2.2 程序接口

以windows操作系统为例,在windows操作系统中经常看到.dll文件,程序员在程序中调用user32.dll(该调用过程即为系统调用)即可实现创建窗口等功能。程序接口只能通过用户程序间接使用,用户没办法直接使用.dll文件;

易懵概念: 系统调用==系统调用命令==广义指令

2.2.3 GUI:图形用户界面

用户可以使用形象的图形界面进行操作,而不再需要记忆复杂的命令、参数。

例子:在Windows操作系统中,删除一个文件只需要把文件“拖拽”到回收站即可。

在这里插入图片描述

2.3 操作系统的功能和目标 —— 作为最接近硬件的层次

操作系统作为最接近硬件的软件,需要提供的功能和目标:实现对硬件机器的拓展;

没有任何软件支持的计算机称为裸机,在裸机上安装的操作系统,可以提供资源管理功能和方便用户的服务功能,将裸机改造成功能更强、使用更方便的机器;

通常把覆盖了软件的机器称为扩充机器,又称之为虚拟机;

类比:
硬件:锤子、锯子、木头、钉子等待;
操作系统:优秀的工匠;
操作系统对硬件机器的拓展:通过优秀的工匠,这些简单的原料可以组织成房子、帆船、匹诺曹等;普通用户可以直接使用工匠提供的房子、帆船等,而无需关心这些东西在低层是怎么组织起来工作的;

3、知识回顾

在这里插入图片描述

Guess you like

Origin blog.csdn.net/qq_37388085/article/details/108475994