Newer
Older
UbixOS / doc / html / d2 / d28 / sem_8h.html
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.16"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>UbixOS: include/ubixos/sem.h File Reference</title>
<link href="../../tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="../../jquery.js"></script>
<script type="text/javascript" src="../../dynsections.js"></script>
<link href="../../navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="../../resize.js"></script>
<script type="text/javascript" src="../../navtreedata.js"></script>
<script type="text/javascript" src="../../navtree.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
  $(document).ready(initResizable);
/* @license-end */</script>
<link href="../../doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td id="projectalign" style="padding-left: 0.5em;">
   <div id="projectname">UbixOS
   &#160;<span id="projectnumber">2.0</span>
   </div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.16 -->
<script type="text/javascript" src="../../menudata.js"></script>
<script type="text/javascript" src="../../menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(function() {
  initMenu('../../',false,false,'search.php','Search');
});
/* @license-end */</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
  <div id="nav-tree">
    <div id="nav-tree-contents">
      <div id="nav-sync" class="sync"></div>
    </div>
  </div>
  <div id="splitbar" style="-moz-user-select:none;" 
       class="ui-resizable-handle">
  </div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function(){initNavTree('d2/d28/sem_8h.html','../../');});
/* @license-end */
</script>
<div id="doc-content">
<div class="header">
  <div class="summary">
<a href="#nested-classes">Data Structures</a> &#124;
<a href="#typedef-members">Typedefs</a> &#124;
<a href="#func-members">Functions</a>  </div>
  <div class="headertitle">
<div class="title">sem.h File Reference</div>  </div>
</div><!--header-->
<div class="contents">
<div class="textblock"><code>#include &lt;<a class="el" href="../../d0/d27/include_2sys_2types_8h_source.html">sys/types.h</a>&gt;</code><br />
<code>#include &lt;<a class="el" href="../../db/d37/ubixos_2errno_8h_source.html">ubixos/errno.h</a>&gt;</code><br />
<code>#include &lt;<a class="el" href="../../dd/d1b/ubthread_8h_source.html">ubixos/ubthread.h</a>&gt;</code><br />
</div><div class="textblock"><div class="dynheader">
Include dependency graph for sem.h:</div>
<div class="dyncontent">
<div class="center"><img src="../../d7/d18/sem_8h__incl.png" border="0" usemap="#include_2ubixos_2sem_8h" alt=""/></div>
<map name="include_2ubixos_2sem_8h" id="include_2ubixos_2sem_8h">
<area shape="rect" title=" " alt="" coords="1271,5,1416,32"/>
<area shape="rect" href="../../d0/d27/include_2sys_2types_8h.html" title=" " alt="" coords="523,528,614,555"/>
<area shape="rect" href="../../db/d37/ubixos_2errno_8h.html" title=" " alt="" coords="1381,80,1485,107"/>
<area shape="rect" href="../../dd/d1b/ubthread_8h.html" title=" " alt="" coords="185,80,310,107"/>
<area shape="rect" href="../../d0/d6f/__types_8h.html" title=" " alt="" coords="600,752,697,779"/>
<area shape="rect" href="../../d9/dab/select_8h.html" title=" " alt="" coords="502,603,595,629"/>
<area shape="rect" href="../../d6/d92/cdefs_8h.html" title=" " alt="" coords="441,677,531,704"/>
<area shape="rect" href="../../d6/d30/__timespec_8h.html" title=" " alt="" coords="169,677,288,704"/>
<area shape="rect" href="../../df/dc5/__timeval_8h.html" title=" " alt="" coords="312,677,417,704"/>
<area shape="rect" href="../../d6/da4/__sigset_8h.html" title=" " alt="" coords="555,677,655,704"/>
<area shape="rect" href="../../d7/d00/sched_8h.html" title=" " alt="" coords="349,155,460,181"/>
<area shape="rect" href="../../de/df7/time_8h.html" title=" " alt="" coords="5,453,105,480"/>
<area shape="rect" href="../../d6/db4/include_2vfs_2file_8h.html" title=" " alt="" coords="449,229,517,256"/>
<area shape="rect" href="../../db/dd5/thread_8h.html" title=" " alt="" coords="1055,304,1149,331"/>
<area shape="rect" href="../../dd/d71/tty_8h.html" title=" " alt="" coords="1041,229,1131,256"/>
<area shape="rect" href="../../de/d9a/tss_8h.html" title=" " alt="" coords="207,229,283,256"/>
<area shape="rect" href="../../d1/de9/dirCache_8h.html" title=" " alt="" coords="358,453,481,480"/>
<area shape="rect" href="../../d3/d73/inode_8h.html" title=" " alt="" coords="662,304,745,331"/>
<area shape="rect" href="../../df/d42/ufs_8h.html" title=" " alt="" coords="515,379,585,405"/>
<area shape="rect" href="../../d2/d29/mount_8h.html" title=" " alt="" coords="307,304,395,331"/>
<area shape="rect" href="../../d7/d0b/trap_8h.html" title=" " alt="" coords="1023,379,1103,405"/>
<area shape="rect" href="../../df/d92/sys_2signal_8h.html" title=" " alt="" coords="1019,453,1111,480"/>
<area shape="rect" href="../../d8/d01/resource_8h.html" title=" " alt="" coords="1025,603,1133,629"/>
<area shape="rect" href="../../d6/d35/i386_2cpu_8h.html" title=" " alt="" coords="826,453,909,480"/>
<area shape="rect" href="../../d1/df2/wait_8h.html" title=" " alt="" coords="610,379,709,405"/>
<area shape="rect" href="../../d1/d7d/pipe__fs_8h.html" title=" " alt="" coords="783,379,871,405"/>
<area shape="rect" href="../../d8/dff/msdos__fs_8h.html" title=" " alt="" coords="896,379,999,405"/>
<area shape="rect" href="../../d4/d7e/include_2sys_2device_8h.html" title=" " alt="" coords="607,453,701,480"/>
<area shape="rect" href="../../dc/dac/io_8h.html" title=" " alt="" coords="21,528,89,555"/>
</map>
</div>
</div><div class="textblock"><div class="dynheader">
This graph shows which files directly or indirectly include this file:</div>
<div class="dyncontent">
<div class="center"><img src="../../d8/de8/sem_8h__dep__incl.png" border="0" usemap="#include_2ubixos_2sem_8hdep" alt=""/></div>
<map name="include_2ubixos_2sem_8hdep" id="include_2ubixos_2sem_8hdep">
<area shape="rect" title=" " alt="" coords="782,5,927,32"/>
<area shape="rect" href="../../df/dc7/sys__arch_8h.html" title=" " alt="" coords="785,80,924,121"/>
<area shape="rect" href="../../d6/d49/net_2init_8c.html" title=" " alt="" coords="723,401,818,427"/>
<area shape="rect" href="../../db/d87/core_2init_8c.html" title=" " alt="" coords="144,319,245,345"/>
<area shape="rect" href="../../d9/d56/sys__arch_8c.html" title=" " alt="" coords="1371,244,1501,271"/>
<area shape="rect" href="../../d2/d0b/sem_8c.html" title=" " alt="" coords="1021,87,1118,114"/>
<area shape="rect" href="../../d9/d87/sys_8h.html" title=" " alt="" coords="773,169,894,196"/>
<area shape="rect" href="../../d6/d89/tcpip__priv_8h.html" title=" " alt="" coords="1105,393,1245,435"/>
<area shape="rect" href="../../d2/d55/tcpip_8c.html" title=" " alt="" coords="1269,483,1373,509"/>
<area shape="rect" href="../../d1/d70/memp_8c.html" title=" " alt="" coords="1115,483,1235,509"/>
<area shape="rect" href="../../d2/d2b/timeouts_8c.html" title=" " alt="" coords="789,483,923,509"/>
<area shape="rect" href="../../d2/df2/timeouts_8h.html" title=" " alt="" coords="1043,244,1194,271"/>
<area shape="rect" href="../../da/d80/err_8c.html" title=" " alt="" coords="195,244,285,271"/>
<area shape="rect" href="../../d3/d8f/mem_8c.html" title=" " alt="" coords="310,244,423,271"/>
<area shape="rect" href="../../df/d02/netif_8c.html" title=" " alt="" coords="447,244,555,271"/>
<area shape="rect" href="../../d8/df0/pbuf_8c.html" title=" " alt="" coords="579,244,687,271"/>
<area shape="rect" href="../../d8/d91/sys_8c.html" title=" " alt="" coords="711,244,817,271"/>
<area shape="rect" href="../../dc/d7e/udpecho_8c.html" title=" " alt="" coords="841,244,967,271"/>
<area shape="rect" href="../../d9/db5/tcpip_8h.html" title=" " alt="" coords="900,319,1028,345"/>
<area shape="rect" href="../../da/dc8/ethernetif_8c.html" title=" " alt="" coords="893,401,1029,427"/>
</map>
</div>
</div>
<p><a href="../../d2/d28/sem_8h_source.html">Go to the source code of this file.</a></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
Data Structures</h2></td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d4/da3/structsys__sem.html">sys_sem</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
Typedefs</h2></td></tr>
<tr class="memitem:a9f436a6cc8070df1db63f5a75d4d0014"><td class="memItemLeft" align="right" valign="top">typedef <a class="el" href="../../d0/d27/include_2sys_2types_8h.html#a0238af00180b6d9278fa1c6aa790fdf4">uint32_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d2/d28/sem_8h.html#a9f436a6cc8070df1db63f5a75d4d0014">semID_t</a></td></tr>
<tr class="separator:a9f436a6cc8070df1db63f5a75d4d0014"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a900e36da93bb688c29fc8148f2f44e04"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="../../d4/da3/structsys__sem.html">sys_sem</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d2/d28/sem_8h.html#a900e36da93bb688c29fc8148f2f44e04">sys_sem_t</a></td></tr>
<tr class="separator:a900e36da93bb688c29fc8148f2f44e04"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
Functions</h2></td></tr>
<tr class="memitem:a31ab8f6dbb9646ed62f5e836b3639ad1"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d2/d28/sem_8h.html#a31ab8f6dbb9646ed62f5e836b3639ad1">sem_close</a> (<a class="el" href="../../d2/d28/sem_8h.html#a9f436a6cc8070df1db63f5a75d4d0014">semID_t</a> <a class="el" href="../../d5/d8b/kernel_2elf_8c.html#affd99ec09f321a630ec19d0333e291cd">id</a>)</td></tr>
<tr class="separator:a31ab8f6dbb9646ed62f5e836b3639ad1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:adcce987e1dbe6b3740a4b8f1a49c680f"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d2/d28/sem_8h.html#adcce987e1dbe6b3740a4b8f1a49c680f">sem_destroy</a> (<a class="el" href="../../d2/d28/sem_8h.html#a900e36da93bb688c29fc8148f2f44e04">sys_sem_t</a> **)</td></tr>
<tr class="separator:adcce987e1dbe6b3740a4b8f1a49c680f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab80213da2384984db11eeae2c92f8a72"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d2/d28/sem_8h.html#ab80213da2384984db11eeae2c92f8a72">sem_getvalue</a> (<a class="el" href="../../d2/d28/sem_8h.html#a9f436a6cc8070df1db63f5a75d4d0014">semID_t</a> <a class="el" href="../../d5/d8b/kernel_2elf_8c.html#affd99ec09f321a630ec19d0333e291cd">id</a>, int *val)</td></tr>
<tr class="separator:ab80213da2384984db11eeae2c92f8a72"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a741be298cbcc3eab1747e8b9b239d5f0"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d2/d28/sem_8h.html#a741be298cbcc3eab1747e8b9b239d5f0">sem_init</a> (<a class="el" href="../../d2/d28/sem_8h.html#a900e36da93bb688c29fc8148f2f44e04">sys_sem_t</a> **, <a class="el" href="../../d0/d27/include_2sys_2types_8h.html#a2aff71146ab4942b2b38860c749c4074">uint8_t</a>)</td></tr>
<tr class="separator:a741be298cbcc3eab1747e8b9b239d5f0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a15c1835612c234029c20431e06a1917d"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d2/d28/sem_8h.html#a15c1835612c234029c20431e06a1917d">sem_open</a> (<a class="el" href="../../d2/d28/sem_8h.html#a9f436a6cc8070df1db63f5a75d4d0014">semID_t</a> *<a class="el" href="../../d5/d8b/kernel_2elf_8c.html#affd99ec09f321a630ec19d0333e291cd">id</a>, <a class="el" href="../../d6/d92/cdefs_8h.html#a2c212835823e3c54a8ab6d95c652660e">const</a> char *<a class="el" href="../../d1/de8/pci_8c.html#a8f8f80d37794cde9472343e4487ba3eb">name</a>, int oflag, <a class="el" href="../../d3/df4/descrip_8h.html#ae9f148ba55d84268ecb6f8031ab45076">mode_t</a> mode, unsigned int value)</td></tr>
<tr class="separator:a15c1835612c234029c20431e06a1917d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a81988406ac7a65ee7d6782b97943320e"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d2/d28/sem_8h.html#a81988406ac7a65ee7d6782b97943320e">sem_post</a> (<a class="el" href="../../d2/d28/sem_8h.html#a9f436a6cc8070df1db63f5a75d4d0014">semID_t</a> <a class="el" href="../../d5/d8b/kernel_2elf_8c.html#affd99ec09f321a630ec19d0333e291cd">id</a>)</td></tr>
<tr class="separator:a81988406ac7a65ee7d6782b97943320e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a225cd49daf55aa5df66d4382750abd41"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d2/d28/sem_8h.html#a225cd49daf55aa5df66d4382750abd41">sem_timedwait</a> (<a class="el" href="../../d2/d28/sem_8h.html#a9f436a6cc8070df1db63f5a75d4d0014">semID_t</a> <a class="el" href="../../d5/d8b/kernel_2elf_8c.html#affd99ec09f321a630ec19d0333e291cd">id</a>, <a class="el" href="../../d6/d92/cdefs_8h.html#a2c212835823e3c54a8ab6d95c652660e">const</a> struct <a class="el" href="../../da/d1c/structtimespec.html">timespec</a> *)</td></tr>
<tr class="separator:a225cd49daf55aa5df66d4382750abd41"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a46c76cc20324278bddf93b50c6f7ae9f"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d2/d28/sem_8h.html#a46c76cc20324278bddf93b50c6f7ae9f">sem_trywait</a> (<a class="el" href="../../d2/d28/sem_8h.html#a9f436a6cc8070df1db63f5a75d4d0014">semID_t</a> <a class="el" href="../../d5/d8b/kernel_2elf_8c.html#affd99ec09f321a630ec19d0333e291cd">id</a>)</td></tr>
<tr class="separator:a46c76cc20324278bddf93b50c6f7ae9f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a776256d1a473906f8b7490689bfcb75c"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d2/d28/sem_8h.html#a776256d1a473906f8b7490689bfcb75c">sem_unlink</a> (<a class="el" href="../../d6/d92/cdefs_8h.html#a2c212835823e3c54a8ab6d95c652660e">const</a> char *<a class="el" href="../../d1/de8/pci_8c.html#a8f8f80d37794cde9472343e4487ba3eb">name</a>)</td></tr>
<tr class="separator:a776256d1a473906f8b7490689bfcb75c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac2e22218e6a5830f6bdfd727d0206798"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="../../d2/d28/sem_8h.html#ac2e22218e6a5830f6bdfd727d0206798">sem_wait</a> (<a class="el" href="../../d2/d28/sem_8h.html#a9f436a6cc8070df1db63f5a75d4d0014">semID_t</a> <a class="el" href="../../d5/d8b/kernel_2elf_8c.html#affd99ec09f321a630ec19d0333e291cd">id</a>)</td></tr>
<tr class="separator:ac2e22218e6a5830f6bdfd727d0206798"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<h2 class="groupheader">Typedef Documentation</h2>
<a id="a9f436a6cc8070df1db63f5a75d4d0014"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a9f436a6cc8070df1db63f5a75d4d0014">&#9670;&nbsp;</a></span>semID_t</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef <a class="el" href="../../d0/d27/include_2sys_2types_8h.html#a0238af00180b6d9278fa1c6aa790fdf4">uint32_t</a> <a class="el" href="../../d2/d28/sem_8h.html#a9f436a6cc8070df1db63f5a75d4d0014">semID_t</a></td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">Definition at line <a class="el" href="../../d2/d28/sem_8h_source.html#l00044">44</a> of file <a class="el" href="../../d2/d28/sem_8h_source.html">sem.h</a>.</p>

</div>
</div>
<a id="a900e36da93bb688c29fc8148f2f44e04"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a900e36da93bb688c29fc8148f2f44e04">&#9670;&nbsp;</a></span>sys_sem_t</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef struct <a class="el" href="../../d4/da3/structsys__sem.html">sys_sem</a> <a class="el" href="../../d2/d28/sem_8h.html#a900e36da93bb688c29fc8148f2f44e04">sys_sem_t</a></td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">Definition at line <a class="el" href="../../d2/d28/sem_8h_source.html#l00042">42</a> of file <a class="el" href="../../d2/d28/sem_8h_source.html">sem.h</a>.</p>

</div>
</div>
<h2 class="groupheader">Function Documentation</h2>
<a id="a31ab8f6dbb9646ed62f5e836b3639ad1"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a31ab8f6dbb9646ed62f5e836b3639ad1">&#9670;&nbsp;</a></span>sem_close()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int sem_close </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="../../d2/d28/sem_8h.html#a9f436a6cc8070df1db63f5a75d4d0014">semID_t</a>&#160;</td>
          <td class="paramname"><em>id</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">Definition at line <a class="el" href="../../d2/d0b/sem_8c_source.html#l00036">36</a> of file <a class="el" href="../../d2/d0b/sem_8c_source.html">sem.c</a>.</p>

</div>
</div>
<a id="adcce987e1dbe6b3740a4b8f1a49c680f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#adcce987e1dbe6b3740a4b8f1a49c680f">&#9670;&nbsp;</a></span>sem_destroy()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int sem_destroy </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="../../d2/d28/sem_8h.html#a900e36da93bb688c29fc8148f2f44e04">sys_sem_t</a> **&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">Definition at line <a class="el" href="../../d2/d0b/sem_8c_source.html#l00087">87</a> of file <a class="el" href="../../d2/d0b/sem_8c_source.html">sem.c</a>.</p>

<p class="reference">References <a class="el" href="../../d2/d28/sem_8h_source.html#l00038">sys_sem::cond</a>, <a class="el" href="../../d4/d36/sys_2errno_8h_source.html#l00055">EINVAL</a>, <a class="el" href="../../db/d37/ubixos_2errno_8h_source.html#l00036">ENOERR</a>, <a class="el" href="../../d3/d1a/kmalloc_8c_source.html#l00342">kfree()</a>, <a class="el" href="../../d2/d28/sem_8h_source.html#l00039">sys_sem::mutex</a>, <a class="el" href="../../d6/d8a/fat__string_8h_source.html#l00017">NULL</a>, <a class="el" href="../../d5/d9a/ubthread_8c_source.html#l00071">ubthread_cond_destroy()</a>, and <a class="el" href="../../d5/d9a/ubthread_8c_source.html#l00077">ubthread_mutex_destroy()</a>.</p>

<p class="reference">Referenced by <a class="el" href="../../d9/d56/sys__arch_8c_source.html#l00075">sys_sem_free()</a>.</p>
<div class="dynheader">
Here is the call graph for this function:</div>
<div class="dyncontent">
<div class="center"><img src="../../d2/d28/sem_8h_adcce987e1dbe6b3740a4b8f1a49c680f_cgraph.png" border="0" usemap="#d2/d28/sem_8h_adcce987e1dbe6b3740a4b8f1a49c680f_cgraph" alt=""/></div>
<map name="d2/d28/sem_8h_adcce987e1dbe6b3740a4b8f1a49c680f_cgraph" id="d2/d28/sem_8h_adcce987e1dbe6b3740a4b8f1a49c680f_cgraph">
<area shape="rect" title=" " alt="" coords="5,26,103,53"/>
<area shape="rect" href="../../d4/d03/kmalloc_8h.html#aaa9ed6886459604cf73ccdbf6410e487" title=" " alt="" coords="364,26,415,53"/>
<area shape="rect" href="../../dd/d1b/ubthread_8h.html#ae914fae69538736dc5e494c15ce93a17" title=" " alt="" coords="155,26,312,53"/>
<area shape="rect" href="../../dd/d1b/ubthread_8h.html#a278f5d5b1e11b6668b75da6a285442e4" title=" " alt="" coords="151,77,316,103"/>
</map>
</div>

</div>
</div>
<a id="ab80213da2384984db11eeae2c92f8a72"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ab80213da2384984db11eeae2c92f8a72">&#9670;&nbsp;</a></span>sem_getvalue()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int sem_getvalue </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="../../d2/d28/sem_8h.html#a9f436a6cc8070df1db63f5a75d4d0014">semID_t</a>&#160;</td>
          <td class="paramname"><em>id</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int *&#160;</td>
          <td class="paramname"><em>val</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">Definition at line <a class="el" href="../../d2/d0b/sem_8c_source.html#l00083">83</a> of file <a class="el" href="../../d2/d0b/sem_8c_source.html">sem.c</a>.</p>

</div>
</div>
<a id="a741be298cbcc3eab1747e8b9b239d5f0"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a741be298cbcc3eab1747e8b9b239d5f0">&#9670;&nbsp;</a></span>sem_init()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int sem_init </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="../../d2/d28/sem_8h.html#a900e36da93bb688c29fc8148f2f44e04">sys_sem_t</a> **&#160;</td>
          <td class="paramname">, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="../../d0/d27/include_2sys_2types_8h.html#a2aff71146ab4942b2b38860c749c4074">uint8_t</a>&#160;</td>
          <td class="paramname">&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">Definition at line <a class="el" href="../../d2/d0b/sem_8c_source.html#l00056">56</a> of file <a class="el" href="../../d2/d0b/sem_8c_source.html">sem.c</a>.</p>

<p class="reference">References <a class="el" href="../../d2/d28/sem_8h_source.html#l00038">sys_sem::cond</a>, <a class="el" href="../../db/d37/ubixos_2errno_8h_source.html#l00036">ENOERR</a>, <a class="el" href="../../d3/d1a/kmalloc_8c_source.html#l00241">kmalloc()</a>, <a class="el" href="../../df/d87/kprintf_8c_source.html#l00259">kprintf()</a>, <a class="el" href="../../d2/d28/sem_8h_source.html#l00039">sys_sem::mutex</a>, <a class="el" href="../../d6/d8a/fat__string_8h_source.html#l00017">NULL</a>, <a class="el" href="../../d2/d28/sem_8h_source.html#l00037">sys_sem::signaled</a>, <a class="el" href="../../dd/d1b/ubthread_8h.html#acbb7170a68758468ab5b02512a320112">ubthread_cond_init()</a>, and <a class="el" href="../../dd/d1b/ubthread_8h.html#ab6bfc2169b55532821582f24b68dc855">ubthread_mutex_init()</a>.</p>

<p class="reference">Referenced by <a class="el" href="../../d9/d56/sys__arch_8c_source.html#l00052">sys_sem_new()</a>.</p>
<div class="dynheader">
Here is the call graph for this function:</div>
<div class="dyncontent">
<div class="center"><img src="../../d2/d28/sem_8h_a741be298cbcc3eab1747e8b9b239d5f0_cgraph.png" border="0" usemap="#d2/d28/sem_8h_a741be298cbcc3eab1747e8b9b239d5f0_cgraph" alt=""/></div>
<map name="d2/d28/sem_8h_a741be298cbcc3eab1747e8b9b239d5f0_cgraph" id="d2/d28/sem_8h_a741be298cbcc3eab1747e8b9b239d5f0_cgraph">
<area shape="rect" title=" " alt="" coords="5,139,76,166"/>
<area shape="rect" href="../../d4/d03/kmalloc_8h.html#a150eab2ac4ce4553e21ca10e7f441762" title=" " alt="" coords="311,26,377,52"/>
<area shape="rect" href="../../da/d28/kprintf_8h.html#a20b56810edb62a6fe59917015c30848f" title=" " alt="" coords="165,114,222,140"/>
<area shape="rect" href="../../dd/d1b/ubthread_8h.html#acbb7170a68758468ab5b02512a320112" title=" " alt="" coords="128,164,259,191"/>
<area shape="rect" href="../../dd/d1b/ubthread_8h.html#ab6bfc2169b55532821582f24b68dc855" title=" " alt="" coords="124,215,263,242"/>
<area shape="rect" href="../../dc/d88/armv6_2spinlock_8c.html#a71f03d2ba55111c715b6068254847a53" title=" " alt="" coords="563,76,637,103"/>
<area shape="rect" href="../../d3/d02/armv6_2sched_8c.html#a08933fe6d593a1c78b9080359f15a0b7" title=" " alt="" coords="686,51,777,78"/>
<area shape="rect" href="../../dc/d88/armv6_2spinlock_8c.html#a740766af5da58616f700fffab6768a78" title=" " alt="" coords="685,102,777,128"/>
<area shape="rect" href="../../dd/d78/video_8h.html#a5429378b96a24fadfd2d1f8d777eb95a" title=" " alt="" coords="317,76,371,103"/>
<area shape="rect" href="../../df/d87/kprintf_8c.html#a3093cdac4668a4ccffdd7f77270888b7" title=" " alt="" coords="313,127,375,154"/>
<area shape="rect" href="../../da/d28/kprintf_8h.html#a3b4a66bf1f6583e65660f281b6014aa1" title=" " alt="" coords="311,178,377,204"/>
<area shape="rect" href="../../dc/dac/io_8h.html#a77b934268de1b3ecdcf3f275413b3108" title="input one byte from specified port" alt="" coords="429,26,511,52"/>
<area shape="rect" href="../../dc/dac/io_8h.html#a8acc1a06073db2e7b92ffbd00fbd0cf1" title="outputut one byte to specified port" alt="" coords="425,76,515,103"/>
<area shape="rect" href="../../dd/d71/tty_8h.html#a4f96ccac7e60296ef496008d8cbed0ff" title=" " alt="" coords="438,127,502,154"/>
<area shape="rect" href="../../dd/d71/tty_8h.html#ad96f57a7c113d3cfa76ee5fed6de33c0" title=" " alt="" coords="435,178,505,204"/>
</map>
</div>

</div>
</div>
<a id="a15c1835612c234029c20431e06a1917d"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a15c1835612c234029c20431e06a1917d">&#9670;&nbsp;</a></span>sem_open()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int sem_open </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="../../d2/d28/sem_8h.html#a9f436a6cc8070df1db63f5a75d4d0014">semID_t</a> *&#160;</td>
          <td class="paramname"><em>id</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="../../d6/d92/cdefs_8h.html#a2c212835823e3c54a8ab6d95c652660e">const</a> char *&#160;</td>
          <td class="paramname"><em>name</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>oflag</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="../../d3/df4/descrip_8h.html#ae9f148ba55d84268ecb6f8031ab45076">mode_t</a>&#160;</td>
          <td class="paramname"><em>mode</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">unsigned int&#160;</td>
          <td class="paramname"><em>value</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">Definition at line <a class="el" href="../../d2/d0b/sem_8c_source.html#l00075">75</a> of file <a class="el" href="../../d2/d0b/sem_8c_source.html">sem.c</a>.</p>

</div>
</div>
<a id="a81988406ac7a65ee7d6782b97943320e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a81988406ac7a65ee7d6782b97943320e">&#9670;&nbsp;</a></span>sem_post()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int sem_post </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="../../d2/d28/sem_8h.html#a9f436a6cc8070df1db63f5a75d4d0014">semID_t</a>&#160;</td>
          <td class="paramname"><em>id</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">Definition at line <a class="el" href="../../d2/d0b/sem_8c_source.html#l00040">40</a> of file <a class="el" href="../../d2/d0b/sem_8c_source.html">sem.c</a>.</p>

</div>
</div>
<a id="a225cd49daf55aa5df66d4382750abd41"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a225cd49daf55aa5df66d4382750abd41">&#9670;&nbsp;</a></span>sem_timedwait()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int sem_timedwait </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="../../d2/d28/sem_8h.html#a9f436a6cc8070df1db63f5a75d4d0014">semID_t</a>&#160;</td>
          <td class="paramname"><em>id</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="../../d6/d92/cdefs_8h.html#a2c212835823e3c54a8ab6d95c652660e">const</a> struct <a class="el" href="../../da/d1c/structtimespec.html">timespec</a> *&#160;</td>
          <td class="paramname">&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">Definition at line <a class="el" href="../../d2/d0b/sem_8c_source.html#l00052">52</a> of file <a class="el" href="../../d2/d0b/sem_8c_source.html">sem.c</a>.</p>

</div>
</div>
<a id="a46c76cc20324278bddf93b50c6f7ae9f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a46c76cc20324278bddf93b50c6f7ae9f">&#9670;&nbsp;</a></span>sem_trywait()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int sem_trywait </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="../../d2/d28/sem_8h.html#a9f436a6cc8070df1db63f5a75d4d0014">semID_t</a>&#160;</td>
          <td class="paramname"><em>id</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">Definition at line <a class="el" href="../../d2/d0b/sem_8c_source.html#l00048">48</a> of file <a class="el" href="../../d2/d0b/sem_8c_source.html">sem.c</a>.</p>

</div>
</div>
<a id="a776256d1a473906f8b7490689bfcb75c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a776256d1a473906f8b7490689bfcb75c">&#9670;&nbsp;</a></span>sem_unlink()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int sem_unlink </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="../../d6/d92/cdefs_8h.html#a2c212835823e3c54a8ab6d95c652660e">const</a> char *&#160;</td>
          <td class="paramname"><em>name</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">Definition at line <a class="el" href="../../d2/d0b/sem_8c_source.html#l00079">79</a> of file <a class="el" href="../../d2/d0b/sem_8c_source.html">sem.c</a>.</p>

</div>
</div>
<a id="ac2e22218e6a5830f6bdfd727d0206798"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ac2e22218e6a5830f6bdfd727d0206798">&#9670;&nbsp;</a></span>sem_wait()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int sem_wait </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="../../d2/d28/sem_8h.html#a9f436a6cc8070df1db63f5a75d4d0014">semID_t</a>&#160;</td>
          <td class="paramname"><em>id</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">Definition at line <a class="el" href="../../d2/d0b/sem_8c_source.html#l00044">44</a> of file <a class="el" href="../../d2/d0b/sem_8c_source.html">sem.c</a>.</p>

</div>
</div>
</div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
  <ul>
    <li class="navelem"><a class="el" href="../../dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="../../dir_a44873caf3fcbd6d765fc7260c584f7c.html">ubixos</a></li><li class="navelem"><a class="el" href="../../d2/d28/sem_8h.html">sem.h</a></li>
    <li class="footer">Generated by
    <a href="http://www.doxygen.org/index.html">
    <img class="footer" src="../../doxygen.png" alt="doxygen"/></a> 1.8.16 </li>
  </ul>
</div>
</body>
</html>