操作系统概述

操作系统是管理计算机系统的各种软件、硬件资源的系统软件,并提供人机交互界面

操作系统

  • DOS

  • linux

  • windows

  • Android

  • IOS

  • Unix

数据库管理系统

  • Access

  • Oracle

  • MySQL

语言处理程序

  • 汇编程序

  • 编译程序

  • 解释器

操作系统的功能

  • 进程管理

  • 存储管理

  • 文件管理

  • 设备管理

  • 作业管理:包括任务、人机交互和用户界面管理等

进程管理

进程:是程序在一个数据集合上的过程,它是系统进行资源分配和调度的一个单独单位。它由程序块进程控制块(PCB)和数据块三部分组成

进程和程序的区别

  • 程序是完成某个特定功能的一系列程序语句的集合

  • 进程是程序一次执行的过程没有程序就没有进程

  • 程序是静态的概念,而进程是动态的概念,它由创建而产生,完成任务后因撤销而消亡

  • 进程是系统进行资源分配和调度的独立单位,而不是程序

进程三态模型

就绪

运行

等待(阻塞)

就绪

处理机调度

运行

时间片到

等待某个事件

等待(阻塞)

等待的事件发生

死锁问题

如果一个进程在等待一个不可能发生的事(如无限等待另一进程所占用的资源),这种现象称为进程死锁。而如果一个或多个进程产生死锁,就会造成系统死锁

死锁的必要条件

  • 互斥条件

  • 保持和等待条件

  • 不可剥夺条件

  • 循环等待条件

生产死锁的原因

  • 竞争资源

  • 进程推进顺序不合法

解决死锁的方法

  • 死锁预防

  • 死锁避免

  • 死锁检测

  • 死锁解除

最少资源数计算

不考虑资源数量限制的情况下,并发进程不发生死锁的的最少资源数量的计算

其中,M为并发进程的数量, n为各进程需要的资源数量

进程的同步、互斥

在操作系统中,进程是占有资源的最小单位。

  • 临界资源

  • 进程互斥

互斥:如千军万马过独木桥

进程同步

是进程宅男的直接制约关系,指为完成某种任务而建立的两个或多个进程,这些进程因为需要在某些位置上协调它们的工作次序而产生的制约关系,这源于它们之间的相互合作。

  • 生产者进程:生产者产生产品放入市场

  • 消费者进程:消费者从市场购买产品

PV操作

  1. 信号量(Semaphore)
    一个整数变量,用于表示可用资源的数量。分为两种类型:

    • 互斥信号量:初始值为 1,用于保证一次只有一个进程访问临界资源(如打印机)。

    • 资源信号量:初始值为资源总数,用于管理多个同类资源(如多个缓冲区)。

  2. P 操作(Wait 操作)

    • 原子性地将信号量减 1。

    • 若信号量值 ≥ 0,进程继续执行。

    • 若信号量值 < 0,进程阻塞并加入等待队列。

  3. V 操作(Signal 操作)

    • 原子性地将信号量加 1。

    • 若信号量值 > 0,唤醒等待队列中的一个进程。

存储管理

页式存储基本原理

作用:实现分散存储。

将各进程的虚拟空间划分成若干个长度相等的页,同时把内存空间划分成与页大小相等的块或者页面,然后通过页表把页式虚拟地址与物理地址进行——对应

地址结构

分两部分:页号&页内地址

  • 逻辑地址:页号&内页地址

  • 物理地址:块号&页内地址

地址映射

计算机存储管理中的地址映射是将程序使用的虚拟地址(逻辑地址)转换为实际物理内存地址的过程。

页式存储的特点

优点:利用率高,碎片化小,分配及管理简单

缺点:增加了系统开销,可能产生抖动现象

页式置换算法

  • 最佳置换算法

  • 先进先出置换算法

  • 最近最少使用置换算法

  • 时钟置换算法

  • 最不经常使用置换算法

文件管理

树形目录结构

在操作系统文件管理中,通常采用文件目录来组织和管理外存中的信息,其结构为树型目录结构

文件路径

  • 文件路径是指文件存储在计算机中的位置分为绝对路径和相对路径

  • 工作目录:即当前所在目录。

从哪里开始

路径是否会随着改变

绝对路径

根目录

不会

相对路径

工作目录

两个特殊的目录

  • . 代表自己

  • .. 代表上一级目录

设备管理

数据传输控制方式

数据传输控制方式(I/O控制方式),可实现外设到内存的数据传输控制,一般可分为三种:

  • 程序控制方I/O 方式

  • 中断方式

  • DMA方式