equal
deleted
inserted
replaced
19 */ |
19 */ |
20 |
20 |
21 #ifndef MPAGER_H |
21 #ifndef MPAGER_H |
22 #define MPAGER_H |
22 #define MPAGER_H |
23 |
23 |
|
24 #include "mmu.h" |
24 #include <kern_priv.h> |
25 #include <kern_priv.h> |
25 |
26 |
26 /** |
27 /** |
27 Maximum number of pages to attempt to clean in one go. |
28 Maximum number of pages to attempt to clean in one go. |
28 */ |
29 */ |
144 /** |
145 /** |
145 Flush (unmap) all memory which is demand paged. |
146 Flush (unmap) all memory which is demand paged. |
146 This reduces the live page list to a minimum. |
147 This reduces the live page list to a minimum. |
147 */ |
148 */ |
148 void FlushAll(); |
149 void FlushAll(); |
|
150 |
|
151 /** |
|
152 Flush demand paged pages in a specified region. |
|
153 |
|
154 The memory must reside in a single memory object. |
|
155 |
|
156 @param aProcess The process containing the pages to flush. |
|
157 @param aStart The start address of the region. |
|
158 @param aSize The size of the region in bytes. |
|
159 |
|
160 @return KErrBadDescriptor If the memory region is invalid or spans more than one memory object, |
|
161 otherwise KErrNone. |
|
162 */ |
|
163 TInt FlushRegion(DMemModelProcess* aProcess, TLinAddr aStartAddress, TUint aSize); |
149 |
164 |
150 /** |
165 /** |
151 Give pages to paging system for managing. |
166 Give pages to paging system for managing. |
152 */ |
167 */ |
153 void DonatePages(TUint aCount, TPhysAddr* aPages); |
168 void DonatePages(TUint aCount, TPhysAddr* aPages); |