<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"> <title>UbixOS V2: src/sys/include/vmm/paging.h File Reference</title> <link href="doxygen.css" rel="stylesheet" type="text/css"> <link href="tabs.css" rel="stylesheet" type="text/css"> </head><body> <!-- Generated by Doxygen 1.4.7 --> <div class="tabs"> <ul> <li><a href="main.html"><span>Main Page</span></a></li> <li><a href="classes.html"><span>Data Structures</span></a></li> <li id="current"><a href="files.html"><span>Files</span></a></li> <li><a href="dirs.html"><span>Directories</span></a></li> <li> <form action="search.php" method="get"> <table cellspacing="0" cellpadding="0" border="0"> <tr> <td><label> <u>S</u>earch for </label></td> <td><input type="text" name="query" value="" size="20" accesskey="s"/></td> </tr> </table> </form> </li> </ul></div> <div class="tabs"> <ul> <li><a href="files.html"><span>File List</span></a></li> <li><a href="globals.html"><span>Globals</span></a></li> </ul></div> <div class="nav"> <a class="el" href="dir_897b6a2d7bab147dd1db58381aad3984.html">src</a> » <a class="el" href="dir_832905b1f7f5feaf61a306b40c0ac817.html">sys</a> » <a class="el" href="dir_caf4200c438ae9601464168e21e8e4d8.html">include</a> » <a class="el" href="dir_d5a59026f863a7643db80a2edf430514.html">vmm</a></div> <h1>paging.h File Reference</h1><code>#include <<a class="el" href="types_8h-source.html">ubixos/types.h</a>></code><br> <code>#include <<a class="el" href="sysproto_8h-source.html">sys/sysproto.h</a>></code><br> <code>#include <<a class="el" href="thread_8h-source.html">sys/thread.h</a>></code><br> <p> Include dependency graph for paging.h:<p><center><img src="paging_8h__incl.png" border="0" usemap="#src/sys/include/vmm/paging.h_map" alt=""></center> <map name="src/sys/include/vmm/paging.h_map"> <area href="types_8h.html" shape="rect" coords="604,56,724,83" alt=""> <area href="sysproto_8h.html" shape="rect" coords="281,56,399,83" alt=""> <area href="thread_8h.html" shape="rect" coords="449,107,553,134" alt=""> <area href="__types_8h.html" shape="rect" coords="775,56,879,83" alt=""> <area href="signal_8h.html" shape="rect" coords="451,56,552,83" alt=""> </map> <p> This graph shows which files directly or indirectly include this file:<p><center><img src="paging_8h__dep__incl.png" border="0" usemap="#src/sys/include/vmm/paging.hdep_map" alt=""></center> <map name="src/sys/include/vmm/paging.hdep_map"> <area href="vmm_8h.html" shape="rect" coords="282,5,492,32" alt=""> <area href="file_8c.html" shape="rect" coords="323,56,451,83" alt=""> </map> <p> <a href="paging_8h-source.html">Go to the source code of this file.</a><table border="0" cellpadding="0" cellspacing="0"> <tr><td></td></tr> <tr><td colspan="2"><br><h2>Defines</h2></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="paging_8h.html#0851ee42f36c8a00e9eafe739c8ffaaa">btoc</a>(x) (((<a class="el" href="types_8h.html#d6f327965d9e330cd225ca2153ac0453">vm_offset_t</a>)(x)+PAGE_MASK)>>PAGE_SHIFT)</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="paging_8h.html#071caea8a82a06e754daca63317d3c07">ctob</a>(x) ((x)<<PAGE_SHIFT)</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="paging_8h.html#8b838cda4f0bc79ab8d07eb19dd35420">KERNEL_PAGE_DEFAULT</a> (PAGE_PRESENT|PAGE_WRITE)</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="paging_8h.html#57d743cb60fe478f6720c42315e7e813">PAGE_COW</a> 0x00000200</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="paging_8h.html#f0fff7a38cd2c7a32d580787423b94ea">PAGE_DEFAULT</a> (PAGE_PRESENT|PAGE_WRITE|PAGE_USER)</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="paging_8h.html#e4aa620ce57c7c3171b916de2c5f09f2">PAGE_MASK</a> (PAGE_SIZE-1)</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="paging_8h.html#122dfc414a40e260fd35dbe9743db26f">PAGE_PRESENT</a> 0x00000001</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="paging_8h.html#850d80ca2291d26b40dc6b25c419f81a">PAGE_SHIFT</a> 12</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="paging_8h.html#7d467c1d283fdfa1f2081ba1e0d01b6e">PAGE_SIZE</a> (1<<PAGE_SHIFT)</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="paging_8h.html#1532db17068ba8d409b8ffe066414af2">PAGE_STACK</a> 0x00000400</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="paging_8h.html#2d0253527ea5080d6befe0ee3bde473f">PAGE_USER</a> 0x00000004</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="paging_8h.html#41b733e23eb5b22e1df907b87d6b3996">PAGE_WIRED</a> 0x00000600</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="paging_8h.html#559697780e34fd09ba6a2e909f0fe1df">PAGE_WRITE</a> 0x00000002</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="paging_8h.html#b80d68a13753e40b0df8e0dc0c4af870">pageEntries</a> (pageSize/4)</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="paging_8h.html#d8f95327f815dfa0f9196dbc48b94ddb">pageLength</a> 0x00000400</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="paging_8h.html#3d9cc2be3113b17e62612d00f7082b10">pageSize</a> 4096</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="paging_8h.html#aab3609eb02bd28ded8d1ea0512da979">parentPageDirAddr</a> 0x100000</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="paging_8h.html#2702263fcf2b3b026cb26c6d895cb0ee">round_page</a>(x) (((x) + PAGE_MASK) & ~PAGE_MASK)</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="paging_8h.html#a432d41840ad8a583a7e6af86feece4f">tablesBaseAddress</a> 0xBFC00000</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="paging_8h.html#bd636a9b61ad98f4fc23b1f4a9210d78">trunc_page</a>(x) ((x) & ~PAGE_MASK)</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="paging_8h.html#59a518704bf2f0b56603476bcb1eebbf">VM_TASK</a> 1</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="paging_8h.html#4ede4e8b3e149ef94678acdae7de0e18">VM_THRD</a> 0</td></tr> <tr><td colspan="2"><br><h2>Functions</h2></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="paging_8h.html#15b43ccb21abdb9e0a41acb82b260a99">_vmm_pageFault</a> ()</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="paging_8h.html#f47d5f6b1a4a8738e65c9f539a9979fc">mmap</a> (struct <a class="el" href="structthread.html">thread</a> *, struct <a class="el" href="structmmap__args.html">mmap_args</a> *)</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="paging_8h.html#c4296f2360f8217973674af8bc6f82dd">munmap</a> (struct <a class="el" href="structthread.html">thread</a> *, struct <a class="el" href="structmunmap__args.html">munmap_args</a> *)</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="paging_8h.html#8d8ba1d847eb4dbeb26a3c1077ab1981">obreak</a> (struct <a class="el" href="structthread.html">thread</a> *, struct <a class="el" href="structobreak__args.html">obreak_args</a> *)</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">void * </td><td class="memItemRight" valign="bottom"><a class="el" href="paging_8h.html#541f0b43826a40b9e978f5479080bb0e">vmm_getFreeMallocPage</a> (<a class="el" href="types_8h.html#3b65128d2644e9b80cec9a69bfa7e094">uInt16</a> count)</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="types_8h.html#5847ea0262a5aa61eee48cbe95544a78">uInt32</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="paging_8h.html#e88bcfc69132a46a1982237913101a5b">vmm_getPhysicalAddr</a> (<a class="el" href="types_8h.html#5847ea0262a5aa61eee48cbe95544a78">uInt32</a>)</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="paging_8h.html#442adfc886cbfedfc3edadf45c5f89a6">vmm_pageFault</a> (<a class="el" href="types_8h.html#5847ea0262a5aa61eee48cbe95544a78">uInt32</a>, <a class="el" href="types_8h.html#5847ea0262a5aa61eee48cbe95544a78">uInt32</a>, <a class="el" href="types_8h.html#5847ea0262a5aa61eee48cbe95544a78">uInt32</a>)</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="paging_8h.html#f47a45e3f0802f5aac053808127aaaf1">vmm_pagingInit</a> ()</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="paging_8h.html#a05f8d8947fb5bcec87fc6661f83243e">vmm_remapPage</a> (<a class="el" href="types_8h.html#5847ea0262a5aa61eee48cbe95544a78">uInt32</a>, <a class="el" href="types_8h.html#5847ea0262a5aa61eee48cbe95544a78">uInt32</a>, <a class="el" href="types_8h.html#3b65128d2644e9b80cec9a69bfa7e094">uInt16</a>)</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="paging_8h.html#1913e8607a69ecf446b18fa1cd36c9cc">vmm_setPageAttributes</a> (<a class="el" href="types_8h.html#5847ea0262a5aa61eee48cbe95544a78">uInt32</a>, <a class="el" href="types_8h.html#3b65128d2644e9b80cec9a69bfa7e094">uInt16</a>)</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="paging_8h.html#230a160ddb717c5a133e55aa42e9d324">vmmClearVirtualPage</a> (<a class="el" href="types_8h.html#5847ea0262a5aa61eee48cbe95544a78">uInt32</a> pageAddr)</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">void * </td><td class="memItemRight" valign="bottom"><a class="el" href="paging_8h.html#41985de19bd46cbe3b702cee74168dec">vmmCopyVirtualSpace</a> (<a class="el" href="types_8h.html#e438ba74394b14d7b24b6df3b3b8c252">pidType</a>)</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">void * </td><td class="memItemRight" valign="bottom"><a class="el" href="paging_8h.html#39ac9b6ea58fc8b6f129775642077c99">vmmCreateVirtualSpace</a> (<a class="el" href="types_8h.html#e438ba74394b14d7b24b6df3b3b8c252">pidType</a>)</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">void * </td><td class="memItemRight" valign="bottom"><a class="el" href="paging_8h.html#30a38035243b9dfb285b3793788126be">vmmGetFreeKernelPage</a> (<a class="el" href="types_8h.html#e438ba74394b14d7b24b6df3b3b8c252">pidType</a> pid, <a class="el" href="types_8h.html#3b65128d2644e9b80cec9a69bfa7e094">uInt16</a> count)</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">void * </td><td class="memItemRight" valign="bottom"><a class="el" href="paging_8h.html#d006a10f436671f8ee9cb402e372ff02">vmmGetFreePage</a> (<a class="el" href="types_8h.html#e438ba74394b14d7b24b6df3b3b8c252">pidType</a>)</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">void * </td><td class="memItemRight" valign="bottom"><a class="el" href="paging_8h.html#4b324672c4b25064eb8db1e3419337b1">vmmGetFreeVirtualPage</a> (<a class="el" href="types_8h.html#e438ba74394b14d7b24b6df3b3b8c252">pidType</a>, int, int)</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">void * </td><td class="memItemRight" valign="bottom"><a class="el" href="paging_8h.html#8f335022705939f0a6553d289b9c1e4e">vmmMapFromTask</a> (<a class="el" href="types_8h.html#e438ba74394b14d7b24b6df3b3b8c252">pidType</a>, void *, <a class="el" href="types_8h.html#5847ea0262a5aa61eee48cbe95544a78">uInt32</a>)</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="paging_8h.html#fd94da50e455602f86ad7dae2fc9d1db">vmmUnmapPage</a> (<a class="el" href="types_8h.html#5847ea0262a5aa61eee48cbe95544a78">uInt32</a>, int)</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="paging_8h.html#0655b3d717666bf025c37fa55b588d37">vmmUnmapPages</a> (void *, <a class="el" href="types_8h.html#5847ea0262a5aa61eee48cbe95544a78">uInt32</a>)</td></tr> <tr><td colspan="2"><br><h2>Variables</h2></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="types_8h.html#5847ea0262a5aa61eee48cbe95544a78">uInt32</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="paging_8h.html#4e81de2626825c90dc6bb3cd7c8b344c">kernelPageDirectory</a></td></tr> </table> <hr><h2>Define Documentation</h2> <a class="anchor" name="0851ee42f36c8a00e9eafe739c8ffaaa"></a><!-- doxytag: member="paging.h::btoc" ref="0851ee42f36c8a00e9eafe739c8ffaaa" args="(x)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">#define btoc </td> <td>(</td> <td class="paramtype">x </td> <td class="paramname"> </td> <td> ) </td> <td width="100%"> (((<a class="el" href="types_8h.html#d6f327965d9e330cd225ca2153ac0453">vm_offset_t</a>)(x)+PAGE_MASK)>>PAGE_SHIFT)</td> </tr> </table> </div> <div class="memdoc"> <p> <p> Definition at line <a class="el" href="paging_8h-source.html#l00062">62</a> of file <a class="el" href="paging_8h-source.html">paging.h</a>. <p> Referenced by <a class="el" href="paging_8c-source.html#l00478">obreak()</a>, and <a class="el" href="getfreevirtualpage_8c-source.html#l00047">vmmGetFreeVirtualPage()</a>. </div> </div><p> <a class="anchor" name="071caea8a82a06e754daca63317d3c07"></a><!-- doxytag: member="paging.h::ctob" ref="071caea8a82a06e754daca63317d3c07" args="(x)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">#define ctob </td> <td>(</td> <td class="paramtype">x </td> <td class="paramname"> </td> <td> ) </td> <td width="100%"> ((x)<<PAGE_SHIFT)</td> </tr> </table> </div> <div class="memdoc"> <p> <p> Definition at line <a class="el" href="paging_8h-source.html#l00061">61</a> of file <a class="el" href="paging_8h-source.html">paging.h</a>. <p> Referenced by <a class="el" href="paging_8c-source.html#l00478">obreak()</a>, and <a class="el" href="getfreevirtualpage_8c-source.html#l00047">vmmGetFreeVirtualPage()</a>. </div> </div><p> <a class="anchor" name="8b838cda4f0bc79ab8d07eb19dd35420"></a><!-- doxytag: member="paging.h::KERNEL_PAGE_DEFAULT" ref="8b838cda4f0bc79ab8d07eb19dd35420" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">#define KERNEL_PAGE_DEFAULT (PAGE_PRESENT|PAGE_WRITE) </td> </tr> </table> </div> <div class="memdoc"> <p> <p> Definition at line <a class="el" href="paging_8h-source.html#l00053">53</a> of file <a class="el" href="paging_8h-source.html">paging.h</a>. <p> Referenced by <a class="el" href="exec_8c-source.html#l00143">execFile()</a>, <a class="el" href="paging_8c-source.html#l00401">vmm_getFreeMallocPage()</a>, <a class="el" href="paging_8c-source.html#l00059">vmm_pagingInit()</a>, <a class="el" href="paging_8c-source.html#l00160">vmm_remapPage()</a>, <a class="el" href="paging_8c-source.html#l00253">vmmGetFreeKernelPage()</a>, <a class="el" href="getfreepage_8c-source.html#l00048">vmmGetFreePage()</a>, and <a class="el" href="paging_8c-source.html#l00332">vmmMapFromTask()</a>. </div> </div><p> <a class="anchor" name="57d743cb60fe478f6720c42315e7e813"></a><!-- doxytag: member="paging.h::PAGE_COW" ref="57d743cb60fe478f6720c42315e7e813" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">#define PAGE_COW 0x00000200 </td> </tr> </table> </div> <div class="memdoc"> <p> <p> Definition at line <a class="el" href="paging_8h-source.html#l00046">46</a> of file <a class="el" href="paging_8h-source.html">paging.h</a>. <p> Referenced by <a class="el" href="paging_8c-source.html#l00522">vmm_cleanVirtualSpace()</a>, <a class="el" href="pagefault_8c-source.html#l00053">vmm_pageFault()</a>, <a class="el" href="paging_8c-source.html#l00160">vmm_remapPage()</a>, <a class="el" href="copyvirtualspace_8c-source.html#l00053">vmmCopyVirtualSpace()</a>, <a class="el" href="vmm__memory_8c-source.html#l00296">vmmFreeProcessPages()</a>, and <a class="el" href="getfreevirtualpage_8c-source.html#l00047">vmmGetFreeVirtualPage()</a>. </div> </div><p> <a class="anchor" name="f0fff7a38cd2c7a32d580787423b94ea"></a><!-- doxytag: member="paging.h::PAGE_DEFAULT" ref="f0fff7a38cd2c7a32d580787423b94ea" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">#define PAGE_DEFAULT (PAGE_PRESENT|PAGE_WRITE|PAGE_USER) </td> </tr> </table> </div> <div class="memdoc"> <p> <p> Definition at line <a class="el" href="paging_8h-source.html#l00052">52</a> of file <a class="el" href="paging_8h-source.html">paging.h</a>. <p> Referenced by <a class="el" href="elf_8c-source.html#l00111">elf_loadfile()</a>, <a class="el" href="exec_8c-source.html#l00143">execFile()</a>, <a class="el" href="kmod_8c-source.html#l00075">kmod_load()</a>, <a class="el" href="ld_8c-source.html#l00042">ldEnable()</a>, <a class="el" href="paging_8c-source.html#l00478">obreak()</a>, <a class="el" href="exec_8c-source.html#l00552">sys_exec()</a>, <a class="el" href="exec_8c-source.html#l00334">sysExec()</a>, <a class="el" href="pagefault_8c-source.html#l00053">vmm_pageFault()</a>, <a class="el" href="paging_8c-source.html#l00160">vmm_remapPage()</a>, <a class="el" href="copyvirtualspace_8c-source.html#l00053">vmmCopyVirtualSpace()</a>, <a class="el" href="createvirtualspace_8c-source.html#l00081">vmmCreateVirtualSpace()</a>, and <a class="el" href="getfreevirtualpage_8c-source.html#l00047">vmmGetFreeVirtualPage()</a>. </div> </div><p> <a class="anchor" name="e4aa620ce57c7c3171b916de2c5f09f2"></a><!-- doxytag: member="paging.h::PAGE_MASK" ref="e4aa620ce57c7c3171b916de2c5f09f2" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">#define PAGE_MASK (PAGE_SIZE-1) </td> </tr> </table> </div> <div class="memdoc"> <p> <p> Definition at line <a class="el" href="paging_8h-source.html#l00057">57</a> of file <a class="el" href="paging_8h-source.html">paging.h</a>. </div> </div><p> <a class="anchor" name="122dfc414a40e260fd35dbe9743db26f"></a><!-- doxytag: member="paging.h::PAGE_PRESENT" ref="122dfc414a40e260fd35dbe9743db26f" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">#define PAGE_PRESENT 0x00000001 </td> </tr> </table> </div> <div class="memdoc"> <p> <p> Definition at line <a class="el" href="paging_8h-source.html#l00049">49</a> of file <a class="el" href="paging_8h-source.html">paging.h</a>. <p> Referenced by <a class="el" href="elf_8c-source.html#l00111">elf_loadfile()</a>, <a class="el" href="exec_8c-source.html#l00143">execFile()</a>, <a class="el" href="exec_8c-source.html#l00552">sys_exec()</a>, <a class="el" href="exec_8c-source.html#l00334">sysExec()</a>, <a class="el" href="paging_8c-source.html#l00522">vmm_cleanVirtualSpace()</a>, <a class="el" href="paging_8c-source.html#l00160">vmm_remapPage()</a>, and <a class="el" href="getfreevirtualpage_8c-source.html#l00047">vmmGetFreeVirtualPage()</a>. </div> </div><p> <a class="anchor" name="850d80ca2291d26b40dc6b25c419f81a"></a><!-- doxytag: member="paging.h::PAGE_SHIFT" ref="850d80ca2291d26b40dc6b25c419f81a" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">#define PAGE_SHIFT 12 </td> </tr> </table> </div> <div class="memdoc"> <p> <p> Definition at line <a class="el" href="paging_8h-source.html#l00055">55</a> of file <a class="el" href="paging_8h-source.html">paging.h</a>. <p> Referenced by <a class="el" href="exec_8c-source.html#l00552">sys_exec()</a>, and <a class="el" href="exec_8c-source.html#l00334">sysExec()</a>. </div> </div><p> <a class="anchor" name="7d467c1d283fdfa1f2081ba1e0d01b6e"></a><!-- doxytag: member="paging.h::PAGE_SIZE" ref="7d467c1d283fdfa1f2081ba1e0d01b6e" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">#define PAGE_SIZE (1<<PAGE_SHIFT) </td> </tr> </table> </div> <div class="memdoc"> <p> <p> Definition at line <a class="el" href="paging_8h-source.html#l00056">56</a> of file <a class="el" href="paging_8h-source.html">paging.h</a>. <p> Referenced by <a class="el" href="exec_8c-source.html#l00334">sysExec()</a>. </div> </div><p> <a class="anchor" name="1532db17068ba8d409b8ffe066414af2"></a><!-- doxytag: member="paging.h::PAGE_STACK" ref="1532db17068ba8d409b8ffe066414af2" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">#define PAGE_STACK 0x00000400 </td> </tr> </table> </div> <div class="memdoc"> <p> <p> Definition at line <a class="el" href="paging_8h-source.html#l00047">47</a> of file <a class="el" href="paging_8h-source.html">paging.h</a>. <p> Referenced by <a class="el" href="exec_8c-source.html#l00143">execFile()</a>, <a class="el" href="paging_8c-source.html#l00522">vmm_cleanVirtualSpace()</a>, <a class="el" href="paging_8c-source.html#l00160">vmm_remapPage()</a>, and <a class="el" href="copyvirtualspace_8c-source.html#l00053">vmmCopyVirtualSpace()</a>. </div> </div><p> <a class="anchor" name="2d0253527ea5080d6befe0ee3bde473f"></a><!-- doxytag: member="paging.h::PAGE_USER" ref="2d0253527ea5080d6befe0ee3bde473f" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">#define PAGE_USER 0x00000004 </td> </tr> </table> </div> <div class="memdoc"> <p> <p> Definition at line <a class="el" href="paging_8h-source.html#l00051">51</a> of file <a class="el" href="paging_8h-source.html">paging.h</a>. <p> Referenced by <a class="el" href="elf_8c-source.html#l00111">elf_loadfile()</a>, <a class="el" href="exec_8c-source.html#l00143">execFile()</a>, <a class="el" href="exec_8c-source.html#l00552">sys_exec()</a>, and <a class="el" href="exec_8c-source.html#l00334">sysExec()</a>. </div> </div><p> <a class="anchor" name="41b733e23eb5b22e1df907b87d6b3996"></a><!-- doxytag: member="paging.h::PAGE_WIRED" ref="41b733e23eb5b22e1df907b87d6b3996" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">#define PAGE_WIRED 0x00000600 </td> </tr> </table> </div> <div class="memdoc"> <p> <p> Definition at line <a class="el" href="paging_8h-source.html#l00048">48</a> of file <a class="el" href="paging_8h-source.html">paging.h</a>. </div> </div><p> <a class="anchor" name="559697780e34fd09ba6a2e909f0fe1df"></a><!-- doxytag: member="paging.h::PAGE_WRITE" ref="559697780e34fd09ba6a2e909f0fe1df" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">#define PAGE_WRITE 0x00000002 </td> </tr> </table> </div> <div class="memdoc"> <p> <p> Definition at line <a class="el" href="paging_8h-source.html#l00050">50</a> of file <a class="el" href="paging_8h-source.html">paging.h</a>. </div> </div><p> <a class="anchor" name="b80d68a13753e40b0df8e0dc0c4af870"></a><!-- doxytag: member="paging.h::pageEntries" ref="b80d68a13753e40b0df8e0dc0c4af870" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">#define pageEntries (pageSize/4) </td> </tr> </table> </div> <div class="memdoc"> <p> <p> Definition at line <a class="el" href="paging_8h-source.html#l00042">42</a> of file <a class="el" href="paging_8h-source.html">paging.h</a>. <p> Referenced by <a class="el" href="pagefault_8c-source.html#l00053">vmm_pageFault()</a>, <a class="el" href="paging_8c-source.html#l00059">vmm_pagingInit()</a>, <a class="el" href="paging_8c-source.html#l00160">vmm_remapPage()</a>, <a class="el" href="paging_8c-source.html#l00314">vmmClearVirtualPage()</a>, <a class="el" href="copyvirtualspace_8c-source.html#l00053">vmmCopyVirtualSpace()</a>, <a class="el" href="createvirtualspace_8c-source.html#l00081">vmmCreateVirtualSpace()</a>, <a class="el" href="vmm__memory_8c-source.html#l00296">vmmFreeProcessPages()</a>, and <a class="el" href="getfreevirtualpage_8c-source.html#l00047">vmmGetFreeVirtualPage()</a>. </div> </div><p> <a class="anchor" name="d8f95327f815dfa0f9196dbc48b94ddb"></a><!-- doxytag: member="paging.h::pageLength" ref="d8f95327f815dfa0f9196dbc48b94ddb" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">#define pageLength 0x00000400 </td> </tr> </table> </div> <div class="memdoc"> <p> <p> Definition at line <a class="el" href="paging_8h-source.html#l00040">40</a> of file <a class="el" href="paging_8h-source.html">paging.h</a>. </div> </div><p> <a class="anchor" name="3d9cc2be3113b17e62612d00f7082b10"></a><!-- doxytag: member="paging.h::pageSize" ref="3d9cc2be3113b17e62612d00f7082b10" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">#define pageSize 4096 </td> </tr> </table> </div> <div class="memdoc"> <p> <p> Definition at line <a class="el" href="paging_8h-source.html#l00041">41</a> of file <a class="el" href="paging_8h-source.html">paging.h</a>. </div> </div><p> <a class="anchor" name="aab3609eb02bd28ded8d1ea0512da979"></a><!-- doxytag: member="paging.h::parentPageDirAddr" ref="aab3609eb02bd28ded8d1ea0512da979" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">#define parentPageDirAddr 0x100000 </td> </tr> </table> </div> <div class="memdoc"> <p> <p> Definition at line <a class="el" href="paging_8h-source.html#l00044">44</a> of file <a class="el" href="paging_8h-source.html">paging.h</a>. <p> Referenced by <a class="el" href="paging_8c-source.html#l00522">vmm_cleanVirtualSpace()</a>, <a class="el" href="pagefault_8c-source.html#l00053">vmm_pageFault()</a>, <a class="el" href="paging_8c-source.html#l00160">vmm_remapPage()</a>, <a class="el" href="copyvirtualspace_8c-source.html#l00053">vmmCopyVirtualSpace()</a>, <a class="el" href="createvirtualspace_8c-source.html#l00081">vmmCreateVirtualSpace()</a>, <a class="el" href="vmm__memory_8c-source.html#l00296">vmmFreeProcessPages()</a>, and <a class="el" href="getfreevirtualpage_8c-source.html#l00047">vmmGetFreeVirtualPage()</a>. </div> </div><p> <a class="anchor" name="2702263fcf2b3b026cb26c6d895cb0ee"></a><!-- doxytag: member="paging.h::round_page" ref="2702263fcf2b3b026cb26c6d895cb0ee" args="(x)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">#define round_page </td> <td>(</td> <td class="paramtype">x </td> <td class="paramname"> </td> <td> ) </td> <td width="100%"> (((x) + PAGE_MASK) & ~PAGE_MASK)</td> </tr> </table> </div> <div class="memdoc"> <p> <p> Definition at line <a class="el" href="paging_8h-source.html#l00060">60</a> of file <a class="el" href="paging_8h-source.html">paging.h</a>. <p> Referenced by <a class="el" href="paging_8c-source.html#l00478">obreak()</a>, <a class="el" href="exec_8c-source.html#l00552">sys_exec()</a>, and <a class="el" href="exec_8c-source.html#l00334">sysExec()</a>. </div> </div><p> <a class="anchor" name="a432d41840ad8a583a7e6af86feece4f"></a><!-- doxytag: member="paging.h::tablesBaseAddress" ref="a432d41840ad8a583a7e6af86feece4f" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">#define tablesBaseAddress 0xBFC00000 </td> </tr> </table> </div> <div class="memdoc"> <p> <p> Definition at line <a class="el" href="paging_8h-source.html#l00043">43</a> of file <a class="el" href="paging_8h-source.html">paging.h</a>. <p> Referenced by <a class="el" href="paging_8c-source.html#l00522">vmm_cleanVirtualSpace()</a>, <a class="el" href="paging_8c-source.html#l00401">vmm_getFreeMallocPage()</a>, <a class="el" href="getphysicaladdr_8c-source.html#l00040">vmm_getPhysicalAddr()</a>, <a class="el" href="pagefault_8c-source.html#l00053">vmm_pageFault()</a>, <a class="el" href="paging_8c-source.html#l00160">vmm_remapPage()</a>, <a class="el" href="setpageattributes_8c-source.html#l00041">vmm_setPageAttributes()</a>, <a class="el" href="copyvirtualspace_8c-source.html#l00053">vmmCopyVirtualSpace()</a>, <a class="el" href="createvirtualspace_8c-source.html#l00081">vmmCreateVirtualSpace()</a>, <a class="el" href="vmm__memory_8c-source.html#l00296">vmmFreeProcessPages()</a>, <a class="el" href="paging_8c-source.html#l00253">vmmGetFreeKernelPage()</a>, <a class="el" href="getfreepage_8c-source.html#l00048">vmmGetFreePage()</a>, <a class="el" href="getfreevirtualpage_8c-source.html#l00047">vmmGetFreeVirtualPage()</a>, <a class="el" href="paging_8c-source.html#l00332">vmmMapFromTask()</a>, <a class="el" href="unmappage_8c-source.html#l00050">vmmUnmapPage()</a>, and <a class="el" href="unmappage_8c-source.html#l00101">vmmUnmapPages()</a>. </div> </div><p> <a class="anchor" name="bd636a9b61ad98f4fc23b1f4a9210d78"></a><!-- doxytag: member="paging.h::trunc_page" ref="bd636a9b61ad98f4fc23b1f4a9210d78" args="(x)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">#define trunc_page </td> <td>(</td> <td class="paramtype">x </td> <td class="paramname"> </td> <td> ) </td> <td width="100%"> ((x) & ~PAGE_MASK)</td> </tr> </table> </div> <div class="memdoc"> <p> <p> Definition at line <a class="el" href="paging_8h-source.html#l00059">59</a> of file <a class="el" href="paging_8h-source.html">paging.h</a>. <p> Referenced by <a class="el" href="exec_8c-source.html#l00552">sys_exec()</a>, and <a class="el" href="exec_8c-source.html#l00334">sysExec()</a>. </div> </div><p> <a class="anchor" name="59a518704bf2f0b56603476bcb1eebbf"></a><!-- doxytag: member="paging.h::VM_TASK" ref="59a518704bf2f0b56603476bcb1eebbf" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">#define VM_TASK 1 </td> </tr> </table> </div> <div class="memdoc"> <p> <p> Definition at line <a class="el" href="paging_8h-source.html#l00038">38</a> of file <a class="el" href="paging_8h-source.html">paging.h</a>. <p> Referenced by <a class="el" href="paging_8c-source.html#l00453">mmap()</a>, <a class="el" href="exec_8c-source.html#l00334">sysExec()</a>, <a class="el" href="syscall_8c-source.html#l00196">sysGetFreePage()</a>, and <a class="el" href="getfreevirtualpage_8c-source.html#l00047">vmmGetFreeVirtualPage()</a>. </div> </div><p> <a class="anchor" name="4ede4e8b3e149ef94678acdae7de0e18"></a><!-- doxytag: member="paging.h::VM_THRD" ref="4ede4e8b3e149ef94678acdae7de0e18" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">#define VM_THRD 0 </td> </tr> </table> </div> <div class="memdoc"> <p> <p> Definition at line <a class="el" href="paging_8h-source.html#l00037">37</a> of file <a class="el" href="paging_8h-source.html">paging.h</a>. <p> Referenced by <a class="el" href="syscall_8c-source.html#l00196">sysGetFreePage()</a>, and <a class="el" href="getfreevirtualpage_8c-source.html#l00047">vmmGetFreeVirtualPage()</a>. </div> </div><p> <hr><h2>Function Documentation</h2> <a class="anchor" name="15b43ccb21abdb9e0a41acb82b260a99"></a><!-- doxytag: member="paging.h::_vmm_pageFault" ref="15b43ccb21abdb9e0a41acb82b260a99" args="()" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void _vmm_pageFault </td> <td>(</td> <td class="paramname"> </td> <td> ) </td> <td width="100%"></td> </tr> </table> </div> <div class="memdoc"> <p> </div> </div><p> <a class="anchor" name="f47d5f6b1a4a8738e65c9f539a9979fc"></a><!-- doxytag: member="paging.h::mmap" ref="f47d5f6b1a4a8738e65c9f539a9979fc" args="(struct thread *, struct mmap_args *)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">int mmap </td> <td>(</td> <td class="paramtype">struct <a class="el" href="structthread.html">thread</a> * </td> <td class="paramname">, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">struct <a class="el" href="structmmap__args.html">mmap_args</a> * </td> <td class="paramname"></td><td> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td><td width="100%"></td> </tr> </table> </div> <div class="memdoc"> <p> <p> Definition at line <a class="el" href="paging_8c-source.html#l00453">453</a> of file <a class="el" href="paging_8c-source.html">paging.c</a>. <p> References <a class="el" href="sched_8c-source.html#l00051">_current</a>, <a class="el" href="sysproto_8h-source.html#l00113">mmap_args::addr</a>, <a class="el" href="sysproto_8h-source.html#l00117">mmap_args::fd</a>, <a class="el" href="sysproto_8h-source.html#l00116">mmap_args::flags</a>, <a class="el" href="sched_8h-source.html#l00055">taskStruct::id</a>, <a class="el" href="kprintf_8c-source.html#l00038">kprintf()</a>, <a class="el" href="sysproto_8h-source.html#l00114">mmap_args::len</a>, <a class="el" href="sysproto_8h-source.html#l00118">mmap_args::pad</a>, <a class="el" href="sysproto_8h-source.html#l00119">mmap_args::pos</a>, <a class="el" href="sysproto_8h-source.html#l00115">mmap_args::prot</a>, <a class="el" href="thread_8h-source.html#l00038">thread::td_retval</a>, <a class="el" href="paging_8h-source.html#l00038">VM_TASK</a>, <a class="el" href="getfreevirtualpage_8c-source.html#l00047">vmmGetFreeVirtualPage()</a>, and <a class="el" href="ap-boot_8S-source.html#l00052">x1000</a>. <p> Here is the call graph for this function:<p><center><img src="paging_8h_f47d5f6b1a4a8738e65c9f539a9979fc_cgraph.png" border="0" usemap="#paging_8h_f47d5f6b1a4a8738e65c9f539a9979fc_cgraph_map" alt=""></center> <map name="paging_8h_f47d5f6b1a4a8738e65c9f539a9979fc_cgraph_map"> <area href="kprint_8h.html#b2761bdf0cca73ad0fb5880895210cd8" shape="rect" coords="927,107,993,133" alt=""> <area href="paging_8h.html#4b324672c4b25064eb8db1e3419337b1" shape="rect" coords="121,183,305,209" alt=""> <area href="kpanic_8h.html#db9a182aa071791a306163d50d653deb" shape="rect" coords="780,208,847,235" alt=""> <area href="spinlock_8h.html#2cd9a4502680fb8e7f0fe6b029e558b1" shape="rect" coords="773,385,853,412" alt=""> <area href="spinlock_8h.html#dd996cbbb3b9826dd9c8cf02b66a4c65" shape="rect" coords="765,284,861,311" alt=""> <area href="paging_8h.html#a05f8d8947fb5bcec87fc6661f83243e" shape="rect" coords="369,309,508,336" alt=""> <area href="vmm_8h.html#976cf3919bf7c77c868021ec9374593b" shape="rect" coords="572,259,716,285" alt=""> <area href="paging_8h.html#230a160ddb717c5a133e55aa42e9d324" shape="rect" coords="355,107,523,133" alt=""> <area href="8259_8h.html#2b9ec30943ddb0a2ef3bd7ccfd2026c0" shape="rect" coords="915,183,1005,209" alt=""> <area href="stdarg_8h.html#621577c2df0ad5faa281223c56eeb7a5" shape="rect" coords="924,233,996,260" alt=""> <area href="sched_8h.html#08933fe6d593a1c78b9080359f15a0b7" shape="rect" coords="909,360,1011,387" alt=""> <area href="spinlock_8h.html#8f9173fadeddafa01754d6cbcc630198" shape="rect" coords="911,411,1009,437" alt=""> <area href="vmm_8h.html#e90be267d851fed04d4d9b1c6c10454a" shape="rect" coords="604,360,684,387" alt=""> </map> </div> </div><p> <a class="anchor" name="c4296f2360f8217973674af8bc6f82dd"></a><!-- doxytag: member="paging.h::munmap" ref="c4296f2360f8217973674af8bc6f82dd" args="(struct thread *, struct munmap_args *)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">int munmap </td> <td>(</td> <td class="paramtype">struct <a class="el" href="structthread.html">thread</a> * </td> <td class="paramname">, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">struct <a class="el" href="structmunmap__args.html">munmap_args</a> * </td> <td class="paramname"></td><td> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td><td width="100%"></td> </tr> </table> </div> <div class="memdoc"> <p> <p> Definition at line <a class="el" href="paging_8c-source.html#l00516">516</a> of file <a class="el" href="paging_8c-source.html">paging.c</a>. <p> References <a class="el" href="kprintf_8c-source.html#l00038">kprintf()</a>. <p> Here is the call graph for this function:<p><center><img src="paging_8h_c4296f2360f8217973674af8bc6f82dd_cgraph.png" border="0" usemap="#paging_8h_c4296f2360f8217973674af8bc6f82dd_cgraph_map" alt=""></center> <map name="paging_8h_c4296f2360f8217973674af8bc6f82dd_cgraph_map"> <area href="kprint_8h.html#b2761bdf0cca73ad0fb5880895210cd8" shape="rect" coords="136,5,203,32" alt=""> </map> </div> </div><p> <a class="anchor" name="8d8ba1d847eb4dbeb26a3c1077ab1981"></a><!-- doxytag: member="paging.h::obreak" ref="8d8ba1d847eb4dbeb26a3c1077ab1981" args="(struct thread *, struct obreak_args *)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">int obreak </td> <td>(</td> <td class="paramtype">struct <a class="el" href="structthread.html">thread</a> * </td> <td class="paramname">, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">struct <a class="el" href="structobreak__args.html">obreak_args</a> * </td> <td class="paramname"></td><td> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td><td width="100%"></td> </tr> </table> </div> <div class="memdoc"> <p> <p> Definition at line <a class="el" href="paging_8c-source.html#l00478">478</a> of file <a class="el" href="paging_8c-source.html">paging.c</a>. <p> References <a class="el" href="sched_8c-source.html#l00051">_current</a>, <a class="el" href="paging_8h-source.html#l00062">btoc</a>, <a class="el" href="paging_8h-source.html#l00061">ctob</a>, <a class="el" href="sched_8h-source.html#l00055">taskStruct::id</a>, <a class="el" href="kpanic_8h-source.html#l00033">K_PANIC</a>, <a class="el" href="kprintf_8c-source.html#l00038">kprintf()</a>, <a class="el" href="sysproto_8h-source.html#l00123">obreak_args::nsize</a>, <a class="el" href="paging_8h-source.html#l00052">PAGE_DEFAULT</a>, <a class="el" href="paging_8h-source.html#l00060">round_page</a>, <a class="el" href="thread_8h-source.html#l00040">thread::vm_daddr</a>, <a class="el" href="thread_8h-source.html#l00041">thread::vm_dsize</a>, <a class="el" href="paging_8c-source.html#l00160">vmm_remapPage()</a>, and <a class="el" href="vmm__memory_8c-source.html#l00186">vmmFindFreePage()</a>. <p> Here is the call graph for this function:<p><center><img src="paging_8h_8d8ba1d847eb4dbeb26a3c1077ab1981_cgraph.png" border="0" usemap="#paging_8h_8d8ba1d847eb4dbeb26a3c1077ab1981_cgraph_map" alt=""></center> <map name="paging_8h_8d8ba1d847eb4dbeb26a3c1077ab1981_cgraph_map"> <area href="kprint_8h.html#b2761bdf0cca73ad0fb5880895210cd8" shape="rect" coords="713,56,780,83" alt=""> <area href="paging_8h.html#a05f8d8947fb5bcec87fc6661f83243e" shape="rect" coords="123,208,261,235" alt=""> <area href="vmm_8h.html#976cf3919bf7c77c868021ec9374593b" shape="rect" coords="311,157,455,184" alt=""> <area href="vmm_8h.html#e90be267d851fed04d4d9b1c6c10454a" shape="rect" coords="343,309,423,336" alt=""> <area href="spinlock_8h.html#2cd9a4502680fb8e7f0fe6b029e558b1" shape="rect" coords="707,385,787,412" alt=""> <area href="spinlock_8h.html#dd996cbbb3b9826dd9c8cf02b66a4c65" shape="rect" coords="699,233,795,260" alt=""> <area href="vmm_8h.html#362d462b3a1e19b5e0ef95e1839dbf11" shape="rect" coords="504,360,651,387" alt=""> <area href="sched_8h.html#08933fe6d593a1c78b9080359f15a0b7" shape="rect" coords="843,360,944,387" alt=""> <area href="spinlock_8h.html#8f9173fadeddafa01754d6cbcc630198" shape="rect" coords="844,411,943,437" alt=""> <area href="kpanic_8h.html#db9a182aa071791a306163d50d653deb" shape="rect" coords="544,107,611,133" alt=""> <area href="8259_8h.html#2b9ec30943ddb0a2ef3bd7ccfd2026c0" shape="rect" coords="701,107,792,133" alt=""> <area href="stdarg_8h.html#621577c2df0ad5faa281223c56eeb7a5" shape="rect" coords="711,157,783,184" alt=""> <area href="vsprintf_8c.html#c2f4c669c6f6aa6caa5ab8adb1b07dd0" shape="rect" coords="856,132,931,159" alt=""> <area href="vsprintf_8c.html#3fa7c8ef8597579301cb4b5c59bc6d9a" shape="rect" coords="853,183,933,209" alt=""> </map> </div> </div><p> <a class="anchor" name="541f0b43826a40b9e978f5479080bb0e"></a><!-- doxytag: member="paging.h::vmm_getFreeMallocPage" ref="541f0b43826a40b9e978f5479080bb0e" args="(uInt16 count)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void* vmm_getFreeMallocPage </td> <td>(</td> <td class="paramtype"><a class="el" href="types_8h.html#3b65128d2644e9b80cec9a69bfa7e094">uInt16</a> </td> <td class="paramname"> <em>count</em> </td> <td> ) </td> <td width="100%"></td> </tr> </table> </div> <div class="memdoc"> <p> <p> Definition at line <a class="el" href="paging_8c-source.html#l00401">401</a> of file <a class="el" href="paging_8c-source.html">paging.c</a>. <p> References <a class="el" href="paging_8c-source.html#l00043">fkpSpinLock</a>, <a class="el" href="kpanic_8h-source.html#l00033">K_PANIC</a>, <a class="el" href="paging_8h-source.html#l00053">KERNEL_PAGE_DEFAULT</a>, <a class="el" href="spinlock_8c-source.html#l00056">spinLock()</a>, <a class="el" href="spinlock_8c-source.html#l00037">spinUnlock()</a>, <a class="el" href="kmalloc_8h-source.html#l00039">sysID</a>, <a class="el" href="paging_8h-source.html#l00043">tablesBaseAddress</a>, <a class="el" href="paging_8c-source.html#l00160">vmm_remapPage()</a>, <a class="el" href="paging_8c-source.html#l00314">vmmClearVirtualPage()</a>, <a class="el" href="vmm__memory_8c-source.html#l00186">vmmFindFreePage()</a>, and <a class="el" href="ap-boot_8S-source.html#l00052">x1000</a>. <p> Referenced by <a class="el" href="kmalloc_8c-source.html#l00067">getEmptyDesc()</a>. <p> Here is the call graph for this function:<p><center><img src="paging_8h_541f0b43826a40b9e978f5479080bb0e_cgraph.png" border="0" usemap="#paging_8h_541f0b43826a40b9e978f5479080bb0e_cgraph_map" alt=""></center> <map name="paging_8h_541f0b43826a40b9e978f5479080bb0e_cgraph_map"> <area href="spinlock_8h.html#2cd9a4502680fb8e7f0fe6b029e558b1" shape="rect" coords="661,81,741,108" alt=""> <area href="spinlock_8h.html#dd996cbbb3b9826dd9c8cf02b66a4c65" shape="rect" coords="653,233,749,260" alt=""> <area href="paging_8h.html#a05f8d8947fb5bcec87fc6661f83243e" shape="rect" coords="257,157,396,184" alt=""> <area href="vmm_8h.html#976cf3919bf7c77c868021ec9374593b" shape="rect" coords="460,56,604,83" alt=""> <area href="paging_8h.html#230a160ddb717c5a133e55aa42e9d324" shape="rect" coords="243,360,411,387" alt=""> <area href="sched_8h.html#08933fe6d593a1c78b9080359f15a0b7" shape="rect" coords="797,56,899,83" alt=""> <area href="spinlock_8h.html#8f9173fadeddafa01754d6cbcc630198" shape="rect" coords="799,107,897,133" alt=""> <area href="vmm_8h.html#e90be267d851fed04d4d9b1c6c10454a" shape="rect" coords="492,208,572,235" alt=""> <area href="kprint_8h.html#b2761bdf0cca73ad0fb5880895210cd8" shape="rect" coords="499,157,565,184" alt=""> </map> </div> </div><p> <a class="anchor" name="e88bcfc69132a46a1982237913101a5b"></a><!-- doxytag: member="paging.h::vmm_getPhysicalAddr" ref="e88bcfc69132a46a1982237913101a5b" args="(uInt32)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="types_8h.html#5847ea0262a5aa61eee48cbe95544a78">uInt32</a> vmm_getPhysicalAddr </td> <td>(</td> <td class="paramtype"><a class="el" href="types_8h.html#5847ea0262a5aa61eee48cbe95544a78">uInt32</a> </td> <td class="paramname"> <em>pageAddr</em> </td> <td> ) </td> <td width="100%"></td> </tr> </table> </div> <div class="memdoc"> <p> Function: void *vmmGetPhysicalAddr(); Description: Returns The Physical Address Of The Virtual Page Notes: <p> Definition at line <a class="el" href="getphysicaladdr_8c-source.html#l00040">40</a> of file <a class="el" href="getphysicaladdr_8c-source.html">getphysicaladdr.c</a>. <p> References <a class="el" href="paging_8h-source.html#l00043">tablesBaseAddress</a>, and <a class="el" href="ap-boot_8S-source.html#l00052">x1000</a>. <p> Referenced by <a class="el" href="pagefault_8c-source.html#l00053">vmm_pageFault()</a>, <a class="el" href="copyvirtualspace_8c-source.html#l00053">vmmCopyVirtualSpace()</a>, and <a class="el" href="createvirtualspace_8c-source.html#l00081">vmmCreateVirtualSpace()</a>. </div> </div><p> <a class="anchor" name="442adfc886cbfedfc3edadf45c5f89a6"></a><!-- doxytag: member="paging.h::vmm_pageFault" ref="442adfc886cbfedfc3edadf45c5f89a6" args="(uInt32, uInt32, uInt32)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void vmm_pageFault </td> <td>(</td> <td class="paramtype"><a class="el" href="types_8h.html#5847ea0262a5aa61eee48cbe95544a78">uInt32</a> </td> <td class="paramname">, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype"><a class="el" href="types_8h.html#5847ea0262a5aa61eee48cbe95544a78">uInt32</a> </td> <td class="paramname">, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype"><a class="el" href="types_8h.html#5847ea0262a5aa61eee48cbe95544a78">uInt32</a> </td> <td class="paramname"></td><td> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td><td width="100%"></td> </tr> </table> </div> <div class="memdoc"> <p> <p> Definition at line <a class="el" href="pagefault_8c-source.html#l00053">53</a> of file <a class="el" href="pagefault_8c-source.html">pagefault.c</a>. <p> References <a class="el" href="sched_8c-source.html#l00051">_current</a>, <a class="el" href="vmm__memory_8c-source.html#l00266">adjustCowCounter()</a>, <a class="el" href="endtask_8c-source.html#l00046">endTask()</a>, <a class="el" href="sched_8h-source.html#l00055">taskStruct::id</a>, <a class="el" href="kpanic_8c-source.html#l00042">kpanic()</a>, <a class="el" href="kprintf_8c-source.html#l00038">kprintf()</a>, <a class="el" href="paging_8h-source.html#l00046">PAGE_COW</a>, <a class="el" href="paging_8h-source.html#l00052">PAGE_DEFAULT</a>, <a class="el" href="paging_8h-source.html#l00042">pageEntries</a>, <a class="el" href="pagefault_8c-source.html#l00036">pageFaultSpinLock</a>, <a class="el" href="paging_8h-source.html#l00044">parentPageDirAddr</a>, <a class="el" href="spinlock_8c-source.html#l00056">spinLock()</a>, <a class="el" href="spinlock_8c-source.html#l00037">spinUnlock()</a>, <a class="el" href="paging_8h-source.html#l00043">tablesBaseAddress</a>, <a class="el" href="sched_8h-source.html#l00067">taskStruct::td</a>, <a class="el" href="thread_8h-source.html#l00040">thread::vm_daddr</a>, <a class="el" href="thread_8h-source.html#l00041">thread::vm_dsize</a>, <a class="el" href="getphysicaladdr_8c-source.html#l00040">vmm_getPhysicalAddr()</a>, <a class="el" href="vmm__memory_8c-source.html#l00186">vmmFindFreePage()</a>, <a class="el" href="getfreevirtualpage_8c-source.html#l00047">vmmGetFreeVirtualPage()</a>, <a class="el" href="unmappage_8c-source.html#l00050">vmmUnmapPage()</a>, <a class="el" href="ap-boot_8S-source.html#l00006">x1</a>, and <a class="el" href="ap-boot_8S-source.html#l00052">x1000</a>. <p> Here is the call graph for this function:<p><center><img src="paging_8h_442adfc886cbfedfc3edadf45c5f89a6_cgraph.png" border="0" usemap="#paging_8h_442adfc886cbfedfc3edadf45c5f89a6_cgraph_map" alt=""></center> <map name="paging_8h_442adfc886cbfedfc3edadf45c5f89a6_cgraph_map"> <area href="vmm_8h.html#362d462b3a1e19b5e0ef95e1839dbf11" shape="rect" coords="419,72,565,99" alt=""> <area href="spinlock_8h.html#2cd9a4502680fb8e7f0fe6b029e558b1" shape="rect" coords="621,97,701,124" alt=""> <area href="spinlock_8h.html#dd996cbbb3b9826dd9c8cf02b66a4c65" shape="rect" coords="613,199,709,225" alt=""> <area href="endtask_8h.html#152c1859ada097cc21071f471bfa2e67" shape="rect" coords="239,528,316,555" alt=""> <area href="kpanic_8h.html#db9a182aa071791a306163d50d653deb" shape="rect" coords="628,376,695,403" alt=""> <area href="kprint_8h.html#b2761bdf0cca73ad0fb5880895210cd8" shape="rect" coords="757,376,824,403" alt=""> <area href="paging_8h.html#e88bcfc69132a46a1982237913101a5b" shape="rect" coords="192,579,363,605" alt=""> <area href="vmm_8h.html#976cf3919bf7c77c868021ec9374593b" shape="rect" coords="420,224,564,251" alt=""> <area href="paging_8h.html#4b324672c4b25064eb8db1e3419337b1" shape="rect" coords="185,300,369,327" alt=""> <area href="paging_8h.html#fd94da50e455602f86ad7dae2fc9d1db" shape="rect" coords="209,629,345,656" alt=""> </map> </div> </div><p> <a class="anchor" name="f47a45e3f0802f5aac053808127aaaf1"></a><!-- doxytag: member="paging.h::vmm_pagingInit" ref="f47a45e3f0802f5aac053808127aaaf1" args="()" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">int vmm_pagingInit </td> <td>(</td> <td class="paramname"> </td> <td> ) </td> <td width="100%"></td> </tr> </table> </div> <div class="memdoc"> <p> <p> Definition at line <a class="el" href="paging_8c-source.html#l00059">59</a> of file <a class="el" href="paging_8c-source.html">paging.c</a>. <p> References <a class="el" href="page__fault_8S-source.html#l00038">_vmm_pageFault</a>, <a class="el" href="kpanic_8h-source.html#l00033">K_PANIC</a>, <a class="el" href="paging_8h-source.html#l00053">KERNEL_PAGE_DEFAULT</a>, <a class="el" href="paging_8c-source.html#l00040">kernelPageDirectory</a>, <a class="el" href="kprintf_8c-source.html#l00038">kprintf()</a>, <a class="el" href="memset_8c-source.html#l00037">memset()</a>, <a class="el" href="vmm__memory_8c-source.html#l00044">numPages</a>, <a class="el" href="paging_8h-source.html#l00042">pageEntries</a>, <a class="el" href="kmalloc_8h-source.html#l00039">sysID</a>, <a class="el" href="paging_8c-source.html#l00160">vmm_remapPage()</a>, <a class="el" href="vmm__memory_8c-source.html#l00186">vmmFindFreePage()</a>, <a class="el" href="vmm__memory_8c-source.html#l00045">vmmMemoryMap</a>, <a class="el" href="vmm_8h-source.html#l00039">vmmMemoryMapAddr</a>, <a class="el" href="ap-boot_8S-source.html#l00006">x1</a>, and <a class="el" href="ap-boot_8S-source.html#l00052">x1000</a>. <p> Referenced by <a class="el" href="vmm__init_8c-source.html#l00041">vmm_init()</a>. <p> Here is the call graph for this function:<p><center><img src="paging_8h_f47a45e3f0802f5aac053808127aaaf1_cgraph.png" border="0" usemap="#paging_8h_f47a45e3f0802f5aac053808127aaaf1_cgraph_map" alt=""></center> <map name="paging_8h_f47a45e3f0802f5aac053808127aaaf1_cgraph_map"> <area href="kprint_8h.html#b2761bdf0cca73ad0fb5880895210cd8" shape="rect" coords="775,56,842,83" alt=""> <area href="lib_2string_8h.html#ce4b911463887af5e748326323e99a23" shape="rect" coords="215,259,292,285" alt=""> <area href="paging_8h.html#a05f8d8947fb5bcec87fc6661f83243e" shape="rect" coords="184,208,323,235" alt=""> <area href="vmm_8h.html#976cf3919bf7c77c868021ec9374593b" shape="rect" coords="372,157,516,184" alt=""> <area href="vmm_8h.html#e90be267d851fed04d4d9b1c6c10454a" shape="rect" coords="404,309,484,336" alt=""> <area href="spinlock_8h.html#2cd9a4502680fb8e7f0fe6b029e558b1" shape="rect" coords="768,385,848,412" alt=""> <area href="spinlock_8h.html#dd996cbbb3b9826dd9c8cf02b66a4c65" shape="rect" coords="760,233,856,260" alt=""> <area href="vmm_8h.html#362d462b3a1e19b5e0ef95e1839dbf11" shape="rect" coords="566,360,712,387" alt=""> <area href="sched_8h.html#08933fe6d593a1c78b9080359f15a0b7" shape="rect" coords="904,360,1006,387" alt=""> <area href="spinlock_8h.html#8f9173fadeddafa01754d6cbcc630198" shape="rect" coords="906,411,1004,437" alt=""> <area href="kpanic_8h.html#db9a182aa071791a306163d50d653deb" shape="rect" coords="606,107,672,133" alt=""> <area href="8259_8h.html#2b9ec30943ddb0a2ef3bd7ccfd2026c0" shape="rect" coords="763,107,854,133" alt=""> <area href="stdarg_8h.html#621577c2df0ad5faa281223c56eeb7a5" shape="rect" coords="772,157,844,184" alt=""> <area href="vsprintf_8c.html#c2f4c669c6f6aa6caa5ab8adb1b07dd0" shape="rect" coords="918,132,992,159" alt=""> <area href="vsprintf_8c.html#3fa7c8ef8597579301cb4b5c59bc6d9a" shape="rect" coords="915,183,995,209" alt=""> </map> </div> </div><p> <a class="anchor" name="a05f8d8947fb5bcec87fc6661f83243e"></a><!-- doxytag: member="paging.h::vmm_remapPage" ref="a05f8d8947fb5bcec87fc6661f83243e" args="(uInt32, uInt32, uInt16)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">int vmm_remapPage </td> <td>(</td> <td class="paramtype"><a class="el" href="types_8h.html#5847ea0262a5aa61eee48cbe95544a78">uInt32</a> </td> <td class="paramname">, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype"><a class="el" href="types_8h.html#5847ea0262a5aa61eee48cbe95544a78">uInt32</a> </td> <td class="paramname">, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype"><a class="el" href="types_8h.html#3b65128d2644e9b80cec9a69bfa7e094">uInt16</a> </td> <td class="paramname"></td><td> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td><td width="100%"></td> </tr> </table> </div> <div class="memdoc"> <p> <p> Definition at line <a class="el" href="paging_8c-source.html#l00160">160</a> of file <a class="el" href="paging_8c-source.html">paging.c</a>. <p> References <a class="el" href="sched_8c-source.html#l00051">_current</a>, <a class="el" href="vmm__memory_8c-source.html#l00228">freePage()</a>, <a class="el" href="sched_8h-source.html#l00055">taskStruct::id</a>, <a class="el" href="kpanic_8h-source.html#l00033">K_PANIC</a>, <a class="el" href="paging_8h-source.html#l00053">KERNEL_PAGE_DEFAULT</a>, <a class="el" href="kprintf_8c-source.html#l00038">kprintf()</a>, <a class="el" href="paging_8h-source.html#l00046">PAGE_COW</a>, <a class="el" href="paging_8h-source.html#l00052">PAGE_DEFAULT</a>, <a class="el" href="paging_8h-source.html#l00049">PAGE_PRESENT</a>, <a class="el" href="paging_8h-source.html#l00047">PAGE_STACK</a>, <a class="el" href="paging_8h-source.html#l00042">pageEntries</a>, <a class="el" href="paging_8h-source.html#l00044">parentPageDirAddr</a>, <a class="el" href="paging_8c-source.html#l00044">rmpSpinLock</a>, <a class="el" href="spinlock_8c-source.html#l00056">spinLock()</a>, <a class="el" href="spinlock_8c-source.html#l00037">spinUnlock()</a>, <a class="el" href="paging_8h-source.html#l00043">tablesBaseAddress</a>, <a class="el" href="vmm__memory_8c-source.html#l00186">vmmFindFreePage()</a>, and <a class="el" href="ap-boot_8S-source.html#l00052">x1000</a>. <p> Referenced by <a class="el" href="elf_8c-source.html#l00111">elf_loadfile()</a>, <a class="el" href="exec_8c-source.html#l00143">execFile()</a>, <a class="el" href="kmod_8c-source.html#l00075">kmod_load()</a>, <a class="el" href="ld_8c-source.html#l00042">ldEnable()</a>, <a class="el" href="paging_8c-source.html#l00478">obreak()</a>, <a class="el" href="exec_8c-source.html#l00552">sys_exec()</a>, <a class="el" href="exec_8c-source.html#l00334">sysExec()</a>, <a class="el" href="paging_8c-source.html#l00401">vmm_getFreeMallocPage()</a>, <a class="el" href="paging_8c-source.html#l00059">vmm_pagingInit()</a>, <a class="el" href="paging_8c-source.html#l00253">vmmGetFreeKernelPage()</a>, <a class="el" href="getfreepage_8c-source.html#l00048">vmmGetFreePage()</a>, <a class="el" href="getfreevirtualpage_8c-source.html#l00047">vmmGetFreeVirtualPage()</a>, and <a class="el" href="paging_8c-source.html#l00332">vmmMapFromTask()</a>. <p> Here is the call graph for this function:<p><center><img src="paging_8h_a05f8d8947fb5bcec87fc6661f83243e_cgraph.png" border="0" usemap="#paging_8h_a05f8d8947fb5bcec87fc6661f83243e_cgraph_map" alt=""></center> <map name="paging_8h_a05f8d8947fb5bcec87fc6661f83243e_cgraph_map"> <area href="vmm_8h.html#e90be267d851fed04d4d9b1c6c10454a" shape="rect" coords="225,158,305,184" alt=""> <area href="spinlock_8h.html#2cd9a4502680fb8e7f0fe6b029e558b1" shape="rect" coords="589,82,669,108" alt=""> <area href="spinlock_8h.html#dd996cbbb3b9826dd9c8cf02b66a4c65" shape="rect" coords="581,234,677,260" alt=""> <area href="kprint_8h.html#b2761bdf0cca73ad0fb5880895210cd8" shape="rect" coords="596,411,663,438" alt=""> <area href="vmm_8h.html#976cf3919bf7c77c868021ec9374593b" shape="rect" coords="193,310,337,336" alt=""> <area href="vmm_8h.html#362d462b3a1e19b5e0ef95e1839dbf11" shape="rect" coords="387,107,533,134" alt=""> <area href="sched_8h.html#08933fe6d593a1c78b9080359f15a0b7" shape="rect" coords="725,56,827,83" alt=""> <area href="spinlock_8h.html#8f9173fadeddafa01754d6cbcc630198" shape="rect" coords="727,107,825,134" alt=""> <area href="kpanic_8h.html#db9a182aa071791a306163d50d653deb" shape="rect" coords="427,360,493,387" alt=""> <area href="8259_8h.html#2b9ec30943ddb0a2ef3bd7ccfd2026c0" shape="rect" coords="584,360,675,387" alt=""> <area href="stdarg_8h.html#621577c2df0ad5faa281223c56eeb7a5" shape="rect" coords="593,310,665,336" alt=""> <area href="vsprintf_8c.html#c2f4c669c6f6aa6caa5ab8adb1b07dd0" shape="rect" coords="739,284,813,311" alt=""> <area href="vsprintf_8c.html#3fa7c8ef8597579301cb4b5c59bc6d9a" shape="rect" coords="736,335,816,362" alt=""> </map> </div> </div><p> <a class="anchor" name="1913e8607a69ecf446b18fa1cd36c9cc"></a><!-- doxytag: member="paging.h::vmm_setPageAttributes" ref="1913e8607a69ecf446b18fa1cd36c9cc" args="(uInt32, uInt16)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">int vmm_setPageAttributes </td> <td>(</td> <td class="paramtype"><a class="el" href="types_8h.html#5847ea0262a5aa61eee48cbe95544a78">uInt32</a> </td> <td class="paramname">, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype"><a class="el" href="types_8h.html#3b65128d2644e9b80cec9a69bfa7e094">uInt16</a> </td> <td class="paramname"></td><td> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td><td width="100%"></td> </tr> </table> </div> <div class="memdoc"> <p> <p> Definition at line <a class="el" href="setpageattributes_8c-source.html#l00041">41</a> of file <a class="el" href="setpageattributes_8c-source.html">setpageattributes.c</a>. <p> References <a class="el" href="kpanic_8c-source.html#l00042">kpanic()</a>, <a class="el" href="paging_8h-source.html#l00043">tablesBaseAddress</a>, and <a class="el" href="ap-boot_8S-source.html#l00052">x1000</a>. <p> Referenced by <a class="el" href="elf_8c-source.html#l00111">elf_loadfile()</a>, <a class="el" href="exec_8c-source.html#l00143">execFile()</a>, <a class="el" href="exec_8c-source.html#l00552">sys_exec()</a>, and <a class="el" href="exec_8c-source.html#l00334">sysExec()</a>. <p> Here is the call graph for this function:<p><center><img src="paging_8h_1913e8607a69ecf446b18fa1cd36c9cc_cgraph.png" border="0" usemap="#paging_8h_1913e8607a69ecf446b18fa1cd36c9cc_cgraph_map" alt=""></center> <map name="paging_8h_1913e8607a69ecf446b18fa1cd36c9cc_cgraph_map"> <area href="kpanic_8h.html#db9a182aa071791a306163d50d653deb" shape="rect" coords="238,56,304,83" alt=""> <area href="8259_8h.html#2b9ec30943ddb0a2ef3bd7ccfd2026c0" shape="rect" coords="352,5,443,32" alt=""> <area href="kprint_8h.html#b2761bdf0cca73ad0fb5880895210cd8" shape="rect" coords="364,56,431,83" alt=""> <area href="stdarg_8h.html#621577c2df0ad5faa281223c56eeb7a5" shape="rect" coords="362,107,434,133" alt=""> <area href="vsprintf_8c.html#c2f4c669c6f6aa6caa5ab8adb1b07dd0" shape="rect" coords="495,81,570,108" alt=""> <area href="vsprintf_8c.html#3fa7c8ef8597579301cb4b5c59bc6d9a" shape="rect" coords="492,132,572,159" alt=""> </map> </div> </div><p> <a class="anchor" name="230a160ddb717c5a133e55aa42e9d324"></a><!-- doxytag: member="paging.h::vmmClearVirtualPage" ref="230a160ddb717c5a133e55aa42e9d324" args="(uInt32 pageAddr)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">int vmmClearVirtualPage </td> <td>(</td> <td class="paramtype"><a class="el" href="types_8h.html#5847ea0262a5aa61eee48cbe95544a78">uInt32</a> </td> <td class="paramname"> <em>pageAddr</em> </td> <td> ) </td> <td width="100%"></td> </tr> </table> </div> <div class="memdoc"> <p> <p> Definition at line <a class="el" href="paging_8c-source.html#l00314">314</a> of file <a class="el" href="paging_8c-source.html">paging.c</a>. <p> References <a class="el" href="paging_8h-source.html#l00042">pageEntries</a>. <p> Referenced by <a class="el" href="paging_8c-source.html#l00401">vmm_getFreeMallocPage()</a>, <a class="el" href="paging_8c-source.html#l00253">vmmGetFreeKernelPage()</a>, <a class="el" href="getfreepage_8c-source.html#l00048">vmmGetFreePage()</a>, and <a class="el" href="getfreevirtualpage_8c-source.html#l00047">vmmGetFreeVirtualPage()</a>. </div> </div><p> <a class="anchor" name="41985de19bd46cbe3b702cee74168dec"></a><!-- doxytag: member="paging.h::vmmCopyVirtualSpace" ref="41985de19bd46cbe3b702cee74168dec" args="(pidType)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void* vmmCopyVirtualSpace </td> <td>(</td> <td class="paramtype"><a class="el" href="types_8h.html#e438ba74394b14d7b24b6df3b3b8c252">pidType</a> </td> <td class="paramname"> </td> <td> ) </td> <td width="100%"></td> </tr> </table> </div> <div class="memdoc"> <p> <p> Definition at line <a class="el" href="copyvirtualspace_8c-source.html#l00053">53</a> of file <a class="el" href="copyvirtualspace_8c-source.html">copyvirtualspace.c</a>. <p> References <a class="el" href="vmm__memory_8c-source.html#l00266">adjustCowCounter()</a>, <a class="el" href="copyvirtualspace_8c-source.html#l00036">cvsSpinLock</a>, <a class="el" href="kpanic_8c-source.html#l00042">kpanic()</a>, <a class="el" href="memset_8c-source.html#l00037">memset()</a>, <a class="el" href="paging_8h-source.html#l00046">PAGE_COW</a>, <a class="el" href="paging_8h-source.html#l00052">PAGE_DEFAULT</a>, <a class="el" href="paging_8h-source.html#l00047">PAGE_STACK</a>, <a class="el" href="paging_8h-source.html#l00042">pageEntries</a>, <a class="el" href="paging_8h-source.html#l00044">parentPageDirAddr</a>, <a class="el" href="spinlock_8c-source.html#l00056">spinLock()</a>, <a class="el" href="spinlock_8c-source.html#l00037">spinUnlock()</a>, <a class="el" href="paging_8h-source.html#l00043">tablesBaseAddress</a>, <a class="el" href="getphysicaladdr_8c-source.html#l00040">vmm_getPhysicalAddr()</a>, <a class="el" href="paging_8c-source.html#l00253">vmmGetFreeKernelPage()</a>, <a class="el" href="unmappage_8c-source.html#l00050">vmmUnmapPage()</a>, <a class="el" href="ap-boot_8S-source.html#l00006">x1</a>, and <a class="el" href="ap-boot_8S-source.html#l00052">x1000</a>. <p> Referenced by <a class="el" href="fork_8c-source.html#l00050">fork_copyProcess()</a>. <p> Here is the call graph for this function:<p><center><img src="paging_8h_41985de19bd46cbe3b702cee74168dec_cgraph.png" border="0" usemap="#paging_8h_41985de19bd46cbe3b702cee74168dec_cgraph_map" alt=""></center> <map name="paging_8h_41985de19bd46cbe3b702cee74168dec_cgraph_map"> <area href="vmm_8h.html#362d462b3a1e19b5e0ef95e1839dbf11" shape="rect" coords="248,56,395,83" alt=""> <area href="spinlock_8h.html#2cd9a4502680fb8e7f0fe6b029e558b1" shape="rect" coords="470,56,550,83" alt=""> <area href="spinlock_8h.html#dd996cbbb3b9826dd9c8cf02b66a4c65" shape="rect" coords="462,107,558,133" alt=""> <area href="kpanic_8h.html#db9a182aa071791a306163d50d653deb" shape="rect" coords="288,208,355,235" alt=""> <area href="lib_2string_8h.html#ce4b911463887af5e748326323e99a23" shape="rect" coords="283,259,360,285" alt=""> <area href="paging_8h.html#e88bcfc69132a46a1982237913101a5b" shape="rect" coords="236,309,407,336" alt=""> <area href="paging_8h.html#30a38035243b9dfb285b3793788126be" shape="rect" coords="230,107,414,133" alt=""> <area href="paging_8h.html#fd94da50e455602f86ad7dae2fc9d1db" shape="rect" coords="254,360,390,387" alt=""> </map> </div> </div><p> <a class="anchor" name="39ac9b6ea58fc8b6f129775642077c99"></a><!-- doxytag: member="paging.h::vmmCreateVirtualSpace" ref="39ac9b6ea58fc8b6f129775642077c99" args="(pidType)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void* vmmCreateVirtualSpace </td> <td>(</td> <td class="paramtype"><a class="el" href="types_8h.html#e438ba74394b14d7b24b6df3b3b8c252">pidType</a> </td> <td class="paramname"> </td> <td> ) </td> <td width="100%"></td> </tr> </table> </div> <div class="memdoc"> <p> <p> Definition at line <a class="el" href="createvirtualspace_8c-source.html#l00081">81</a> of file <a class="el" href="createvirtualspace_8c-source.html">createvirtualspace.c</a>. <p> References <a class="el" href="paging_8h-source.html#l00052">PAGE_DEFAULT</a>, <a class="el" href="paging_8h-source.html#l00042">pageEntries</a>, <a class="el" href="paging_8h-source.html#l00044">parentPageDirAddr</a>, <a class="el" href="paging_8h-source.html#l00043">tablesBaseAddress</a>, <a class="el" href="getphysicaladdr_8c-source.html#l00040">vmm_getPhysicalAddr()</a>, <a class="el" href="getfreepage_8c-source.html#l00048">vmmGetFreePage()</a>, and <a class="el" href="unmappage_8c-source.html#l00050">vmmUnmapPage()</a>. <p> Referenced by <a class="el" href="exec_8c-source.html#l00143">execFile()</a>. <p> Here is the call graph for this function:<p><center><img src="paging_8h_39ac9b6ea58fc8b6f129775642077c99_cgraph.png" border="0" usemap="#paging_8h_39ac9b6ea58fc8b6f129775642077c99_cgraph_map" alt=""></center> <map name="paging_8h_39ac9b6ea58fc8b6f129775642077c99_cgraph_map"> <area href="paging_8h.html#e88bcfc69132a46a1982237913101a5b" shape="rect" coords="241,81,412,108" alt=""> <area href="paging_8h.html#d006a10f436671f8ee9cb402e372ff02" shape="rect" coords="256,132,397,159" alt=""> <area href="paging_8h.html#fd94da50e455602f86ad7dae2fc9d1db" shape="rect" coords="259,183,395,209" alt=""> <area href="kpanic_8h.html#db9a182aa071791a306163d50d653deb" shape="rect" coords="887,31,953,57" alt=""> <area href="spinlock_8h.html#2cd9a4502680fb8e7f0fe6b029e558b1" shape="rect" coords="880,107,960,133" alt=""> <area href="spinlock_8h.html#dd996cbbb3b9826dd9c8cf02b66a4c65" shape="rect" coords="872,208,968,235" alt=""> <area href="paging_8h.html#a05f8d8947fb5bcec87fc6661f83243e" shape="rect" coords="476,157,615,184" alt=""> <area href="vmm_8h.html#976cf3919bf7c77c868021ec9374593b" shape="rect" coords="679,107,823,133" alt=""> <area href="paging_8h.html#230a160ddb717c5a133e55aa42e9d324" shape="rect" coords="461,309,629,336" alt=""> </map> </div> </div><p> <a class="anchor" name="30a38035243b9dfb285b3793788126be"></a><!-- doxytag: member="paging.h::vmmGetFreeKernelPage" ref="30a38035243b9dfb285b3793788126be" args="(pidType pid, uInt16 count)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void* vmmGetFreeKernelPage </td> <td>(</td> <td class="paramtype"><a class="el" href="types_8h.html#e438ba74394b14d7b24b6df3b3b8c252">pidType</a> </td> <td class="paramname"> <em>pid</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype"><a class="el" href="types_8h.html#3b65128d2644e9b80cec9a69bfa7e094">uInt16</a> </td> <td class="paramname"> <em>count</em></td><td> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td><td width="100%"></td> </tr> </table> </div> <div class="memdoc"> <p> <p> Definition at line <a class="el" href="paging_8c-source.html#l00253">253</a> of file <a class="el" href="paging_8c-source.html">paging.c</a>. <p> References <a class="el" href="paging_8c-source.html#l00043">fkpSpinLock</a>, <a class="el" href="kpanic_8h-source.html#l00033">K_PANIC</a>, <a class="el" href="paging_8h-source.html#l00053">KERNEL_PAGE_DEFAULT</a>, <a class="el" href="spinlock_8c-source.html#l00056">spinLock()</a>, <a class="el" href="spinlock_8c-source.html#l00037">spinUnlock()</a>, <a class="el" href="paging_8h-source.html#l00043">tablesBaseAddress</a>, <a class="el" href="paging_8c-source.html#l00160">vmm_remapPage()</a>, <a class="el" href="paging_8c-source.html#l00314">vmmClearVirtualPage()</a>, and <a class="el" href="vmm__memory_8c-source.html#l00186">vmmFindFreePage()</a>. <p> Referenced by <a class="el" href="copyvirtualspace_8c-source.html#l00053">vmmCopyVirtualSpace()</a>. <p> Here is the call graph for this function:<p><center><img src="paging_8h_30a38035243b9dfb285b3793788126be_cgraph.png" border="0" usemap="#paging_8h_30a38035243b9dfb285b3793788126be_cgraph_map" alt=""></center> <map name="paging_8h_30a38035243b9dfb285b3793788126be_cgraph_map"> <area href="spinlock_8h.html#2cd9a4502680fb8e7f0fe6b029e558b1" shape="rect" coords="656,81,736,108" alt=""> <area href="spinlock_8h.html#dd996cbbb3b9826dd9c8cf02b66a4c65" shape="rect" coords="648,233,744,260" alt=""> <area href="paging_8h.html#a05f8d8947fb5bcec87fc6661f83243e" shape="rect" coords="252,157,391,184" alt=""> <area href="vmm_8h.html#976cf3919bf7c77c868021ec9374593b" shape="rect" coords="455,56,599,83" alt=""> <area href="paging_8h.html#230a160ddb717c5a133e55aa42e9d324" shape="rect" coords="238,360,406,387" alt=""> <area href="sched_8h.html#08933fe6d593a1c78b9080359f15a0b7" shape="rect" coords="792,56,894,83" alt=""> <area href="spinlock_8h.html#8f9173fadeddafa01754d6cbcc630198" shape="rect" coords="794,107,892,133" alt=""> <area href="vmm_8h.html#e90be267d851fed04d4d9b1c6c10454a" shape="rect" coords="487,208,567,235" alt=""> <area href="kprint_8h.html#b2761bdf0cca73ad0fb5880895210cd8" shape="rect" coords="494,157,560,184" alt=""> </map> </div> </div><p> <a class="anchor" name="d006a10f436671f8ee9cb402e372ff02"></a><!-- doxytag: member="paging.h::vmmGetFreePage" ref="d006a10f436671f8ee9cb402e372ff02" args="(pidType)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void* vmmGetFreePage </td> <td>(</td> <td class="paramtype"><a class="el" href="types_8h.html#e438ba74394b14d7b24b6df3b3b8c252">pidType</a> </td> <td class="paramname"> </td> <td> ) </td> <td width="100%"></td> </tr> </table> </div> <div class="memdoc"> <p> <p> Definition at line <a class="el" href="getfreepage_8c-source.html#l00048">48</a> of file <a class="el" href="getfreepage_8c-source.html">getfreepage.c</a>. <p> References <a class="el" href="paging_8h-source.html#l00053">KERNEL_PAGE_DEFAULT</a>, <a class="el" href="kpanic_8c-source.html#l00042">kpanic()</a>, <a class="el" href="spinlock_8c-source.html#l00056">spinLock()</a>, <a class="el" href="spinlock_8c-source.html#l00037">spinUnlock()</a>, <a class="el" href="paging_8h-source.html#l00043">tablesBaseAddress</a>, <a class="el" href="paging_8c-source.html#l00160">vmm_remapPage()</a>, <a class="el" href="paging_8c-source.html#l00314">vmmClearVirtualPage()</a>, <a class="el" href="vmm__memory_8c-source.html#l00186">vmmFindFreePage()</a>, <a class="el" href="getfreepage_8c-source.html#l00034">vmmGFPlock</a>, and <a class="el" href="ap-boot_8S-source.html#l00052">x1000</a>. <p> Referenced by <a class="el" href="createvirtualspace_8c-source.html#l00081">vmmCreateVirtualSpace()</a>. <p> Here is the call graph for this function:<p><center><img src="paging_8h_d006a10f436671f8ee9cb402e372ff02_cgraph.png" border="0" usemap="#paging_8h_d006a10f436671f8ee9cb402e372ff02_cgraph_map" alt=""></center> <map name="paging_8h_d006a10f436671f8ee9cb402e372ff02_cgraph_map"> <area href="kpanic_8h.html#db9a182aa071791a306163d50d653deb" shape="rect" coords="620,56,687,83" alt=""> <area href="spinlock_8h.html#2cd9a4502680fb8e7f0fe6b029e558b1" shape="rect" coords="613,157,693,184" alt=""> <area href="spinlock_8h.html#dd996cbbb3b9826dd9c8cf02b66a4c65" shape="rect" coords="605,233,701,260" alt=""> <area href="paging_8h.html#a05f8d8947fb5bcec87fc6661f83243e" shape="rect" coords="209,196,348,223" alt=""> <area href="vmm_8h.html#976cf3919bf7c77c868021ec9374593b" shape="rect" coords="412,107,556,133" alt=""> <area href="paging_8h.html#230a160ddb717c5a133e55aa42e9d324" shape="rect" coords="195,360,363,387" alt=""> <area href="8259_8h.html#2b9ec30943ddb0a2ef3bd7ccfd2026c0" shape="rect" coords="755,56,845,83" alt=""> <area href="kprint_8h.html#b2761bdf0cca73ad0fb5880895210cd8" shape="rect" coords="767,107,833,133" alt=""> <area href="stdarg_8h.html#621577c2df0ad5faa281223c56eeb7a5" shape="rect" coords="764,5,836,32" alt=""> <area href="sched_8h.html#08933fe6d593a1c78b9080359f15a0b7" shape="rect" coords="749,208,851,235" alt=""> <area href="spinlock_8h.html#8f9173fadeddafa01754d6cbcc630198" shape="rect" coords="751,157,849,184" alt=""> <area href="vmm_8h.html#e90be267d851fed04d4d9b1c6c10454a" shape="rect" coords="444,208,524,235" alt=""> </map> </div> </div><p> <a class="anchor" name="4b324672c4b25064eb8db1e3419337b1"></a><!-- doxytag: member="paging.h::vmmGetFreeVirtualPage" ref="4b324672c4b25064eb8db1e3419337b1" args="(pidType, int, int)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void* vmmGetFreeVirtualPage </td> <td>(</td> <td class="paramtype"><a class="el" href="types_8h.html#e438ba74394b14d7b24b6df3b3b8c252">pidType</a> </td> <td class="paramname">, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">int </td> <td class="paramname">, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">int </td> <td class="paramname"></td><td> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td><td width="100%"></td> </tr> </table> </div> <div class="memdoc"> <p> <p> Definition at line <a class="el" href="getfreevirtualpage_8c-source.html#l00047">47</a> of file <a class="el" href="getfreevirtualpage_8c-source.html">getfreevirtualpage.c</a>. <p> References <a class="el" href="sched_8c-source.html#l00051">_current</a>, <a class="el" href="paging_8h-source.html#l00062">btoc</a>, <a class="el" href="paging_8h-source.html#l00061">ctob</a>, <a class="el" href="getfreevirtualpage_8c-source.html#l00036">fvpSpinLock</a>, <a class="el" href="sched_8h-source.html#l00055">taskStruct::id</a>, <a class="el" href="kpanic_8h-source.html#l00033">K_PANIC</a>, <a class="el" href="kpanic_8c-source.html#l00042">kpanic()</a>, <a class="el" href="kprintf_8c-source.html#l00038">kprintf()</a>, <a class="el" href="sched_8h-source.html#l00060">taskStruct::oInfo</a>, <a class="el" href="paging_8h-source.html#l00046">PAGE_COW</a>, <a class="el" href="paging_8h-source.html#l00052">PAGE_DEFAULT</a>, <a class="el" href="paging_8h-source.html#l00049">PAGE_PRESENT</a>, <a class="el" href="paging_8h-source.html#l00042">pageEntries</a>, <a class="el" href="paging_8h-source.html#l00044">parentPageDirAddr</a>, <a class="el" href="spinlock_8c-source.html#l00056">spinLock()</a>, <a class="el" href="spinlock_8c-source.html#l00037">spinUnlock()</a>, <a class="el" href="paging_8h-source.html#l00043">tablesBaseAddress</a>, <a class="el" href="sched_8h-source.html#l00067">taskStruct::td</a>, <a class="el" href="thread_8h-source.html#l00040">thread::vm_daddr</a>, <a class="el" href="thread_8h-source.html#l00041">thread::vm_dsize</a>, <a class="el" href="paging_8h-source.html#l00038">VM_TASK</a>, <a class="el" href="paging_8h-source.html#l00037">VM_THRD</a>, <a class="el" href="paging_8c-source.html#l00160">vmm_remapPage()</a>, <a class="el" href="paging_8c-source.html#l00314">vmmClearVirtualPage()</a>, <a class="el" href="vmm__memory_8c-source.html#l00186">vmmFindFreePage()</a>, <a class="el" href="sched_8h-source.html#l00047">osInfo::vmStart</a>, <a class="el" href="ap-boot_8S-source.html#l00006">x1</a>, and <a class="el" href="ap-boot_8S-source.html#l00052">x1000</a>. <p> Referenced by <a class="el" href="paging_8c-source.html#l00453">mmap()</a>, <a class="el" href="exec_8c-source.html#l00334">sysExec()</a>, <a class="el" href="syscall_8c-source.html#l00196">sysGetFreePage()</a>, and <a class="el" href="pagefault_8c-source.html#l00053">vmm_pageFault()</a>. <p> Here is the call graph for this function:<p><center><img src="paging_8h_4b324672c4b25064eb8db1e3419337b1_cgraph.png" border="0" usemap="#paging_8h_4b324672c4b25064eb8db1e3419337b1_cgraph_map" alt=""></center> <map name="paging_8h_4b324672c4b25064eb8db1e3419337b1_cgraph_map"> <area href="kpanic_8h.html#db9a182aa071791a306163d50d653deb" shape="rect" coords="665,107,732,133" alt=""> <area href="kprint_8h.html#b2761bdf0cca73ad0fb5880895210cd8" shape="rect" coords="812,309,879,336" alt=""> <area href="spinlock_8h.html#2cd9a4502680fb8e7f0fe6b029e558b1" shape="rect" coords="659,157,739,184" alt=""> <area href="spinlock_8h.html#dd996cbbb3b9826dd9c8cf02b66a4c65" shape="rect" coords="651,233,747,260" alt=""> <area href="paging_8h.html#a05f8d8947fb5bcec87fc6661f83243e" shape="rect" coords="255,208,393,235" alt=""> <area href="vmm_8h.html#976cf3919bf7c77c868021ec9374593b" shape="rect" coords="457,107,601,133" alt=""> <area href="paging_8h.html#230a160ddb717c5a133e55aa42e9d324" shape="rect" coords="240,461,408,488" alt=""> <area href="8259_8h.html#2b9ec30943ddb0a2ef3bd7ccfd2026c0" shape="rect" coords="800,56,891,83" alt=""> <area href="stdarg_8h.html#621577c2df0ad5faa281223c56eeb7a5" shape="rect" coords="809,107,881,133" alt=""> <area href="sched_8h.html#08933fe6d593a1c78b9080359f15a0b7" shape="rect" coords="795,157,896,184" alt=""> <area href="spinlock_8h.html#8f9173fadeddafa01754d6cbcc630198" shape="rect" coords="796,208,895,235" alt=""> <area href="vmm_8h.html#e90be267d851fed04d4d9b1c6c10454a" shape="rect" coords="489,208,569,235" alt=""> </map> </div> </div><p> <a class="anchor" name="8f335022705939f0a6553d289b9c1e4e"></a><!-- doxytag: member="paging.h::vmmMapFromTask" ref="8f335022705939f0a6553d289b9c1e4e" args="(pidType, void *, uInt32)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void* vmmMapFromTask </td> <td>(</td> <td class="paramtype"><a class="el" href="types_8h.html#e438ba74394b14d7b24b6df3b3b8c252">pidType</a> </td> <td class="paramname">, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">void * </td> <td class="paramname">, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype"><a class="el" href="types_8h.html#5847ea0262a5aa61eee48cbe95544a78">uInt32</a> </td> <td class="paramname"></td><td> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td><td width="100%"></td> </tr> </table> </div> <div class="memdoc"> <p> <p> Definition at line <a class="el" href="paging_8c-source.html#l00332">332</a> of file <a class="el" href="paging_8c-source.html">paging.c</a>. <p> References <a class="el" href="sched_8c-source.html#l00051">_current</a>, <a class="el" href="tss_8h-source.html#l00047">tssStruct::cr3</a>, <a class="el" href="kpanic_8h-source.html#l00033">K_PANIC</a>, <a class="el" href="paging_8h-source.html#l00053">KERNEL_PAGE_DEFAULT</a>, <a class="el" href="sched_8h-source.html#l00060">taskStruct::oInfo</a>, <a class="el" href="sched_8c-source.html#l00216">schedFindTask()</a>, <a class="el" href="paging_8h-source.html#l00043">tablesBaseAddress</a>, <a class="el" href="sched_8h-source.html#l00058">taskStruct::tss</a>, <a class="el" href="paging_8c-source.html#l00160">vmm_remapPage()</a>, <a class="el" href="unmappage_8c-source.html#l00050">vmmUnmapPage()</a>, <a class="el" href="sched_8h-source.html#l00047">osInfo::vmStart</a>, and <a class="el" href="ap-boot_8S-source.html#l00052">x1000</a>. <p> Here is the call graph for this function:<p><center><img src="paging_8h_8f335022705939f0a6553d289b9c1e4e_cgraph.png" border="0" usemap="#paging_8h_8f335022705939f0a6553d289b9c1e4e_cgraph_map" alt=""></center> <map name="paging_8h_8f335022705939f0a6553d289b9c1e4e_cgraph_map"> <area href="sched_8h.html#9cf37ade4c1f6184b33014ac2015e8ed" shape="rect" coords="211,208,328,235" alt=""> <area href="paging_8h.html#a05f8d8947fb5bcec87fc6661f83243e" shape="rect" coords="200,259,339,286" alt=""> <area href="paging_8h.html#fd94da50e455602f86ad7dae2fc9d1db" shape="rect" coords="202,310,338,336" alt=""> <area href="vmm_8h.html#e90be267d851fed04d4d9b1c6c10454a" shape="rect" coords="420,158,500,184" alt=""> <area href="spinlock_8h.html#2cd9a4502680fb8e7f0fe6b029e558b1" shape="rect" coords="784,82,864,108" alt=""> <area href="spinlock_8h.html#dd996cbbb3b9826dd9c8cf02b66a4c65" shape="rect" coords="776,234,872,260" alt=""> <area href="kprint_8h.html#b2761bdf0cca73ad0fb5880895210cd8" shape="rect" coords="791,411,858,438" alt=""> <area href="vmm_8h.html#976cf3919bf7c77c868021ec9374593b" shape="rect" coords="388,310,532,336" alt=""> <area href="vmm_8h.html#362d462b3a1e19b5e0ef95e1839dbf11" shape="rect" coords="582,107,728,134" alt=""> <area href="sched_8h.html#08933fe6d593a1c78b9080359f15a0b7" shape="rect" coords="920,56,1022,83" alt=""> <area href="spinlock_8h.html#8f9173fadeddafa01754d6cbcc630198" shape="rect" coords="922,107,1020,134" alt=""> <area href="kpanic_8h.html#db9a182aa071791a306163d50d653deb" shape="rect" coords="622,360,688,387" alt=""> <area href="8259_8h.html#2b9ec30943ddb0a2ef3bd7ccfd2026c0" shape="rect" coords="779,360,870,387" alt=""> <area href="stdarg_8h.html#621577c2df0ad5faa281223c56eeb7a5" shape="rect" coords="788,310,860,336" alt=""> <area href="vsprintf_8c.html#c2f4c669c6f6aa6caa5ab8adb1b07dd0" shape="rect" coords="934,284,1008,311" alt=""> <area href="vsprintf_8c.html#3fa7c8ef8597579301cb4b5c59bc6d9a" shape="rect" coords="931,335,1011,362" alt=""> </map> </div> </div><p> <a class="anchor" name="fd94da50e455602f86ad7dae2fc9d1db"></a><!-- doxytag: member="paging.h::vmmUnmapPage" ref="fd94da50e455602f86ad7dae2fc9d1db" args="(uInt32, int)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void vmmUnmapPage </td> <td>(</td> <td class="paramtype"><a class="el" href="types_8h.html#5847ea0262a5aa61eee48cbe95544a78">uInt32</a> </td> <td class="paramname">, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">int </td> <td class="paramname"></td><td> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td><td width="100%"></td> </tr> </table> </div> <div class="memdoc"> <p> <p> Definition at line <a class="el" href="unmappage_8c-source.html#l00050">50</a> of file <a class="el" href="unmappage_8c-source.html">unmappage.c</a>. <p> References <a class="el" href="paging_8h-source.html#l00043">tablesBaseAddress</a>, and <a class="el" href="ap-boot_8S-source.html#l00052">x1000</a>. <p> Referenced by <a class="el" href="pagefault_8c-source.html#l00053">vmm_pageFault()</a>, <a class="el" href="copyvirtualspace_8c-source.html#l00053">vmmCopyVirtualSpace()</a>, <a class="el" href="createvirtualspace_8c-source.html#l00081">vmmCreateVirtualSpace()</a>, and <a class="el" href="paging_8c-source.html#l00332">vmmMapFromTask()</a>. </div> </div><p> <a class="anchor" name="0655b3d717666bf025c37fa55b588d37"></a><!-- doxytag: member="paging.h::vmmUnmapPages" ref="0655b3d717666bf025c37fa55b588d37" args="(void *, uInt32)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void vmmUnmapPages </td> <td>(</td> <td class="paramtype">void * </td> <td class="paramname">, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype"><a class="el" href="types_8h.html#5847ea0262a5aa61eee48cbe95544a78">uInt32</a> </td> <td class="paramname"></td><td> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td><td width="100%"></td> </tr> </table> </div> <div class="memdoc"> <p> <p> Definition at line <a class="el" href="unmappage_8c-source.html#l00101">101</a> of file <a class="el" href="unmappage_8c-source.html">unmappage.c</a>. <p> References <a class="el" href="paging_8h-source.html#l00043">tablesBaseAddress</a>. </div> </div><p> <hr><h2>Variable Documentation</h2> <a class="anchor" name="4e81de2626825c90dc6bb3cd7c8b344c"></a><!-- doxytag: member="paging.h::kernelPageDirectory" ref="4e81de2626825c90dc6bb3cd7c8b344c" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="types_8h.html#5847ea0262a5aa61eee48cbe95544a78">uInt32</a>* <a class="el" href="paging_8c.html#4e81de2626825c90dc6bb3cd7c8b344c">kernelPageDirectory</a> </td> </tr> </table> </div> <div class="memdoc"> <p> <p> Definition at line <a class="el" href="paging_8c-source.html#l00040">40</a> of file <a class="el" href="paging_8c-source.html">paging.c</a>. <p> Referenced by <a class="el" href="idt_8c-source.html#l00239">_int8()</a>, <a class="el" href="exec_8c-source.html#l00143">execFile()</a>, <a class="el" href="exec_8c-source.html#l00055">execThread()</a>, <a class="el" href="idt_8c-source.html#l00063">idt_init()</a>, and <a class="el" href="paging_8c-source.html#l00059">vmm_pagingInit()</a>. </div> </div><p> <hr size="1"><address style="align: right;"><small>Generated on Fri Dec 15 11:22:37 2006 for UbixOS V2 by <a href="http://www.doxygen.org/index.html"> <img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.7 </small></address> </body> </html>