#include "src/memory/mmap.hpp"
#include "src/arch/x86/interr.hpp"
#include "src/arch/x86/except_c.hpp"
Idź do kodu źródłowego tego pliku.
Przestrzenie nazw | |
namespace | Memory |
namespace | Memory::Pager |
Komponenty | |
class | Memory::Pager::memtree |
Definicje | |
#define | invalidate(virt) |
Funkcje | |
int | shmem_paging_pfh (struct env_t *en, uint32 virt, uint32 phys) |
void | Memory::Pager::init () |
proste operacje na sieci porozumiewa sie z pci32 by znalezc karte sieciowa 3c556 | |
int | Memory::Pager::allocate_memtree (class memtree *mtree, bool supervisor, class Memory::Heap::heapbox *hp) |
void | Memory::Pager::init_pf () |
int | Memory::Pager::PageFaultHandler (struct Arch::x86::Interr::except2_t *code) |
int | Memory::Pager::lazy_paging_pfh (struct env_t *env, uint32 virt, uint32 phys) |
void | Memory::Pager::frame_assign (addr_t physical) |
void | Memory::Pager::frame_release () |
void | Memory::Pager::FrameAssign (void *frame, class IPC::Lock::lock_t *l, addr_t physical) |
void | Memory::Pager::FrameRelease (class IPC::Lock::lock_t *l) |
void | Memory::Pager::cpypage (uint32 dest, uint32 src) |
void | Memory::Pager::memmove2 (class memtree *d1, void *d2, class memtree *s1, void *s2, uint32 cnt) |
Zmienne | |
const uint32 | PTE_PRESENT = 0x0001 |
const uint32 | PTE_WRITEABLE = 0x0002 |
const uint32 | PTE_RO = 0x0000 |
const uint32 | PTE_USER = 0x0004 |
const uint32 | PTE_ACCESSED = 0x0020 |
const uint32 | PTE_DIRTY = 0x0040 |
const uint32 | PTE_OS = 0x0e00 |
const uint32 | PTE_MASK = 0x0fff |
const uint32 | PTE_LAZY = 0x0200 |
const uint32 | PTE_STACKGUARD = 0x0004 |
const uint32 | PTE_SHMEM = 0x0400 |
char | CRT_STACK |
uint32 | CRT_STACK_SIZE |
#define invalidate | ( | virt | ) |
Wartość:
do { \ __asm__ __volatile__("invlpg (%%eax)" : :"a"(virt)); \ } while (0)
Definicja w linii 82 pliku pager.hpp.
Odwołania w Memory::Pager::FrameAssign() i Memory::Pager::memtree::pte_map().
char CRT_STACK |
Odwołania w Memory::Pager::init() i Thread::prior_thread().
const uint32 PTE_ACCESSED = 0x0020 |
Definicja w linii 23 pliku pager.hpp.
Odwołania w Memory::Pager::lazy_paging_pfh(), Memory::Pager::memtree::pte_lazy() i shmem_paging_pfh().
const uint32 PTE_PRESENT = 0x0001 |
Definicja w linii 14 pliku pager.hpp.
Odwołania w Thread::process_t::alloc_stack(), Memory::Pager::allocate_memtree(), Memory::Heap::heapbox::destruct(), Module::init(), Memory::Heap::init(), Memory::Physical::init(), Memory::Pager::lazy_paging_pfh(), Thread::MmapDestroyStack(), Memory::Heap::heapbox::morecor(), Memory::Heap::morecore(), Thread::prior_thread(), Memory::Pager::memtree::pte_alloc(), Memory::Pager::memtree::pte_map(), Memory::Shmem::shmem_attach(), Memory::Shmem::shmem_create(), shmem_paging_pfh() i Memory::Shmem::shmem_roall().
Definicja w linii 16 pliku pager.hpp.
Odwołania w Memory::Shmem::shmem_attach() i shmem_paging_pfh().
Definicja w linii 25 pliku pager.hpp.
Odwołania w Memory::Shmem::shmem_attach(), Memory::Shmem::shmem_create(), Memory::Shmem::shmem_map() i shmem_paging_pfh().
const uint32 PTE_STACKGUARD = 0x0004 |
Definicja w linii 17 pliku pager.hpp.
Odwołania w Thread::process_t::alloc_stack(), Module::init(), Memory::Pager::lazy_paging_pfh(), Memory::Shmem::shmem_attach(), Memory::Shmem::shmem_create(), Memory::Shmem::shmem_map() i shmem_paging_pfh().
const uint32 PTE_WRITEABLE = 0x0002 |
Definicja w linii 15 pliku pager.hpp.
Odwołania w Thread::process_t::alloc_stack(), Memory::Pager::allocate_memtree(), Module::init(), Memory::Heap::init(), Memory::Physical::init(), Memory::Pager::lazy_paging_pfh(), Memory::Heap::heapbox::morecor(), Memory::Heap::morecore(), Memory::Pager::memtree::pte_map(), Memory::Shmem::shmem_attach(), Memory::Shmem::shmem_create(), shmem_paging_pfh(), Memory::Shmem::shmem_roall() i API::v1::user_morecore().