• 大小: 599KB
    文件类型: .zip
    金币: 2
    下载: 1 次
    发布日期: 2021-06-26
  • 语言: C#
  • 标签: 磁盘调度  

资源简介

利用编程模拟实现磁盘调度算法 设计目的: 熟悉各种磁盘调度算法的原理。 设计要求: 用高级语言编写和调试多个实现不同磁盘调度的程序。 设计内容: 该题目实现对磁盘调度算法的模拟,分为4个子题目: 1)先来先服务算法; 2)最短寻道时间优先算法; 3)扫描算法; 4)循环扫描算法;

资源截图

代码片段和文件信息

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;

namespace Os
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }
         int i1 i2 i3 i4;
         int[] array;
         private void button1_Click(object sender EventArgs e)  //产生随机序列号
        {
            String str1 = textBox1.Text;
            String str2 = textBox2.Text;
            String str3 = textBox3.Text;
            String str4 = textBox4.Text;
            String str5=““;
            if(int.TryParse(str1out i1)==false)    //转换数据类型并判断数据是否合法
            {
                MessageBox.Show(“最大磁道数不合法“);
                return;
            }
            if (int.TryParse(str2 out i2) == false)  //转换数据类型并判断数据是否合法
            {
                MessageBox.Show(“当前磁道数不合法“);
                 return;
            }
            if (i2 > i1)        //判断数据是否合法
             {
                 MessageBox.Show(“当前磁道数不能大于最大磁道数“);
                 return;
             }
            if (int.TryParse(str3 out i3) == false)   //转换数据类型并判断数据是否合法
            {
                MessageBox.Show(“磁道方向不合法“);
                return;
            }
            if (i3 != 0 && i3 != 1)        //判断数据是否合法
             {
                 MessageBox.Show(“磁道方向不合法“);
                 return;
             }
            if (int.TryParse(str4 out i4) == false)     //转换数据类型并判断数据是否合法
            {
                MessageBox.Show(“进程数不合法“);
                 return;
            }
             
             Random random = new Random();           
              array = new int[i4];
             for (int i = 0; i < array.Length; i++)   //产生不重复的随机序列并将其赋值给数组
             {
                 int x = Convert.ToInt32(random.Next(1 i1));   //产生随机数并复制给x
                 for (int j = 0; j < i; j++)                  //消除重复
                 {
                     if (x == array[j])
                     {
                         x = Convert.ToInt32(random.Next(1i1));
                         j = 0;
                     }
                 }
                 array[i] = x;
             }
             for (int i = 0; i < array.Length; i++)   //将数组里的数转换类型并赋给str5
             {
                 str5 += Convert.ToString(array[i])+“ “;
             }
             textBox5.Text = str5;             //在textbox5里显示str5
        }
         private void button2_Click(object sender EventArgs e)   //先来先服务
        {
            String str1 = ““;
            String remove = ““;
            for (int i = 0; i < array.Length; i++)     
            {
                str1 += Convert.ToString(array[i]) + “ “;
            }
            textBox6.Text = str1;
            int[] array1 = new int[i4];

            remove += Convert.ToString(Math.Abs(i2 - array[0])) + “ “;   /

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     文件     1060352  2013-07-05 11:59  实验报告.doc
     目录           0  2013-07-02 14:26  Os\
     目录           0  2013-07-02 14:26  Os\Os\
     文件         848  2013-07-02 14:26  Os\Os.sln
     文件       19968  2013-07-05 12:05  Os\Os.suo
     目录           0  2013-07-02 14:26  Os\Os\bin\
     目录           0  2013-07-02 15:11  Os\Os\bin\Debug\
     文件       17408  2013-07-05 08:46  Os\Os\bin\Debug\Os.exe
     文件       34304  2013-07-05 08:46  Os\Os\bin\Debug\Os.pdb
     文件       11600  2013-07-05 10:35  Os\Os\bin\Debug\Os.vshost.exe
     文件         490  2010-03-17 22:39  Os\Os\bin\Debug\Os.vshost.exe.manifest
     文件       17843  2013-07-04 13:15  Os\Os\Form1.cs
     文件       14956  2013-07-03 17:36  Os\Os\Form1.Designer.cs
     文件        5817  2013-07-03 17:36  Os\Os\Form1.resx
     目录           0  2013-07-02 14:26  Os\Os\obj\
     目录           0  2013-07-02 14:26  Os\Os\obj\x86\
     目录           0  2013-07-05 08:46  Os\Os\obj\x86\Debug\
     文件        4501  2013-07-03 01:15  Os\Os\obj\x86\Debug\DesignTimeResolveAssemblyReferences.cache
     文件        6287  2013-07-05 08:46  Os\Os\obj\x86\Debug\DesignTimeResolveAssemblyReferencesInput.cache
     文件         232  2013-07-03 17:36  Os\Os\obj\x86\Debug\GenerateResource.read.1.tlog
     文件         542  2013-07-03 17:36  Os\Os\obj\x86\Debug\GenerateResource.write.1.tlog
     文件         631  2013-07-05 10:35  Os\Os\obj\x86\Debug\Os.csproj.FileListAbsolute.txt
     文件       17408  2013-07-05 08:46  Os\Os\obj\x86\Debug\Os.exe
     文件         180  2013-07-03 17:36  Os\Os\obj\x86\Debug\Os.Form1.resources
     文件       34304  2013-07-05 08:46  Os\Os\obj\x86\Debug\Os.pdb
     文件         180  2013-07-02 15:08  Os\Os\obj\x86\Debug\Os.Properties.Resources.resources
     文件        8031  2013-07-03 01:15  Os\Os\obj\x86\Debug\ResolveAssemblyReference.cache
     目录           0  2013-07-02 14:26  Os\Os\obj\x86\Debug\TempPE\
     文件        3663  2013-07-02 15:08  Os\Os\Os.csproj
     文件         483  2013-07-02 14:26  Os\Os\Program.cs
     目录           0  2013-07-02 14:26  Os\Os\Properties\
............此处省略5个文件信息

评论

共有 条评论