mem.h
来自「别人的根据linux0.11改的一个小的操作系统」· C头文件 代码 · 共 36 行
H
36 行
/*
* mem.h
*
* it is no used in this version.
*/
#ifndef _MEM_H
#define _MEM_H
#define invalidate()\
asm(\
"movl $0x0000,%%eax;"\
"movl %%eax,%%cr3;"\
::)
#define copy_page(from,to)\
asm(\
"movl %0,%%esi;"\
"movl %1,%%edi;"\
"movl $1024,%%ecx;"\
"cld;"\
"rep;"\
"movsl"\
::"r"(from),"r"(to)
:"%%ecx","%%edi","%%esi")
unsigned long get_free_page(void);
void free_page(unsigned long);
int free_page_tables(unsigned long,unsigned long);
int copy_page_tables(unsigned long,unsigned long,long);
unsigned long put_page(unsigned long,unsigned long);
void un_wp_page(unsigned long *);
void do_wp_page(unsigned long,unsigned long);
void write_verify(unsigned long);
void do_no_page(unsigned long,unsigned long);
void calculate_mem(void);
#endif
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?