| 1 | /* $Id: OS2KPG.h,v 1.2 2001-02-11 14:59:56 bird Exp $
 | 
|---|
| 2 |  *
 | 
|---|
| 3 |  * OS/2 kernel page manager stuff.
 | 
|---|
| 4 |  *
 | 
|---|
| 5 |  * Copyright (c) 2001 knut st. osmundsen (knut.stange.osmundsen@mynd.no)
 | 
|---|
| 6 |  *
 | 
|---|
| 7 |  * Project Odin Software License can be found in LICENSE.TXT
 | 
|---|
| 8 |  *
 | 
|---|
| 9 |  */
 | 
|---|
| 10 | #ifndef _OS2KPG_H_
 | 
|---|
| 11 | #define _OS2KPG_H_
 | 
|---|
| 12 | 
 | 
|---|
| 13 | /**
 | 
|---|
| 14 |  * Paging enabled flag.
 | 
|---|
| 15 |  * Two states:<ul>
 | 
|---|
| 16 |  *      <li> 1 - Swapping enabled.
 | 
|---|
| 17 |  *      <li> 0 - Swapping disabled. </ul>
 | 
|---|
| 18 |  */
 | 
|---|
| 19 | extern int * pPGSwapEnabled;
 | 
|---|
| 20 | #define PGSwapEnabled (*pPGSwapEnabled)
 | 
|---|
| 21 | 
 | 
|---|
| 22 | /**
 | 
|---|
| 23 |  * Count of physical pages - hope this is correct.
 | 
|---|
| 24 |  */
 | 
|---|
| 25 | extern int * ppgPhysPages;
 | 
|---|
| 26 | #define pgPhysPages (*ppgPhysPages)
 | 
|---|
| 27 | 
 | 
|---|
| 28 | /**
 | 
|---|
| 29 |  * Pointer to top of physical memory (physical address).
 | 
|---|
| 30 |  */
 | 
|---|
| 31 | extern PULONG ppgPhysMax;
 | 
|---|
| 32 | #define pgPhysMax (*ppgPhysMax)
 | 
|---|
| 33 | 
 | 
|---|
| 34 | /**
 | 
|---|
| 35 |  * Count of resident pages.
 | 
|---|
| 36 |  */
 | 
|---|
| 37 | extern int * ppgResidentPages;
 | 
|---|
| 38 | #define pgResidentPages (*ppgResidentPages)
 | 
|---|
| 39 | 
 | 
|---|
| 40 | /**
 | 
|---|
| 41 |  * Count of swappable pages which is currently present in memory.
 | 
|---|
| 42 |  */
 | 
|---|
| 43 | extern int * ppgSwappablePages;
 | 
|---|
| 44 | #define pgSwappablePages (*ppgSwappablePages)
 | 
|---|
| 45 | 
 | 
|---|
| 46 | /**
 | 
|---|
| 47 | * Count of discardable pages which is currently present in memory.
 | 
|---|
| 48 | */
 | 
|---|
| 49 | extern int * ppgDiscardableInmem;
 | 
|---|
| 50 | #define pgDiscardableInmem (*ppgDiscardableInmem)
 | 
|---|
| 51 | 
 | 
|---|
| 52 | /**
 | 
|---|
| 53 |  * Count of discardable pages allocated.
 | 
|---|
| 54 |  */
 | 
|---|
| 55 | extern int * ppgDiscardablePages;
 | 
|---|
| 56 | #define pgDiscardablePages (*ppgDiscardablePages)
 | 
|---|
| 57 | 
 | 
|---|
| 58 | /**
 | 
|---|
| 59 |  * Count of page faults since bootup.
 | 
|---|
| 60 |  */
 | 
|---|
| 61 | extern PULONG ppgcPageFaults;
 | 
|---|
| 62 | #define pgcPageFaults (*ppgcPageFaults)
 | 
|---|
| 63 | 
 | 
|---|
| 64 | /**
 | 
|---|
| 65 |  * Count of page faults currently being processed.
 | 
|---|
| 66 |  */
 | 
|---|
| 67 | extern PULONG ppgcPageFaultsActive;
 | 
|---|
| 68 | #define pgcPageFaultsActive (*ppgcPageFaultsActive)
 | 
|---|
| 69 | 
 | 
|---|
| 70 | 
 | 
|---|
| 71 | /**
 | 
|---|
| 72 |  * Returns the number of bytes of physical memory available.
 | 
|---|
| 73 |  */
 | 
|---|
| 74 | ULONG KRNLCALL PGPhysAvail(void);
 | 
|---|
| 75 | 
 | 
|---|
| 76 | 
 | 
|---|
| 77 | /**
 | 
|---|
| 78 |  * Returns the number of pageframes currently in use.
 | 
|---|
| 79 |  */
 | 
|---|
| 80 | ULONG KRNLCALL PGPhysPresent(void);
 | 
|---|
| 81 | 
 | 
|---|
| 82 | #endif
 | 
|---|
| 83 | 
 | 
|---|