网站策划案,怎样做网站流量,上海平台推广的公司,专业网站建设套餐22 年 408 新大纲操作系统新增考点 一、操作系统引导 操作系统引导指的是将操作系统内核装入内存并启动系统的过程#xff0c;系统引导通常是由一段被称为启动 引导程序的特殊代码完成的#xff0c;它位于系统 ROM 中#xff0c;用来完成定位内核代码在外存的具体位… 22 年 408 新大纲操作系统新增考点 一、操作系统引导 操作系统引导指的是将操作系统内核装入内存并启动系统的过程系统引导通常是由一段被称为启动 引导程序的特殊代码完成的它位于系统 ROM 中用来完成定位内核代码在外存的具体位置按照要求 正确装入内核至内存并最终使内核运行起来的整个系统启动过程。在该过程中启动引导程序要完成多个 初始化过程当这些过程顺利完成后才能使用系统的各种服务。这些过程包括初始引导内核初始化、全 系统初始化。 初始引导过程主要由计算机的 BIOS 完成。 BIOS 是固化在 ROM 中的基本输入输出系统其内容存储在 主板 ROM 芯片中主要功能是为内核运作环境进行预先检测主要包括中断服务程序、系统设置程序、 上电自检和系统启动自举程序等。中断服务程序是系统软硬件间的一个可编程接口用于完成硬件初始 化系统设置程序用来设置 CMOS RAM 的各项参数这些参数通常表示系统基本情况、 CPU 特性、磁盘驱 动器等部件的信息等开机时一般按 Delete 键即可进入该程序界面上电自检 POST 所做的工作是在计算 机通电后自动对系统中各关键和主要外设进行检查一旦在自检中发现问题将会通过鸣笛或提示信息警 告用户系统启动自举程序是在 POST 完成工作后执行的它首先按照系统 CMOS 设置中保存的启动顺序 搜索磁盘驱动器、 CD-ROM 、网络服务器等有效的驱动器读入操作系统引导程序接着将系统控制权交 给引导程序并由引导程序装入内核代码以便完成系统的顺序启动。 操作系统内核装入内存后引导程序将 CPU 控制权交给内核此时内核才可以开始运行。内核将首先 完成初始化功能包括对硬件、电路逻辑等的初始化以及对内核数据结构的初始化如页表段表 等。 上述两个步骤完成后最后要做的就是启动用户接口使系统处于等待命令输入状态即可这个阶段 操作系统做的主要工作是为用户创建基本工作环境接收、解释和执行用户程序与指令。不同系统、不同 设置全系统初始化完成后的接口表观是不同的。如果选择了图形界面此时会显示用户账号和密码输入 界面如 windows 的用户经典登录界面若使用的是命令接口、则会显示命令行形式的用户登录界面无 论是图形接口还是命令接口要全系统初始化完成即可使用用户名和相应密码进入操作系统环境。 二、虚拟机 虚拟机是通过软件模拟的具有完整硬件系统功能的运行在一个完全隔离环境中的完整计算机系统。 在实体计算机中能够完成的工作在虚拟机中都能够实现。在计算机中创建虚拟机需要将实体机的部分硬盘 和内存容量作为虚拟机的硬盘和内存容量每一个虚拟机都有独立的 CMOS 、硬盘和操作系统。可以像使 用实体机一样对虚拟机进行操作虚拟机技术是虚拟化技术的一种。 Linux 虚拟机一种安装在 Windows 上的虚拟 Linus 操作环境就被称为 Linux 虚拟机。它实际上是一 个或一组文件是虚拟的 Linux 环境但是它们的实际效果是一样的。 Java 虚拟机 (JVM) 是 Java Virtual Machine 的缩写它是一个虚构出来的计算机是通过在实际的计算 机上仿真模拟各种计算机功能来实现的。 Java 虚拟机有自己完善的硬件架构 如处理器、堆线、寄存器 等还具有相应的指令系统。 Java 语言的一个非常重要的特点就是与平台的无关性。 而使用 Java 虚拟机是实现这一特点的关键。一般的高级语言如果要在不同的平台上运行至少需要编 译成不同的目标代码。而引入 Java 虚拟机后 Java 语言在不同平台上运行时不需要重新编译。 Java 语言使 用 Java 虚拟机屏蔽了与具体平台相关的信息使得 Java 语言编译程序只需生成在 Java 虚拟机上运行的目 标代码字节码就可以在多种平台上不加修改地运行。 Java 虚拟机在执行字节码时把字节码解释成 具体平台上的机器指令执行。 另外现在企业内部或互联网上公有云服务商提供的云主机、 VPC 等大多都是虚拟机易于动态地创 建、回收集群中所有虚拟机的运行情况都能及时掌握和按需调配。虚拟化可以说是云计算的基础技术支 撑。 三、锁 1 锁的概念 在操作系统中可以保证互斥的同步机制称为锁。通过锁机制能够保证临界区中操作数据的一致 性锁可以理解为一个共享变量拥有两种状态空闲状态和上锁状态。 2 锁的基本操作 锁有两个基本操作闭锁和开锁。闭锁就是将锁锁上其他进程 / 线程不能进入开锁就是相关工作完 成后将锁打开其他进程 / 线程可以进入了。 闭锁操作有两个步骤 ①等待锁达到打开状态 ; ②获得锁并锁上。 注意闭锁的两个操作应该是原子操作不能分开否则就会留下穿插的空档造成锁的功效丧失。 可行的方法是采用原子级汇编指令 test and set 和 swap 等。 开锁操作只需一步 : 打开锁即把锁状态修改为空闲状态。 3 锁应该具备的特性 ①锁的初始状态需为打开状态 ②进临界区前必须获得锁 ③出临界区时必须打开锁 ④如果其他进程 / 线程持有锁则必须等待。 四、条件变量 1 管程的引入 信号量同步存在以下缺点 同步操作分散同步操作分散在各个进程中使用不当就可能导致各进程死锁如 P 、 V 操作的次序 错误、重复或遗漏 易读性差要了解对于一组共享变量及信号量的操作是否正确必须通读整个系统或者并发的。 由于信号量同步存在上述缺点科学家提出了管程其基本思想是 把信号量操作原语封装在一个对象内部即将共享变量以及对共享变量能够进行的所有操作集中在一 个模块中 2 管程的基本概念 定义管程是关于共享资源的数据结构及一组针对该资源的操作所构成的软件模块。 进程可在任何需要的时候调用管程中的过程。管程有一个很重要的特性即任一时刻管程中只能有一 个活跃进程这一特性使管程能有效地完成互斥。 3 条件变量及其操作 进入管程时的互斥由编译器负责。另外还需要一种办法使得进程在无法继续运行时被阻塞解决的 的方法是引入条件变量以及相关的两个操作 wait 和 signal 。 当一个管程过程发现它无法继续运行时例如生产者发现缓冲区满它会在某个条件变量上如 full 执行 wait 操作。该操作导致调用进程自身阻塞并且还将另一个以前等在管程之外的进程调入管 程。 另一个进程比如消费者可以唤醒正在睡眠的伙伴进程这可以通过对其伙伴正在等待的一个条件 变量执行 signal 完成。为了避免管程中同时有多个活跃进程需要一条规则来通知在 signal 之后该怎么 办不同学者提出了不同的处理方法。 五、进程的调度时机和调度方式 1 调度的时机 调度的时机即何时进行调度。调度处理常见情形包括 在创建一个新进程之后。需要决定是运行父进程还是运行子进程由于二者都处于就绪状态调度程 序可以选择其中的任何一个。 在一个进程退出时必须进行调度。必须从就绪进程集中洗择某个进程如果没有就绪的进程通常会 运行一个系统提供的空闲进程闲逛进程。 当一个进程阻塞在 I/O 和信号量上或由于其他原因阻塞时必须选祥另外一个进程运行。 在一个 I/O 中断发生时必须进行调度。 另外分给进程的时间片用完、有更紧急的事情需要处理如 I/O 中断有更高优先级的进程进入 就绪队列等情况下当前进程被动放弃 CPU 将进行调度。 有些情况下不能进行调度。例如在处理中断的过程中进程在操作系统内核程序临界区中。执行原 子操作过程中原语等。 2 调度方式 非抢占方式一旦把处理机分配给某进程后便让该进程一直执行直至该进程完成或发生某事件而 被阻塞时才把处理机分配给其他进程决不允许进程抢占已分配出去的处理机。 评价实现简单、系统开销小适用于大多数的批处理 OS 但在要求比较严格的实时系统中不宜采 用这种调度方式。 抢占方式允许调度程序根据某种原则去暂停某个正在执行的进程将处理机重新分配给另一进 程。 抢占的原则 优先级原则为紧迫的作业赋予较高的优先级这种作业到达系统或由阻塞状态被唤醒后若其优先 级高于当前运行的进程的优先级可以剥夺其 CPU 。 短作业进程优先原则若一个作业进程到达系统其运行长度比当前运行的进程的剩余运行 时间短则剥夺当前运行进程的 CPU 。 时间片原则在轮转算法中 CPU 轮流为诸多进程服务每个进程运行完自己的时间片后系统就将 它的 CPU 剥夺过来交给下一个进程使用。 六、上下文切换机制 上下文指的是一种环境对于进程而言上下文实际上是进程执行活动全过程的静态描述。 进程上下文是可以按照层次规则组合起来的。例如在 UNIX System V 中进程上下文由用户级、寄存 器上下文以及系统级上下文组成。 上下文切换机制当对处理机进行切换时将发生两对上下文切换操作。对于第一对将保存当前进 程的上下文而装入分派程序的上下文以便分派程序运行对于第二对将移出分派程序而把新选进程 的 CPU 现场信息装入到处理机的相应寄存器中。 七、固态硬盘 固态硬盘是用固态电子存储芯片阵列制成的硬盘由控制单元和在储单元组成。 固态硬盘在接口的规范和定义、功能及使用方法上与传统硬盘完全相同。但 I/O 性能相对于传统硬盘 大大提升被广泛应用于军事、车载、工控、视频监控、网络监控、网络终端、电力、医疗、航空、导航 设备等领域。 固态硬盘具有如下优点 : 1 读写速度快。采用闪存作为存储介质读取速度相对机械硬盘更快。固态硬盘不用磁头寻道时 间几乎为 0 。持续写入的速度非常惊人最常见的 7200 转机械硬盘的寻道时间一般为 12-14ms 而固态硬 盘可以轻易达到 0.1 ms 甚至更低。 2 磨损均衡。也是一种基于固态硬盘主控芯片的内置平衡机制用于均衡固态硬盘内部各个区块闪 存颗粒的使用程度从而延长整体颗粒的使用寿命。在主控制器的固件中添入新的控制命令。让主控制器 在固态硬盘的读写过程中尽可能均衡地使用各个 block 防止部分闪存区块因过度频繁地擦除和写入命令 而导致整块闪存颗粒提前报废。 八、虚拟文件系统 虚拟文件系统 VFS 是一种用于网络环境的分布式文件系统它允许在同一个目录结构中可以挂载 若干种不同的文件系统。 虚拟文件系统是物理文件系统与服务之间的一个接口层。它对每个文件系统的所有细节进行抽象。隐 藏了它们的实现细节为使用者提供统一的接口。严格来说 VFS 并不是一种实际的文件系统它只是存 在于内存中不存在于任何外存空间 VFS 在系统启动时建立在系统关闭时消亡。 对于用户来说不需要关心不同文件系统的具体操作过程。而只是对一个虚拟的文件操作界面来进行 操作每一个文件系统之间互不干扰而只是调用相应的程序来实现其功能 VFS 作为内核中的一个软件 层用于给用户空间的程序提供文件系统接口同时也提供了内核中的一个抽象功能允许不同的文件系 统很好地共存。 九、文件系统挂载 文件系统挂载是指将新的文件系统关联至当前根文件系统。可以使用 mount 命令在目录树中的指定 目录挂载点附加文件系统。挂载点作为要挂载文件系统的访问入口必须已经存在。一般是不会被进 程使用到的目录。挂载后挂载点下原有文件将会被临时隐藏。 卸载是指将某文件系统与当前根文件系统的关联关系移除。