⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 c-overview5.html

📁 vxworks相关论文
💻 HTML
字号:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN"><html><head><link rel="STYLESHEET" type="text/css" href="wrs.css"><title>    Tornado Architecture   </title></head><body bgcolor="FFFFFF"><p class="navbar" align="right"><a href="index.html"><img border="0" alt="[Contents]" src="icons/contents.gif"></a><a href="c-overview.html"><img border="0" alt="[Index]" src="icons/index.gif"></a><a href="c-overview.html"><img border="0" alt="[Top]" src="icons/top.gif"></a><a href="c-overview4.html"><img border="0" alt="[Prev]" src="icons/prev.gif"></a><a href="c-overview6.html"><img border="0" alt="[Next]" src="icons/next.gif"></a></p><font face="Helvetica, sans-serif" class="sans"><h3 class="H2"><i><a name="84654">1.5  &nbsp;&nbsp;Overview of Tornado APIs</a></i></h3></font><dl class="margin"><dl class="margin"><dd><p class="Body"><a name="84656"> </a>A central feature of Tornado is the rich set of APIs that allow access to each level of the technology. These APIs are outlined here to provide a broad view of what options are available to developers who wish to extend the Tornado environment.</p><dd><p class="Body"><a name="84658"> </a>The easiest APIs to learn about are those based on Tcl, in part because of the interactive nature of Tcl, but also because extensive examples are readily available. (If you are not familiar with Tcl, see the <i class="title">Tornado User's Guide: Tcl</i> for an overview of the language and for references to more detailed expositions.) The Tcl source for all standard Tornado tools is included with every Tornado installation: for example, procedures for examining semaphores, dumping memory, spawning tasks, and so on are available for customization, extension, or simply for their educational value. On UNIX hosts, every aspect of the user interface is also under user control, from dialogs to menu items. (The graphical interface on Windows hosts is somewhat less configurable, in part due to the existence of interface standards on that platform).<div class="frame"><h4 class="EntityTitle"><a name="84662"><font face="Helvetica, sans-serif" size="-1" class="sans">Figure 1-4:&nbsp;&nbsp;Tornado APIs</font></a></h4><dl class="margin"><div class="Anchor"><a name="84711"> </a><img class="figure" border="0" src="images/c-overviewa3.gif"></div></dl></div></p><dd><p class="Body"><a name="84715"> </a>The Tornado APIs are shown graphically in <a href="c-overview5.html#84662">Figure&nbsp;1-4</a>. The following paragraphs discuss each interface:</p><b class="BulletHead-run"><li type="disc"><a name="84717"> </a><font face="Helvetica, sans-serif" size="-1" class="sans">Graphical User Interface.&nbsp;&nbsp;</font></b><dl class="margin"><dd><div class="Indent"><a name="84718"> </a>This API provides a set of Tcl commands to create and configure graphical user interfaces (such as menus, buttons, dialog boxes, or charts). You can use this interface to create new Tornado tools or to customize existing tools like the launcher or browser.</div><br></dl><b class="BulletHead-run"><li type="disc"><a name="84720"> </a><font face="Helvetica, sans-serif" size="-1" class="sans">WTX C API.&nbsp;&nbsp;</font></b><dl class="margin"><dd><div class="Indent"><a name="84721"> </a>This API provides a complete set of C routines covering all the WTX protocol services. Use this interface to create tools that access the target server or the Tornado registry, when you use C as the implementation language. The CrossWind debugger is implemented using this API.</div><br></dl><b class="BulletHead-run"><li type="disc"><a name="84723"> </a><font face="Helvetica, sans-serif" size="-1" class="sans">WTX Tcl API.&nbsp;&nbsp;</font></b><dl class="margin"><dd><div class="Indent"><a name="84724"> </a>The WTX Tcl API provides a complete set of Tcl commands covering all the WTX protocol services. Use this interface to create tools that access the target server or the Tornado registry, when you use Tcl as the implementation language. The Tornado shell and browser (and, on UNIX hosts, the launcher) are implemented through this API. </div><br></dl><b class="BulletHead-run"><li type="disc"><a name="84727"> </a><font face="Helvetica, sans-serif" size="-1" class="sans">WTX Java API.&nbsp;&nbsp;</font></b><dl class="margin"><dd><div class="Indent"><a name="84728"> </a>The WTX Java API provides a set of Java classes permitting access to the WTX protocol services. It is built on top of the WTX C API using the Java Native Interface; its principal class implementing methods call the WTX C protocol routines. Use this interface to create tools that access the target server or the Tornado registry using Java. It is available free of charge through Wind River System WEB server (www.wrs.com).</div><br></dl><b class="BulletHead-run"><li type="disc"><a name="84729"> </a><font face="Helvetica, sans-serif" size="-1" class="sans">WTX Protocol.&nbsp;&nbsp;</font></b><dl class="margin"><dd><div class="Indent"><a name="84730"> </a>The WTX protocol defines a set of RPC requests interpreted by the target server or the Tornado registry. You can use RPC calls to send WTX protocol requests directly, but in order to simplify application development, we recommend the use of the WTX C or Tcl APIs instead.</div><br></dl><b class="BulletHead-run"><li type="disc"><a name="84732"> </a><font face="Helvetica, sans-serif" size="-1" class="sans">Target Server Core API.&nbsp;&nbsp;</font></b><dl class="margin"><dd><div class="Indent"><a name="84733"> </a>Several C subroutine libraries provide callbacks to target server core services. These callbacks are required to write support for either a new object module format (OMF) reader, or a new target communication back end. The libraries listed in <a href="c-overview5.html#84747">Table&nbsp;1-1</a> collectively constitute the target server core API. The associated DLLs are shown in <a href="c-overview6.html#84824">Table&nbsp;1-2</a> and <a href="c-overview6.html#84866">Table&nbsp;1-3</a> for UNIX and Windows.<b><p class="table"><h4 class="EntityTitle"><a name="84747"><font face="Helvetica, sans-serif" size="-1" class="sans">Table 1-1:&nbsp;&nbsp;Target Server Core API Libraries</font></a></h4><table border="0" cellpadding="0" cellspacing="0"><tr><td colspan="20"><hr class="tablerule"></td></tr><tr valign="middle"><th rowspan="1" colspan="1"><div class="CellHeading"><b><a name="84751"> </a><font face="Helvetica, sans-serif" size="-1" class="sans">Library</font></b></div></th><td width="10">&nbsp;</td><th rowspan="1" colspan="1"><div class="CellHeading"><b><a name="84753"> </a><font face="Helvetica, sans-serif" size="-1" class="sans">Description</font></b></div></th><td width="10">&nbsp;</td></tr><tr><td colspan="20"><hr class="tablerule2"></td></tr><tr valign="top"><td colspan=1 rowspan=1><div class="CellBody"><a name="84756"> </a><b class="library">bkendlib</b></div></td><td width="10">&nbsp;</td><td colspan=1 rowspan=1><div class="CellBody"><a name="84758"> </a>Back-end communications interface.</div></td><td width="10">&nbsp;</td></tr><tr valign="top"><td colspan=1 rowspan=1><div class="CellBody"><a name="84761"> </a><b class="library">bkendlog</b></div></td><td width="10">&nbsp;</td><td colspan=1 rowspan=1><div class="CellBody"><a name="84763"> </a>Back-end logging facility.</div></td><td width="10">&nbsp;</td></tr><tr valign="top"><td colspan=1 rowspan=1><div class="CellBody"><a name="84766"> </a><b class="library">loadlib</b></div></td><td width="10">&nbsp;</td><td colspan=1 rowspan=1><div class="CellBody"><a name="84768"> </a>Common object module loader routines.</div></td><td width="10">&nbsp;</td></tr><tr valign="top"><td colspan=1 rowspan=1><div class="CellBody"><a name="84771"> </a><b class="library">symlib</b></div></td><td width="10">&nbsp;</td><td colspan=1 rowspan=1><div class="CellBody"><a name="84773"> </a>Symbol management facility.</div></td><td width="10">&nbsp;</td></tr><tr valign="top"><td colspan=1 rowspan=1><div class="CellBody"><a name="84776"> </a><b class="library">tgtlib</b></div></td><td width="10">&nbsp;</td><td colspan=1 rowspan=1><div class="CellBody"><a name="84778"> </a>Target operation support routines.</div></td><td width="10">&nbsp;</td></tr><tr valign="top"><td colspan=1 rowspan=1><div class="CellBody"><a name="84781"> </a><b class="library">tgtmem</b></div></td><td width="10">&nbsp;</td><td colspan=1 rowspan=1><div class="CellBody"><a name="84783"> </a>Target server memory management facility.</div></td><td width="10">&nbsp;</td></tr><tr valign="top"><td colspan=1 rowspan=1><div class="CellBody"><a name="84786"> </a><b class="library">wpwrlog</b></div></td><td width="10">&nbsp;</td><td colspan=1 rowspan=1><div class="CellBody"><a name="84788"> </a>Error and warning logging utilities.</div></td><td width="10">&nbsp;</td></tr><tr><td colspan="20"><hr class="tablerule"></td></tr><tr valign="middle"><td colspan="20"></td></tr></table></p></b></div><br></dl><b class="BulletHead-run"><li type="disc"><a name="84790"> </a><font face="Helvetica, sans-serif" size="-1" class="sans">OMF Reader Interface.&nbsp;&nbsp;</font></b><dl class="margin"><dd><div class="Indent"><a name="84791"> </a>The OMF (object module format) reader interface specifies a set of format-independent subroutine calls to manage object code. A new shared library or DLL to support a new object-code format must define the subroutines specified by this interface.</div><br></dl><b class="BulletHead-run"><li type="disc"><a name="84793"> </a><font face="Helvetica, sans-serif" size="-1" class="sans">Target Server Back-End Interface.&nbsp;&nbsp;</font></b><dl class="margin"><dd><div class="Indent"><a name="84794"> </a>The back-end interface specifies a set of transport-independent subroutine calls to manage communication with the target agent. A new shared library or DLL to support a new transport mechanism must define the subroutines specified by this interface.</div><br></dl><b class="BulletHead-run"><li type="disc"><a name="84796"> </a><font face="Helvetica, sans-serif" size="-1" class="sans">Target Agent Interface.&nbsp;&nbsp;</font></b><dl class="margin"><dd><div class="Indent"><a name="84797"> </a>The WDB agent relies on low-level device drivers to connect with the target server. The agent interface specifies what routines a device driver must provide to the WDB agent.</div><br></dl><dd><p class="Body"><a name="84801"> </a>The remaining chapters of this manual discuss these APIs in more detail. Reference entries for all subroutines, protocols, and interfaces appear in the online reference material under <b class="guiLabel"><font face="Helvetica, sans-serif" size="-1" class="sans">Tornado API Reference</font></b>. </p></dl></dl><a name="foot"><hr></a><p class="navbar" align="right"><a href="index.html"><img border="0" alt="[Contents]" src="icons/contents.gif"></a><a href="c-overview.html"><img border="0" alt="[Index]" src="icons/index.gif"></a><a href="c-overview.html"><img border="0" alt="[Top]" src="icons/top.gif"></a><a href="c-overview4.html"><img border="0" alt="[Prev]" src="icons/prev.gif"></a><a href="c-overview6.html"><img border="0" alt="[Next]" src="icons/next.gif"></a></p></body></html><!---by WRS Documentation (), Wind River Systems, Inc.    conversion tool:  Quadralay WebWorks Publisher 4.0.11    template:         CSS Template, Jan 1998 - Jefro --->

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -