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

📄 x-ix863.html

📁 this about vxworks operations systems
💻 HTML
📖 第 1 页 / 共 3 页
字号:
<div class="CellBody"><a name="84790"> </a>Read one word (two bytes) from I/O.&nbsp;</div></td></tr><tr valign="top"><td colspan=1 rowspan=1><div class="CellBody"><a name="84793"> </a><b class="routine"><i class="routine">sysInLong</i></b><b>(&nbsp;)</b> &nbsp;</div></td><td colspan=1 rowspan=1><div class="CellBody"><a name="84795"> </a><b>ULONG sysInLong <br>&nbsp;&nbsp;&nbsp;&nbsp;(int port)</b> &nbsp;</div></td><td colspan=1 rowspan=1><div class="CellBody"><a name="84798"> </a>Read one long word (four bytes) from I/O.&nbsp;</div></td></tr><tr valign="top"><td colspan=1 rowspan=1><div class="CellBody"><a name="84801"> </a><b class="routine"><i class="routine">sysOutByte</i></b><b>(&nbsp;)</b> &nbsp;</div></td><td colspan=1 rowspan=1><div class="CellBody"><a name="84803"> </a><b>void sysOutByte <br>&nbsp;&nbsp;&nbsp;&nbsp;(int port, char data)</b> &nbsp;</div></td><td colspan=1 rowspan=1><div class="CellBody"><a name="84806"> </a>Write one byte to I/O.&nbsp;</div></td></tr><tr valign="top"><td colspan=1 rowspan=1><div class="CellBody"><a name="84809"> </a><b class="routine"><i class="routine">sysOutWord</i></b><b>(&nbsp;)</b> &nbsp;</div></td><td colspan=1 rowspan=1><div class="CellBody"><a name="84811"> </a><b>void sysOutWord <br>&nbsp;&nbsp;&nbsp;&nbsp;(int port, short data)</b> &nbsp;</div></td><td colspan=1 rowspan=1><div class="CellBody"><a name="84814"> </a>Write one word (two bytes) to I/O.&nbsp;</div></td></tr><tr valign="top"><td colspan=1 rowspan=1><div class="CellBody"><a name="84817"> </a><b class="routine"><i class="routine">sysOutLong</i></b><b>(&nbsp;)</b> &nbsp;</div></td><td colspan=1 rowspan=1><div class="CellBody"><a name="84819"> </a><b>void sysOutLong <br>&nbsp;&nbsp;&nbsp;&nbsp;(int port, long data)</b> &nbsp;</div></td><td colspan=1 rowspan=1><div class="CellBody"><a name="84822"> </a>Write one long word (four bytes) to I/O.&nbsp;</div></td></tr><tr valign="top"><td colspan=1 rowspan=1><div class="CellBody"><a name="84825"> </a><b class="routine"><i class="routine">sysInWordString</i></b><b>(&nbsp;)</b> &nbsp;</div></td><td colspan=1 rowspan=1><div class="CellBody"><a name="84827"> </a><b>void sysInWordString <br>&nbsp;&nbsp;&nbsp;&nbsp;(int port, short *address, <br>&nbsp;&nbsp;&nbsp;&nbsp;int count)</b> &nbsp;</div></td><td colspan=1 rowspan=1><div class="CellBody"><a name="84831"> </a>Read word string from I/O.&nbsp;</div></td></tr><tr valign="top"><td colspan=1 rowspan=1><div class="CellBody"><a name="84834"> </a><b class="routine"><i class="routine">sysInLongString</i></b><b>(&nbsp;)</b> &nbsp;</div></td><td colspan=1 rowspan=1><div class="CellBody"><a name="84836"> </a><b>void sysInLongString <br>&nbsp;&nbsp;&nbsp;&nbsp;(int port, short *address, <br>&nbsp;&nbsp;&nbsp;&nbsp;int count</b> &nbsp;</div></td><td colspan=1 rowspan=1><div class="CellBody"><a name="84840"> </a>Read long string from I/O.&nbsp;</div></td></tr><tr valign="top"><td colspan=1 rowspan=1><div class="CellBody"><a name="84843"> </a><b class="routine"><i class="routine">sysOutWordString</i></b><b>(&nbsp;)</b> &nbsp;</div></td><td colspan=1 rowspan=1><div class="CellBody"><a name="84845"> </a><b>void sysOutWordString <br>&nbsp;&nbsp;&nbsp;&nbsp;(int port, short *address, <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;int count)</b> &nbsp;</div></td><td colspan=1 rowspan=1><div class="CellBody"><a name="84848"> </a>Write word string to I/O.&nbsp;</div></td></tr><tr valign="top"><td colspan=1 rowspan=1><div class="CellBody"><a name="84851"> </a><b class="routine"><i class="routine">sysOutLongString</i></b><b>(&nbsp;)</b> &nbsp;</div></td><td colspan=1 rowspan=1><div class="CellBody"><a name="84853"> </a><b>void sysOutLongString <br>&nbsp;&nbsp;&nbsp;&nbsp;(int port, short *address, <br>&nbsp;&nbsp;&nbsp;&nbsp;int count)</b> &nbsp;</div></td><td colspan=1 rowspan=1><div class="CellBody"><a name="84857"> </a>Write long string to I/O.&nbsp;</div></td></tr><tr valign="top"><td colspan=1 rowspan=1><div class="CellBody"><a name="84860"> </a><b class="routine"><i class="routine">sysDelay</i></b><b>(&nbsp;)</b> &nbsp;</div></td><td colspan=1 rowspan=1><div class="CellBody"><a name="84862"> </a><b>void sysDelay <br>&nbsp;&nbsp;&nbsp;&nbsp;(void)</b> &nbsp;</div></td><td colspan=1 rowspan=1><div class="CellBody"><a name="84865"> </a>Allow enough recovery time for port accesses.&nbsp;</div></td></tr><tr valign="top"><td colspan=1 rowspan=1><div class="CellBody"><a name="84868"> </a><b class="routine"><i class="routine">sysIntDisablePIC</i></b><b>(&nbsp;)</b> &nbsp;</div></td><td colspan=1 rowspan=1><div class="CellBody"><a name="84870"> </a><b>STATUS sysIntDisablePIC <br>&nbsp;&nbsp;&nbsp;&nbsp;(int&nbsp;intLevel)</b> &nbsp;</div></td><td colspan=1 rowspan=1><div class="CellBody"><a name="84872"> </a>Disable a Programmable Interrupt Controller (PIC) interrupt level.&nbsp;</div></td></tr><tr valign="top"><td colspan=1 rowspan=1><div class="CellBody"><a name="84875"> </a><b class="routine"><i class="routine">sysIntEnablePIC</i></b><b>(&nbsp;)</b> &nbsp;</div></td><td colspan=1 rowspan=1><div class="CellBody"><a name="84877"> </a><b>STATUS sysIntEnablePIC <br>&nbsp;&nbsp;&nbsp;&nbsp;(int intLevel)</b> &nbsp;</div></td><td colspan=1 rowspan=1><div class="CellBody"><a name="84880"> </a>Enable a PIC interrupt level.&nbsp;</div></td></tr><tr valign="top"><td colspan=1 rowspan=1><div class="CellBody"><a name="84883"> </a><b class="routine"><i class="routine">sysCpuProbe</i></b><b>(&nbsp;)</b> &nbsp;</div></td><td colspan=1 rowspan=1><div class="CellBody"><a name="84885"> </a><b>UINT sysCpuProbe <br>&nbsp;&nbsp;&nbsp;&nbsp;(void)</b> &nbsp;</div></td><td colspan=1 rowspan=1><div class="CellBody"><a name="84889"> </a>Check for type of CPU (i386, i486, or Pentium).<b></b>&nbsp;</div></td></tr><tr><td colspan="20"><hr class="tablerule"></td></tr><tr valign="middle"><td colspan="20"></td></tr></table></p></p></dl><dd><font face="Helvetica, sans-serif" size="-1" class="sans"><h5 class="HU"><i><a name="84892">Breakpoints and the <b class="routine"><i class="routine">bh</i></b><b>(&nbsp;)</b> Routine</a></i></h5></font><dl class="margin"><dd><p class="Body"><a name="84893"> </a>VxWorks for the x86 supports both software and hardware breakpoints. When you set a software breakpoint, VxWorks replaces an instruction with an <b class="symbol_lc">int 3</b> software interrupt instruction. VxWorks restores the original code when the breakpoint is removed. The instruction queue is purged each time VxWorks changes an instruction to a software break instruction. </p><dd><p class="Body"><a name="84894"> </a>A hardware breakpoint uses the processor's debug registers to set the breakpoint. The x86 architectures have four breakpoint registers. If you are using the target shell, you can use the <b class="routine"><i class="routine">bh</i></b><b>(</b>&nbsp;<b>)</b> routine to set hardware breakpoints. The routine is declared as follows:</p><dl class="margin"><dd><pre class="Code2"><b><a name="84895">STATUS bh     (     INSTR&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*addr,&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;/* where to set breakpoint, or&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/                                /* 0 = display all breakpoints&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/     int&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;task,&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;/* task to set breakpoint;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/                                /* 0 = set all tasks&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/     int&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;count,&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;/* number of passes before hit&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/     int&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;type,&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;/* breakpoint type; see below&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/     INSTR&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*addr0&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;/* ignored for x86 targets&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*/     )</a></b></pre></dl><dd><p class="Body"><a name="84905"> </a>The <b class="routine"><i class="routine">bh</i></b><b>(&nbsp;)</b> routine takes the following types in parameter <i class="textVariable">type</i>:<p class="table"><table border="0" cellpadding="0" cellspacing="0"><tr><td colspan="20"><hr class="tablerule"></td></tr><tr valign="top"><td colspan=1 rowspan=1><p class="BodyLeft"><a name="87048"> </a><b class="symbol_UC">BRK_INST</b> </p></td><td colspan=1 rowspan=1><p class="BodyLeft"><a name="87050"> </a>Instruction hardware breakpoint (0x1000) </p></td></tr><tr valign="top"><td colspan=1 rowspan=1><p class="BodyLeft"><a name="87052"> </a><b class="symbol_UC">BRK_DATAW1</b> </p></td><td colspan=1 rowspan=1><p class="BodyLeft"><a name="87054"> </a>Data write 1-byte breakpoint (0x1400) </p></td></tr><tr valign="top"><td colspan=1 rowspan=1><p class="BodyLeft"><a name="87056"> </a><b class="symbol_UC">BRK_DATAW2</b> </p></td><td colspan=1 rowspan=1><p class="BodyLeft"><a name="87058"> </a>Data write 2-byte breakpoint (0x1500) </p></td></tr><tr valign="top"><td colspan=1 rowspan=1><p class="BodyLeft"><a name="87060"> </a><b class="symbol_UC">BRK_DATAW4</b> </p></td><td colspan=1 rowspan=1><p class="BodyLeft"><a name="87062"> </a>Data write 4-byte breakpoint (0x1700) </p></td></tr><tr valign="top"><td colspan=1 rowspan=1><p class="BodyLeft"><a name="87064"> </a><b class="symbol_UC">BRK_DATARW1</b> </p></td><td colspan=1 rowspan=1><p class="BodyLeft"><a name="87066"> </a>Data read-write 1-byte breakpoint (0x1c00) </p></td></tr><tr valign="top"><td colspan=1 rowspan=1><p class="BodyLeft"><a name="87068"> </a><b class="symbol_UC">BRK_DATARW2</b> </p></td><td colspan=1 rowspan=1><p class="BodyLeft"><a name="87070"> </a>Data read-write 2-byte breakpoint (1d00) </p></td></tr><tr valign="top"><td colspan=1 rowspan=1><p class="BodyLeft"><a name="87072"> </a><b class="symbol_UC">BRK_DATARW4</b> </p></td><td colspan=1 rowspan=1><p class="BodyLeft"><a name="87074"> </a>Data read-write 4-byte breakpoint (1f00)<b> </b></p></td></tr><tr><td colspan="20"><hr class="tablerule"></td></tr><tr valign="middle"><td colspan="20"></td></tr></table></p></p></dl><dd><font face="Helvetica, sans-serif" size="-1" class="sans"><h5 class="HU"><i><a name="84923">Disassembler: <b class="routine"><i class="routine">l</i></b><b>(&nbsp;)</b></a></i></h5></font><dl class="margin"><dd><p class="Body"><a name="84924"> </a>If you are using the target shell, note that the VxWorks disassembler <b class="routine"><i class="routine">l</i></b><b>(&nbsp;)</b> does not support 16-bit code compiled for earlier generations of 80<i class="textVariable">x</i>86 processors. However, the disassembler does support 32-bit code for both the i386 and i486 processors.</p></dl><dd><font face="Helvetica, sans-serif" size="-1" class="sans"><h5 class="HU"><i><a name="84926"><b class="routine"><i class="routine">vxMemProbe</i></b><b>(&nbsp;)</b><b class="routine"><i class="routine"></i></b> </a></i></h5></font><dl class="margin"><dd><p class="Body"><a name="84927"> </a>The <b class="routine"><i class="routine">vxMemProbe</i></b><b>(&nbsp;)</b> routine, which probes an address for a bus error, is supported on the x86 architectures by trapping both general protection faults and page faults.</p></dl></dl><font face="Helvetica, sans-serif" class="sans"><h4 class="H4"><i><a name="89600">a.out-Specific Tools for x86</a></i></h4></font><dl class="margin"><dl class="margin"><dd><p class="Body"><a name="89602"> </a>The following tools are specific to the <b class="file">a.out</b> format for x86 processors and the PC simulator. For more information, see the reference entries for each tool.</p></dl><dl class="margin"><dd><div class="Item"><a name="84933"> </a><b class="command">hexDec </b></div><dl class="margin"><dd><div class="Indent"><a name="84934"> </a>converts an <b class="file">a.out</b>-format object file into Motorola hex records. The syntax is:</div><br><dl class="margin"><dd><pre class="Code3"><b><a name="84935">hexDec [-a <i class="textVariable">adrs</i>] [-l] [-v] [-p <i class="textVariable">PC</i>] [-s <i class="textVariable">SP</i>] <i class="textVariable">file</i> </a></b></pre></dl></dl><dd><div class="Item"><a name="84937"> </a><b class="command">aoutToBinDec</b></div><dl class="margin"><dd><div class="Indent"><a name="84938"> </a>extracts text and data segments from an <b class="file">a.out</b> file and writes it to standard output as a simple binary image. The syntax is:</div><br><dl class="margin"><dd><pre class="Code3"><b><a name="84939">aoutToBinDec &lt; <i class="textVariable">inFile</i> &gt; <i class="textVariable">outfile</i> </a></b></pre></dl></dl><dd><div class="Item"><a name="84941"> </a><b class="command">xsymDec </b></div><dl class="margin"><dd><div class="Indent"><a name="84942"> </a>extracts the symbol table from an <b class="file">a.out</b> file. The syntax is:</div><br><dl class="margin"><dd><pre class="Code3"><b><a name="84944">xsymDec &lt; <i class="textVariable">objMod</i> &gt; <i class="textVariable">symTbl</i> </a></b></pre></dl></dl></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="GuideIX.html"><img border="0" alt="[Index]" src="icons/index.gif"></a><a href="x-ix86.html"><img border="0" alt="[Top]" src="icons/top.gif"></a><a href="x-ix862.html"><img border="0" alt="[Prev]" src="icons/prev.gif"></a><a href="x-ix864.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 + -