资源简介
用C#编写的进程调度程序,包括优先权调度算法,时间片轮转法。能够显示每一步进程的变化情况。
代码片段和文件信息
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using System.Collections;
namespace OStest1
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
int n;//进程数
public ArrayList a1 = new ArrayList();
private void button1_Click(object sender EventArgs e)
{
button1.Visible = false;
n = int.Parse(textBox1.Text);
Random rd = new Random();
for (int i = 0; i < n; i++)
{
pcb p = new pcb(Convert.ToChar(65 + i).ToString() rd. Next(1 10) rd.Next(1 20) 0);
a1.Add(p);
}
show();
if (radioButton1.Checked)
{
button2.Visible = true;
button3.Visible = true;
}
else if (radioButton2.Checked)
{
button4.Visible = true;
}
else MessageBox.Show(“请选择调度算法。“);
}
public void sort()
{
pcb[] PCB = new pcb[a1.Count];
a1.CopyTo(PCB);
for (int j = 1; j <=a1 .Count -1; j++)
{
for (int i = 0; i {
pcb p;
if (PCB[i].prority <= PCB[i + 1].prority)
{
p = PCB[i];
PCB[i] = PCB[i + 1];
PCB[i + 1] = p;
}
else
{
}
}
}
int b=a1 .Count ;
a1.Clear();
for (int i = 0; i {
a1.Add(PCB[i]);
}
}
public void show()
{
listBox1.Items.Clear();
listBox1.Items.Add(“进程号 优先权 所需时间片数 已服务时间“);
pcb[] PCB = new pcb[a1.Count];
a1.CopyTo(PCB);
for (int i = 0; i < a1 .Count ; i++)
{
string s = PCB[i].proc_no.ToString() + “ “ + PCB[i].prority.ToString() + “ “ + PCB[i].needTime.ToString()+“ “+PCB[i].servTime ;
listBox1.Items.Add(s);
}
}
private void button2_Click(object sender EventArgs e)
{
if (a1.Count == 0)
MessageBox.Show(“进程服务完毕。“);
else if (a1.Count == 1)
{
pcb[] p = new pcb[1];
a1.CopyTo(p);
if (p[0].needTime != p[0].servTime)
{
p[0].servTime++;
p[0].prority--;
show();
}
else
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 24576 2012-06-12 19:33 OStest1\OStest1\bin\Debug\OStest1.exe
文件 52736 2012-06-12 19:33 OStest1\OStest1\bin\Debug\OStest1.pdb
文件 5632 2005-12-08 14:51 OStest1\OStest1\bin\Debug\OStest1.vshost.exe
文件 5076 2012-06-12 19:33 OStest1\OStest1\Form1.cs
文件 7747 2012-06-12 19:32 OStest1\OStest1\Form1.Designer.cs
文件 5814 2012-06-12 19:32 OStest1\OStest1\Form1.resx
文件 443 2012-05-19 23:52 OStest1\OStest1\Form2.cs
文件 2721 2012-05-14 00:23 OStest1\OStest1\Form2.Designer.cs
文件 5814 2012-05-14 00:10 OStest1\OStest1\Form2.resx
文件 332 2012-05-14 01:21 OStest1\OStest1\Form3.cs
文件 2635 2012-05-14 01:21 OStest1\OStest1\Form3.Designer.cs
文件 5814 2012-05-14 01:21 OStest1\OStest1\Form3.resx
文件 230 2012-05-11 17:13 OStest1\OStest1\FormInfo.cs
文件 958 2012-06-12 19:32 OStest1\OStest1\obj\Debug\OStest1.csproj.GenerateResource.Cache
文件 24576 2012-06-12 19:33 OStest1\OStest1\obj\Debug\OStest1.exe
文件 180 2012-06-12 19:32 OStest1\OStest1\obj\Debug\OStest1.Form1.resources
文件 180 2012-05-14 00:10 OStest1\OStest1\obj\Debug\OStest1.Form2.resources
文件 180 2012-05-14 01:21 OStest1\OStest1\obj\Debug\OStest1.Form3.resources
文件 52736 2012-06-12 19:33 OStest1\OStest1\obj\Debug\OStest1.pdb
文件 180 2012-05-04 00:21 OStest1\OStest1\obj\Debug\OStest1.Properties.Resources.resources
文件 1966 2012-06-13 23:58 OStest1\OStest1\obj\OStest1.csproj.FileListAbsolute.txt
文件 3972 2012-05-13 11:00 OStest1\OStest1\OStest1.csproj
文件 545 2012-05-19 22:41 OStest1\OStest1\pcb.cs
文件 466 2012-05-04 00:18 OStest1\OStest1\Program.cs
文件 1162 2012-05-04 00:18 OStest1\OStest1\Properties\AssemblyInfo.cs
文件 2870 2012-05-04 00:18 OStest1\OStest1\Properties\Resources.Designer.cs
文件 5612 2012-05-04 00:18 OStest1\OStest1\Properties\Resources.resx
文件 1092 2012-05-04 00:18 OStest1\OStest1\Properties\Settings.Designer.cs
文件 249 2012-05-04 00:18 OStest1\OStest1\Properties\Settings.settings
文件 910 2012-05-04 00:18 OStest1\OStest1.sln
............此处省略13个文件信息
- 上一篇:客显Led8Demo C# 有测试工具
- 下一篇:C# FTP客户端实例42418
相关资源
- C# FTP客户端实例42418
- 客显Led8Demo C# 有测试工具
- 通过修改属性表完成shp文件的修改
- C#上位机串口通信助手源代码
- ZeroMQ传输数据
- C#制作仿苹果优美界面
- C#自定义控件之-自定义MessageBox
- CSharp通讯录编程
- c# 读取txt文件中特定内容后的文字
- C#打开电脑本地文件地址
- C#实现在控件上画直线
- c#连接oracle实现用户登录以及密码的修
- C#基于TCP的Socket多线程通信包含服务端
- C# 中使用Report(rdlc)报表实现dataLi
- c#数据库课程设计-可视化界面
- C#三层架构
- .net 天气预报 C#应用程序
- C#热敏小票打印机打印位图
- 房屋出租管理系统access+c#
- 学生信息管理系统c#+sql
- c# 五子棋课程设计
- C#Socket多线程聊天室
- 基于C#的网络抓包程序源码
- C#做的拼图小游戏源代码
- C#动态添加菜单实现权限管理
- C# IO写入,输出
- C# 二手交易系统 二手交易系统
- 从数据库读取数据到坐标轴为时间的
- C#中以时间作为chart的X坐标轴间隔
- C# 不依赖Office读取Word、PPTdocdocxpptpp
评论
共有 条评论