📄 process.h
字号:
#ifndef _PROCESS_H
#define _PROCESS_H
#define BLOCKED 0x0
#define RUNNABLE 0x1
#define WAITING 0x2
#define ZOMBIE 0x4
#define CLEAR 0x8
#define TIME_QUANTUM 200
class process
{
private:
int pid;
int ppid;
int nr_child;
uint counter;
int exit_status;
int free;
public:
uint state;
memory _m;
file_sys _f;
process();
~process();
void init_process(void *buf,uint cs,uint ds,uint bss,uint ss,uint ep);
int run();
void block();
void unblock();
int copy_process(process *parent,int pid,uint eax,uint ebx,uint ecx,
uint edx,uint esi,uint edi,uint ebp,uint gs,uint fs,uint es,
uint ds,uint eip,uint cs,uint eflags,uint esp,uint ss);
int try_to_replace(int fd,char **argv,char **env,uint cs,uint ds,
uint bss,uint ss,uint ep);
process* clear(int exit_code);
void* malloc(size_t size);
void freee(void *addrs);
int get_nr_children()
{
return nr_child;
}
int get_ppid()
{
return ppid;
}
int get_pid()
{
return pid;
}
int get_exit_status()
{
return exit_status;
}
int is_free()
{
return free;
}
void dec_child()
{
nr_child--;
}
void set_free()
{
free = 1;
}
void newrun();
};
#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -