📄 memory.h
字号:
// Memory.h: interface for the CMemory class.
//
//////////////////////////////////////////////////////////////////////
#if !defined(AFX_MEMORY_H__4CFB3274_44B6_4CEA_B6C3_347F63CBFCDB__INCLUDED_)
#define AFX_MEMORY_H__4CFB3274_44B6_4CEA_B6C3_347F63CBFCDB__INCLUDED_
#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000
//////////////////////////////////////////////////////////////////////
#include "ShowosDlg.h"
class CMemory
{
//////////////////////////////////////////////////////////////////////
public:
Smemory memory;
private:
CShowosDlg *pdlg;
public:
int A; //模拟设备A,一个
int B[2]; //模拟设备B,两个
int C[2]; //模拟设备C,两个
public:
CMemory(CShowosDlg * dlg);
virtual ~CMemory();
//////////////////////////////////////////////////////////////////////
private:
bool Seekroom(int &index,int room); //在主存中找room大小空间,index为首地址索引号
bool Seekpub(int &index); //在PUB中找空间,存放进程
Sdictate CreateOtherdictate(CString str);//创建其他进程指令
Sdictate CreateAdddictate(CString str1,CString str2);//创建Add进程指令
Sdictate CreateAdddictate(CString str1,int i);//创建Add进程指令
Sdictate CreateSubdictate(CString str1,CString str2);//创建Sub进程指令
Sdictate CreateSubdictate(CString str1,int i);//创建Sub进程指令
Sdictate CreateMovdictate(CString str1,CString str2);//创建Mov进程指令
Sdictate CreateMovdictate(CString str1,int i);//创建Add进程指令
Sdictate CreateMuldictate(CString str);//创建Mul进程指令
Sdictate CreateDivdictate(CString str);//创建Div进程指令
//创建进程//////////////////////////////////////////////////////////////
Sprocess CreateFile(); //创建创建文件进程
Sprocess Createcopy(); //创建拷贝文件进程
Sprocess Cteatedelete(); //创建删除文件进程
Sprocess Cteatemove(); //创建移动文件进程
Sprocess Cteatetype(); //创建显示文件进程
Sprocess Cteateedit(); //创建编辑文件进程
Sprocess Cteatechange(); //创建改变文件属性进程
Sprocess Cteateformat(); //创建磁盘格式化进程
Sprocess Cteatemakdir(); //创建建立目录进程
Sprocess Cteatechadir(); //创建改变目录路径进程
Sprocess Cteaterdir(); //创建删除空目录进程
Sprocess Cteatedeldir(); //创建删除目录进程
Sprocess Cteatefidisk(); //创建磁盘分区命令进程
Sprocess Cteateother(CString name); //创建其他命令进程
bool IsA(); //判断是否有B设备空闲
bool IsB(int &b); //判断是否有B设备空闲
bool IsC(int &c); //判断是否有C设备空闲
public:
bool Tran(CString str,Sdictate *di,CString *Error); //编译指令
Sprocess CreateTran(CString str,CString *Error); //创建编译进程
void Addprocesswaitime(); //增加等待进程的等待时间.程序一直运行
bool Createprocess(CString name,double processid); //创建进程
bool Destroyprocess(int processid); //进程撤销
bool Blockprocess(Sprocess process); //进程阻塞
bool Awakeprocess(int i); //进程唤醒
bool Setm_pro_state(int i,int state); //设置主存中进程i的状态 state.
void Showindex(); //显示主存客户区
void DealHalt(); //处理中断
};
#endif // !defined(AFX_MEMORY_H__4CFB3274_44B6_4CEA_B6C3_347F63CBFCDB__INCLUDED_)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -