[2024深圳市考][计算机素质测试考纲](二)操作系统

前言

因篇幅有限,本文仅对考纲中的考点做基本介绍。

更详细的内容请自行学习:【加州大学伯克利分校】CS162 操作系统和程序设计-Operating System and Systems Programming 双语字幕

一、操作系统的基本概念

BIOS和CMOS

简单的说,BIOS(Basic Input Output System)是一个程序,储存在BIOS芯片中,它通常是一个ROM或NvRAM。

CMOS是一个集成在南桥中的RAM芯片,存储电脑硬件配置信息和各种参数(如日期、启动设置等)。主板上有一块锂电池专门为CMOS供电。

BIOS中包含一个用于修改CMOS的配置程序,平时你开机时进入的BIOS设置,其实就是在修改CMOS的参数。

电脑启动时,首先启动的是BIOS,它会:

  • 读取CMOS中存储的各种信息,识别硬件配置,开始加电自检和初始化,发现问题立即停机或给出提示及鸣笛。
  • 引导DOS或操作系统。

操作系统

操作系统(OS)本质上是一个运行在计算机上的软件程序,只不过这个程序运行在处理器特权模式下,用于管理全局的计算机硬件和软件资源。

一套完整的计算机系统由三部分组成:应用程序、操作系统(OS)和计算机的硬件。

操作系统承上启下.png

如上图所示,操作系统处于计算机硬件和应用程序之间,它主要负责:

  • 与硬件交互,管理与配置各种资源

  • 进行调度管理,决定系统资源供需的的优先次序

  • 控制输入设备与输出设备

  • 操作网络与文件管理系统等基本事务

  • 提供一个让用户与系统交互的操作页面

  • ......

操作系统的五大职能通常包括:进程和作业管理(又称处理器管理)、存储管理、文件管理、设备管理和用户界面。

二、进程管理

进程(Process)是指正在执行的程序的实例,它包括程序代码、数据、执行状态等信息。

应用程序是静态的,它作为系统中的一种资源是永远存在的。而进程是动态的,它是动态的产生、变化和消亡的,拥有其自己的生命周期。

进程管理主要包括以下几个方面:

  • 创建:操作系统负责创建新的进程。当用户或应用程序发起创建进程的请求时,操作系统会为新进程分配资源,并初始化进程的执行环境。

  • 调度:操作系统负责调度和分配CPU时间片给各个进程。它根据调度算法和优先级策略,决定哪个进程可以获得CPU的执行权,以实现多任务并发执行。

  • 同步:操作系统提供了各种机制来实现进程之间的同步和协作。例如,信号量、互斥锁、条件变量等,可以用来解决进程间的互斥访问、同步执行等问题。

  • 通信:操作系统提供了进程间通信的机制,使得不同进程之间可以进行数据交换和共享。常用的进程通信方式包括管道、消息队列、共享内存等。

  • 终止:操作系统负责终止进程的执行。当进程完成任务、出现错误或被用户终止时,操作系统会回收进程所占用的资源,并将进程从系统中移除。

  • 状态管理:操作系统维护和管理进程的状态信息。每个进程都有不同的状态,如运行态、就绪态、阻塞态等,操作系统通过状态转换和状态管理,控制进程的执行和资源分配。

不同的操作系统有不同的进程管理方式和策略,如批处理系统、交互式系统、实时系统等。

一个进程中可以有多个线程(Thread),它们共享这个进程的资源。

例如,你打开的Chrome浏览器是一个进程,它里面有很多线程,例如 HTTP 请求线程、事件响应线程、渲染线程等等。线程的并发执行使得在浏览器中点击一个新链接从而发起 HTTP 请求时,浏览器还可以响应用户的其它事件。

三、作业管理

作业管理(Job Management)的主要任务包括:

  • 作业提交:用户将自己编写的程序和相关的数据提交给操作系统,以便进行后续的处理和执行。作业提交可以通过命令行界面、图形界面或者其他方式进行。

  • 作业调度:作业调度是指根据一定的调度算法,从作业队列中选择一个或多个作业并分配给可用的处理器进行执行。作业调度的目标是提高系统的吞吐量、响应时间和资源利用率。

  • 作业执行:作业执行是指将作业加载到内存中,并由处理器执行作业中的指令。作业执行需要进行内存管理、进程调度和资源分配等操作,以保证作业能够顺利执行。

  • 作业控制:作业控制是指对作业的执行过程进行监控和控制,以保证作业的正确执行和完成。作业控制包括对作业的中断处理、错误处理和资源回收等操作。

  • 作业完成:作业完成是指作业执行结束后的处理过程。作业完成可以包括对作业结果的输出、资源的释放和作业状态的更新等操作。

一个作业可由多个进程组成,且必须至少由一个进程组成,但一个进程不能构成多个作业。

作业的概念主要用在批处理系统中,像UNIX这样的分时系统则没有作业的概念。而进程的概念则基本应用于所有的操作系统中。

四、存储管理

存储管理负责管理计算机系统中的主存储器(内存)和辅助存储器(硬盘、光盘等)等存储设备,为进程提供存储空间和管理存储资源。

存储管理的主要任务包括以下几个方面:

  • 内存分配:操作系统需要为进程分配内存空间,以便进程可以存储和执行程序。内存分配可以采用静态分配或动态分配的方式,静态分配是在编译时确定分配的内存空间大小,动态分配是在运行时根据进程的需求动态分配内存空间。

  • 内存保护:操作系统需要保护进程的内存空间,防止进程之间相互干扰或访问非法内存区域。内存保护可以采用硬件保护或软件保护的方式,硬件保护是通过硬件机制实现内存隔离和保护,软件保护是通过操作系统提供的机制和权限控制实现内存保护。

  • 内存回收:操作系统需要回收进程使用的内存空间,以便其他进程可以使用。内存回收可以通过进程终止、垃圾回收等方式实现。

  • 虚拟内存:操作系统可以通过虚拟内存技术,将部分进程的内存空间映射到硬盘等辅助存储器上,以扩大可用内存空间。虚拟内存可以通过页面置换等方式实现。

  • 内存管理算法:操作系统需要采用合适的内存管理算法,以实现高效的内存分配和回收。常用的内存管理算法包括首次适应算法、最佳适应算法、最坏适应算法等。

  • 存储器层次结构管理:操作系统需要管理计算机系统中的存储器层次结构,包括主存储器、高速缓存、辅助存储器等。存储器层次结构管理可以通过缓存技术、页面置换等方式实现。

五、文件管理

文件(File)是以硬盘为主要载体存储在计算机上的信息集合,是我们电脑中以实现某种功能、或某个软件的部分功能为目的而定义的一个单位。

文件管理的主要任务包括:

  • 文件创建和删除:文件管理负责创建新文件和删除不再需要的文件。在文件创建过程中,需要分配文件的唯一标识符和存储空间,并记录文件的属性信息。在文件删除过程中,需要释放文件占用的存储空间,并更新文件系统的相关信息。

  • 文件读取和写入:文件管理负责实现对文件的读取和写入操作。读取文件时,文件管理根据文件的标识符和位置信息,从存储介质中读取相应的数据,并将数据传递给请求的进程。写入文件时,文件管理将进程提供的数据写入文件的指定位置,并更新文件的相关信息。

  • 文件修改和重命名:文件管理允许用户对文件进行修改和重命名操作。文件修改可以是对文件内容的修改,也可以是对文件的属性信息的修改。文件重命名是指修改文件的名称,但不改变文件的内容和属性。

  • 文件组织和管理:文件管理负责组织和管理文件系统中的文件。文件系统通常采用层次化的目录结构来组织文件,文件管理需要实现对目录和子目录的创建、删除、重命名和移动等操作。文件管理还需要维护文件的索引信息,以便快速定位和访问文件。

  • 文件保护和权限控制:文件管理需要实现对文件的保护和权限控制。文件保护包括对文件的读取、写入和执行权限的设置,以及对文件的加密和解密等操作。权限控制可以限制用户对文件的访问和操作,保护文件的安全性和隐私性。

  • 文件备份和恢复:文件管理可以实现对文件的备份和恢复操作。文件备份是指将文件的副本保存在其他存储介质中,以防止文件丢失或损坏。文件恢复是指从备份中恢复文件的操作,以恢复文件的原始状态。

六、设备管理

设备管理负责管理计算机系统中的各种硬件设备,包括输入设备、输出设备和存储设备等。

它的主要任务包括:

  • 设备分配:是指将多个进程对设备的请求进行合理分配,以实现设备的共享和高效利用。设备管理需要维护设备队列,记录设备的使用情况和状态,根据进程的请求进行设备分配。设备分配可以采用多种方式,包括独占分配、共享分配和虚拟设备等。

  • 设备驱动程序管理:是指管理设备驱动程序的加载、运行和卸载等操作。设备驱动程序是操作系统中的一个关键组件,它负责与硬件设备进行通信和控制。设备管理需要加载适当的设备驱动程序,并确保其正常运行。当设备不再使用时,设备管理需要卸载相应的设备驱动程序。

  • 设备中断处理:是指处理设备中断事件的过程。当设备完成某个操作或发生错误时,会产生中断信号,通知操作系统进行相应处理。设备管理需要捕获和处理设备中断事件,根据中断类型进行相应的处理操作,包括唤醒等待设备的进程、重新分配设备资源等。

  • 设备错误处理:是指处理设备发生错误或故障的情况。设备管理需要监测设备的状态和错误信息,及时进行错误处理,以保证系统的稳定性和可靠性。设备错误处理包括设备重启、设备重置、设备故障转移等操作,以尽可能恢复设备的正常工作状态。

七、常用操作系统

操作系统发展.png

目前比较主流的操作系统包括:

  • Windows操作系统:由微软公司开发的操作系统,广泛应用于个人电脑和服务器领域。

  • MacOS操作系统:由苹果公司开发的操作系统,运行在Macintosh系列的电脑上。

  • Linux操作系统:一种自由和开放源代码的操作系统,广泛应用于服务器领域和嵌入式设备等领域。

  • Android操作系统:由谷歌公司开发的移动操作系统,运行在大部分智能手机和平板电脑上。

  • iOS操作系统:由苹果公司开发的移动操作系统,运行在iPhone、iPad等移动设备上。

  • Chrome OS操作系统:由谷歌公司开发的面向云计算的操作系统,广泛应用于Chromebook等笔记本电脑上。

参考资料

操作系统的基本概念

BIOS CMOS 都是什么鬼?U盘启动就靠它

五分钟扫盲:进程与线程基础必知

操作系统之文件管理,万字长文让你彻底弄懂!!!

posted @ 2023-12-22 09:22  NPC老郑  阅读(78)  评论(0编辑  收藏  举报