📄 main.c
字号:
//main.c 虚拟内存管理主程序
//2007.12.12
#include <stdio.h>
#include <malloc.h>
#include "mem.h"
#include "init.c"
#include "display.c"
#include "set_mem.c"
#include "algorithm.c"
#include "process.c"
int mem_size=DEFAULT_MEM_SIZE; /*内存大小*/
int ma_algorithm = MA_FF; /*当前分配算法*/
static int pid = 0; /*初始pid*/
struct free_block_type *free_block; /*指向内存中空闲分区链表的首指针*/
struct allocated_area *allocated_block = NULL; /*进程分配内存块链表的首指针*/
int flag_m=1;
//测试内存是否可更改
test_flag()
{
if(allocated_block==NULL)
flag_m=1;
else flag_m=0;
}
main()
{
char choice;
free_block = init_free_block(mem_size); //初始化空闲区
for(;;){
page_c();
display_menu(); //显示菜单
choice=getche(); //获取用户输入
switch(choice){
case '1': test_flag();set_mem_size(); break; //设置或修改内存大小
case '2': set_algorithm(); break; //设置分配算法
case '3': new_process(); break; //创建新进程
case '4': kill_process(); break; //删除进程
case '5': display_mem_usage(free_block,allocated_block); break; //显示内存使用
case '6': display_all();break; //显示概况
case '0': do_exit(); exit(0); //释放链表并退出
default: break;
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -