|
Modestus Moon OS
R4
CS 450 project
|
#include <system.h>

Go to the source code of this file.
Data Structures | |
| struct | page_entry |
| struct | page_table |
| struct | page_dir |
Macros | |
| #define | PAGE_SIZE 0x1000 |
Functions | |
| void | set_bit (u32int addr) |
| void | clear_bit (u32int addr) |
| u32int | get_bit (u32int addr) |
| u32int | first_free () |
| void | init_paging () |
| void | load_page_dir (page_dir *new_page_dir) |
| page_entry * | get_page (u32int addr, page_dir *dir, int make_table) |
| void | new_frame (page_entry *page) |
| #define PAGE_SIZE 0x1000 |
Definition at line 6 of file paging.h.
Referenced by init_paging().
| void clear_bit | ( | u32int | addr | ) |
| u32int first_free | ( | ) |
| page_entry* get_page | ( | u32int | addr, |
| page_dir * | dir, | ||
| int | make_table | ||
| ) |
Definition at line 85 of file paging.c.
References _kmalloc(), page_size, page_table::pages, page_dir::tables, and page_dir::tables_phys.
Referenced by _kmalloc(), and init_paging().
| void init_paging | ( | ) |
Definition at line 111 of file paging.c.
References _kmalloc(), frames, get_page(), KHEAP_BASE, KHEAP_MIN, KHEAP_SIZE, kmalloc(), load_page_dir(), make_heap(), mem_size, memset(), new_frame(), nframes, PAGE_SIZE, page_size, and phys_alloc_addr.
Referenced by kmain().
| void load_page_dir | ( | page_dir * | new_page_dir | ) |
Definition at line 158 of file paging.c.
References page_dir::tables_phys.
Referenced by init_paging().
| void new_frame | ( | page_entry * | page | ) |
Definition at line 173 of file paging.c.
References find_free(), page_entry::frameaddr, kpanic(), page_size, page_entry::present, set_bit(), page_entry::usermode, and page_entry::writeable.
Referenced by init_paging().