annotate src/interface/vm.h @ 193:1301727600cc

success build
author anatofuz
date Wed, 22 Jan 2020 21:56:18 +0900
parents 429f0c3cc097
children 7a4d299a35be
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
190
14aa35b56347 add page table interface
tobaru
parents:
diff changeset
1 typedef struct vm<Type,Impl> {
14aa35b56347 add page table interface
tobaru
parents:
diff changeset
2 union Data* vm;
193
1301727600cc success build
anatofuz
parents: 192
diff changeset
3 uint low;
1301727600cc success build
anatofuz
parents: 192
diff changeset
4 uint hi;
190
14aa35b56347 add page table interface
tobaru
parents:
diff changeset
5 struct proc* p;
14aa35b56347 add page table interface
tobaru
parents:
diff changeset
6 pde_t* pgdir;
14aa35b56347 add page table interface
tobaru
parents:
diff changeset
7 char* init;
193
1301727600cc success build
anatofuz
parents: 192
diff changeset
8 uint sz;
190
14aa35b56347 add page table interface
tobaru
parents:
diff changeset
9 char* addr;
14aa35b56347 add page table interface
tobaru
parents:
diff changeset
10 struct inode* ip;
193
1301727600cc success build
anatofuz
parents: 192
diff changeset
11 uint offset;
1301727600cc success build
anatofuz
parents: 192
diff changeset
12 uint oldsz;
1301727600cc success build
anatofuz
parents: 192
diff changeset
13 uint newsz;
190
14aa35b56347 add page table interface
tobaru
parents:
diff changeset
14 char* uva;
193
1301727600cc success build
anatofuz
parents: 192
diff changeset
15 uint va;
192
tobaru
parents: 190
diff changeset
16 void* pp;
193
1301727600cc success build
anatofuz
parents: 192
diff changeset
17 uint len;
1301727600cc success build
anatofuz
parents: 192
diff changeset
18 uint phy_low;
1301727600cc success build
anatofuz
parents: 192
diff changeset
19 uint phy_hi;
190
14aa35b56347 add page table interface
tobaru
parents:
diff changeset
20 __code init_vmm(Impl* vm, __code next(...));
193
1301727600cc success build
anatofuz
parents: 192
diff changeset
21 __code kpt_freerange(Impl* vm, uint low, uint hi, __code next(...));
190
14aa35b56347 add page table interface
tobaru
parents:
diff changeset
22 __code kpt_alloc(Impl* vm ,__code next(...));
14aa35b56347 add page table interface
tobaru
parents:
diff changeset
23 __code switchuvm(Impl* vm ,struct proc* p, __code next(...));
193
1301727600cc success build
anatofuz
parents: 192
diff changeset
24 __code init_inituvm(Impl* vm, pde_t* pgdir, char* init, uint sz, __code next(...));
1301727600cc success build
anatofuz
parents: 192
diff changeset
25 __code loaduvm(Impl* vm,pde_t* pgdir, char* addr, struct inode* ip, uint offset, uint sz, __code next(...));
1301727600cc success build
anatofuz
parents: 192
diff changeset
26 __code allocuvm(Impl* vm, pde_t* pgdir, uint oldsz, uint newsz, __code next(...));
190
14aa35b56347 add page table interface
tobaru
parents:
diff changeset
27 __code clearpteu(Impl* vm, pde_t* pgdir, char* uva, __code next(...));
193
1301727600cc success build
anatofuz
parents: 192
diff changeset
28 __code copyuvm(Impl* vm, pde_t* pgdir, uint sz, __code next(...));
190
14aa35b56347 add page table interface
tobaru
parents:
diff changeset
29 __code uva2ka(Impl* vm, pde_t* pgdir, char* uva, __code next(...));
193
1301727600cc success build
anatofuz
parents: 192
diff changeset
30 __code copyout(Impl* vm, pde_t* pgdir, uint va, void* pp, uint len, __code next(...));
1301727600cc success build
anatofuz
parents: 192
diff changeset
31 __code pagind_int(Impl* vm, uint phy_low, uint phy_hi, __code next(...));
192
tobaru
parents: 190
diff changeset
32 __code next(...);
190
14aa35b56347 add page table interface
tobaru
parents:
diff changeset
33 } vm;