資源簡介
操作系統課程設計:模擬系統請求分頁式存儲管理,其中設計內存分配及地址映射算法,還有多線程協調更新主界面等內容……

代碼片段和文件信息
using?System;
using?System.Collections.Generic;
using?System.Drawing;
using?System.Windows.Forms;
using?System.Threading;
namespace?OSExam
{
????public?partial?class?FrmMain?:?Form
????{
????????public?int?nMemorySize;//內存大小
????????public?int?nOSMemorySize;//操作系統占用內存大小
????????public?int?nMaxPages;//每個進程最大頁數
????????public?bool[]?MemoryMap;//內存位圖使用情況
????????private?int?nProcessNum;//進程數
????????private?Bitmap?bmpMemoryMap;//內存位圖
????????private?List?IProcessList;//模擬進程列表
????????public?FrmMain()
????????{
????????????InitializeComponent();
????????????IProcessList?=?new?List();
????????????UPPTMM?=?new?UpdatePPTMMHandler(UpdatePPTMM);
????????????UPPTSwap?=?new?UpdatePPT_SwapHandler(UpdatePPT_Swap);
????????????ProcessAbortDelegate?=?new?MethodInvoker(ProcessAbort);
????????}
????????private?void?btnOK_Click(object?sender?EventArgs?e)
????????{
????????????try
????????????{
????????????????nMemorySize?=?txtMemorySize.Value;
????????????????nOSMemorySize?=?txtOSMemSize.Value;
????????????????nProcessNum?=?txtProcessNum.Value;
????????????????nMaxPages?=?txtMaxPages.Value;
????????????????if?(nMemorySize?5)
????????????????????throw?new?Exception(“內存大小設置過小,請輸入一個較大的正整數?!埃?
????????????????int?temp=nMemorySize?/?5;
????????????????if?(nOSMemorySize?>temp?)//系統占用大于m/5
????????????????{
????????????????????MessageBox.Show(“系統內存設置過大,將其設為總內存大小的五分之一。“
????????????????????????“提示“?MessageBoxButtons.OK?MessageBoxIcon.Warning);
????????????????????nOSMemorySize?=?temp;
????????????????????txtOSMemSize.Value?=?temp;
????????????????????txtOSMemSize.Text?=?temp.ToString();
????????????????}
????????????????temp?=?(nMemorySize?-?nOSMemorySize)?/?nProcessNum;
????????????????if?(nMaxPages?>?temp)//進程最大使用塊數過大,可能產生死鎖
????????????????{
????????????????????MessageBox.Show(“進程最大使用塊數過大,可能產生死鎖。將其設為安全使用值。“
????????????????????????“提示“?MessageBoxButtons.OK?MessageBoxIcon.Warning);
????????????????????nMaxPages?=?temp;
????????????????????txtMaxPages.Value?=?temp;
????????????????????txtMaxPages.Text?=?temp.ToString();
????????????????}
????????????????for?(int?i?=?0;?i?????????????????????NewProcessControls(i);
????????????????btnBegin.Enabled?=?true;
????????????????gbOSParam.Enabled?=?false;
????????????}
????????????catch?(Exception?ex)
????????????{
????????????????IProcessList.Clear();
????????????????MessageBox.Show(ex.Message?“錯誤“?MessageBoxButtons.OK
?????????????????MessageBoxIcon.Error);
????????????}
????????}
????????private?void?btnBegin_Click(object?sender?EventArgs?e)
????????{
????????????MemoryMap?=?new?bool[nMemorySize?-?nOSMemorySize];
????????????Array.Clear(MemoryMap?0?MemoryMap.Length);
????????????DrawMemoryMap();
????????????foreach?(ImitateProcess?IProcess?in?IProcessList)
????????????{
????????????????IProcess.txtPages.Enabled?=?false;
????????????????IProcess.txtRunTime.Enabled?=?false;
??
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件???????1007??2010-12-21?10:02??操作系統課程設計\操作系統課程設計.sln
????..A..H.?????22528??2010-12-26?15:43??操作系統課程設計\操作系統課程設計.suo
?????文件??????22016??2010-12-26?15:42??操作系統課程設計\模擬系統請求分頁式存儲管理\bin\Debug\模擬系統請求分頁式存儲管理.exe
?????文件??????38400??2010-12-26?15:42??操作系統課程設計\模擬系統請求分頁式存儲管理\bin\Debug\模擬系統請求分頁式存儲管理.pdb
?????文件??????14328??2010-12-26?15:41??操作系統課程設計\模擬系統請求分頁式存儲管理\bin\Debug\模擬系統請求分頁式存儲管理.vshost.exe
?????文件????????490??2009-06-11?05:14??操作系統課程設計\模擬系統請求分頁式存儲管理\bin\Debug\模擬系統請求分頁式存儲管理.vshost.exe.manifest
?????文件??????12350??2010-12-26?15:40??操作系統課程設計\模擬系統請求分頁式存儲管理\FrmMain.cs
?????文件??????18122??2010-12-24?11:22??操作系統課程設計\模擬系統請求分頁式存儲管理\FrmMain.Designer.cs
?????文件???????5814??2010-12-24?11:22??操作系統課程設計\模擬系統請求分頁式存儲管理\FrmMain.resx
?????文件???????6266??2010-12-27?19:42??操作系統課程設計\模擬系統請求分頁式存儲管理\MyClass.cs
?????文件????????180??2010-12-26?15:42??操作系統課程設計\模擬系統請求分頁式存儲管理\obj\Debug\OSExam.FrmMain.resources
?????文件????????180??2010-12-26?15:42??操作系統課程設計\模擬系統請求分頁式存儲管理\obj\Debug\OSExam.Properties.Resources.resources
?????文件???????4608??2010-12-21?13:29??操作系統課程設計\模擬系統請求分頁式存儲管理\obj\Debug\TempPE\Properties.Resources.Designer.cs.dll
?????文件???????1172??2010-12-26?15:42??操作系統課程設計\模擬系統請求分頁式存儲管理\obj\Debug\模擬系統請求分頁式存儲管理.csproj.FileListAbsolute.txt
?????文件????????849??2010-12-26?15:42??操作系統課程設計\模擬系統請求分頁式存儲管理\obj\Debug\模擬系統請求分頁式存儲管理.csproj.GenerateResource.Cache
?????文件??????22016??2010-12-26?15:42??操作系統課程設計\模擬系統請求分頁式存儲管理\obj\Debug\模擬系統請求分頁式存儲管理.exe
?????文件??????38400??2010-12-26?15:42??操作系統課程設計\模擬系統請求分頁式存儲管理\obj\Debug\模擬系統請求分頁式存儲管理.pdb
?????文件????????434??2010-12-23?22:10??操作系統課程設計\模擬系統請求分頁式存儲管理\Program.cs
?????文件???????1410??2010-12-21?09:59??操作系統課程設計\模擬系統請求分頁式存儲管理\Properties\AssemblyInfo.cs
?????文件???????2836??2010-12-21?10:01??操作系統課程設計\模擬系統請求分頁式存儲管理\Properties\Resources.Designer.cs
?????文件???????5612??2010-12-21?09:59??操作系統課程設計\模擬系統請求分頁式存儲管理\Properties\Resources.resx
?????文件???????1104??2010-12-21?10:01??操作系統課程設計\模擬系統請求分頁式存儲管理\Properties\Settings.Designer.cs
?????文件????????249??2010-12-21?09:59??操作系統課程設計\模擬系統請求分頁式存儲管理\Properties\Settings.settings
?????文件???????3891??2010-12-21?13:29??操作系統課程設計\模擬系統請求分頁式存儲管理\模擬系統請求分頁式存儲管理.csproj
?????目錄??????????0??2010-12-21?10:01??操作系統課程設計\模擬系統請求分頁式存儲管理\obj\Debug\Refactor
?????目錄??????????0??2010-12-21?13:29??操作系統課程設計\模擬系統請求分頁式存儲管理\obj\Debug\TempPE
?????目錄??????????0??2010-12-26?15:42??操作系統課程設計\模擬系統請求分頁式存儲管理\bin\Debug
?????目錄??????????0??2010-12-26?15:42??操作系統課程設計\模擬系統請求分頁式存儲管理\obj\Debug
?????目錄??????????0??2010-12-21?10:01??操作系統課程設計\模擬系統請求分頁式存儲管理\bin
?????目錄??????????0??2010-12-21?09:59??操作系統課程設計\模擬系統請求分頁式存儲管理\obj
............此處省略6個文件信息
- 上一篇:genPwd.bat
- 下一篇:ALU運算器VHDL
評論
共有 條評論