# paging.h File Reference

`#include <ubixos/types.h>`

Go to the source code of this file.

## Defines

#define | pageLength 0x00000400
#define | pageSize 4096
#define | pageEntries (pageSize/4)
#define | pagePresent 0x00000001
#define | pageWrite 0x00000002
#define | pageUser 0x00000004
#define | pageCow 0x00000200
#define | pageStack 0x00000400
#define | pageDefault (pagePresent|pageWrite|pageUser)
#define | kernelPageDefault (pagePresent|pageWrite)
#define | tablesBaseAddress 0xBFC00000
#define | parentPageDirAddr 0x100000

## Functions

int | vmmPagingInit ()
int | vmmClearVirtualPage (uInt32 pageAddr)
int | vmmRemapPage (uInt32, uInt32)
void | vmmUnmapPage (uInt32, int)
void | vmmUnmapPages (void *, uInt32)
void | vmmSetPageAttribute (uInt32, int)
void * | vmmMapFromTask (pidType, void *, uInt32)
void * | vmmCopyVirtualSpace (pidType)
void * | vmmGetFreePage (pidType)
void * | vmmGetFreeKernelPage (pidType pid, uInt16 count)
void * | vmmGetPhysicalAddr (uInt32)
void * | vmmCreateVirtualSpace (pidType)
void * | vmmGetFreeVirtualPage (pidType, int)
void | vmmPageFault ()
void | _vmmPageFault ()

## Variables

uInt32 * | kernelPageDirectory

## Define Documentation

#define kernelPageDefault (pagePresent|pageWrite)

#define pageCow 0x00000200

#define pageDefault (pagePresent|pageWrite|pageUser)

#define pageEntries (pageSize/4)

#define pageLength 0x00000400

#define pagePresent 0x00000001

#define pageSize 4096

#define pageStack 0x00000400

#define pageUser 0x00000004

#define pageWrite 0x00000002

#define parentPageDirAddr 0x100000

#define tablesBaseAddress 0xBFC00000

## Function Documentation

void _vmmPageFault | ( |  | ) |

int vmmClearVirtualPage | ( | uInt32 | pageAddr | ) |

void* vmmCopyVirtualSpace | ( | pidType |  | ) |

void* vmmCreateVirtualSpace | ( | pidType |  | ) |

void* vmmGetFreeKernelPage | ( | pidType | pid,
|  | uInt16 | count
| ) |

void* vmmGetFreePage | ( | pidType |  | ) |

void* vmmGetFreeVirtualPage | ( | pidType | ,
|  | int |
| ) |

void* vmmGetPhysicalAddr | ( | uInt32 |  | ) |

void* vmmMapFromTask | ( | pidType | ,
|  | void * | ,
|  | uInt32 |
| ) |

void vmmPageFault | ( |  | ) |

int vmmPagingInit | ( |  | ) |

int vmmRemapPage | ( | uInt32 | ,
|  | uInt32 |
| ) |

void vmmSetPageAttribute | ( | uInt32 | ,
|  | int |
| ) |

void vmmUnmapPage | ( | uInt32 | ,
|  | int |
| ) |

void vmmUnmapPages | ( | void * | ,
|  | uInt32 |
| ) |

## Variable Documentation

uInt32* kernelPageDirectory