操作系统知识点

本文详细介绍了操作系统的四大特征:并发、异步、共享和虚拟,以及它们在进程管理、存储管理、设备管理和文件管理中的应用。重点讨论了进程与线程的区别、进程通信、同步与互斥的概念,以及死锁的预防和处理。此外,还概述了存储管理的功能,包括内存分配、地址变换和存储保护。最后,简要提及了设备管理在操作系统中的作用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

操作系统快速入门

一.绪论

特征:并发、异步、共享、虚拟

  1. 并发:同一时间段内,交替执行某个任务
  2. 异步:多道程序并发执行,每个程序会不可预知的方式间隔运行
  3. 共享:多个进程访问共同资源
  4. 虚拟:物理上的一个CPU虚拟为多个逻辑上的CPU,物理内存一段地址映射为多个逻辑上的内存

功能:调度管理、存储管理、设备管理、文件管理

  1. 调度管理:进程控制、进程同步、进程通信、死锁处理、调度管理
  2. 存储管理:内存分配与回收、地址映射、资源共享、资源扩充
  3. 设备管理:用户通过I/O向CPU发起指令,从而访问计算机资源

资源共享根据属性可分为两种形式

互斥共享形式 (当资源被程序A占用时,其他想使用的话只能等待,只有进程A使用完以后,其他进程才可以使用该资源)

同时访问形式 (某种资源在一段时间内并发地被多个程序访问,这种“同时”是宏观的,从宏观去看该资源可以被同时访问)

提供用户与计算机之间的接口

  1. 命令接口:通过控制台或终端向计算机输入指令提供对应的服务
  2. 程序接口:使用系统调用请求操作系统提供服务
  3. 图形接口:提供友好的操作界面访问计算机资源

运行机制:系统调用、内核态与用户态

  1. 系统调用:系统调用都是通过中断实现的,调用服务时通过中断从用户态切换到内核态,执行中断服务程序将结果返回到用户态
  2. 内核:是操作系统的管理者,可执行特权命令
  3. 中断处理过程:开启断点,保护程序现场,引出中断服务程序,开中断,执行中断服务程序,关中断,恢复现场

二. 进程管理

进程:进程是程序的运行过程,是系统进行资源分配和调度的一个独立单位;

进程可以控制程序的并发执行,能够通过进程同步实现操作系统的并发性和共享性;

进程是动态运行的而程序是静态的,进程是竞争计算机资源的基本单位。

线程:线程是CPU调度和分派的基本单位,一个进程由一个或多个线程组成,线程依赖于   进程而存在;

        进程有自己的独立地址空间,线程共享所属进程的地址空间;

        进程是拥有系统资源的一个独立单位,而线程自己基本上不拥有系统资源;

进程管理:进程有自己的独立地址空间,一个进程阻塞时,不影响其他进程的状态,因此多   进程更加健壮;多线程程序有一个程序阻塞会影响其他线程,所持的锁没被释放,   其他线程也会继续等待,导致整个程序异常

进程通信:两个进程同时共享一块内存,可以对内存上的数据修改和读取,达到通信的目的

管道通信

管程的组成:定义的数据结构、定义在这组数据上的操作、共享数据的初始值

管道通信: 为了协调双方(发送进程和接受进程)的通信,必须提供依以下的机制确认对 方的存在:

1.任何时刻,只能有一个进程进入管程执行

2.一组数据和定义在这组数据上的操作,可以单独被一个进程访问资源,数据只能单向传输,只要里面有数据,就可以读出,只要里面有空位,就可以写入,等一个进程访问结束,释放管程资源

3.管程中的共享变量只能被管程的过程访问,任何外部过程不能访问

4.管程中必须包含同步信息

临界区:访问资源的那段代码,任意时刻只允许一个线程对临界资源进行访问

拥有临界区对象的线程可以访问该临界资源,其它试图访问该资源的线程将被挂起,直到临界区对象被释放

进程状态及转换过程

进程同步:某个进程需要另一个进程提供的消息,获得消息之前进入阻塞态

进程互斥:多个进程在同一时刻只有一个进程能进入临界区(进程访问资源的代码)

进程同步机制:

  1. 空闲让进:当无进程处于临界区,可允许一个请求进入临界区的进程立即进入自己的临界区
  2. 忙着等待:当临界区内已有进程,所有企图进入临界区的进程必须等待
  3. 有限等待:应保证该进程能在有限时间内进入临界区
  4. 让权等待:当进程应该进入而不能进入临界区时,应释放处理机资源,避免进入忙等状态(一直尝试进入,其他进程处于阻塞状态),其他进程可以进入临界区

进程唤醒:允许一个线程在处理完一个任务后,主动唤醒另外一个线程执行任务

把被阻塞的进程从等待该事件的阻塞队列中移出,将其PCB中的现行状态由阻塞改为就绪,然后再将该PCB插入到就绪队列中

PCB(Process Control Block):系统中存放进程的管理和控制信息的数据结构

PCB的作用是使一个在多道程序环境下不能独立运行的程序,成为个能与其他进程并发执行的进程

信号量:每增加一个进程对共享资源的访问,可用资源计数减1,只要当前可用资源计数大于0,就可以发出信号量信号;如果为0,则将进程放入阻塞队列中等待

互斥量:只有拥有互斥对象的进程才有访问互斥资源的权限,保证互斥资源不会同时被多个进程访问

       当前拥有互斥对象的进程处理完任务后必须将互斥对象交出,以便其他进程访问该资源

死锁:两个或两个以上的进程在执行中,因争夺资源而造成的一种互相等待的现象

死锁原因:

  1. 系统资源不足:系统资源数量不足以满足多个进程运行的需要,多个进程会因争夺资源而陷入僵局
  2. 进程推进顺序不当:进程在运行过程中,请求和释放资源的顺序不当
  3. 信号量使用不当:一个进程访问完系统资源后没恢复计数,则其他进程一直处于阻塞状态

     处理方法:避免死锁、检测死锁、预防死锁、解除死锁

三. 存储管理

功能:内存的分配和回收、地址变换、扩充内存、存储保护

应用程序执行过程:编译、链接、装入

程序链接方式:静态链接、运行时动态链接、装入时动态链接

内存连续分配管理方式:

单一连续分配:简单、无外部碎片,只适用于单用户、单任务的操作系统中,有内部碎片,存储器的利用率极低

固定分区分配:多道程序存储管理方式,将用户内存空间划分为若干个固定大小的区域,每个分区只装入一道作业,是一个循环队列结构

动态分区分配:在进程装入内存时,根据进程的大小动态地建立分区

四. 设备管理

参考链接:https://zhuanlan.zhihu.com/p/124284469

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值