软考数据库第四章操作系统知识

软考数据库第四章操作系统知识

笔记

4.1 进程管理

主要考点
1、操作系统的基本概念
2、进程间的同步与互斥
3、信号量机制(PV操作)
4、进程调度
5、死锁
6、线程

操作系统的基本概念
  • 操作系统的定义:能有效地组织和管理系统中的各种软/硬件资源,合理地组织计算机系统的工作流程,控制程序的执行,并且向用户提供一个良好的工作环境和友好的接口.

  • 操作系统两个重要的作用:

    • (1)通过资源管理提高计算机系统的效率;

    • (2)改善人机界面向用户提供友好的工作环境

  • 操作系统的4个特征:并发性、共享性、虚拟性和不确定性。

  • 操作系统的五大功能:进程管理、文件管理、存储管理、设备管理和作业管理。

进程的状态转换
  • 运行:当一个进程在处理机上运行时,则称该进程处于运行状态。
  • 就绪:一个进程获得了除处理机外的一切所需资源,一旦得到处理机即可运行,则称此进程处于就绪状态。
  • 阻塞:也称等待或睡眠状态,一个进程正在等待某一事件发生而暂时停止运行。

在这里插入图片描述

进程的基本概念
  • 进程是程序的一次执行。

  • 进程通常是由***程序、数据和进程控制块(PCB)***组成的。

  • 进程是资源分配和独立运行的基本单位,进程两个基本属性:可拥有资源的独立单位;可独立调度和分配的基本单位。

进程间的同步与互斥
  • 进程间的同步:是指在系统中一些需要相互合作,协同工作的进程,这样的相互联系称为进程的同步。

  • 进程间的互斥:是指系统中多个进程因争用临界资源而互斥执行。

  • 临界资源:是指有些资源一次只能供一个进程使用。如打印机、共享变量等。

信号量机制(P、V操作)
  • 信号量是一个整型变量,根据控制对象的不同被赋予不同的值。
    • (1)公用信号量:实现进程间的互斥,初值为1或资源的数目。
    • (2)私用信号量:实现进程间的同步,初值为0或某个正整数。
  • 信号量S的物理意义:S≥0表示某资源的可用数,S<0,则其绝对值表示阻塞队列中等待该资源的进程数。
  • PV操作是实现进程同步与互斥的常用方法,P操作和V操作是低级通信原语,在执行期间不可分割。其中,P操作表示申请一个资源,V操作表示释放一个资源。
P操作
  • P操作的定义:S=S-1,若S≥0,则执行P操作的进程继续执行;若S<0,则置该进程为阻塞状态(因为无可用资源),并将其插入阻塞队列。
  • P操作可以理解为:
if((S=S-1)≥0)
	继续执行本进程
else   //(S=S-1)<0
	挂起本进程(本进程等待),转到另一个进程
V操作
  • V操作定义:S=S+1,若S>0,则执行V操作的进程继续执行;若S≤0,则从阻塞状态唤醒一个进程,并将其插入就绪队列,然后执行V操作的进程继续。
  • V操作可以理解为:
if  ((S=S+1)>0)
	不唤醒队列中的等待进程,继续执行本进程
else  //(S=S+1)≤0
	唤醒队列中的等待进程,同时继续执行本进程
生产者消费者问题

生产者进程P1不断地生产产品送入缓冲区,消费者进程P2不断地从缓冲区中取产品消费。

在这里插入图片描述

进程调度
  • (1)高级调度:又称*“长调度”“作业调度”或“接纳调度”*,它决定处于输入池中的哪个后备作业可以调入主系统做好运行的准备,成为一个或一组就绪进程。

  • (2)中级调度:又称*“中程调度”或“对换调度”*,它决定于交换区中的哪个就绪进程可以调入内存,以便直接参与对CPU的竞争。

  • (3)低级调度:又称*“短程调度”或“进程调度”*,它决定处于内存中的哪个就绪进程可以占用CPU。

    低级调度是操作系统中最活跃、最重要的调度程序,对系统的影响很大。

在这里插入图片描述

4种常用的进程调度算法
  • (1)先来先服务:*有利于长作业,不利于短作业;有利于CPU繁忙的作业,不利于I/O繁忙的作业。*主要用于宏观调度。

  • (2)时间片轮转:主要用于微观调度,通过时间片轮转提高进程并发性和响应时间特性,从而提高资源的利用率。

  • (3)优先级调度:让每一个进程都拥有一个优先数,数值大的表示优先级高,系统在调度时总选择优先数大的占用CPU。分为静态优先级和动态优先级两种。

  • (4)多级反馈调度:是时间片轮转算法和优先级算法的综合与发展。

    • 优点有:第一,照顾了短进程以提高系统吞吐量,缩短了平均周转时间;
    • 第二,照顾I/O型进程以获得较好的I/O设备利用率和缩短响应时间;
    • 第三,不必估计进程的执行时间,动态调节优先级。
死锁
  • 死锁:是指两个以上的进程互相都要求对方已经占有的资源导致无法继续运行下去的现象。
  • 例:现有5个进程,每个进程都需要4个资源,而系统一共有15个资源,会发生死锁吗?

在这里插入图片描述

系统中共有n个进程共享同一类资源,当每个进程都需要k个资源时,至少需要多少个资源才不会发生死锁?
至少需要资源:
M = ( k − 1 ) × n + 1 M =(k-1)×n+1 M=(k1)×n+1

  • 产生死锁的4个必要条件:互斥条件、请求保持条件、不可剥夺条件、环路条件。
  • 死锁的处理策略有:鸵鸟策略、预防策略、避免策略和检测与解除死锁。
  • 死锁预防:采用某种策略限制并发进程对资源的请求。
  • 死锁避免:如银行家算法
  • 死锁检测:系统定时地运行一个程序来检测是否发生死锁,若有,则设法加以解除。
  • 死锁解除:有资源剥夺法撤销进程法
线程

线程(轻量进程)

  • 进程两个基本属性:可拥有资源的独立单位;可独立调度和分配的基本单位。

  • 引入线程后:线程作为调度和分配的基本单位,进程作为独立分配资源的单位。

  • 一个进程中有多个线程,共享该进程的资源。

  • 线程分为用户级线程内核支持线程

  • 用户级线程不依赖于内核。该类线程的创建、撤销和切换都不利用系统调用来实现。

  • 内核支持线程依赖于内核。该类线程的创建、撤销和切换都利用系统调用来实现。

  • 线程是进程中的一个实体,是被系统独立分配和调度的基本单位,线程基本上不拥有资源,只拥有一点运行中必不可少的资源(如程序计数器、一组寄存器和栈),它可与同属一个进程的其他线程共享进程所拥有的全部资源。

  • 线程也具有就绪、运行和阻塞3种基本状态,由于线程具有传统进程所具有的特性,故称为“轻型进程”;传统进程称为“重型进程”。线程可创建另一个线程,同一个进程中的多个线程可并发执行。

4.2 存储管理

主要考点
1、分区存储管理
2、分页存储管理
3、分段存储管理
4、段页式存储管理
5、虚拟存储管理
6、页面置换算法

基本概念
  • 逻辑地址(虚拟地址、相对地址)

  • 59
    点赞
  • 49
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值