操作系统功能简介

132 阅读5分钟

开启掘金成长之旅!这是我参与「掘金日新计划 · 2 月更文挑战」的第 5 天,点击查看活动详情

1.操作系统功能简介

操作系统是一个做管理工作的软件,管理硬件设备并且为软件提供稳定的运行环境

操作系统是软件和硬件用户之间交互的媒介

常见的操作系统:Windows 98,2000,xp,vista,win7,win10,win11

Linux:特别适合开发与部署的操作系统

Mac:苹果电脑使用的操作系统

Android,IOS等,都是常见的操作系统

我们看一下操作系统的层次结构

层次

说明

应用程序

java就属于应用程序的一部分

系统调用

操作系统给应用程序提供API(程序操作硬件设备时,先通过系统调用,把操作命令给系统内核,其次内核调动驱动程序,来操作硬 件设备)

操作系统内核

操作系统的功能(管理)

驱动程序

硬件设备,种类繁多,厂商各异,厂商在开发硬件时会提供驱动程序,电脑安装驱动程序后才能正确识别硬件设备

硬件设备

打开电脑后盖,看见的就是硬件设备

2.进程

2.1 认识进程

进程(process)也叫任务(task),(ctrl+alt+delete)打开任务管理器,就可以看到电脑正在运行的程序

因此,一个跑起来的程序就是一个进程

8d40b43968d545118e2c3b281ebbdd95.png​编辑

电脑上有很多程序,没有运行起来的,就不是进程,双击运行它,就会创建进程

还可以看到,每一个进程,都对应了电脑所分配的资源,进程是操作系统资源分配的基本单位

c38e7e03ca97450f9142ad1a65f8a35e.png​编辑

当运行的进程足够多时,电脑的资源就会被全部占用,这个时候电脑就变得非常卡顿

所以电脑卡顿和电脑硬盘存储的东西多不多没关系

2.2 进程操作系统中如何管理

进程是一个重要的软件资源,是由操作系统进行管理的

管理方式:描述+组织

描述:进程控制块 (PCB:Processing Control Block),使用结构体描述进程属性,不是PCB (printed circuit board)印制线路板

组织:通过一定的数据结构(双向链表)把多个pcb串起来

创建一个进程,本质上是创建一个PCB这样的结构体对象,然后插入到链表中

销毁一个进程,本质上是删除掉链表上的PCB节点

任务管理器上查看进程列表就是遍历这个链表所获得的

2.3 PCB如何描述

2.3.1 pid

pid是进程身份标识符(唯一的数字),每个进程都对应一个pid

勾选pid就能看到

62b7f9bbbc394f1180cce56bc83f724c.png​编辑

2.3.2 内存指针

指向进程使用的资源

2.3.3 文件描述符表

硬盘上的文件等其他资源

也描述了进程使用了哪些资源

硬件资源,比如内存,硬盘,网卡这些是好划分的,不好划分的是cpu资源

电脑上运行的进程有很多,cpu却很少,打开设备管理器就能看到处理器

14249dedd4354e24870f1e3bc2068dad.png​编辑

这些进程希望能''同时运行''''分时复用''

并行:微观上同一时刻,两个核心上的进程是同时执行的

并发:微观上同一时刻,一个核心只能运行一个进程,但能对进程快速切换(宏观上就觉得这些进程是同时在运行的)

并行或并发统称为"并发",是由内核负责处理,应用程序感知不到

操作系统中的调度器负责让有限的cpu资源来调度执行很多的进程

2.3.4 进程调度相关属性

处理机:计算机系统中存储程序和数据,并按照程序规定的步骤执行指令的部件。
处理机包括中央处理器,主存储器, I/O 接口。
处理机再加上外围设备eg:鼠标.键盘.等构成完整的计算机系统。

1.进程的状态

就绪状态:

指的是进程已经处于准备好运行的状态,即进程已经分配到除了cpu资源以外的所有必要资源,只要分到cpu,就能立即执行

如果系统中有多个就绪队列,会按照优先级将他们排成一个就绪队列

执行状态:

指的是进程已经获得cpu,程序正在执行的状态

单处理机只有一个进程处于执行状态

多处理机有多个进程处于执行状态

阻塞状态:

正在执行的进程由于发生(IO请求,申请缓冲区失败等)暂时无法继续执行的状态,即执行的过程受到阻塞了,操作系统会把处理及分配到另一个就绪状态的进程,让受阻塞的进程暂停运行,这种状态就是阻塞状态

2. 优先级

进程也是有优先级的,操作系统进行调度的时候,要了解京城的状态及调度信息,进程优先级就是一个描述进程使用处理机的优先级别的一个整数,优先级高的进程优先获得处理机

3. 上下文

处理机状态信息也称为处理机的上下文,上下文也就是处理机的各种存储器中的信息组成的,是程序运行的中间结果.

主要作用是:

当进程被切换的时候,处理机的状态信息也即上下文必要保存在相应的PCB中,以便于该进程重新执行时能再从断点处继续运行

保存上下文:把CPU中的寄存器的值保存到PCB

恢复上下文:把这些值恢复到寄存器中去

4. 记账信息

操作系统,统计每个进程在CPU上占用的时间和执行的指令数目,根据这个决定下一阶段是如何调度的