Моделирование файловой системы FAT16

Автор: Пользователь скрыл имя, 12 Апреля 2011 в 13:33, курсовая работа

Описание работы

Целью данного проекта является наглядное моделирование работы файловой системы FAT16, которая использовалась в MS-DOS 3.31.

Содержание

ВВЕДЕНИЕ 3
1 ПОСТАНОВКА ЗАДАЧИ 4
1.1 ТЕОРЕТИЧЕСКОЕ ВВЕДЕНИЕ 4
1.2 ПОСТАНОВКА ЗАДАЧИ 7
2 ПРОЕКТИРОВАНИЕ 8
2.1 ВЫБОР ОПЕРАЦИОННОЙ СИСТЕМЫ 8
2.2 ВЫБОР ЯЗЫКА ПРОГРАММИРОВАНИЯ 8
2.3 ВЫБОР ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ ПРОМЕЖУТОЧНОГО УРОВНЯ 8
2.4 ВЫБОР ИНСТРУМЕНТАЛЬНЫХ СРЕДСТВ 8
3 РАЗРАБОТКА 9
3.1 ВЫБОР АРХИТЕКТУРЫ СИСТЕМЫ 9
3.2 ПОСТРОЕНИЕ ДИАГРАММ ПРЕЦЕДЕНТОВ И ПОСЛЕДОВАТЕЛЬНОСТИ 9
3.3 РАЗРАБОТКА ВАРИАНТОВ ИСПОЛЬЗОВАНИЯ 11
3.4 РАЗРАБОТКА ГРАФИЧЕСКОГО ИНТЕРФЕЙСА 13
3.5 РАЗРАБОТКА АРХИТЕКТУРЫ ПРИЛОЖЕНИЯ 14
3.6 РАЗРАБОТКА АЛГОРИТМОВ РАБОТЫ ПРОГРАММЫ 16
3.6.1 Метод FileCreate_Click класса Mainform. 17
3.6.2 Метод FileDelete_Click класса Mainform. 18
4 ТЕСТИРОВАНИЕ ПРОГРАММЫ 19
4.1 ТЕСТИРУЕМЫЕ ФУНКЦИИ 19
4.2 ТЕСТИРОВАНИЕ 19
5 РУКОВОДСТВО ОПЕРАТОРА 21
5.1 НАЗНАЧЕНИЕ ПРОГРАММЫ 21
5.2 ТЕХНИЧЕСКИЕ СРЕДСТВА ДЛЯ ЗАПУСКА ПРОГРАММЫ 21
5.3 РАБОТА С ПРОГРАММОЙ 21
ВЫВОДЫ 25
ПЕРЕЧЕНЬ ССЫЛОК 26
ПРИЛОЖЕНИЕ А 27
ПРИЛОЖЕНИЕ Б 31

Работа содержит 1 файл

ПЗ.doc

— 1.29 Мб (Скачать)

          

        }

    }

} 

 

       Текст файла DeleteForm.cs: 

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 fat

{

    public partial class DeleteForm : Form

    {

        public DeleteForm()

        {

           InitializeComponent();

        } 

        private void OKBut_Click(object sender, EventArgs e)

        {

            try

            {

                FileSystem.ToDelete = byte.Parse(NToDelTXT.Text);

                NToDelTXT.Text = "";

                this.Close();

            }

            catch

            {

                MessageBox.Show("Вы ввели неверное значение(номер файла задается одним числом, без пробелов, символов подчеркивания, точек и запятых). Попробуйте еще раз.", "Ошибка!", MessageBoxButtons.OK, MessageBoxIcon.Error);

            }

        } 

        private void Ld(object sender, EventArgs e)

        {

            if (FileSystem.NumberOfFiles != 0)

            {

                label1.ForeColor = Color.Black;

                label1.Text = "Введите номер файла(1-" + FileSystem.NumberOfFiles + "):";

                OKBut.Enabled = true;

            }

            else

            {

                label1.ForeColor = Color.Red;

                label1.Text = "Файлов нет!";

                OKBut.Enabled = false;

            }

        }

    }

}

 

      

      Текст файла Cluster.cs: 

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;

using System.Threading; 

namespace fat

{

    public partial class Cluster : Form

    {

        int tmpVal;

        public Cluster()

        {

            InitializeComponent();

           

        } 

        private void OK_Click(object sender, EventArgs e)

        {

            try

            {

                tmpVal = int.Parse(textBox1.Text.ToString());

                Graphics Gr = Graphics.FromImage(FileSystem.Map);

                int tmpypos = (int)(tmpVal / 60);

                int tmpxpos = (int)(tmpVal % 60) - 1;

                if (tmpVal % 60 == 0) tmpxpos = 0;

                Pen tmp = new Pen(Brushes.Blue,2);

                Gr.DrawRectangle(tmp, 40 + 20 * tmpxpos, 40 + 20 * tmpypos, 20, 20);

                label1.Text = "Номер кластера";

                Gr.Dispose();

                this.Close();

            }

            catch

            {

                MessageBox.Show("Вы ввели неверное значение(номер кластера задается одним числом, без пробелов, символов подчеркивания, точек и запятых). Попробуйте еще раз.", "Ошибка!", MessageBoxButtons.OK, MessageBoxIcon.Error);

               

            }

          

        } 

        private void ld(object sender, EventArgs e)

        {

            label1.Text += "(1 - " + FileSystem.NumberOfClusters.ToString() + "): ";

        }

    }

} 

 

       Текст файла FileSystem.cs: 

using System;

using System.Collections.Generic;

using System.Linq;

using System.Text;

using System.Drawing; 

namespace fat

{

    public static class FileSystem

    {

       public static double PartitionSize;

       public static int ClusterSize;

       public static int NumberOfClusters;

       public static double FreeSpace;

       public static Bitmap Map;

       public static int[] DecimalMap;

       public static char[] BinaryMap;

       public static string[] FileName;

       public static string[] Date;

       public static int[] FileSize;

       public static int[] StartCluster;

       public static int[] EndCluster;

       public static int[] ClustOnFile;

       public static byte NumberOfFiles = 0;

       public static byte Cnt = 0;

       public static int pointer;

       public static byte ToDelete;

       public static byte[] IsDeleted;

    }

}

Информация о работе Моделирование файловой системы FAT16