Newer
Older
UbixOS / doc / html / sched_8h.html
<!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/ubixos/sched.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&nbsp;Page</span></a></li>
    <li><a href="classes.html"><span>Data&nbsp;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>&nbsp;<u>S</u>earch&nbsp;for&nbsp;</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&nbsp;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>&nbsp;&raquo&nbsp;<a class="el" href="dir_832905b1f7f5feaf61a306b40c0ac817.html">sys</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_caf4200c438ae9601464168e21e8e4d8.html">include</a>&nbsp;&raquo&nbsp;<a class="el" href="dir_9854bc9d2b9a2a73f32c73e97d31d0f7.html">ubixos</a></div>
<h1>sched.h File Reference</h1><code>#include &lt;<a class="el" href="types_8h-source.html">ubixos/types.h</a>&gt;</code><br>
<code>#include &lt;<a class="el" href="tty_8h-source.html">ubixos/tty.h</a>&gt;</code><br>
<code>#include &lt;<a class="el" href="file_8h-source.html">vfs/file.h</a>&gt;</code><br>
<code>#include &lt;<a class="el" href="tss_8h-source.html">sys/tss.h</a>&gt;</code><br>
<code>#include &lt;<a class="el" href="thread_8h-source.html">sys/thread.h</a>&gt;</code><br>

<p>
Include dependency graph for sched.h:<p><center><img src="sched_8h__incl.png" border="0" usemap="#src/sys/include/ubixos/sched.h_map" alt=""></center>
<map name="src/sys/include/ubixos/sched.h_map">
<area href="types_8h.html" shape="rect" coords="628,193,748,220" alt="">
<area href="tty_8h.html" shape="rect" coords="459,92,557,119" alt="">
<area href="file_8h.html" shape="rect" coords="296,193,376,220" alt="">
<area href="tss_8h.html" shape="rect" coords="296,256,376,283" alt="">
<area href="thread_8h.html" shape="rect" coords="284,332,388,359" alt="">
<area href="__types_8h.html" shape="rect" coords="799,193,903,220" alt="">
<area href="dirCache_8h.html" shape="rect" coords="439,193,577,220" alt="">
<area href="mount_8h.html" shape="rect" coords="457,244,559,271" alt="">
</map>

<p>
This graph shows which files directly or indirectly include this file:<p><center><img src="sched_8h__dep__incl.png" border="0" usemap="#src/sys/include/ubixos/sched.hdep_map" alt=""></center>
<map name="src/sys/include/ubixos/sched.hdep_map">
<area href="mpi_8h.html" shape="rect" coords="311,507,505,534" alt="">
<area href="syscall_8c.html" shape="rect" coords="599,279,775,306" alt="">
<area href="systemtask_8c.html" shape="rect" coords="584,608,789,635" alt="">
<area href="elf_8h.html" shape="rect" coords="307,102,509,128" alt="">
<area href="ld_8c.html" shape="rect" coords="616,64,757,91" alt="">
<area href="kmod_8c.html" shape="rect" coords="601,140,772,167" alt="">
<area href="endtask_8h.html" shape="rect" coords="288,355,528,382" alt="">
<area href="atkbd_8c.html" shape="rect" coords="613,342,760,368" alt="">
<area href="sched_8c.html" shape="rect" coords="601,399,772,426" alt="">
<area href="syscall__new_8c.html" shape="rect" coords="583,454,791,480" alt="">
<area href="idt_8c.html" shape="rect" coords="623,531,751,558" alt="">
<area href="exec_8h.html" shape="rect" coords="299,659,517,686" alt="">
<area href="ubthread_8c.html" shape="rect" coords="591,710,783,736" alt="">
<area href="ubixfs_8c.html" shape="rect" coords="601,786,772,812" alt="">
<area href="fork_8h.html" shape="rect" coords="301,912,515,939" alt="">
<area href="fork_8c.html" shape="rect" coords="609,887,764,914" alt="">
<area href="init_8h.html" shape="rect" coords="304,963,512,990" alt="">
<area href="syscalls_8h.html" shape="rect" coords="288,254,528,280" alt="">
<area href="ubthread_8h.html" shape="rect" coords="284,760,532,787" alt="">
<area href="bioscall_8c.html" shape="rect" coords="317,1014,499,1040" alt="">
<area href="endtask_8c.html" shape="rect" coords="316,1064,500,1091" alt="">
<area href="gen__calls_8c.html" shape="rect" coords="312,1115,504,1142" alt="">
<area href="spinlock_8c.html" shape="rect" coords="316,1166,500,1192" alt="">
<area href="kmalloc_8c.html" shape="rect" coords="329,1216,487,1243" alt="">
<area href="file_8c.html" shape="rect" coords="344,1267,472,1294" alt="">
<area href="getfreevirtualpage_8c.html" shape="rect" coords="284,1318,532,1344" alt="">
<area href="pagefault_8c.html" shape="rect" coords="315,1368,501,1395" alt="">
<area href="paging_8c.html" shape="rect" coords="324,1419,492,1446" alt="">
</map>

<p>
<a href="sched_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>Data Structures</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">struct &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structosInfo.html">osInfo</a></td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">struct &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structtaskStruct.html">taskStruct</a></td></tr>

<tr><td colspan="2"><br><h2>Typedefs</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">typedef <a class="el" href="structtaskStruct.html">taskStruct</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="sched_8h.html#4096d94f76d96bbf005b9bbd45ed4ae1">kTask_t</a></td></tr>

<tr><td colspan="2"><br><h2>Enumerations</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">enum &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="sched_8h.html#3fb333b67375561d327e9b5a8ffa03b9">tState</a> { <br>
&nbsp;&nbsp;<a class="el" href="sched_8h.html#3fb333b67375561d327e9b5a8ffa03b9671c8766c8d86605ee28698fadeb4d54">PLACEHOLDER</a> = -2, 
<a class="el" href="sched_8h.html#3fb333b67375561d327e9b5a8ffa03b911fd9ca455f92c69c084484d5cd803c2">DEAD</a> = -1, 
<a class="el" href="sched_8h.html#3fb333b67375561d327e9b5a8ffa03b9ec34b0b90541576a22697631105dc847">NEW</a> = 0, 
<a class="el" href="sched_8h.html#3fb333b67375561d327e9b5a8ffa03b96564f2f3e15be06b670547bbcaaf0798">READY</a> = 1, 
<br>
&nbsp;&nbsp;<a class="el" href="sched_8h.html#3fb333b67375561d327e9b5a8ffa03b91061be6c3fb88d32829cba6f6b2be304">RUNNING</a> = 2, 
<a class="el" href="sched_8h.html#3fb333b67375561d327e9b5a8ffa03b9fd6a0e4343048b10646dd2976cc5ad18">IDLE</a> = 3, 
<a class="el" href="sched_8h.html#3fb333b67375561d327e9b5a8ffa03b9eb5838b12f5849b4544c2d9d10dc6548">FORK</a> = 4, 
<a class="el" href="sched_8h.html#3fb333b67375561d327e9b5a8ffa03b979a322ccb4b29b85b3cab52dbccefd17">WAIT</a> = 5
<br>
 }</td></tr>

<tr><td colspan="2"><br><h2>Functions</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="sched_8h.html#549a0c1cc47933fa045b200690965cbd">sched</a> ()</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="sched_8h.html#e969273d772018d111e1f0344eb550f8">sched_addDelTask</a> (<a class="el" href="structtaskStruct.html">kTask_t</a> *)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="sched_8h.html#086cc0adc0b6a3860ceeeb5bc5ea94ea">sched_deleteTask</a> (<a class="el" href="types_8h.html#e438ba74394b14d7b24b6df3b3b8c252">pidType</a>)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="structtaskStruct.html">kTask_t</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="sched_8h.html#9608fa7a57005270e866d0a8b3a933f3">sched_getDelTask</a> ()</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="sched_8h.html#cc9c0d52122a455dbd018fabfc11ab59">sched_init</a> ()</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="sched_8h.html#51101e12c9236ea1286477695c110482">sched_setStatus</a> (<a class="el" href="types_8h.html#e438ba74394b14d7b24b6df3b3b8c252">pidType</a>, <a class="el" href="sched_8h.html#3fb333b67375561d327e9b5a8ffa03b9">tState</a>)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="sched_8h.html#08933fe6d593a1c78b9080359f15a0b7">sched_yield</a> ()</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="sched_8h.html#ddf5d772556328769f19029d068d97e3">schedEndTask</a> (<a class="el" href="types_8h.html#e438ba74394b14d7b24b6df3b3b8c252">pidType</a> pid)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="structtaskStruct.html">kTask_t</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="sched_8h.html#9cf37ade4c1f6184b33014ac2015e8ed">schedFindTask</a> (<a class="el" href="types_8h.html#5847ea0262a5aa61eee48cbe95544a78">uInt32</a> <a class="el" href="elf_8c.html#ffd99ec09f321a630ec19d0333e291cd">id</a>)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="structtaskStruct.html">kTask_t</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="sched_8h.html#92458df2063761371869cdfe0c9b4ee3">schedNewTask</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="structtaskStruct.html">kTask_t</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="sched_8h.html#54397bfe18d5da4d50ff03b15f540858">_current</a></td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="structtaskStruct.html">kTask_t</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="sched_8h.html#93c7d4c40424b17a73f34f6fd89b2804">_usedMath</a></td></tr>

</table>
<hr><h2>Typedef Documentation</h2>
<a class="anchor" name="4096d94f76d96bbf005b9bbd45ed4ae1"></a><!-- doxytag: member="sched.h::kTask_t" ref="4096d94f76d96bbf005b9bbd45ed4ae1" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef struct <a class="el" href="structtaskStruct.html">taskStruct</a>  <a class="el" href="structtaskStruct.html">kTask_t</a>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

</div>
</div><p>
<hr><h2>Enumeration Type Documentation</h2>
<a class="anchor" name="3fb333b67375561d327e9b5a8ffa03b9"></a><!-- doxytag: member="sched.h::tState" ref="3fb333b67375561d327e9b5a8ffa03b9" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">enum <a class="el" href="sched_8h.html#3fb333b67375561d327e9b5a8ffa03b9">tState</a>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
<dl compact><dt><b>Enumerator: </b></dt><dd>
<table border="0" cellspacing="2" cellpadding="0">
<tr><td valign="top"><em><a class="anchor" name="3fb333b67375561d327e9b5a8ffa03b9671c8766c8d86605ee28698fadeb4d54"></a><!-- doxytag: member="PLACEHOLDER" ref="3fb333b67375561d327e9b5a8ffa03b9671c8766c8d86605ee28698fadeb4d54" args="" -->PLACEHOLDER</em>&nbsp;</td><td>
</td></tr>
<tr><td valign="top"><em><a class="anchor" name="3fb333b67375561d327e9b5a8ffa03b911fd9ca455f92c69c084484d5cd803c2"></a><!-- doxytag: member="DEAD" ref="3fb333b67375561d327e9b5a8ffa03b911fd9ca455f92c69c084484d5cd803c2" args="" -->DEAD</em>&nbsp;</td><td>
</td></tr>
<tr><td valign="top"><em><a class="anchor" name="3fb333b67375561d327e9b5a8ffa03b9ec34b0b90541576a22697631105dc847"></a><!-- doxytag: member="NEW" ref="3fb333b67375561d327e9b5a8ffa03b9ec34b0b90541576a22697631105dc847" args="" -->NEW</em>&nbsp;</td><td>
</td></tr>
<tr><td valign="top"><em><a class="anchor" name="3fb333b67375561d327e9b5a8ffa03b96564f2f3e15be06b670547bbcaaf0798"></a><!-- doxytag: member="READY" ref="3fb333b67375561d327e9b5a8ffa03b96564f2f3e15be06b670547bbcaaf0798" args="" -->READY</em>&nbsp;</td><td>
</td></tr>
<tr><td valign="top"><em><a class="anchor" name="3fb333b67375561d327e9b5a8ffa03b91061be6c3fb88d32829cba6f6b2be304"></a><!-- doxytag: member="RUNNING" ref="3fb333b67375561d327e9b5a8ffa03b91061be6c3fb88d32829cba6f6b2be304" args="" -->RUNNING</em>&nbsp;</td><td>
</td></tr>
<tr><td valign="top"><em><a class="anchor" name="3fb333b67375561d327e9b5a8ffa03b9fd6a0e4343048b10646dd2976cc5ad18"></a><!-- doxytag: member="IDLE" ref="3fb333b67375561d327e9b5a8ffa03b9fd6a0e4343048b10646dd2976cc5ad18" args="" -->IDLE</em>&nbsp;</td><td>
</td></tr>
<tr><td valign="top"><em><a class="anchor" name="3fb333b67375561d327e9b5a8ffa03b9eb5838b12f5849b4544c2d9d10dc6548"></a><!-- doxytag: member="FORK" ref="3fb333b67375561d327e9b5a8ffa03b9eb5838b12f5849b4544c2d9d10dc6548" args="" -->FORK</em>&nbsp;</td><td>
</td></tr>
<tr><td valign="top"><em><a class="anchor" name="3fb333b67375561d327e9b5a8ffa03b979a322ccb4b29b85b3cab52dbccefd17"></a><!-- doxytag: member="WAIT" ref="3fb333b67375561d327e9b5a8ffa03b979a322ccb4b29b85b3cab52dbccefd17" args="" -->WAIT</em>&nbsp;</td><td>
</td></tr>
</table>
</dl>

<p>
Definition at line <a class="el" href="sched_8h-source.html#l00041">41</a> of file <a class="el" href="sched_8h-source.html">sched.h</a>.
</div>
</div><p>
<hr><h2>Function Documentation</h2>
<a class="anchor" name="549a0c1cc47933fa045b200690965cbd"></a><!-- doxytag: member="sched.h::sched" ref="549a0c1cc47933fa045b200690965cbd" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void sched           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

<p>
Definition at line <a class="el" href="sched_8c-source.html#l00084">84</a> of file <a class="el" href="sched_8c-source.html">sched.c</a>.
<p>
References <a class="el" href="sched_8c-source.html#l00051">_current</a>, <a class="el" href="sched_8h.html#3fb333b67375561d327e9b5a8ffa03b911fd9ca455f92c69c084484d5cd803c2">DEAD</a>, <a class="el" href="sched_8h.html#3fb333b67375561d327e9b5a8ffa03b9eb5838b12f5849b4544c2d9d10dc6548">FORK</a>, <a class="el" href="sched_8h-source.html#l00055">taskStruct::id</a>, <a class="el" href="sched_8h-source.html#l00057">taskStruct::next</a>, <a class="el" href="sched_8h.html#3fb333b67375561d327e9b5a8ffa03b96564f2f3e15be06b670547bbcaaf0798">READY</a>, <a class="el" href="sched_8c-source.html#l00194">sched_addDelTask()</a>, <a class="el" href="sched_8c-source.html#l00175">sched_deleteTask()</a>, <a class="el" href="sched_8c-source.html#l00054">schedulerSpinLock</a>, <a class="el" href="spinlock_8c-source.html#l00048">spinTryLock()</a>, and <a class="el" href="sched_8h-source.html#l00062">taskStruct::state</a>.
<p>
Referenced by <a class="el" href="sched_8c-source.html#l00259">sched_yield()</a>.
<p>
Here is the call graph for this function:<p><center><img src="sched_8h_549a0c1cc47933fa045b200690965cbd_cgraph.png" border="0" usemap="#sched_8h_549a0c1cc47933fa045b200690965cbd_cgraph_map" alt=""></center>
<map name="sched_8h_549a0c1cc47933fa045b200690965cbd_cgraph_map">
<area href="sched_8h.html#e969273d772018d111e1f0344eb550f8" shape="rect" coords="117,6,264,32" alt="">
<area href="sched_8h.html#086cc0adc0b6a3860ceeeb5bc5ea94ea" shape="rect" coords="121,56,260,83" alt="">
<area href="spinlock_8h.html#8f9173fadeddafa01754d6cbcc630198" shape="rect" coords="141,107,240,134" alt="">
</map>

</div>
</div><p>
<a class="anchor" name="e969273d772018d111e1f0344eb550f8"></a><!-- doxytag: member="sched.h::sched_addDelTask" ref="e969273d772018d111e1f0344eb550f8" args="(kTask_t *)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int sched_addDelTask           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structtaskStruct.html">kTask_t</a> *&nbsp;</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

<p>
Definition at line <a class="el" href="sched_8c-source.html#l00194">194</a> of file <a class="el" href="sched_8c-source.html">sched.c</a>.
<p>
References <a class="el" href="sched_8c-source.html#l00048">delList</a>, <a class="el" href="sched_8h-source.html#l00057">taskStruct::next</a>, and <a class="el" href="sched_8h-source.html#l00056">taskStruct::prev</a>.
<p>
Referenced by <a class="el" href="sched_8c-source.html#l00084">sched()</a>.
</div>
</div><p>
<a class="anchor" name="086cc0adc0b6a3860ceeeb5bc5ea94ea"></a><!-- doxytag: member="sched.h::sched_deleteTask" ref="086cc0adc0b6a3860ceeeb5bc5ea94ea" args="(pidType)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int sched_deleteTask           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="types_8h.html#e438ba74394b14d7b24b6df3b3b8c252">pidType</a>&nbsp;</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

<p>
Definition at line <a class="el" href="sched_8c-source.html#l00175">175</a> of file <a class="el" href="sched_8c-source.html">sched.c</a>.
<p>
References <a class="el" href="sched_8h-source.html#l00055">taskStruct::id</a>, <a class="el" href="sched_8h-source.html#l00057">taskStruct::next</a>, <a class="el" href="sched_8h-source.html#l00056">taskStruct::prev</a>, and <a class="el" href="sched_8c-source.html#l00047">taskList</a>.
<p>
Referenced by <a class="el" href="sched_8c-source.html#l00084">sched()</a>.
</div>
</div><p>
<a class="anchor" name="9608fa7a57005270e866d0a8b3a933f3"></a><!-- doxytag: member="sched.h::sched_getDelTask" ref="9608fa7a57005270e866d0a8b3a933f3" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="structtaskStruct.html">kTask_t</a>* sched_getDelTask           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

<p>
Definition at line <a class="el" href="sched_8c-source.html#l00203">203</a> of file <a class="el" href="sched_8c-source.html">sched.c</a>.
<p>
References <a class="el" href="sched_8c-source.html#l00048">delList</a>, and <a class="el" href="sched_8h-source.html#l00057">taskStruct::next</a>.
<p>
Referenced by <a class="el" href="systemtask_8c-source.html#l00048">systemTask()</a>.
</div>
</div><p>
<a class="anchor" name="cc9c0d52122a455dbd018fabfc11ab59"></a><!-- doxytag: member="sched.h::sched_init" ref="cc9c0d52122a455dbd018fabfc11ab59" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int sched_init           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

<p>
Definition at line <a class="el" href="sched_8c-source.html#l00069">69</a> of file <a class="el" href="sched_8c-source.html">sched.c</a>.
<p>
References <a class="el" href="sched_8h-source.html#l00055">taskStruct::id</a>, <a class="el" href="kmalloc_8c-source.html#l00247">kmalloc()</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_8c-source.html#l00049">nextID</a>, and <a class="el" href="sched_8c-source.html#l00047">taskList</a>.
<p>
Here is the call graph for this function:<p><center><img src="sched_8h_cc9c0d52122a455dbd018fabfc11ab59_cgraph.png" border="0" usemap="#sched_8h_cc9c0d52122a455dbd018fabfc11ab59_cgraph_map" alt=""></center>
<map name="sched_8h_cc9c0d52122a455dbd018fabfc11ab59_cgraph_map">
<area href="kmalloc_8h.html#150eab2ac4ce4553e21ca10e7f441762" shape="rect" coords="144,284,219,311" alt="">
<area href="kpanic_8h.html#db9a182aa071791a306163d50d653deb" shape="rect" coords="499,309,565,336" alt="">
<area href="kprint_8h.html#b2761bdf0cca73ad0fb5880895210cd8" shape="rect" coords="689,360,756,387" alt="">
<area href="kmalloc_8c.html#f6c4ea5cb961c72548d92ff65d7e33a4" shape="rect" coords="268,183,388,209" alt="">
<area href="spinlock_8h.html#2cd9a4502680fb8e7f0fe6b029e558b1" shape="rect" coords="683,56,763,83" alt="">
<area href="spinlock_8h.html#dd996cbbb3b9826dd9c8cf02b66a4c65" shape="rect" coords="675,157,771,184" alt="">
<area href="kmalloc_8c.html#eb1c3f1ef8eb9063c2e5c4af488dd2d0" shape="rect" coords="267,309,389,336" alt="">
<area href="lib_2string_8h.html#ce4b911463887af5e748326323e99a23" shape="rect" coords="493,208,571,235" alt="">
<area href="paging_8h.html#541f0b43826a40b9e978f5479080bb0e" shape="rect" coords="437,107,627,133" alt="">
</map>

</div>
</div><p>
<a class="anchor" name="51101e12c9236ea1286477695c110482"></a><!-- doxytag: member="sched.h::sched_setStatus" ref="51101e12c9236ea1286477695c110482" args="(pidType, tState)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int sched_setStatus           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="types_8h.html#e438ba74394b14d7b24b6df3b3b8c252">pidType</a>&nbsp;</td>
          <td class="paramname">, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="sched_8h.html#3fb333b67375561d327e9b5a8ffa03b9">tState</a>&nbsp;</td>
          <td class="paramname"></td><td>&nbsp;</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="sched_8c-source.html#l00281">281</a> of file <a class="el" href="sched_8c-source.html">sched.c</a>.
<p>
References <a class="el" href="sched_8c-source.html#l00216">schedFindTask()</a>, <a class="el" href="sched_8h-source.html#l00062">taskStruct::state</a>, and <a class="el" href="ap-boot_8S-source.html#l00006">x1</a>.
<p>
Referenced by <a class="el" href="endtask_8c-source.html#l00046">endTask()</a>, <a class="el" href="exec_8c-source.html#l00143">execFile()</a>, and <a class="el" href="exec_8c-source.html#l00055">execThread()</a>.
<p>
Here is the call graph for this function:<p><center><img src="sched_8h_51101e12c9236ea1286477695c110482_cgraph.png" border="0" usemap="#sched_8h_51101e12c9236ea1286477695c110482_cgraph_map" alt=""></center>
<map name="sched_8h_51101e12c9236ea1286477695c110482_cgraph_map">
<area href="sched_8h.html#9cf37ade4c1f6184b33014ac2015e8ed" shape="rect" coords="188,5,305,32" alt="">
</map>

</div>
</div><p>
<a class="anchor" name="08933fe6d593a1c78b9080359f15a0b7"></a><!-- doxytag: member="sched.h::sched_yield" ref="08933fe6d593a1c78b9080359f15a0b7" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void sched_yield           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

<p>
Definition at line <a class="el" href="sched_8c-source.html#l00259">259</a> of file <a class="el" href="sched_8c-source.html">sched.c</a>.
<p>
References <a class="el" href="sched_8c-source.html#l00084">sched()</a>.
<p>
Referenced by <a class="el" href="idt_8c-source.html#l00197">_int0()</a>, <a class="el" href="idt_8c-source.html#l00203">_int1()</a>, <a class="el" href="idt_8c-source.html#l00263">_int10()</a>, <a class="el" href="idt_8c-source.html#l00269">_int11()</a>, <a class="el" href="idt_8c-source.html#l00275">_int12()</a>, <a class="el" href="idt_8c-source.html#l00209">_int2()</a>, <a class="el" href="idt_8c-source.html#l00215">_int3()</a>, <a class="el" href="idt_8c-source.html#l00221">_int4()</a>, <a class="el" href="idt_8c-source.html#l00227">_int5()</a>, <a class="el" href="idt_8c-source.html#l00233">_int6()</a>, <a class="el" href="idt_8c-source.html#l00257">_int9()</a>, <a class="el" href="endtask_8c-source.html#l00046">endTask()</a>, <a class="el" href="fork_8c-source.html#l00050">fork_copyProcess()</a>, <a class="el" href="sched_8c-source.html#l00241">schedEndTask()</a>, <a class="el" href="spinlock_8c-source.html#l00056">spinLock()</a>, <a class="el" href="file_8c-source.html#l00059">sysFgetc()</a>, <a class="el" href="syscall_8c-source.html#l00235">sysSchedYield()</a>, <a class="el" href="systemtask_8c-source.html#l00048">systemTask()</a>, <a class="el" href="ubthread_8c-source.html#l00105">ubthread_cond_timedwait()</a>, and <a class="el" href="ubthread_8c-source.html#l00117">ubthread_cond_wait()</a>.
<p>
Here is the call graph for this function:<p><center><img src="sched_8h_08933fe6d593a1c78b9080359f15a0b7_cgraph.png" border="0" usemap="#sched_8h_08933fe6d593a1c78b9080359f15a0b7_cgraph_map" alt=""></center>
<map name="sched_8h_08933fe6d593a1c78b9080359f15a0b7_cgraph_map">
<area href="sched_8h.html#549a0c1cc47933fa045b200690965cbd" shape="rect" coords="156,56,218,83" alt="">
<area href="sched_8h.html#e969273d772018d111e1f0344eb550f8" shape="rect" coords="267,6,414,32" alt="">
<area href="sched_8h.html#086cc0adc0b6a3860ceeeb5bc5ea94ea" shape="rect" coords="271,56,410,83" alt="">
<area href="spinlock_8h.html#8f9173fadeddafa01754d6cbcc630198" shape="rect" coords="291,107,390,134" alt="">
</map>

</div>
</div><p>
<a class="anchor" name="ddf5d772556328769f19029d068d97e3"></a><!-- doxytag: member="sched.h::schedEndTask" ref="ddf5d772556328769f19029d068d97e3" args="(pidType pid)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void schedEndTask           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="types_8h.html#e438ba74394b14d7b24b6df3b3b8c252">pidType</a>&nbsp;</td>
          <td class="paramname"> <em>pid</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

<p>
Definition at line <a class="el" href="sched_8c-source.html#l00241">241</a> of file <a class="el" href="sched_8c-source.html">sched.c</a>.
<p>
References <a class="el" href="sched_8c-source.html#l00051">_current</a>, <a class="el" href="endtask_8c-source.html#l00046">endTask()</a>, <a class="el" href="sched_8h-source.html#l00055">taskStruct::id</a>, and <a class="el" href="sched_8c-source.html#l00259">sched_yield()</a>.
<p>
Here is the call graph for this function:<p><center><img src="sched_8h_ddf5d772556328769f19029d068d97e3_cgraph.png" border="0" usemap="#sched_8h_ddf5d772556328769f19029d068d97e3_cgraph_map" alt=""></center>
<map name="sched_8h_ddf5d772556328769f19029d068d97e3_cgraph_map">
<area href="endtask_8h.html#152c1859ada097cc21071f471bfa2e67" shape="rect" coords="171,6,248,32" alt="">
<area href="sched_8h.html#08933fe6d593a1c78b9080359f15a0b7" shape="rect" coords="312,56,413,83" alt="">
<area href="sched_8h.html#51101e12c9236ea1286477695c110482" shape="rect" coords="297,6,428,32" alt="">
<area href="sched_8h.html#9cf37ade4c1f6184b33014ac2015e8ed" shape="rect" coords="479,6,596,32" alt="">
<area href="sched_8h.html#549a0c1cc47933fa045b200690965cbd" shape="rect" coords="507,56,568,83" alt="">
<area href="sched_8h.html#e969273d772018d111e1f0344eb550f8" shape="rect" coords="645,6,792,32" alt="">
<area href="sched_8h.html#086cc0adc0b6a3860ceeeb5bc5ea94ea" shape="rect" coords="649,56,788,83" alt="">
<area href="spinlock_8h.html#8f9173fadeddafa01754d6cbcc630198" shape="rect" coords="669,107,768,134" alt="">
</map>

</div>
</div><p>
<a class="anchor" name="9cf37ade4c1f6184b33014ac2015e8ed"></a><!-- doxytag: member="sched.h::schedFindTask" ref="9cf37ade4c1f6184b33014ac2015e8ed" args="(uInt32 id)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="structtaskStruct.html">kTask_t</a>* schedFindTask           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="types_8h.html#5847ea0262a5aa61eee48cbe95544a78">uInt32</a>&nbsp;</td>
          <td class="paramname"> <em>id</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

<p>
Definition at line <a class="el" href="sched_8c-source.html#l00216">216</a> of file <a class="el" href="sched_8c-source.html">sched.c</a>.
<p>
References <a class="el" href="sched_8h-source.html#l00055">taskStruct::id</a>, <a class="el" href="sched_8h-source.html#l00057">taskStruct::next</a>, and <a class="el" href="sched_8c-source.html#l00047">taskList</a>.
<p>
Referenced by <a class="el" href="sched_8c-source.html#l00281">sched_setStatus()</a>, <a class="el" href="syscall_8c-source.html#l00179">sysCheckPid()</a>, <a class="el" href="systemtask_8c-source.html#l00048">systemTask()</a>, and <a class="el" href="paging_8c-source.html#l00332">vmmMapFromTask()</a>.
</div>
</div><p>
<a class="anchor" name="92458df2063761371869cdfe0c9b4ee3"></a><!-- doxytag: member="sched.h::schedNewTask" ref="92458df2063761371869cdfe0c9b4ee3" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="structtaskStruct.html">kTask_t</a>* schedNewTask           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

<p>
Definition at line <a class="el" href="sched_8c-source.html#l00143">143</a> of file <a class="el" href="sched_8c-source.html">sched.c</a>.
<p>
References <a class="el" href="kern__descrip_8h-source.html#l00094">file::f_flag</a>, <a class="el" href="sched_8h-source.html#l00055">taskStruct::id</a>, <a class="el" href="kmalloc_8c-source.html#l00247">kmalloc()</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="sched_8h.html#3fb333b67375561d327e9b5a8ffa03b9ec34b0b90541576a22697631105dc847">NEW</a>, <a class="el" href="sched_8h-source.html#l00057">taskStruct::next</a>, <a class="el" href="sched_8c-source.html#l00049">nextID</a>, <a class="el" href="thread_8h-source.html#l00039">thread::o_files</a>, <a class="el" href="sched_8h-source.html#l00056">taskStruct::prev</a>, <a class="el" href="sched_8c-source.html#l00054">schedulerSpinLock</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="sched_8h-source.html#l00062">taskStruct::state</a>, <a class="el" href="sched_8c-source.html#l00047">taskList</a>, <a class="el" href="sched_8h-source.html#l00067">taskStruct::td</a>, and <a class="el" href="sched_8h-source.html#l00065">taskStruct::usedMath</a>.
<p>
Referenced by <a class="el" href="bioscall_8c-source.html#l00050">biosCall()</a>, <a class="el" href="exec_8c-source.html#l00143">execFile()</a>, and <a class="el" href="exec_8c-source.html#l00055">execThread()</a>.
<p>
Here is the call graph for this function:<p><center><img src="sched_8h_92458df2063761371869cdfe0c9b4ee3_cgraph.png" border="0" usemap="#sched_8h_92458df2063761371869cdfe0c9b4ee3_cgraph_map" alt=""></center>
<map name="sched_8h_92458df2063761371869cdfe0c9b4ee3_cgraph_map">
<area href="kmalloc_8h.html#150eab2ac4ce4553e21ca10e7f441762" shape="rect" coords="173,157,248,184" alt="">
<area href="kpanic_8h.html#db9a182aa071791a306163d50d653deb" shape="rect" coords="528,81,595,108" alt="">
<area href="lib_2string_8h.html#ce4b911463887af5e748326323e99a23" shape="rect" coords="523,411,600,437" alt="">
<area href="spinlock_8h.html#2cd9a4502680fb8e7f0fe6b029e558b1" shape="rect" coords="712,233,792,260" alt="">
<area href="spinlock_8h.html#dd996cbbb3b9826dd9c8cf02b66a4c65" shape="rect" coords="704,411,800,437" alt="">
<area href="kmalloc_8c.html#f6c4ea5cb961c72548d92ff65d7e33a4" shape="rect" coords="297,284,417,311" alt="">
<area href="kprint_8h.html#b2761bdf0cca73ad0fb5880895210cd8" shape="rect" coords="719,56,785,83" alt="">
<area href="kmalloc_8c.html#eb1c3f1ef8eb9063c2e5c4af488dd2d0" shape="rect" coords="296,107,419,133" alt="">
<area href="paging_8h.html#541f0b43826a40b9e978f5479080bb0e" shape="rect" coords="467,309,656,336" alt="">
</map>

</div>
</div><p>
<hr><h2>Variable Documentation</h2>
<a class="anchor" name="54397bfe18d5da4d50ff03b15f540858"></a><!-- doxytag: member="sched.h::_current" ref="54397bfe18d5da4d50ff03b15f540858" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="structtaskStruct.html">kTask_t</a>* <a class="el" href="sched_8c.html#54397bfe18d5da4d50ff03b15f540858">_current</a>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

<p>
Definition at line <a class="el" href="sched_8c-source.html#l00051">51</a> of file <a class="el" href="sched_8c-source.html">sched.c</a>.
<p>
Referenced by <a class="el" href="kern__sysctl_8c-source.html#l00153">__sysctl()</a>, <a class="el" href="idt_8c-source.html#l00197">_int0()</a>, <a class="el" href="idt_8c-source.html#l00203">_int1()</a>, <a class="el" href="idt_8c-source.html#l00263">_int10()</a>, <a class="el" href="idt_8c-source.html#l00269">_int11()</a>, <a class="el" href="idt_8c-source.html#l00275">_int12()</a>, <a class="el" href="idt_8c-source.html#l00281">_int13()</a>, <a class="el" href="idt_8c-source.html#l00209">_int2()</a>, <a class="el" href="idt_8c-source.html#l00215">_int3()</a>, <a class="el" href="idt_8c-source.html#l00221">_int4()</a>, <a class="el" href="idt_8c-source.html#l00227">_int5()</a>, <a class="el" href="idt_8c-source.html#l00233">_int6()</a>, <a class="el" href="idt_8c-source.html#l00239">_int8()</a>, <a class="el" href="idt_8c-source.html#l00257">_int9()</a>, <a class="el" href="bioscall_8c-source.html#l00050">biosCall()</a>, <a class="el" href="elf_8c-source.html#l00111">elf_loadfile()</a>, <a class="el" href="endtask_8c-source.html#l00046">endTask()</a>, <a class="el" href="exec_8c-source.html#l00143">execFile()</a>, <a class="el" href="fork_8c-source.html#l00050">fork_copyProcess()</a>, <a class="el" href="kern__descrip_8c-source.html#l00112">fstat()</a>, <a class="el" href="gen__calls_8c-source.html#l00059">getgid()</a>, <a class="el" href="gen__calls_8c-source.html#l00041">getpid()</a>, <a class="el" href="gen__calls_8c-source.html#l00050">getuid()</a>, <a class="el" href="idt_8c-source.html#l00187">intNull()</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="idt_8c-source.html#l00424">mathStateRestore()</a>, <a class="el" href="paging_8c-source.html#l00453">mmap()</a>, <a class="el" href="system_8c-source.html#l00069">mpi_createMbox()</a>, <a class="el" href="system_8c-source.html#l00234">mpi_destroyMbox()</a>, <a class="el" href="system_8c-source.html#l00189">mpi_fetchMessage()</a>, <a class="el" href="system_8c-source.html#l00143">mpi_postMessage()</a>, <a class="el" href="paging_8c-source.html#l00478">obreak()</a>, <a class="el" href="sched_8c-source.html#l00084">sched()</a>, <a class="el" href="sched_8c-source.html#l00241">schedEndTask()</a>, <a class="el" href="exec_8c-source.html#l00552">sys_exec()</a>, <a class="el" href="syscall__new_8c-source.html#l00041">syscall()</a>, <a class="el" href="file_8c-source.html#l00102">sysChDir()</a>, <a class="el" href="exec_8c-source.html#l00334">sysExec()</a>, <a class="el" href="syscall_8c-source.html#l00174">sysExit()</a>, <a class="el" href="file_8c-source.html#l00059">sysFgetc()</a>, <a class="el" href="file_8c-source.html#l00049">sysFwrite()</a>, <a class="el" href="syscall_8c-source.html#l00228">sysGetCwd()</a>, <a class="el" href="syscall_8c-source.html#l00196">sysGetFreePage()</a>, <a class="el" href="syscall_8c-source.html#l00142">sysGetGid()</a>, <a class="el" href="syscall_8c-source.html#l00129">sysGetpid()</a>, <a class="el" href="syscall_8c-source.html#l00136">sysGetUid()</a>, <a class="el" href="file_8c-source.html#l00436">sysMkDir()</a>, <a class="el" href="syscall_8c-source.html#l00113">sysPasswd()</a>, <a class="el" href="syscall_8c-source.html#l00161">sysSetGid()</a>, <a class="el" href="syscall_8c-source.html#l00148">sysSetUid()</a>, <a class="el" href="ubthread_8c-source.html#l00081">ubthread_mutex_lock()</a>, <a class="el" href="ubthread_8c-source.html#l00092">ubthread_mutex_unlock()</a>, <a class="el" href="ubthread_8c-source.html#l00044">ubthread_self()</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="getfreevirtualpage_8c-source.html#l00047">vmmGetFreeVirtualPage()</a>, and <a class="el" href="paging_8c-source.html#l00332">vmmMapFromTask()</a>.
</div>
</div><p>
<a class="anchor" name="93c7d4c40424b17a73f34f6fd89b2804"></a><!-- doxytag: member="sched.h::_usedMath" ref="93c7d4c40424b17a73f34f6fd89b2804" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="structtaskStruct.html">kTask_t</a>* <a class="el" href="sched_8c.html#93c7d4c40424b17a73f34f6fd89b2804">_usedMath</a>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

<p>
Definition at line <a class="el" href="sched_8c-source.html#l00052">52</a> of file <a class="el" href="sched_8c-source.html">sched.c</a>.
<p>
Referenced by <a class="el" href="idt_8c-source.html#l00424">mathStateRestore()</a>.
</div>
</div><p>
<hr size="1"><address style="align: right;"><small>Generated on Fri Dec 15 11:21:34 2006 for UbixOS V2 by&nbsp;
<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>