Mercurial > hg > Members > menikon > CbC_xv6
view src/interface/vm.h @ 254:66a6aedf60f9
add CodeGear dirlink_loopcheck etc
author | menikon |
---|---|
date | Wed, 05 Feb 2020 17:39:17 +0900 |
parents | 7a4d299a35be |
children | 052669f2ef74 |
line wrap: on
line source
typedef struct vm<Type,Impl> { union Data* vm; uint low; uint hi; struct proc* p; pde_t* pgdir; char* init; uint sz; char* addr; struct inode* ip; uint offset; uint oldsz; uint newsz; char* uva; uint va; void* pp; uint len; uint phy_low; uint phy_hi; __code init_vmm(Impl* vm, __code next(...)); __code kpt_freerange(Impl* vm, uint low, uint hi, __code next(...)); __code kpt_alloc(Impl* vm ,__code next(...)); __code switchuvm(Impl* vm ,struct proc* p, __code next(...)); __code init_inituvm(Impl* vm, pde_t* pgdir, char* init, uint sz, __code next(...)); __code loaduvm(Impl* vm,pde_t* pgdir, char* addr, struct inode* ip, uint offset, uint sz, __code next(...)); __code allocuvm(Impl* vm, pde_t* pgdir, uint oldsz, uint newsz, __code next(...)); __code clearpteu(Impl* vm, pde_t* pgdir, char* uva, __code next(...)); __code copyuvm(Impl* vm, pde_t* pgdir, uint sz, __code next(...)); __code uva2ka(Impl* vm, pde_t* pgdir, char* uva, __code next(...)); __code copyout(Impl* vm, pde_t* pgdir, uint va, void* pp, uint len, __code next(...)); __code paging_int(Impl* vm, uint phy_low, uint phy_hi, __code next(...)); __code next(...); } vm;