The Pedigree Project  0.1
mips_common/PhysicalMemoryManager.cc
1 /*
2  * Copyright (c) 2008-2014, Pedigree Developers
3  *
4  * Please see the CONTRIB file in the root of the source tree for a full
5  * list of contributors.
6  *
7  * Permission to use, copy, modify, and distribute this software for any
8  * purpose with or without fee is hereby granted, provided that the above
9  * copyright notice and this permission notice appear in all copies.
10  *
11  * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
12  * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
13  * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
14  * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
15  * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
16  * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
17  * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
18  */
19 
20 #include "PhysicalMemoryManager.h"
21 
23 
25 {
27 }
28 
29 physical_uintptr_t MipsCommonPhysicalMemoryManager::allocatePage()
30 {
31  return (m_NextPage += 0x1000);
32 }
33 void MipsCommonPhysicalMemoryManager::freePage(physical_uintptr_t page)
34 {
35  // TODO
36 }
38  MemoryRegion &Region, size_t cPages, size_t pageConstraints, size_t Flags,
39  physical_uintptr_t start)
40 {
41  // TODO
42  return false;
43 }
44 
46  : m_NextPage(0x00400000) // Start 4MB in.
47 {
48 }
50 {
51 }
static PhysicalMemoryManager & instance()
Implementation of the PhysicalMemoryManager for common mips.
Special memory entity in the kernel's virtual address space.
Definition: MemoryRegion.h:35
virtual bool allocateRegion(MemoryRegion &Region, size_t cPages, size_t pageConstraints, size_t Flags, physical_uintptr_t start=-1)
virtual void freePage(physical_uintptr_t page)