• 大小: 391.68 KB
    文件类型: .rar
    金币: 1
    下载: 1 次
    发布日期: 2024-12-15
  • 语言: C#
  • 标签: 操作系统  C#  

资源简介

本操作系统是用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.IO;

namespace OS
{

    #region FCB
    public class FCB                     //目录结构(文件控制块)
    {
        byte [] name=new byte[3];     //文件名或目录名
        byte type;                    //文件类型(扩展名)  0代表exe文件1代表txt文件
        byte attribute;               //文件属性
        byte address;                 //文件起始盘块号
        char length;                  //文件长度


        #region 构造函数
        public FCB() 
        {
        
        }
        public FCB(byte[]nambyte typbyte attbyte addchar len)
        {
            name = nam;
            type = typ;
            attribute = att;
            address = add;
            length = len;
        }
        #endregion

        #region 属性
        public byte[] Name
        {
            get { return name; }
            set { name = value; }
        }

        public char Length
        {
            get { return length; }
            set {length=value;}
        }

        public byte Type
        {
            get { return type; }
            set { type = value; }
        }

        public byte Attribute
        {
            get { return attribute; }
            set { attribute = value; }
        }

        public byte Address
        {
            get { return address;}
            set { address = value; }
        }
        #endregion
    }
    #endregion

    public class FileFunction
    {

        #region FindNullItem(判断是否为空目录项)
        public int FindNullItem(int dnumstring harddisk)
        {
            FileStream Disk = new FileStream(harddisk FileMode.Open);
            int n = 0;
            int flag=0;
            for (int i = 0; i < 8; i++)
            {
                Disk.Seek(64 * (dnum - 1) + 4 + n SeekOrigin.Begin);  //读fcb中的attribute
                if (Disk.ReadByte() == 0)
                {
                    flag = i+1;
                    break;
                }
                n = n + 8;
            }
            Disk.Close();
            return flag;
        }
        #endregion


        #region FindFAT(查找FAT)
        public int FindFAT(string harddisk)
        {
            FileStream Disk = new FileStream( harddisk FileMode.Open);
            byte[] FAT = new byte[128];
            Disk.Seek(0 SeekOrigin.Begin);
            Disk.Read(FAT 0 FAT.Length);
            int disknum=0;
            for (int i = 3; i < 128; i++)
            {
                if (FAT[i] == 0)
                {
                    disknum = i+1;
                    break;
                }
            }
            Disk.Close();
            return disknum;
        }
        #endregion


        #region WriteFile(向磁盘写入FCB)
        public void WriteFile(int disknumber int Itemnumber FCB buffer string harddisk

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件       8192  2009-06-25 15:20  模拟操作系统\OS\bin\Debug\disk1.txt

     文件       8192  2009-06-25 15:18  模拟操作系统\OS\bin\Debug\disk2.txt

     文件       1450  2009-06-25 14:49  模拟操作系统\OS\bin\Debug\OS.application

     文件     102400  2009-06-25 14:49  模拟操作系统\OS\bin\Debug\OS.exe

     文件       2101  2009-06-25 14:49  模拟操作系统\OS\bin\Debug\OS.exe.manifest

     文件     165376  2009-06-25 14:49  模拟操作系统\OS\bin\Debug\OS.pdb

     文件         52  2008-12-23 23:53  模拟操作系统\OS\bin\Debug\OS.publish\autorun.inf

     文件       5145  2008-12-23 23:53  模拟操作系统\OS\bin\Debug\OS.publish\OS.application

     文件      90112  2008-12-23 23:53  模拟操作系统\OS\bin\Debug\OS.publish\OS_1_0_0_0\OS.exe.deploy

     文件       5748  2008-12-23 23:53  模拟操作系统\OS\bin\Debug\OS.publish\OS_1_0_0_0\OS.exe.manifest

     文件     423856  2008-12-23 23:53  模拟操作系统\OS\bin\Debug\OS.publish\setup.exe

     文件       1450  2009-06-25 14:49  模拟操作系统\OS\bin\Debug\OS.vshost.application

     文件       5632  2005-12-08 14:51  模拟操作系统\OS\bin\Debug\OS.vshost.exe

     文件       2101  2009-06-25 14:49  模拟操作系统\OS\bin\Debug\OS.vshost.exe.manifest

     文件       3718  2008-12-24 11:09  模拟操作系统\OS\bin\Debug\帮助.txt

     文件      21789  2008-12-11 21:12  模拟操作系统\OS\ClassFolder\CPU.cs

     文件       4244  2008-12-09 20:40  模拟操作系统\OS\ClassFolder\Device.cs

     文件      10581  2008-12-11 10:33  模拟操作系统\OS\ClassFolder\MainRam.cs

     文件        465  2008-12-02 14:46  模拟操作系统\OS\ClassFolder\process.cs

     文件      36116  2009-06-25 14:49  模拟操作系统\OS\FileFunction.cs

     文件      65441  2008-12-29 17:46  模拟操作系统\OS\Form1.cs

     文件      70938  2008-12-29 17:46  模拟操作系统\OS\Form1.Designer.cs

     文件      23824  2008-12-29 17:46  模拟操作系统\OS\Form1.resx

     文件       1784  2008-12-23 18:17  模拟操作系统\OS\Form_CFile.cs

     文件       8759  2008-12-23 18:17  模拟操作系统\OS\Form_CFile.designer.cs

     文件       5814  2008-12-23 17:36  模拟操作系统\OS\Form_CFile.resx

     文件        866  2008-12-23 18:16  模拟操作系统\OS\Form_CMenu.cs

     文件       4788  2008-12-23 18:16  模拟操作系统\OS\Form_CMenu.designer.cs

     文件       5814  2008-12-23 17:36  模拟操作系统\OS\Form_CMenu.resx

     文件       5475  2008-12-29 17:10  模拟操作系统\OS\Form_EFile.cs

............此处省略43个文件信息

评论

共有 条评论