首页 > 系统相关 >第二章 - 进程

第二章 - 进程

时间:2023-03-19 12:14:37浏览次数:46  
标签:PCB 2.9 进程 2.1 第二章 程序段 运行

2.1 进程的定义、组成、组织、特征:

2.1.1 进程的定义:

  • 程序:一个指令序列
  1. 定义:进程是进程实体的运行过程,是系统进行资源分配和调度的一个独立单位
  2. 单道程序:
    1. 一次只能处理一个程序,当该程序运行时,cpu、内存、I/O设备都要为它一个程序服务
    2. 程序的代码放在程序段内,程序运行过程处理的数据放在数据段
  3. 多道程序:
    1. 一次可以处理多个程序
    2. 问题?操作系统怎么找到各程序存在内存的位置  
    3. 解决问题:系统为每个程序配置一个数据结构,叫做进程控制块PCB,来扫描进程的各个信息
  4. 进程实体:
    1. 程序段、数据段、PCB组成进程实体(进程映像)
    2. 进程实体,也可以叫做进程

2.1.2 进程的组成:

  • 进程的组成说的是:进程内部由哪些部分构成(和进程的组织要区分开)
  1. PCB:
    1. PCB是进程存在的唯一标识
    2. 进程描述、资源分配等
    3. 记住:PCB进程的管理者,所需的数据全在PCB中
      1. 如:分配进程优先级、进程标识的PID、UID,I/O设备的分配
  2. 程序段:
    1. 存放要执行的代码  
  3. 数据段:
    1. 存放程序运行过程中处理的各种数据

2.1.3 进程的组织:

  • 进程的组织说的是:多个进程之间组织的方式
  • 说的目的是:一个操作系统有非常多个PCB,它们是怎么有效的管理起来这么多个PCB

  1. 链接方式:
    1. 把当前运行的进程分为不同的运行状态
    2. 这些运行状态会通过指针指向不同的PCB
    3. 指向不同的PCB,优先级高的会在前面
  2. 索引方式:
    1. 和链接方式一样,它是通过索引表来指向

 

 2.1.4 进程特征:

 2.1.5 总结:

  1. 什么进程是:进程是进程实体的运行过程,是系统进行资源分配和调度的一个独立单位
  2. 进程的组成:PCB、程序段、数据段
    1. PCB是基础存在的唯一标识、基础的管理者
    2. 程序段:放程序执行代码
    3. 数据段:放运行时使用的数据
  3. 组织方式:链接、索引

2.9 FCFS、SJF、HRRN调用算法:

2.9.1 先来先服务FCFS:

  • FCFS的调度算法,跟排队买奶茶一样,谁先,谁执行 

 

  •  FCFS概念

 

 

2.9.2 短作业优先(不抢占、抢占)JSF:

  • JSF的调度算法,就是运行时间短的优先(抢占)

 

  • SRTN短作业抢占调用算法,根据运行的时间来互相抢占

 

  •  短作业的算法概念

 

 2.9.3 高响应优先HRRN:

  • 根据响应比来决定优先执行顺序,得出响应比,就可以算周转时间了

 

  • HRRN的概念

 

 2.9.4 三种算法的对比:

 

 2.9.5 总结、细节:

  1. 记住周转时间、带权周转时间、等待时间、和平均时间的公式
  2. 记住HEER的响应比的公式
  3. 细节:带权周转时间,指的是周转时比运行时间大多少倍
  4. 细节:等待时间公式是:等待时间=周转时间-运行时间-(IO设备操作时间-IO时间的减和不减要根据具体来分析)
  5. 大细节-考试会考:JSF算法是平均等待时间,平均周转时间最少(宏观上理解这句话)

   

  

 

标签:PCB,2.9,进程,2.1,第二章,程序段,运行
From: https://www.cnblogs.com/Mr-shne/p/17222202.html

相关文章

  • Day 17 17.4 多进程实现
    多进程实现由于GIL的存在,python中的多线程其实并不是真正的多线程,如果想要充分地使用多核CPU的资源,在python中大部分情况需要使用多进程。multiprocessing包是Python......
  • Linux进程调度的思考
    a.进程怎么载入到CPU中运行?b.当前进程正在运行,怎么确定是否要切换下一个进程?c.怎么选出下一个进程?d.选择进程的算法和优先级?e.介绍一下常用的算法调度逻辑?f.从......
  • Linux进程通信 | 共享内存
    一、共享内存是什么在Linux系统中,共享内存是一种IPC(进程间通信)方式,它可以让多个进程在物理内存中共享一段内存区域。这种共享内存区域被映射到多个进程的虚拟地址空间中,......
  • 进程和线程
    进程、线程1进程与线程的关系和区别什么是进程定义:进程是一个具有一定独立功能的程序在一个数据集合上依次动态执行的过程。进程是一个正在执行的程序的实例,包括程序......
  • 第二章 重构原则
    2.3何时重构三次法则,事不过三,过三重构。或者可预计的代码逻辑,将来会被多处引用也应该重构。重构的期望1)容易阅读,代码可读性更好2)所有逻辑都只在唯一地点指定3)新的改......
  • 通过sh脚本查找某一个端口的进程并杀死
    sh#!/bin/bashport=8080#将8080替换成你想要查找和杀死的端口号#查找端口的进程IDpid=$(lsof-ti:$port)#杀死进程if[[-n"$pid"]];thenecho"Killi......
  • Linux进程通信 | 消息队列
    什么是消息队列?假设你是一个快递员,你需要将货物从一个仓库运到另一个仓库。但是你发现自己的时间不够用,需要另外请一个人来帮忙。那么,你们之间如何进行协作呢?一种方式是......
  • 你能说说进程与线程的区别吗
    进程是具有一定独立功能的程序关于某个数据集合上的一次运行活动,进程是系统进行资源分配和调度的一个独立单位。线程是进程的一个实体,是CPU调度和分派的基本单位,它是比进......
  • TCP/IP网络编程 -- (十)多进程服务器端
    TCP/IP网络编程--(十)多进程服务器端10.1进程概念及应用为了提高客户端的平均满意度,通常会使用并发服务器的方法,并且网络程序中数据通信时间比CPU运算时间大,因此向多个......
  • TCP/IP网络编程 -- (十一)进程间通信
    TCP/IP网络编程--(十一)进程间通信进程间通信基本概念因为两个进程间具有完全独立的内存空间,因此通信需要特殊的方式通过管道实现进程间通信管道并非进程的资源,与soc......