进程调度的基本过程

这篇具有很好参考价值的文章主要介绍了进程调度的基本过程。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

前言

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


一、什么是进程

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

进程调度的基本过程,java,java

  


二、操作系统

作用:

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

三、PCB

PCB又名进程控制块,有如下几个属性:

        1.  pid(进程的标识):同一系统,同一时刻,每个进程的pid都不相同;

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

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

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

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

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

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

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


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

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

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

    操作系统使用双向链表来组织PCB:文章来源地址https://www.toymoban.com/news/detail-603518.html

  1. 创建一个进程:创建一个链表的节点
  2. 销毁一个进程:删除链表的节点
  3. 遍历进程列表:就是遍历链表

到了这里,关于进程调度的基本过程的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • (学习笔记-调度算法)进程调度算法

    进程调度算法也称 CPU 调度算法,毕竟进程是由 CPU 调度的。 当 CPU 空闲时,操作系统就选择内存中标的某个 [就绪状态] 的进程,将其分配给 CPU。 什么时候会发生CPU调度呢?通常有以下情况: 当进程从运行状态转换到等待状态 当进程从运行状态转换到就绪状态 当进程从等待

    2024年02月11日
    浏览(29)
  • java之路——带你了解Hibernate与基本过程

    Hibernate框架的发展可以追溯到2001年,它在过去的几年里获得了广泛的应用和持续的发展。 其中的发展演变: 初期版本(2001-2006年): Hibernate框架最早由Gavin King创建,目的是为了简化Java应用程序与关系数据库之间的数据交互。在这个阶段,Hibernate开始以一种简单但强大的方

    2024年02月12日
    浏览(32)
  • 操作系统(一):进程状态与进程调度

            操作系统作为计算机基础的四大件,系统学习无疑是十分重要的。在这个系列的文章中,荔枝会结合操作系统的知识进行归纳梳理,总结输出博文!下面这篇文章主要介绍的是进程状态和调度,重点是几种调度算法的理解和掌握,希望对正在学习的小伙伴有帮助

    2024年02月05日
    浏览(37)
  • 【Linux】进程>环境变量&&地址空间&&进程调度

    主页: 醋溜马桶圈-CSDN博客 专栏: Linux_醋溜马桶圈的博客-CSDN博客 gitee :mnxcc (mnxcc) - Gitee.com 目录 1.环境变量 1.1 基本概念 1.2 常见环境变量  1.3 查看环境变量方法  1.4 和环境变量相关的命令 1.5 环境变量的组织方式 1.6 通过代码如何获取环境变量 1.6.1 命令行第三个参数 1

    2024年04月15日
    浏览(41)
  • 【Linux 内核源码分析】进程调度 -CFS 调度器

    Linux内核调度器是负责决定哪个进程在何时执行的组件。它管理着CPU资源的分配和任务的调度,以确保系统资源的合理利用和任务的高效执行。Linux内核中常见的调度器有多种,包括经典的O(1)调度器、CFS(Completely Fair Scheduler)调度器等。这些调度器根据不同的策略和算法来进

    2024年01月17日
    浏览(47)
  • 编写C程序模拟实现单处理机系统中进程调度,实现对多个进程的调度模拟,要求采用多级反馈队列调度算法进行模拟调度。(江西师范大学)

    编写C程序模拟实现单处理机系统中进程调度,实现对多个进程的调度模拟,要求采用多级反馈队列调度算法进行模拟调度。 数据结构设计:PCB:结构体;就绪队列:每个节点为进程PCB;进程状态 具体调度算法:FCFS、SJF、PR;涉及多种操作:排序、链表操作 程序输出设计:调

    2024年02月04日
    浏览(44)
  • 【操作系统核心概念】进程管理和进程调度

    本文主要讲的是操作系统的一些核心概念, 主要讲解 进程管理和进程调度 的问题, 当然学习完本篇并不会让你能从零打造一个操作系统, 而只是让读者有了对操作系统核心概念的基本认识. 关注收藏, 开始学习吧🧐 操作系统是一组做计算机资源管理的软件的统称 , 其本质上也

    2024年02月12日
    浏览(52)
  • 【Linux】详谈进程优先级&&进程调度与切换

             进程要访问某种资源,进程通过一定的方式排队,确认享受资源的优先顺序。计算机中资源过少,所以进程访问某种资源时需要排队。          进程的优先级其实就是PCB中的一个整形变量(int PRI)。Linux中进程的默认优先级是80,这个默认优先级是可以被修改

    2024年03月22日
    浏览(33)
  • 【进程调度】基于优先级的轮转调度C++实现算法

    在计算机科学领域, 进程调度是操作系统中一个关键的组成部分,它负责协调系统中各个进程的执行顺序,以最大程度地提高系统资源利用率 。在这篇博客中,将深入探讨基于优先级的轮转调度算法,该算法结合了进程的 优先级 和 时间片轮转 的思想,以实现高效的任务执

    2024年01月20日
    浏览(36)
  • 操作系统实验(进程调度)

      1.1理解有关进程控制块、进程队列的概念。   1.2掌握进程优先权调度算法和时间片轮转调度算法的处理逻辑。   2.1设计进程控制块PCB的结构,分别适用于优先权调度算法和时间片轮转调度算法。   2.2建立进程就绪队列。   2.3编制两种进程调度算法:优先权调度

    2024年02月06日
    浏览(35)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包