首页 操作系统 第一章 操作系统概论
文章
取消

操作系统 第一章 操作系统概论

操作系统 第一章 操作系统概论1

1 操作系统的概念

1.1. 计算机系统

  1. 计算机系统的概念(简单了解)

    计算机系统是一种可以按用户的要求接收和存储信息、自动进行数据处理并输出结果信息的系统

    • 广义的计算机系统包含机械式系统和电子式系统两类。 在电子式系统中,还可以划分为模拟式和数字式两种计算机系统。我们在这里讨论的是数字电子计算机系统,简称计算机系统
  2. 计算机系统的组成(单选)

    • 计算机系统包括硬件(子)系统软件(子)系统。 硬件系统是计算机系统赖以工作的实体。 软件系统保证计算机系统按用户指定的要求协调工作(灵魂) 计算机系统的资源包括两大类:硬件资源软件资源
  3. 硬件系统的组成(单选、填空)

    中央处理器

    (CPU=运算器+控制器)、内存储器(又称主存)、外存储器(磁盘、磁带等)以及各种类型的输入输出设备(键盘、鼠标、显示器、打印机等)组成了计算机硬件系统;

  4. 软件系统的组成(单选、填空)

    软件系统=程序+数据

  5. Tip

    • 在典型的计算机系统硬件结构中,CPU与内存在最里层,通过总线与第二层的接口(适配器) 部件相连,第三层是各种外围设备控制器 ,最外层是外围设备

1.2. 操作系统的定义

  1. 操作系统的概念(理解记忆):star:

    • 操作系统是计算机资源(软件+硬件)的管理者
    • 通过接口为用户提供各种服务
    • 是一种系统软件

    操作系统是计算机系统中的一个系统软件,它是这样一些程序模块的集合:它们能有效地组织管理计算机系统中的硬件及软件资源,合理地组织计算机工作流程,控制程序的执行,并向用户提供各种服务功能,使得用户能够灵活、方便、 有效地使用计算机,并使整个计算机系统能高效地运行

1.3. 操作系统的特征 (领会=单选、填空、简答)

  1. 并发性(单选、填空 )

    并发性是指在计算机系统中同时存在若干个运行着的程序,从宏观上看,这些程序在同时向前推进。

    计算机程序的并发性体现在如下具体两个方面:

    • 用户程序与用户程序之间并发执行;
    • 用户程序与操作系统程序之间并发执行

    image-20230725174601966

    两个相似的概念:并行性以及并发性。 并行性是指两个或者多个事件在同一时刻发生,这是一个具有微观意义的概念,即在物理上这些事件是同时发生的。 而并发性是指两个或者多个事件在同一时间间隔内发生,它是一个较为宏观的概念,与所使用的时间间隔相对应的、有某种程度的统计意义

  2. 共享性(单选、填空)

    共享性是指操作系统程序与多个用户程序共用系统中的各种资源。 这种共享性是在操作系统控制下实现的。

    资源的共享性主要针对计算机系统中的如下几项重要资源(所有硬件资源)。

    • 中央处理器
    • 内存储器
    • 外存储器
    • 外部设备

    在计算机系统中,对资源的共享一般有两种形式:互斥共享和同时共享

  3. 随机性(领会=单选、填空、简答)

    操作系统的运行是在一种随机的环境下进行的。 这种随机环境的含义是,操作系统不能对所运行的程序的行为以及硬件设备的情况出任何事先的假定。 随机性并不意味着操作系统不能很好地控制资源的使用和程序的运行,随机性突出强调了在进行操作系统的设计与实现时要充分考虑各种各样的可能性。 操作系统本身应该稳定、可靠、安全、高效,实现程序并发和资源共享的目的。

  4. 虚拟性

    虚拟内存

1.4. 研究操作系统的观点

  1. 软件的观点(简单了解)

    从软件的观点来看,操作系统是一种大型软件系统,它是多种功能程序的集合。 作为一种大型软件系统,操作系统有软件的外在特性内在特性

    • 外在特性是指,操作系统是一种软件,它的外部表现形式
    • 内在特性是指,操作系统既然是一种软件,它就具有一般软件的结构特点。
  2. 资源管理的观点(简单了解)

    在计算机系统中的硬件和软件资源可以分成以下几部分:中央处理器(CPU)、存储器(内存和外存)、外部设备和信息(文件)。

    image-20230725182433257

  3. 进程的观点(简单了解)

    用进程的观点,则把操作系统看作由多个可以同时独立运行的程序和一个对这些程序进行协调的核心所组成。

  4. 虚机器的观点(简单了解)

    虚机器的观点是从系统功能分解的角度出发,考虑操作系统的结构。

  5. 服务提供者观点(单选)

    用户的角度,站在操作系统之外观察操作系统,则可以认为该服务提供者为用户提供了比裸机功能更强、服务质量更高、更方便的灵活的虚拟机器。 为了用户使用上的便利,该服务提供者提供了一组功能强大的、方便、易用的广义指令(称为系统调用

1.5. 操作系统的功能 :star:

助记:设备 夜(作业)间(文件)存储 进程

  1. 进程管理(处理器管理)(单选、填空、简答)

    进程管理的实质是对中央处理器进行管理,所以进程管理往往又被称为处理器管理

    助记:控制 通信 步(同步)调(调度)

    进程管理的主要内容:

    (1)进程控制 (2)进程同步 (3)进程间通信 (4)调度

  2. 存储管理(单选)

    存储管理的任务是管理计算机内存的资源。 存储管理有三个方面的任务:

    • 当多个程序共享有限的内存资源时,要考虑如何为多个程序分配有限的内存空间;(内存的分配与回收
    • 存储在内存中的多个程序和数据应该彼此隔离、互不侵扰;(存储保护
    • 解决内存扩充的问题,即将内存和外存结合起来管理,为用户提供一个容量比实际内存大得多的虚拟存储器。 (内存扩充
  3. 文件管理(单选)

    在计算机系统中的信息资源(如程序和数据)是以文件的形式存储在外存储器(如磁盘、磁带)上的,需要时再把它们装入内存

  4. 作业管理

  5. 设备管理

    由操作系统的设备管理功能负责外部设备的分配、启动和故障处理,用户不必详细了解设备及接口的技术细节,就可以方便地通过操作系统提供的设备管理手段,对设备进行操作

  6. 用户接口

    操作系统还应该向用户提供使用它自己的手段,这就是用户与计算机系统之间的接口

2 操作系统的体系结构

2.1. Windows操作系统的体系结构

image-20230801162948530

  1. 内核(单选、填空)

    内核执行Windows操作系统中最基本的操作, 主要提供下列功能:

    • 线程调度、陷入处理和异常调度、中断处理和调度、多处理器同步、供执行体使用的基本内核对象。
    • Windows操作系统的内核始终运行在核心态,代码短小紧凑,可移植性也很好。通常,除了中断服务例程,正在运行的线程是不能抢先内核的
  2. 硬件抽象层(HAL)(单选)

    windows操作系统设计的一个至关重要的方面就是在多种硬件平台上的可移植性,HAL就是使这种可移植性成为可能的关键部分

  3. 执行体

    Windows的执行体是NTOSKRNL EXE的上层(内核是其下层)。执行体从用户态导出并且可以调用函数,这些函数的接口在NTDLL.DLL中,通过Win32API可以对它们进行访问

  4. 系统进程和系统线程 (大量的子系统集合)

    系统进程是一种特殊类型的、只运行在核心态的“系统线程”的宿主。 系统线程只能从内核态调用

2.2. UNIX操作系统的体系结构

image-20230801163346585

  1. 内核层(单选)

    image-20230801163443829

    内核层是操作系统管理和控制中心,常驻内存。 其具有两方面的接口:

    • 内核与硬件的接口,它通常是由一组驱动程序和一些基本的例程所组成
    • 内核与Shell的接口,它由两组系统调用及命令解释程序等所组成。

    内核本身又可分为两大部分:

    • 进程控制子系统;
    • 文件子系统
  2. 系统调用层(单选、填空)

    系统调用层界于内核层和应用层之间,是供程序员设计、开发应用程序时调用的。 UNIX系统调用包括进程管理、文件管理、终端状态

  3. 应用层

    应用层包括各种开发工具、高级语言编译器、网络通信处理程序等。 所有应用层程序都是在Shell (命令语言解释程序)的管理和控制下为用户服务的,是面向用户操作的界面

2.3. Linux操作系统的体系结构

image-20230801163814344

  1. Linux内核

    image-20230801163920857

    内核是操作系统的核心,它负责管理系统的进程、内存、设备驱动程序、文件和网络系统,决定着系统的性能稳定性。 Linux内核由如下几部分组成:系统调用、内存管理、进程管理、设备驱动程序、文件系统和网络管理等

2.4. Android 操作系统的体系结构

image-20230801164018175

  1. Android应用程序

    Android会同一系列核心应用程序包一起发布,该应用程序包包括客户端、SMS短消息程序、日历、地图、浏览器、联系人管理程序等。所有的应用程序都是使用Java语言编写的

3 操作系统的发展 (简单了解)

image-20230801170104776

  1. 手工操作
  2. 控程序(早期批处理)
  3. 多道批处理
  4. 分时与实时系统
  5. UNIX通用操作系统
  6. 个人计算机操作系统
  7. Android操作系统

4 操作系统分类

4.1. 批处理操作系统

  1. 基本工作方式

    批处理操作系统的基本工作方式是:用户将作业交给系统操作员,系统操作员在收到作业后,并不立即将作业输入计算机,而是在收到一定数量的用户作业之后,组成一批作业,再把这批作业输入到计算机中。这批作业可在系统中形成一个连续的、自动转接的作业流。系统操作员然后启动操作系统,系统自动、依次执行每个作业。最后由操作员将执行完毕的作业结果交给用户

  2. 特点与分类

    批处理操作系统的特点是成批处理。 批处理操作系统追求的目标是系统资源利用率高,作业吞吐率高

    优点:

    • 作业流程自动化较高
    • 资源利用率较高
    • 作业吞吐量大

    提高了整个系统效率

    缺点:

    • 用户不能直接与计算机无交互,不适合调试程序

4.2. 分时系统

  1. 基本工作方式

    在分时系统中,一台计算机主机连接了若干个终端,每个终端可由一个用户使用。用户通过终端交互式地向系统提出命令请求,系统接受用户的命令之后,采用时间片轮转方式处理服务请求,并通过交互方式在终端上向用户显示结果。用户根据系统送回的处理结果发出下一道交互命令

  2. 特点(单选) 记忆口诀:计(及时)较(交互)堵(独占)路(多路)

    总体上看,分时操作系统具有多路性交互性“独占”性及时性的特点

4.3. 实时操作系统(简单了解)

  1. 概述

    实时操作系统(Real Time Operating System,RTOS)是指,使计算机能在规定的时间内,及时响应外部事件的请求,同时完成对该事件的处理,并能够控制所有实时设备和实时任务协调一致地工作的操作系统。实时操作系统主要目标是:在严格时间范围内,对外部请求做出反应,系统具有高度可靠性

  2. 实时操作系统主要有两类

    • 第一类是硬实时系统。
    • 第二类是软实时系统
  3. 实时系统的能力(单选)

    • 实时时钟管理
    • 过载防护
    • 高可靠性

4.4. 嵌入式操作系统

  1. 概述(简单了解)

    嵌入式操作系统(Embedded Operating System)就是运行在嵌入式芯片环境中,对整个芯片以及它所操作、控制的各种部件装置等资源进行统一协调、调度、指挥和控制的系统软件

  2. 特点(单选、填空)

    嵌入式操作系统具有高可靠性、实时性、占有资源少、智能化能源管理、易于连接、低成本等优点。 嵌入式操作系统在工业监控、智能化生活空间(信息家电、智能大厦等)、通信系统、导航系统等领域中的应用非常广泛,也极为重要

4.5. 个人计算机操作系统

  1. 概述(单选)

    个人计算机操作系统(Personal Computer Operating System)是一种单用户多任务的操作系统

  2. 特点

    • 计算机在某一时间内为单个用户服务;
    • 采用图形界面人机交互的工作方式,界面友好;
    • 使用方便,用户无须具备专门知识,也能熟练地操纵系统

4.6. 网络操作系统

  1. 概述

    为计算机网络配置的操作系统称为网络操作系统。 网络操作系统(Network Operating System)是基于计算机网络的、在各种计算机操作系统之上按网络体系结构协议标准设计开发的软件,它包括网络管理、通信、安全、资源共享和各种网络应用

  2. 计算机网络有不同的模式。

    • 集中式模式
    • 分布式模式

4.7. 分布式操作系统

  1. 概述(简单了解)

    将大量的计算机通过网络连结在一起,可以获得极高的运算能力及广泛的数据共享。这样一种系统称作为分布式系统(Distributed System)。为分布式系统配置的操作系统称为分布式操作系统(Distributed Operating System)

  2. 特征(单选)

    • 分布式操作系统是一个统一的操作系统,在系统中的所有主机使用的是同一个操作系统。
    • 实现资源的深度共享。
    • 透明性。
    • 自治性。
  3. 优点

    • 以较低的成本获得较高的运算性能
    • 可靠性

    对于高可靠的环境,如核电站等,分布式系统是有其用武之地的。

    机群(Cluster)是分布式系统的一种(补充)

5 操作系统设计

本文由作者按照 CC BY 4.0 进行授权

数据结构 第一章 概论

数据结构 精讲二 第二章 线性表