资源简介
模拟操作系统进程管理,存储管理和文件管理等功能,界面为dos选择界面。

代码片段和文件信息
#include“file_system.h“
#include“memory_management.h“
#include“process_dispatch.h“
void File_menu();
void Memory_menu();
void Process_menu();
int ff = 0;//标记内存管理
//文件管理
void File_menu()
{
char command[100];
int flag;
char way[100];
char cway[100];
while(1)
{
printf(“%s:>“path);
scanf(“%s“command);
if(strcmp(command“exit“) == 0)
break;
if(strcmp(command“dir“) != 0 && strcmp(command“help“) != 0)
scanf(“%s“way);
if(strcmp(command“copy“) == 0)
{
scanf(“%s“cway);
Is_copy = 1;
}
else
Is_copy = 0;
flag = order(command);
switch(flag)
{
case 1:
Make_Dir(way);
break;
case 2:
Delete_Dir(way);
break;
case 3:
Change_Dir(way);
break;
case 4:
Show_Dir();
break;
case 5:
Create_File(way);
break;
case 6:
Show_Content_File(way);
break;
case 7:
Change_Property_File(way);
break;
case 8:
Close_File(way);
break;
case 9:
Open_File(way);
break;
case 10:
Read_File(way);
break;
case 11:
Write_File(way);
break;
case 12:
Delete_File(way);
break;
case 13:
Copy_File(waycway);
break;
case 14:
Help();
break;
default:
printf(“命令错误!可输入help获取帮助\n“);
break;
}
}
}
//内存管理
void Memory_menu()
{
int flag = 1;
int slect;
if(ff == 0)
{
CreateMemory();
InitProcess(&process);
CreateProcess();
ApplyMemory();
system(“cls“);
}
while(flag)
{
printf(“\t\t\t 1.申请内存\n“);
printf(“\t\t\t 2.回收内存\n“);
printf(“\t\t\t 3.显示内存信息\n“);
printf(“\t\t\t 4.显示进程页表信息\n“);
printf(“\t\t\t 5.地址转换\n“);
printf(“\t\t\t 6.退出\n“);
printf(“请选择:“);
scanf(“%d“&slect);
switch(slect)
{
case 1:
system(“cls“);
Apply();
break;
case 2:
system(“cls“);
Recycle();
break;
case 3:
system(“cls“);
PrintMemory();
break;
case 4:
system(“cls“);
PrintProcessSegment();
break;
case 5:
system(“cls“);
AddressExchange();
break;
case 6:
flag = 0;
break;
default:
printf(“输入错误请重新选择!\n“);
break;
}
}
}
//进程调度
void Process_menu()
{
int i = 0;
PCB *r;
r = process->next;
printf(“请选择调度方法:\n1:FCFS 2: PRIORITY\n“);
scanf(“%d“&i);
if(!r)
{
free(process);
switch(i)
{
case 1:
flag = 1;
CreateList(pcb_ready);
Show_State(pcb_readypcb_runningpcb_finished);
printf(“\n开始调度:\n“);
Dispatch_FCFS(pcb_readypcb_runningpcb_finished);
Show_State(pcb_readypcb_runningpcb_finished);
break;
case 2:
flag = 2;
CreateList(pcb_ready);
Show_State(pcb_readypcb_runningpcb_finished);
printf(“\n开始调度:\n“);
Dispatch_PRI(pcb_readypcb_runningpcb_finished);
Show_State(pcb_readypcb_runningpcb_finished);
break;
default:
break;
}
free(pcb_running);
free(pcb_ready);
free(pcb_finished);
ff = 0;
}
else
{
switch(i)
{
case 1:
flag = 1;
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
目录 0 2014-04-07 20:07 OS_TEST4\
目录 0 2014-04-07 20:07 OS_TEST4\Debug\
文件 237677 2014-03-08 09:44 OS_TEST4\Debug\OS_TEST4.exe
文件 298332 2014-03-08 09:44 OS_TEST4\Debug\OS_TEST4.ilk
文件 3666992 2014-03-08 09:44 OS_TEST4\Debug\OS_TEST4.pch
文件 607232 2014-03-08 09:44 OS_TEST4\Debug\OS_TEST4.pdb
文件 111319 2014-03-08 09:44 OS_TEST4\Debug\main.obj
文件 148480 2014-03-08 09:44 OS_TEST4\Debug\vc60.idb
文件 77824 2014-03-08 09:44 OS_TEST4\Debug\vc60.pdb
文件 4507 2013-06-29 10:47 OS_TEST4\OS_TEST4.dsp
文件 541 2013-06-29 10:08 OS_TEST4\OS_TEST4.dsw
文件 91136 2014-03-08 09:44 OS_TEST4\OS_TEST4.ncb
文件 54784 2014-03-08 09:44 OS_TEST4\OS_TEST4.opt
文件 891 2014-03-08 09:44 OS_TEST4\OS_TEST4.plg
文件 23591 2013-06-29 11:19 OS_TEST4\file_system.h
文件 4509 2014-03-08 09:44 OS_TEST4\main.cpp
文件 24312 2013-07-17 16:53 OS_TEST4\memory_management.h
文件 10636 2013-07-04 18:44 OS_TEST4\process_dispatch.h
- 上一篇:OpenGL soil库与布置方法,位置
- 下一篇:安卓无线点餐源代码
相关资源
- 模拟QQ登陆界面,按钮无效自己写
- 升腾Win终端系统升级方法新版.doc
- Uninstall_Cortana_WINCLIENT.CN.rar
- 交通咨询模拟系统完整代码
- STM32基于rt_thread操作系统的SDHC卡文件
- 卡西欧工程计算器模拟器Casio FX
- S7-200模拟量编程实例
- 波浪模拟UDF程序
- 51模拟SPI读写SD卡(包括Fat和Fat32文件
- 操作系统 LRU算法 实验报告 及 程序代
- [免费]车载CE6.0操作系统
- 分页系统模拟实验 操作系统 课程设
- 课程作业:模拟仓库管理系统
- 模拟段页式虚拟存储管理中地址转换
- STM32F103 CC2500完整驱动(模拟SPI)
- 操作系统实验——虚存管理实验
- 报文模拟仿真测试工具2.0
- 广工操作系统实验
- 模拟ATM柜员机系统--连接数据库
- HOOK 记录和模拟 Keyboard Mouse
- 广东工业大学操作系统实验四文件系
- Bochs入门教程[操作系统第一步]
- 模拟首次适应动态分区存储管理方案
- 操作系统课程设计完整版
- 磁盘调度算法的模拟实现及对比
- 模拟一个文件管理系统
- 电梯模拟程序C/C 算法实现
- 二级文件系统(操作系统)
- uCOS编译环境建立 BC45 TASM
- Linux 操作系统实验(全)
评论
共有 条评论