l4re-base-25.08.0

This commit is contained in:
2025-09-12 15:55:45 +02:00
commit d959eaab98
37938 changed files with 9382688 additions and 0 deletions

View File

@@ -0,0 +1,240 @@
<!-- HTML header for doxygen 1.9.1-->
<!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.15.0"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>L4Re Operating System Framework: l4/sys/thread.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="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript" src="cookie.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
<link href="doxygen-awesome.css" rel="stylesheet" type="text/css"/>
<link href="l4re-awesome.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="projectlogo"><img alt="Logo" src="L4Re_rgb_logo_quer_hg_h55.png"/></td>
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">L4Re Operating System Framework
</div>
<div id="projectbrief">Interface and Usage Documentation</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.15.0 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search/",'.html');
</script>
<script type="text/javascript">
$(function() { codefold.init(); });
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
$(function() {
initMenu('',true,false,'search.php','Search',true);
$(function() { init_search(); });
});
</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">
$(function(){initNavTree('l4_2sys_2thread_8h.html','',''); });
</script>
<div id="container">
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<div id="MSearchResults">
<div class="SRPage">
<div id="SRIndex">
<div id="SRResults"></div>
<div class="SRStatus" id="Loading">Loading...</div>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
</div>
</div>
</div>
</div>
<div class="header">
<div class="headertitle"><div class="title">thread.h File Reference</div></div>
</div><!--header-->
<div class="contents">
<p>Common thread related definitions.
<a href="#details">More...</a></p>
<div class="textblock"><code>#include &lt;<a class="el" href="l4_2sys_2types_8h_source.html">l4/sys/types.h</a>&gt;</code><br />
<code>#include &lt;<a class="el" href="l4_2sys_2utcb_8h_source.html">l4/sys/utcb.h</a>&gt;</code><br />
<code>#include &lt;<a class="el" href="l4_2sys_2ipc_8h_source.html">l4/sys/ipc.h</a>&gt;</code><br />
</div><div class="textblock"><div id="dynsection-0" onclick="return dynsection.toggleVisibility(this)" class="dynheader closed" style="cursor:pointer;"><span class="dynarrow"><span class="arrowhead closed"></span></span>Include dependency graph for thread.h:</div>
<div id="dynsection-0-summary" class="dynsummary" style="display:block;">
</div>
<div id="dynsection-0-content" class="dyncontent" style="display:none;">
<div class="center"><iframe scrolling="no" loading="lazy" frameborder="0" src="l4_2sys_2thread_8h__incl.svg" width="727" height="476"><p><b>This browser is not able to show SVG: try Firefox, Chrome, Safari, or Opera instead.</b></p></iframe></div>
</div>
</div><div class="textblock"><div id="dynsection-1" onclick="return dynsection.toggleVisibility(this)" class="dynheader closed" style="cursor:pointer;"><span class="dynarrow"><span class="arrowhead closed"></span></span>This graph shows which files directly or indirectly include this file:</div>
<div id="dynsection-1-summary" class="dynsummary" style="display:block;">
</div>
<div id="dynsection-1-content" class="dyncontent" style="display:none;">
<div class="center"><iframe scrolling="no" loading="lazy" frameborder="0" src="l4_2sys_2thread_8h__dep__incl.svg" width="1922" height="1254"><p><b>This browser is not able to show SVG: try Firefox, Chrome, Safari, or Opera instead.</b></p></iframe></div>
</div>
</div>
<p><a href="l4_2sys_2thread_8h_source.html">Go to the source code of this file.</a></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 id="header-enum-members" class="groupheader"><a id="enum-members" name="enum-members"></a>
Enumerations</h2></td></tr>
<tr class="memitem:ga2f876d49c3d78a1c0d62722c0546aa81" id="r_ga2f876d49c3d78a1c0d62722c0546aa81"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__l4__protocol__ops.html#ga2f876d49c3d78a1c0d62722c0546aa81">L4_thread_ops</a> { <br />
&#160;&#160;<a class="el" href="group__l4__protocol__ops.html#gga2f876d49c3d78a1c0d62722c0546aa81aacb3f3ae289e1f8caf576881c290be86">L4_THREAD_CONTROL_OP</a> = 0UL
, <a class="el" href="group__l4__protocol__ops.html#gga2f876d49c3d78a1c0d62722c0546aa81a7c7d352bfe41fe77552b09b1b0e73c61">L4_THREAD_EX_REGS_OP</a> = 1UL
, <a class="el" href="group__l4__protocol__ops.html#gga2f876d49c3d78a1c0d62722c0546aa81af935129912993ca4136ec5e303151d5a">L4_THREAD_SWITCH_OP</a> = 2UL
, <a class="el" href="group__l4__protocol__ops.html#gga2f876d49c3d78a1c0d62722c0546aa81a7d71934db94b73d2ef264caa417ab84e">L4_THREAD_STATS_OP</a> = 3UL
, <br />
&#160;&#160;<a class="el" href="group__l4__protocol__ops.html#gga2f876d49c3d78a1c0d62722c0546aa81ac41e0679a9eb99e22eee11c6a2dfe8ec">L4_THREAD_VCPU_RESUME_OP</a> = 4UL
, <a class="el" href="group__l4__protocol__ops.html#gga2f876d49c3d78a1c0d62722c0546aa81ada7373f61619f77907fdaed50f4d205c">L4_THREAD_REGISTER_DELETE_IRQ_OP</a> = 5UL
, <a class="el" href="group__l4__protocol__ops.html#gga2f876d49c3d78a1c0d62722c0546aa81aa84fb0f7dadf7aa5c77dcfdd45289047">L4_THREAD_MODIFY_SENDER_OP</a> = 6UL
, <a class="el" href="group__l4__protocol__ops.html#gga2f876d49c3d78a1c0d62722c0546aa81a87ba0d737cc7413115e05f4750ffda63">L4_THREAD_VCPU_CONTROL_OP</a> = 7UL
, <br />
&#160;&#160;<b>L4_THREAD_VCPU_CONTROL_EXT_OP</b> = L4_THREAD_VCPU_CONTROL_OP | 0x10000
, <a class="el" href="group__l4__protocol__ops.html#gga2f876d49c3d78a1c0d62722c0546aa81a49b1532007bdf3203a376350292d27c8">L4_THREAD_REGISTER_DOORBELL_IRQ_OP</a> = 8UL
, <a class="el" href="group__l4__protocol__ops.html#gga2f876d49c3d78a1c0d62722c0546aa81a6f4fca5857964221abc72aa84f2272a1">L4_THREAD_X86_GDT_OP</a> = 0x10UL
, <a class="el" href="group__l4__protocol__ops.html#gga2f876d49c3d78a1c0d62722c0546aa81ab75c3406d313686ea25a56934cbb7df9">L4_THREAD_ARM_TPIDRURO_OP</a> = 0x10UL
, <br />
&#160;&#160;<a class="el" href="group__l4__protocol__ops.html#gga2f876d49c3d78a1c0d62722c0546aa81a65553b935759e465b22be8327990f9c4">L4_THREAD_AMD64_SET_SEGMENT_BASE_OP</a> = 0x12UL
, <a class="el" href="group__l4__protocol__ops.html#gga2f876d49c3d78a1c0d62722c0546aa81a35b462c2cb31a331b0d78e8aa3fa961c">L4_THREAD_AMD64_GET_SEGMENT_INFO_OP</a> = 0x13UL
, <a class="el" href="group__l4__protocol__ops.html#gga2f876d49c3d78a1c0d62722c0546aa81a171dbdf3515adfdbce0cc39dad966c92">L4_THREAD_OPCODE_MASK</a> = 0xffff
<br />
}</td></tr>
<tr class="memdesc:ga2f876d49c3d78a1c0d62722c0546aa81"><td class="mdescLeft">&#160;</td><td class="mdescRight">Operations on thread objects. <a href="group__l4__protocol__ops.html#ga2f876d49c3d78a1c0d62722c0546aa81">More...</a><br /></td></tr>
<tr class="memitem:ga7ac6f1aa334f0638cc45e1c0ae591925" id="r_ga7ac6f1aa334f0638cc45e1c0ae591925"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__l4__thread__api.html#ga7ac6f1aa334f0638cc45e1c0ae591925">L4_thread_control_flags</a> { <a class="el" href="group__l4__thread__api.html#gga7ac6f1aa334f0638cc45e1c0ae591925a05916c8b8ff1dc3af791319a4947011d">L4_THREAD_CONTROL_SET_PAGER</a> = 0x0010000
, <a class="el" href="group__l4__thread__api.html#gga7ac6f1aa334f0638cc45e1c0ae591925a2069ba7ba4f79568dfb9e360600a9789">L4_THREAD_CONTROL_BIND_TASK</a> = 0x0200000
, <a class="el" href="group__l4__thread__api.html#gga7ac6f1aa334f0638cc45e1c0ae591925a4fc822df7c8c2f0a5937031466919de2">L4_THREAD_CONTROL_ALIEN</a> = 0x0400000
, <a class="el" href="group__l4__thread__api.html#gga7ac6f1aa334f0638cc45e1c0ae591925a910fc3b6b20a2efe8b2f9b600e9ce768">L4_THREAD_CONTROL_SET_EXC_HANDLER</a> = 0x1000000
}</td></tr>
<tr class="memdesc:ga7ac6f1aa334f0638cc45e1c0ae591925"><td class="mdescLeft">&#160;</td><td class="mdescRight">Flags for the thread control operation. <a href="group__l4__thread__api.html#ga7ac6f1aa334f0638cc45e1c0ae591925">More...</a><br /></td></tr>
<tr class="memitem:gada4810653b18bca5841f3aa8387502a0" id="r_gada4810653b18bca5841f3aa8387502a0"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__l4__thread__api.html#gada4810653b18bca5841f3aa8387502a0">L4_thread_control_mr_indices</a> { <br />
&#160;&#160;<a class="el" href="group__l4__thread__api.html#ggada4810653b18bca5841f3aa8387502a0ae15c7a84fad7b912acfcb81265caa2f7">L4_THREAD_CONTROL_MR_IDX_FLAGS</a> = 0
, <a class="el" href="group__l4__thread__api.html#ggada4810653b18bca5841f3aa8387502a0a424b3194b01d0d2b2aa60e8ea113e00a">L4_THREAD_CONTROL_MR_IDX_PAGER</a> = 1
, <a class="el" href="group__l4__thread__api.html#ggada4810653b18bca5841f3aa8387502a0a48b2e97a497f3a616fde1e6bb539f616">L4_THREAD_CONTROL_MR_IDX_EXC_HANDLER</a> = 2
, <a class="el" href="group__l4__thread__api.html#ggada4810653b18bca5841f3aa8387502a0a2114b332ccffd11438e23c7a4030f210">L4_THREAD_CONTROL_MR_IDX_FLAG_VALS</a> = 4
, <br />
&#160;&#160;<a class="el" href="group__l4__thread__api.html#ggada4810653b18bca5841f3aa8387502a0ae82a43035e80a26cdf53465a0f65b8f3">L4_THREAD_CONTROL_MR_IDX_BIND_UTCB</a> = 5
, <a class="el" href="group__l4__thread__api.html#ggada4810653b18bca5841f3aa8387502a0a43e990553f65b5cfffc6300b4d36a57d">L4_THREAD_CONTROL_MR_IDX_BIND_TASK</a> = 6
<br />
}</td></tr>
<tr class="memdesc:gada4810653b18bca5841f3aa8387502a0"><td class="mdescLeft">&#160;</td><td class="mdescRight">Indices for the values in the message register for thread control. <a href="group__l4__thread__api.html#gada4810653b18bca5841f3aa8387502a0">More...</a><br /></td></tr>
<tr class="memitem:ga288a4500e4be2587d2f16d754d1a2e16" id="r_ga288a4500e4be2587d2f16d754d1a2e16"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__l4__thread__api.html#ga288a4500e4be2587d2f16d754d1a2e16">L4_thread_ex_regs_flags</a> { <a class="el" href="group__l4__thread__api.html#gga288a4500e4be2587d2f16d754d1a2e16aa13ff4d1b899982508b9ad36c61fe47a">L4_THREAD_EX_REGS_CANCEL</a> = 0x10000UL
, <a class="el" href="group__l4__thread__api.html#gga288a4500e4be2587d2f16d754d1a2e16abed26b392ea6e1ee9f468246ae19bf35">L4_THREAD_EX_REGS_TRIGGER_EXCEPTION</a> = 0x20000UL
, <a class="el" href="group__l4__thread__api.html#gga288a4500e4be2587d2f16d754d1a2e16ab083c24a18872362e491050d43b5cdf3">L4_THREAD_EX_REGS_ARCH_MASK</a> = 0xff000000UL
}</td></tr>
<tr class="memdesc:ga288a4500e4be2587d2f16d754d1a2e16"><td class="mdescLeft">&#160;</td><td class="mdescRight">Flags for the thread ex-regs operation. <a href="group__l4__thread__api.html#ga288a4500e4be2587d2f16d754d1a2e16">More...</a><br /></td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 id="header-func-members" class="groupheader"><a id="func-members" name="func-members"></a>
Functions</h2></td></tr>
<tr class="memitem:ga1ea29499c679caeae810516d16f4347c" id="r_ga1ea29499c679caeae810516d16f4347c"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structl4__msgtag__t.html">l4_msgtag_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__l4__thread__api.html#ga1ea29499c679caeae810516d16f4347c">l4_thread_ex_regs</a> (<a class="el" href="group__l4__cap__api.html#ga1445e923ce73029130d569d6e69a4dd8">l4_cap_idx_t</a> thread, <a class="el" href="group__l4__basic__types.html#ga4087b991c40c0d2fcde9ca331049a4d4">l4_addr_t</a> ip, <a class="el" href="group__l4__basic__types.html#ga4087b991c40c0d2fcde9ca331049a4d4">l4_addr_t</a> sp, <a class="el" href="group__l4__basic__types.html#ga1c2c4b333f75b1d05b59855910f2b9cb">l4_umword_t</a> flags) <a class="el" href="group__l4sys__defines.html#ga362dfa378e662dd04f710a23fc7ea931">L4_NOTHROW</a></td></tr>
<tr class="memdesc:ga1ea29499c679caeae810516d16f4347c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Exchange basic thread registers. <br /></td></tr>
<tr class="memitem:ga9387fbfe618c3ede0eae63261ce1662e" id="r_ga9387fbfe618c3ede0eae63261ce1662e"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structl4__msgtag__t.html">l4_msgtag_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__l4__thread__api.html#ga9387fbfe618c3ede0eae63261ce1662e">l4_thread_ex_regs_u</a> (<a class="el" href="group__l4__cap__api.html#ga1445e923ce73029130d569d6e69a4dd8">l4_cap_idx_t</a> thread, <a class="el" href="group__l4__basic__types.html#ga4087b991c40c0d2fcde9ca331049a4d4">l4_addr_t</a> ip, <a class="el" href="group__l4__basic__types.html#ga4087b991c40c0d2fcde9ca331049a4d4">l4_addr_t</a> sp, <a class="el" href="group__l4__basic__types.html#ga1c2c4b333f75b1d05b59855910f2b9cb">l4_umword_t</a> flags, <a class="el" href="group__l4__utcb__api.html#ga89be8a86d11c1d532b636cc2df1330fb">l4_utcb_t</a> *utcb) <a class="el" href="group__l4sys__defines.html#ga362dfa378e662dd04f710a23fc7ea931">L4_NOTHROW</a></td></tr>
<tr class="memdesc:ga9387fbfe618c3ede0eae63261ce1662e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Exchange basic thread registers. <br /></td></tr>
<tr class="memitem:ga828e4612273914dcae12c442bcdd2ea1" id="r_ga828e4612273914dcae12c442bcdd2ea1"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structl4__msgtag__t.html">l4_msgtag_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__l4__thread__api.html#ga828e4612273914dcae12c442bcdd2ea1">l4_thread_ex_regs_ret</a> (<a class="el" href="group__l4__cap__api.html#ga1445e923ce73029130d569d6e69a4dd8">l4_cap_idx_t</a> thread, <a class="el" href="group__l4__basic__types.html#ga4087b991c40c0d2fcde9ca331049a4d4">l4_addr_t</a> *ip, <a class="el" href="group__l4__basic__types.html#ga4087b991c40c0d2fcde9ca331049a4d4">l4_addr_t</a> *sp, <a class="el" href="group__l4__basic__types.html#ga1c2c4b333f75b1d05b59855910f2b9cb">l4_umword_t</a> *flags) <a class="el" href="group__l4sys__defines.html#ga362dfa378e662dd04f710a23fc7ea931">L4_NOTHROW</a></td></tr>
<tr class="memdesc:ga828e4612273914dcae12c442bcdd2ea1"><td class="mdescLeft">&#160;</td><td class="mdescRight">Exchange basic thread registers and return previous values. <br /></td></tr>
<tr class="memitem:ga5e191cd9b1cbc5d0ac9166fb2bdd5a18" id="r_ga5e191cd9b1cbc5d0ac9166fb2bdd5a18"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structl4__msgtag__t.html">l4_msgtag_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__l4__thread__api.html#ga5e191cd9b1cbc5d0ac9166fb2bdd5a18">l4_thread_ex_regs_ret_u</a> (<a class="el" href="group__l4__cap__api.html#ga1445e923ce73029130d569d6e69a4dd8">l4_cap_idx_t</a> thread, <a class="el" href="group__l4__basic__types.html#ga4087b991c40c0d2fcde9ca331049a4d4">l4_addr_t</a> *ip, <a class="el" href="group__l4__basic__types.html#ga4087b991c40c0d2fcde9ca331049a4d4">l4_addr_t</a> *sp, <a class="el" href="group__l4__basic__types.html#ga1c2c4b333f75b1d05b59855910f2b9cb">l4_umword_t</a> *flags, <a class="el" href="group__l4__utcb__api.html#ga89be8a86d11c1d532b636cc2df1330fb">l4_utcb_t</a> *utcb) <a class="el" href="group__l4sys__defines.html#ga362dfa378e662dd04f710a23fc7ea931">L4_NOTHROW</a></td></tr>
<tr class="memdesc:ga5e191cd9b1cbc5d0ac9166fb2bdd5a18"><td class="mdescLeft">&#160;</td><td class="mdescRight">Exchange basic thread registers and return previous values. <br /></td></tr>
<tr class="memitem:gae37baad7d9eaae8c2d90be7cfadb4271" id="r_gae37baad7d9eaae8c2d90be7cfadb4271"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__l4__thread__control__api.html#gae37baad7d9eaae8c2d90be7cfadb4271">l4_thread_control_start</a> (void) <a class="el" href="group__l4sys__defines.html#ga362dfa378e662dd04f710a23fc7ea931">L4_NOTHROW</a></td></tr>
<tr class="memdesc:gae37baad7d9eaae8c2d90be7cfadb4271"><td class="mdescLeft">&#160;</td><td class="mdescRight">Start a thread control API sequence. <br /></td></tr>
<tr class="memitem:gaf3715cba35638941d7a37fce539028a7" id="r_gaf3715cba35638941d7a37fce539028a7"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__l4__thread__control__api.html#gaf3715cba35638941d7a37fce539028a7">l4_thread_control_pager</a> (<a class="el" href="group__l4__cap__api.html#ga1445e923ce73029130d569d6e69a4dd8">l4_cap_idx_t</a> pager) <a class="el" href="group__l4sys__defines.html#ga362dfa378e662dd04f710a23fc7ea931">L4_NOTHROW</a></td></tr>
<tr class="memdesc:gaf3715cba35638941d7a37fce539028a7"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set the pager. <br /></td></tr>
<tr class="memitem:gae1ac1c36d9172003c5e53936a56f2ec3" id="r_gae1ac1c36d9172003c5e53936a56f2ec3"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__l4__thread__control__api.html#gae1ac1c36d9172003c5e53936a56f2ec3">l4_thread_control_exc_handler</a> (<a class="el" href="group__l4__cap__api.html#ga1445e923ce73029130d569d6e69a4dd8">l4_cap_idx_t</a> exc_handler) <a class="el" href="group__l4sys__defines.html#ga362dfa378e662dd04f710a23fc7ea931">L4_NOTHROW</a></td></tr>
<tr class="memdesc:gae1ac1c36d9172003c5e53936a56f2ec3"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set the exception handler. <br /></td></tr>
<tr class="memitem:ga370fd9233ecb6be3c0c697e6f66539ab" id="r_ga370fd9233ecb6be3c0c697e6f66539ab"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__l4__thread__control__api.html#ga370fd9233ecb6be3c0c697e6f66539ab">l4_thread_control_bind</a> (<a class="el" href="group__l4__utcb__api.html#ga89be8a86d11c1d532b636cc2df1330fb">l4_utcb_t</a> *thread_utcb, <a class="el" href="group__l4__cap__api.html#ga1445e923ce73029130d569d6e69a4dd8">l4_cap_idx_t</a> task) <a class="el" href="group__l4sys__defines.html#ga362dfa378e662dd04f710a23fc7ea931">L4_NOTHROW</a></td></tr>
<tr class="memdesc:ga370fd9233ecb6be3c0c697e6f66539ab"><td class="mdescLeft">&#160;</td><td class="mdescRight">Bind the thread to a task. <br /></td></tr>
<tr class="memitem:gae110d7269bc9a396d388abb0195c45d1" id="r_gae110d7269bc9a396d388abb0195c45d1"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__l4__thread__control__api.html#gae110d7269bc9a396d388abb0195c45d1">l4_thread_control_alien</a> (int on) <a class="el" href="group__l4sys__defines.html#ga362dfa378e662dd04f710a23fc7ea931">L4_NOTHROW</a></td></tr>
<tr class="memdesc:gae110d7269bc9a396d388abb0195c45d1"><td class="mdescLeft">&#160;</td><td class="mdescRight">Enable alien mode. <br /></td></tr>
<tr class="memitem:ga7d07c9032fdd3dd59bcad35ca51176e8" id="r_ga7d07c9032fdd3dd59bcad35ca51176e8"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structl4__msgtag__t.html">l4_msgtag_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__l4__thread__control__api.html#ga7d07c9032fdd3dd59bcad35ca51176e8">l4_thread_control_commit</a> (<a class="el" href="group__l4__cap__api.html#ga1445e923ce73029130d569d6e69a4dd8">l4_cap_idx_t</a> thread) <a class="el" href="group__l4sys__defines.html#ga362dfa378e662dd04f710a23fc7ea931">L4_NOTHROW</a></td></tr>
<tr class="memdesc:ga7d07c9032fdd3dd59bcad35ca51176e8"><td class="mdescLeft">&#160;</td><td class="mdescRight">Commit the thread control parameters. <br /></td></tr>
<tr class="memitem:ga5e47131f486f920826b5f72dad82bafe" id="r_ga5e47131f486f920826b5f72dad82bafe"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structl4__msgtag__t.html">l4_msgtag_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__l4__thread__api.html#ga5e47131f486f920826b5f72dad82bafe">l4_thread_yield</a> (void) <a class="el" href="group__l4sys__defines.html#ga362dfa378e662dd04f710a23fc7ea931">L4_NOTHROW</a></td></tr>
<tr class="memdesc:ga5e47131f486f920826b5f72dad82bafe"><td class="mdescLeft">&#160;</td><td class="mdescRight">Yield current time slice. <br /></td></tr>
<tr class="memitem:gabc6b8e906087c1fc7b9bb691c47adcbd" id="r_gabc6b8e906087c1fc7b9bb691c47adcbd"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structl4__msgtag__t.html">l4_msgtag_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__l4__thread__api.html#gabc6b8e906087c1fc7b9bb691c47adcbd">l4_thread_switch</a> (<a class="el" href="group__l4__cap__api.html#ga1445e923ce73029130d569d6e69a4dd8">l4_cap_idx_t</a> to_thread) <a class="el" href="group__l4sys__defines.html#ga362dfa378e662dd04f710a23fc7ea931">L4_NOTHROW</a></td></tr>
<tr class="memdesc:gabc6b8e906087c1fc7b9bb691c47adcbd"><td class="mdescLeft">&#160;</td><td class="mdescRight">Switch to another thread (and donate the remaining time slice). <br /></td></tr>
<tr class="memitem:ga87feff7f1cdf9b67cccdf4f1b8492e8f" id="r_ga87feff7f1cdf9b67cccdf4f1b8492e8f"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structl4__msgtag__t.html">l4_msgtag_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__l4__thread__api.html#ga87feff7f1cdf9b67cccdf4f1b8492e8f">l4_thread_stats_time</a> (<a class="el" href="group__l4__cap__api.html#ga1445e923ce73029130d569d6e69a4dd8">l4_cap_idx_t</a> thread, <a class="el" href="group__l4__basic__types.html#gab71da24eb7cda2c035f18b862309b101">l4_kernel_clock_t</a> *us) <a class="el" href="group__l4sys__defines.html#ga362dfa378e662dd04f710a23fc7ea931">L4_NOTHROW</a></td></tr>
<tr class="memdesc:ga87feff7f1cdf9b67cccdf4f1b8492e8f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get consumed time of thread in µs. <br /></td></tr>
<tr class="memitem:ga6e0620f6b1119d84eac90adad52eabf8" id="r_ga6e0620f6b1119d84eac90adad52eabf8"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structl4__msgtag__t.html">l4_msgtag_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__l4__thread__api.html#ga6e0620f6b1119d84eac90adad52eabf8">l4_thread_vcpu_resume_start</a> (void) <a class="el" href="group__l4sys__defines.html#ga362dfa378e662dd04f710a23fc7ea931">L4_NOTHROW</a></td></tr>
<tr class="memdesc:ga6e0620f6b1119d84eac90adad52eabf8"><td class="mdescLeft">&#160;</td><td class="mdescRight">vCPU return from event handler. <br /></td></tr>
<tr class="memitem:gaaf8bb1c28a014326dd381bc2d3478da8" id="r_gaaf8bb1c28a014326dd381bc2d3478da8"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structl4__msgtag__t.html">l4_msgtag_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__l4__thread__api.html#gaaf8bb1c28a014326dd381bc2d3478da8">l4_thread_vcpu_resume_commit</a> (<a class="el" href="group__l4__cap__api.html#ga1445e923ce73029130d569d6e69a4dd8">l4_cap_idx_t</a> thread, <a class="el" href="structl4__msgtag__t.html">l4_msgtag_t</a> tag) <a class="el" href="group__l4sys__defines.html#ga362dfa378e662dd04f710a23fc7ea931">L4_NOTHROW</a></td></tr>
<tr class="memdesc:gaaf8bb1c28a014326dd381bc2d3478da8"><td class="mdescLeft">&#160;</td><td class="mdescRight">Commit vCPU resume. <br /></td></tr>
<tr class="memitem:gac3263f4949c90adda83dba763b195988" id="r_gac3263f4949c90adda83dba763b195988"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structl4__msgtag__t.html">l4_msgtag_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__l4__thread__api.html#gac3263f4949c90adda83dba763b195988">l4_thread_vcpu_control</a> (<a class="el" href="group__l4__cap__api.html#ga1445e923ce73029130d569d6e69a4dd8">l4_cap_idx_t</a> thread, <a class="el" href="group__l4__basic__types.html#ga4087b991c40c0d2fcde9ca331049a4d4">l4_addr_t</a> vcpu_state) <a class="el" href="group__l4sys__defines.html#ga362dfa378e662dd04f710a23fc7ea931">L4_NOTHROW</a></td></tr>
<tr class="memdesc:gac3263f4949c90adda83dba763b195988"><td class="mdescLeft">&#160;</td><td class="mdescRight">Enable the vCPU feature for the thread. <br /></td></tr>
<tr class="memitem:ga8ebc0dd643266610d76860cf0fb77f53" id="r_ga8ebc0dd643266610d76860cf0fb77f53"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structl4__msgtag__t.html">l4_msgtag_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__l4__thread__api.html#ga8ebc0dd643266610d76860cf0fb77f53">l4_thread_vcpu_control_u</a> (<a class="el" href="group__l4__cap__api.html#ga1445e923ce73029130d569d6e69a4dd8">l4_cap_idx_t</a> thread, <a class="el" href="group__l4__basic__types.html#ga4087b991c40c0d2fcde9ca331049a4d4">l4_addr_t</a> vcpu_state, <a class="el" href="group__l4__utcb__api.html#ga89be8a86d11c1d532b636cc2df1330fb">l4_utcb_t</a> *utcb) <a class="el" href="group__l4sys__defines.html#ga362dfa378e662dd04f710a23fc7ea931">L4_NOTHROW</a></td></tr>
<tr class="memdesc:ga8ebc0dd643266610d76860cf0fb77f53"><td class="mdescLeft">&#160;</td><td class="mdescRight">Enable the vCPU feature for the thread. <br /></td></tr>
<tr class="memitem:ga592d99fe80a0091a837f6001d0d5c25b" id="r_ga592d99fe80a0091a837f6001d0d5c25b"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structl4__msgtag__t.html">l4_msgtag_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__l4__thread__api.html#ga592d99fe80a0091a837f6001d0d5c25b">l4_thread_vcpu_control_ext</a> (<a class="el" href="group__l4__cap__api.html#ga1445e923ce73029130d569d6e69a4dd8">l4_cap_idx_t</a> thread, <a class="el" href="group__l4__basic__types.html#ga4087b991c40c0d2fcde9ca331049a4d4">l4_addr_t</a> ext_vcpu_state) <a class="el" href="group__l4sys__defines.html#ga362dfa378e662dd04f710a23fc7ea931">L4_NOTHROW</a></td></tr>
<tr class="memdesc:ga592d99fe80a0091a837f6001d0d5c25b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Enable the extended vCPU feature for the thread. <br /></td></tr>
<tr class="memitem:ga1015c5500bcfeaa01d209ee116cf57ec" id="r_ga1015c5500bcfeaa01d209ee116cf57ec"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structl4__msgtag__t.html">l4_msgtag_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__l4__thread__api.html#ga1015c5500bcfeaa01d209ee116cf57ec">l4_thread_vcpu_control_ext_u</a> (<a class="el" href="group__l4__cap__api.html#ga1445e923ce73029130d569d6e69a4dd8">l4_cap_idx_t</a> thread, <a class="el" href="group__l4__basic__types.html#ga4087b991c40c0d2fcde9ca331049a4d4">l4_addr_t</a> ext_vcpu_state, <a class="el" href="group__l4__utcb__api.html#ga89be8a86d11c1d532b636cc2df1330fb">l4_utcb_t</a> *utcb) <a class="el" href="group__l4sys__defines.html#ga362dfa378e662dd04f710a23fc7ea931">L4_NOTHROW</a></td></tr>
<tr class="memdesc:ga1015c5500bcfeaa01d209ee116cf57ec"><td class="mdescLeft">&#160;</td><td class="mdescRight">Enable the extended vCPU feature for the thread. <br /></td></tr>
<tr class="memitem:ga9dded96485c96c7a3389ea00f5a305d1" id="r_ga9dded96485c96c7a3389ea00f5a305d1"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structl4__msgtag__t.html">l4_msgtag_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__l4__thread__api.html#ga9dded96485c96c7a3389ea00f5a305d1">l4_thread_register_del_irq</a> (<a class="el" href="group__l4__cap__api.html#ga1445e923ce73029130d569d6e69a4dd8">l4_cap_idx_t</a> thread, <a class="el" href="group__l4__cap__api.html#ga1445e923ce73029130d569d6e69a4dd8">l4_cap_idx_t</a> irq) <a class="el" href="group__l4sys__defines.html#ga362dfa378e662dd04f710a23fc7ea931">L4_NOTHROW</a></td></tr>
<tr class="memdesc:ga9dded96485c96c7a3389ea00f5a305d1"><td class="mdescLeft">&#160;</td><td class="mdescRight">Register an IRQ that will trigger upon deletion events. <br /></td></tr>
<tr class="memitem:ga06ff88cfe27ad4f6c67fa0dc36e6c261" id="r_ga06ff88cfe27ad4f6c67fa0dc36e6c261"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structl4__msgtag__t.html">l4_msgtag_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__l4__thread__api.html#ga06ff88cfe27ad4f6c67fa0dc36e6c261">l4_thread_modify_sender_start</a> (void) <a class="el" href="group__l4sys__defines.html#ga362dfa378e662dd04f710a23fc7ea931">L4_NOTHROW</a></td></tr>
<tr class="memdesc:ga06ff88cfe27ad4f6c67fa0dc36e6c261"><td class="mdescLeft">&#160;</td><td class="mdescRight">Start a thread sender modification sequence. <br /></td></tr>
<tr class="memitem:ga424473745319d388b8c1378699cec20d" id="r_ga424473745319d388b8c1378699cec20d"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__l4__thread__api.html#ga424473745319d388b8c1378699cec20d">l4_thread_modify_sender_add</a> (<a class="el" href="group__l4__basic__types.html#ga1c2c4b333f75b1d05b59855910f2b9cb">l4_umword_t</a> match_mask, <a class="el" href="group__l4__basic__types.html#ga1c2c4b333f75b1d05b59855910f2b9cb">l4_umword_t</a> match, <a class="el" href="group__l4__basic__types.html#ga1c2c4b333f75b1d05b59855910f2b9cb">l4_umword_t</a> del_bits, <a class="el" href="group__l4__basic__types.html#ga1c2c4b333f75b1d05b59855910f2b9cb">l4_umword_t</a> add_bits, <a class="el" href="structl4__msgtag__t.html">l4_msgtag_t</a> *tag) <a class="el" href="group__l4sys__defines.html#ga362dfa378e662dd04f710a23fc7ea931">L4_NOTHROW</a></td></tr>
<tr class="memdesc:ga424473745319d388b8c1378699cec20d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Add a modification pattern to a sender modification sequence. <br /></td></tr>
<tr class="memitem:gab4f2106933cf35dc0d4fb2e97e093aef" id="r_gab4f2106933cf35dc0d4fb2e97e093aef"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structl4__msgtag__t.html">l4_msgtag_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__l4__thread__api.html#gab4f2106933cf35dc0d4fb2e97e093aef">l4_thread_modify_sender_commit</a> (<a class="el" href="group__l4__cap__api.html#ga1445e923ce73029130d569d6e69a4dd8">l4_cap_idx_t</a> thread, <a class="el" href="structl4__msgtag__t.html">l4_msgtag_t</a> tag) <a class="el" href="group__l4sys__defines.html#ga362dfa378e662dd04f710a23fc7ea931">L4_NOTHROW</a></td></tr>
<tr class="memdesc:gab4f2106933cf35dc0d4fb2e97e093aef"><td class="mdescLeft">&#160;</td><td class="mdescRight">Apply (commit) a sender modification sequence. <br /></td></tr>
<tr class="memitem:gaba7f8764bd91304b3407d94d90aa6578" id="r_gaba7f8764bd91304b3407d94d90aa6578"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structl4__msgtag__t.html">l4_msgtag_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__l4__thread__api.html#gaba7f8764bd91304b3407d94d90aa6578">l4_thread_register_doorbell_irq</a> (<a class="el" href="group__l4__cap__api.html#ga1445e923ce73029130d569d6e69a4dd8">l4_cap_idx_t</a> thread, <a class="el" href="group__l4__cap__api.html#ga1445e923ce73029130d569d6e69a4dd8">l4_cap_idx_t</a> irq) <a class="el" href="group__l4sys__defines.html#ga362dfa378e662dd04f710a23fc7ea931">L4_NOTHROW</a></td></tr>
<tr class="memdesc:gaba7f8764bd91304b3407d94d90aa6578"><td class="mdescLeft">&#160;</td><td class="mdescRight">Register an IRQ that will trigger when a forwarded virtual interrupt is pending. <br /></td></tr>
</table>
<a name="details" id="details"></a><h2 id="header-details" class="groupheader">Detailed Description</h2>
<div class="textblock"><p>Common thread related definitions. </p>
<p class="definition">Definition in file <a class="el" href="l4_2sys_2thread_8h_source.html">thread.h</a>.</p>
</div></div><!-- contents -->
</div><!-- doc-content -->
<div id="page-nav" class="page-nav-panel">
<div id="page-nav-resize-handle"></div>
<div id="page-nav-tree">
<div id="page-nav-contents">
</div><!-- page-nav-contents -->
</div><!-- page-nav-tree -->
</div><!-- page-nav -->
</div><!-- container -->
<!-- HTML footer for doxygen 1.9.1-->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><b>l4</b></li><li class="navelem"><b>sys</b></li><li class="navelem"><a href="l4_2sys_2thread_8h.html">thread.h</a></li>
<li class="footer">Generated on <span class="timestamp"></span> for L4Re Operating System Framework by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.15.0 </li>
</ul>
</div>
</body>
</html>