Java如何动态模拟操作系统进程调度算法
发表于:2024-11-14 作者:千家信息网编辑
千家信息网最后更新 2024年11月14日,本篇内容主要讲解"Java如何动态模拟操作系统进程调度算法",感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习"Java如何动态模拟操作系统进程调度算法"吧!实验
千家信息网最后更新 2024年11月14日Java如何动态模拟操作系统进程调度算法
本篇内容主要讲解"Java如何动态模拟操作系统进程调度算法",感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习"Java如何动态模拟操作系统进程调度算法"吧!
实验目的
通过对进程调度算法的模拟,进一步理解进程的基本概念,加深对进程运行状态和进程调度过程、调度算法的理解。
设备与环境
硬件设备:PC机一台
软件环境:安装Windows操作系统,并安装相关的程序开发环境,如C \C++\Java 等编程语言环境。
实验内容
实验采用了java语言编程模拟N个进程采用动态高优先权优先进程调度算法。该算法就是按照优先权的大小运行进程,如果一个时间片内未运行完,则将优先权数减3后再插入到链表中按priority的顺序进行排序找到最大的priority作为下一个运行进程且在就绪队列里面的进程priority会加1。
主模块:
动态priority排序模块:
用来保证头部永远最大
到达时间进入就绪状态模块:
计算周转时间和带权周转时间:
实验结果及分析
输入的信息
初始权值都为100,needtime为还需要的时间
进程 到达时刻 服务时间
A03
B26
C44
D65
E82
以A为例:
最后结束时:
部分代码展示
//创建结构class PCB{ String ID; int priority=-1; int cputime;//服务的时间 int needtime;//进程还需的时间 String state="wait"; int arrivetime; PCB next; public PCB(String ID,int priority,int cputime,int arrivetime){ this.ID=ID; this.priority=priority; this.cputime=cputime; this.arrivetime=arrivetime; }}
判断是否到达,进程进入时间for(int i=0;i //将进程转为就绪态并排序public static void sort(PCB pcb){PCB tmp=null; if(ready==null){//当头结点为空 ready=pcb; tail=pcb;} else {if(pcb.priority>ready.priority){//如果这个结点priority大于头priority pcb.next=ready; ready=pcb;} else { boolean m=false; tmp=ready;//q while (m==false){ if(tail.priority>=pcb.priority){//插入尾端 tail.next=pcb; tail=pcb; pcb.next=null; m=true; } else { if(tmp.priority>=pcb.priority&&pcb.priority>tail.priority){//逐渐遍历插到tmp前 pcb.next=tmp.next; tmp.next=pcb; m=true; } else { tmp=tmp.next;到此,相信大家对"Java如何动态模拟操作系统进程调度算法"有了更深的了解,不妨来实际操作一番吧!这里是网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!
进程
时间
算法
调度
动态
操作系统
系统
环境
实验
运行
内容
模块
排序
最大
优先权
状态
结点
设备
语言
周转
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
网络安全与隐私保护设计素材
网络安全中基线配置
无缝转化网络安全吗
中国大型服务器操作系统
中间件处于操作系统数据库的
千和炒股软件开发
产品数据库维护方案
软件开发试用期目标
smc数据库是哪个国家的软件
我的世界服务器免费充值
服务器繁忙4002是什么意思
局强化网络安全防范能力
我的世界pe跑酷服务器
近的企业数据库
网络专用设备和网络安全产品
天谕手游服务器都一样吗
互联网美业科技公司
手机云端备份数据库怎么删除
网络安全已经升至国家
sql数据库不能共享
桓台染整管理软件开发
龙骨荒野服务器
php可以搭配几种数据库
crm 数据库 表
软件开发自动生成代码
零基础培训软件开发
北京做直销软件开发
网络安全手抄报可爱型
如何宣传网络安全相关知识
网络技术查个人信息