【操作系统】进程管理

简介: 【操作系统】进程管理

正文


1. 程序顺序执行的特征


前驱图是一个有向无循环图,由结点和有向边组成,结点代表各程序段的操作,而结点建的有向边表示两个程段操作之间的前驱关系(->)。程序段 Pi 和 Pj 的前驱关系表示成 Pi -> Pj,其中,Pi 是 Pj 的前驱,Pj 是 Pi 的后继,其含义是 Pi 执行结束后 Pj 才能执行。


如下图所示为 3 个程序段,其中输入是计算的前驱(计算是输入的后继),输入结束才能进行计算;计算是输出的前驱,计算结束才能进行输出。


88.webp.jpg


程序顺序执行时的主要特征包括顺序性、封闭性和可再现性。


2.进程控制块(PCB)


进程是程序的一次执行,该程序可以和其他程序并发执行。进程通常是由程序、数据和进程控制块(Process Control Block,PCB)组成的。

PCB 是进程存在的唯一标志,其主要内容如下所示:


信息 含义
进程标识符 标明系统中的各个进程
状态 说明进程当前的状态
位置信息 指明程序及数据在主存或外存的物理位置
控制信息 参数、信号量、消息等
队列指针 链接同一状态的进程
优先级 进程调度的依据
现场保护区 将处理机的现场保护到该区域,以便再次调度时能继续正确运行
其他 因不同的系统而异


3. 原语(Primitive)


原语(Primitive)是指由若干条机器指令组成的,用于完成特定功能的程序段。原语的特点是在执行时不能被分割,即原子操作要么都做,要么都不做。内核中所包含的原语主要有进程控制原语、进程通信原语、资源管理原语以及其他方面的原语。


属于进程控制方面的原语有进程创建原语进程撤销原语进程挂起原语进程激活原语进程阻塞原语以及进程唤醒原语等。不同的操作系统内核所包含的功能不同,但大多数操作系统的内核都包含支撑功能和资源管理的功能。


4. 高级通信原语


为了提高信号通信的效率,传递大量数据,降低程序编制的复杂度,系统引入了高级通信方式。高级通信方式主要分为共享存储模式消息传递模式管道通信


  1. 共享存储模式。相互通信的进程共享某些数据结构(或存储区)实现进程之间的通信。
  2. 消息传递模式。进程间的数据交换以消息为单位,程序员直接利用系统提供的一组通信命令(原语)来是实现通信,如 Send(A)、Receive(A)。
  3. 管道通信。所谓管道,是指用于连接一个读进程和一个写进程,以实现它们之间通信的共享文件(pipe 文件)。向管道(共享文件)提供输入的发送进程(即写进程),以字符流的形式将大量的数据送入管道;而接收进程可从管道接收大量的数据。由于它们通信时采用管道,所以称为管道通信。


目录
相关文章
|
1月前
|
消息中间件 存储 算法
【软件设计师备考 专题 】操作系统的内核(中断控制)、进程、线程概念
【软件设计师备考 专题 】操作系统的内核(中断控制)、进程、线程概念
82 0
|
1月前
|
存储 消息中间件 算法
《操作系统》——进程与线程
《操作系统》——进程与线程
|
1月前
|
缓存 Linux Shell
Linux进程解析(冯诺依曼体系结构,操作系统,进程初步解析)
Linux进程解析(冯诺依曼体系结构,操作系统,进程初步解析)
52 1
|
27天前
|
资源调度 监控 算法
深入理解操作系统:进程管理与调度策略
本文旨在探讨操作系统中进程管理的核心概念及其实现机制,特别是进程调度策略对系统性能的影响。通过分析不同类型操作系统的进程调度算法,我们能够了解这些策略如何平衡响应时间、吞吐量和公平性等关键指标。文章首先介绍进程的基本概念和状态转换,随后深入讨论各种调度策略,如先来先服务(FCFS)、短作业优先(SJF)、轮转(RR)以及多级反馈队列(MLQ)。最后,文章将评估现代操作系统在面对多核处理器和虚拟化技术时,进程调度策略的创新趋势。
|
1月前
|
安全 算法 网络安全
深入理解操作系统之进程调度策略网络安全与信息安全:防御前线的关键技术与策略
【2月更文挑战第29天】在多任务操作系统中,进程调度策略是核心机制之一,它决定了CPU资源的分配。本文将探讨三种经典的进程调度算法:先来先服务(FCFS)、短作业优先(SJF)和轮转调度(RR)。通过比较它们的优缺点,我们可以理解不同场景下的性能考量,以及如何根据实际需求选择合适的调度策略。 【2月更文挑战第29天】在数字化时代,网络安全和信息安全已成为维护信息完整性、确保数据隐私以及保障网络服务连续性的重要组成部分。本文将深入探讨网络安全漏洞的概念、加密技术的应用以及提升个人和企业安全意识的重要性。通过分析当前网络威胁的类型和特点,文章旨在为读者提供一系列针对网络攻击的预防措施和应对策略,
|
20小时前
|
算法 Linux 调度
深入理解操作系统中的进程调度策略
【4月更文挑战第25天】 在多任务操作系统中,进程调度策略是核心组件之一,它负责决定哪个可运行的进程将获得CPU时间。本文将探讨不同的进程调度算法,包括它们的原理、优缺点以及适用场景。我们将重点分析先到先服务(FCFS)、短作业优先(SJF)、轮转调度(RR)和多级反馈队列(MLFQ)等经典算法,并讨论现代操作系统如Linux和Windows中的实际调度策略。文章的目的是为读者提供对操作系统进程调度机制深度了解,并展示其在系统性能和用户体验中的关键作用。
|
1天前
|
负载均衡 算法 调度
深入理解操作系统中的进程调度策略
【4月更文挑战第25天】 在现代操作系统的核心功能中,进程调度策略扮演着至关重要的角色。本文将详细解析进程调度的基本概念、调度算法的种类及其背后的原理,并探讨它们对系统性能的影响。通过比较不同的调度策略,我们可以更深入地理解操作系统如何管理资源,确保多任务环境下的效率和公平性。
|
18天前
|
算法 Linux 调度
深入理解操作系统的进程调度策略
【4月更文挑战第8天】本文深入剖析了操作系统中的关键组成部分——进程调度策略。首先,我们定义了进程调度并解释了其在资源分配和系统性能中的作用。接着,探讨了几种经典的调度算法,包括先来先服务(FCFS)、短作业优先(SJF)以及多级反馈队列(MLQ)。通过比较这些算法的优缺点,本文揭示了它们在现实世界操作系统中的应用与局限性。最后,文章指出了未来进程调度策略可能的发展方向,特别是针对多核处理器和云计算环境的适应性。
|
19天前
|
算法 调度 UED
深入理解操作系统中的进程调度策略
【4月更文挑战第7天】 在多任务操作系统中,进程调度策略是决定系统性能和响应速度的关键因素之一。本文将探讨现代操作系统中常用的进程调度算法,包括先来先服务、短作业优先、轮转调度以及多级反馈队列等。通过比较各自的优势与局限性,我们旨在为读者提供一个全面的视角,以理解如何根据不同场景选择合适的调度策略,从而优化系统资源分配和提升用户体验。
|
28天前
|
算法 Unix Linux
深入理解操作系统:进程管理与调度策略
在现代操作系统的核心功能中,进程管理及其调度机制是维护系统稳定与高效运行的基石。本文将深入探讨操作系统中的进程概念、进程状态、以及进程调度策略。我们将从理论和实践两个维度出发,解析不同操作系统如何通过进程管理来优化资源分配,提升系统响应速度,并保证多任务环境下的公平性与效率。特别地,文章还将讨论实时系统中的调度策略,以及它们对于确保关键任务按时完成的重要性。
14 1