[Krafton Jungle] PintOS
2.0.0
크래프톤 정글 PintOS
Loading...
Searching...
No Matches
uninit.h
Go to the documentation of this file.
1
#ifndef VM_UNINIT_H
2
#define VM_UNINIT_H
3
#include "
vm/vm.h
"
4
5
struct
page
;
6
enum
vm_type
;
7
8
typedef
bool
vm_initializer
(
struct
page
*,
void
*aux);
9
10
/* Uninitlialized page. The type for implementing the
11
* "Lazy loading". */
12
struct
uninit_page
{
13
/* Initiate the contets of the page */
14
vm_initializer
*
init
;
15
enum
vm_type
type
;
16
void
*
aux
;
17
/* Initiate the struct page and maps the pa to the va */
18
bool
(*
page_initializer
) (
struct
page
*,
enum
vm_type
,
void
*kva);
19
};
20
21
void
uninit_new
(
struct
page
*
page
,
void
*
va
,
vm_initializer
*
init
,
22
enum
vm_type
type,
void
*aux,
23
bool
(*initializer)(
struct
page
*,
enum
vm_type
,
void
*kva));
24
#endif
bool
#define bool
Definition:
stdbool.h:4
page
Definition:
vm.h:51
page::va
void * va
Definition:
vm.h:53
uninit_page
Definition:
uninit.h:12
uninit_page::aux
void * aux
Definition:
uninit.h:16
uninit_page::type
enum vm_type type
Definition:
uninit.h:15
uninit_page::init
vm_initializer * init
Definition:
uninit.h:14
uninit_page::page_initializer
bool(* page_initializer)(struct page *, enum vm_type, void *kva)
Definition:
uninit.h:18
vm_initializer
bool vm_initializer(struct page *, void *aux)
Definition:
uninit.h:8
uninit_new
void uninit_new(struct page *page, void *va, vm_initializer *init, enum vm_type type, void *aux, bool(*initializer)(struct page *, enum vm_type, void *kva))
init
static void init(void)
Definition:
vga.c:36
vm.h
vm_type
vm_type
Definition:
vm.h:8
include
vm
uninit.h
Generated by
1.9.5