!操作系统--课程设计报告模板.doc
文本预览下载声明
北京理工大学珠海学院
《操作系统》课程设计
题目:电梯调度算法
姓 名: 黄嘉龙
学 院: 计算机科学技术学院
专 业: 软件工程
班 级: 3
学 号: 0602231020
指导老师: 何春香
完成日期: 2009年1月9日
目录
1 课程设计的目的----------------------------------------3
2 课程设计的内容(及原理)--------------------------------3
3 课程设计的要求----------------------------------------3
4 程序功能说明------------------------------------------4
5 算法流程图--------------------------------------------6
6 程序源代码--------------------------------------------7
(题目:)电梯调度算法
1 课程设计的目的
通过课程设计来模拟电梯调度算法的过程,加深我们对操作系统中磁盘调度中各种调度算法的理解和深化,理论与实际的相结合,进一步强化了对操作系统的学习和巩固。
2 课程设计的内容(及原理)
课程设计的内容是电梯调度算法,其原理是当有多个磁盘访问任务时,先执行移动臂移动方向上的最近的那个柱面,直到同方向的任务执行完,在执行反方向上的访问任务。
3 课程设计的要求
成功的模拟电梯调度算法,了解其原理后,在实践中运用起来,运用数据结构和自身的语言功底
完成调度算法的执行过程。
4 程序功能说明
本程序能模拟电梯调度算法,通过输入一些假设要访问的磁盘柱面,并假设当前磁头初始柱面位置,
模拟电梯调度算法的执行过程。
程序开始运行时弹出界面
录入柱面号
执行向上
执行向下
5 算法流程图
这里只介绍电梯算法的主要流程
向上执行
注:向下执行与向上执行几乎一样,故忽略。
6 程序源代码(C#语言)
//Form1.cs
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 电梯调度算法2
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private int start = 0;
private ArrayList al = new ArrayList();
private void button1_Click(object sender, EventArgs e)//录入柱面号
{
int result;
if (textBox4.Text != ) { textBox4.Clear(); }
if (int.TryParse(textBox1.Text,out result))//判断输入的数据是否合法
{
al.Add(int.Parse(textBox1.Text));
textBox2.Text += textBox1.Text+,;
textBox1.Clear();
}
else
{
textBox1.Clear();
MessageBox.Show(
显示全部