进程调度的基本过程

简介: 进程调度的基本过程

前言

Java学习过程中,进程和线程是学习的重点之一,本文讲解进程调度的基本过程。


一、什么是进程

一个运行起来的程序就是进程。进程是系统分配硬件资源的基本单位。如下:


 


二、操作系统

作用:

  1. 要给应用程序提供一个稳定的运行环境;
  2. 要管理各种硬件设备。

三、PCB

PCB又名进程控制块,有如下几个属性:
       1. pid(进程的标识):同一系统,同一时刻,每个进程的pid都不相同;


       2.  内存指针:表示了该进程对应的内存资源;


       3.  文件描述符表:操作系统打开一个文件,就会产生一个“文件描述符”(只在进程内部生效),同时会使用文件描述符(类似于数组的结构)把文件描述符组织起来。


       4.  pcb中关于进程调度的相关属性(同时也描述了进程对CPU的使用情况):  


               1)状态:就绪状态、睡眠/阻塞状态;


               2)优先级:描述了进程的先后执行顺序;


               3)上下文:存档、读档作用,也就是该进程在执行过程中,CPU寄存器对应的数据;


               4)记账信息:会统计每个进程执行时间和执行指令数目,确保每个进程的执行。


   四、进程在CPU上执行指令有两种方式:

  1. 并行:多个进程同时进行
  2. 并发:多个进程切换进行

五、组织进程--双向链表

   操作系统使用双向链表来组织PCB:

  1. 创建一个进程:创建一个链表的节点
  2. 销毁一个进程:删除链表的节点
  3. 遍历进程列表:就是遍历链表
相关文章
|
5天前
|
算法 大数据 调度
深入理解操作系统:进程管理与调度策略
【4月更文挑战第27天】 在现代计算机系统的核心,操作系统扮演着至关重要的角色。它不仅管理硬件资源,还为应用程序提供必要的服务。其中,进程管理是操作系统的一个关键组成部分,它负责创建、执行以及终止进程。而进程调度策略则是确保系统高效运行的基石。本文将探讨操作系统中的进程管理机制及其调度策略,分析它们如何影响系统性能,并讨论当前的挑战及未来可能的发展方向。
|
5天前
|
算法 调度 UED
作业调度算法(含详细计算过程)和进程调度算法浅析
作业调度算法(含详细计算过程)和进程调度算法浅析
35 1
作业调度算法(含详细计算过程)和进程调度算法浅析
|
5天前
|
算法 Ubuntu Linux
【操作系统原理】—— 进程调度
【操作系统原理】—— 进程调度
7 0
|
5天前
|
存储 弹性计算 Linux
Linux:进程调度
Linux:进程调度
25 7
|
5天前
|
算法 大数据 Linux
深入理解Linux内核的进程调度机制
【4月更文挑战第30天】操作系统的核心职能之一是有效地管理和调度进程,确保系统资源的合理分配和高效利用。在众多操作系统中,Linux因其开源和高度可定制的特点,在进程调度机制上展现出独特优势。本文将深入探讨Linux内核中的进程调度器——完全公平调度器(CFS),分析其设计理念、实现原理及面临的挑战,并探索未来可能的改进方向。
|
5天前
|
算法 Linux 调度
探索Linux内核:进程调度的奥秘
【4月更文挑战第30天】 在多任务操作系统中,进程调度是核心功能之一,它决定了处理器资源的分配。本文深入分析了Linux操作系统的进程调度机制,从调度器的基本原理到复杂的调度策略,以及它们如何影响系统性能和用户体验。通过剖析进程优先级、时间片分配以及实时性要求等方面,揭示了Linux如何在众多运行着的进程中做出快速而公平的决策,确保系统的高效与稳定运行。
|
5天前
|
算法 安全 大数据
深入理解操作系统之进程管理与调度
【4月更文挑战第30天】 在现代计算机系统中,操作系统的核心职能之一是高效地管理和调度进程,确保系统的稳定运行和资源利用的最优化。本文将深入探讨操作系统中的进程管理机制、进程调度算法以及它们在多核处理器环境下的实现。通过对不同操作系统中进程调度策略的比较,我们将揭示进程管理的关键技术和性能权衡,同时对未来操作系统设计中可能面临的挑战进行展望。
|
5天前
|
算法 Linux 调度
深入理解操作系统之进程调度策略
【4月更文挑战第29天】 在多任务操作系统中,进程调度策略是核心组件之一,它决定了处理器资源的分配。不同于常规的摘要重述内容,本文将通过分析不同的进程调度算法,揭示它们对系统性能的影响,以及在不同应用场景下的适用性。文章首先概述了操作系统中的进程概念和调度的重要性,然后详细探讨了几种主流的调度策略,包括先来先服务(FCFS)、短作业优先(SJF)、轮转调度(RR)及多级反馈队列(MFQ)。最后,文章评估了这些策略在现代操作系统中的应用,并提出了未来可能的发展趋势。
|
5天前
|
机器学习/深度学习 人工智能 算法
深入理解操作系统的进程调度策略
【4月更文挑战第29天】 本文旨在探讨操作系统中的核心机制之一——进程调度。通过对不同进程调度算法的比较分析,我们不仅揭示了各种算法背后的原理和设计理念,还讨论了它们在现代多核处理器环境下的性能表现和适用场景。文章首先回顾了进程调度的基本概念,随后详细阐述了几种经典调度策略,包括先来先服务、短作业优先以及时间片轮转等。接着,本文通过模拟实验对比了这些策略在不同工作负载下的表现,并提出了改进的调度方案。最后,文章展望了未来进程调度研究的方向,特别是在人工智能和机器学习领域的应用前景。
11 3
|
5天前
|
算法 安全 调度
深入理解操作系统:进程管理与调度策略
【4月更文挑战第29天】 在本文中,我们将深入探讨操作系统的核心组件之一——进程管理。首先,我们将解释进程的概念以及它们在操作系统中的作用。接着,我们将详细讨论不同的进程调度策略,包括先来先服务、短作业优先和轮转调度等。此外,我们还将分析这些调度策略的优缺点,并探讨它们在不同场景下的应用。最后,我们将展望操作系统进程管理的未来发展趋势。

相关实验场景

更多