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

📄 c-xfer2.html

📁 vxworks相关论文
💻 HTML
📖 第 1 页 / 共 2 页
字号:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN"><html><head><link rel="STYLESHEET" type="text/css" href="wrs.css"><title>    Data Upload   </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-xfer.html"><img border="0" alt="[Index]" src="icons/index.gif"></a><a href="c-xfer.html"><img border="0" alt="[Top]" src="icons/top.gif"></a><a href="c-xfer1.html"><img border="0" alt="[Prev]" src="icons/prev.gif"></a><a href="c-xfer3.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="83946">8.2  &nbsp;&nbsp;Data Upload Mode</a></i></h3></font><dl class="margin"><dl class="margin"><dd><p class="Body"><a name="86519"> </a>The upload mode you specify determines when your event data is uploaded to the host:</p></dl><dl class="margin"><p class="listspace"><ul class="Bullet" type="disc"><li><a name="86520"> </a>Deferred upload mode uploads data when you request it. If you have not already stopped logging before requesting upload, WindView stops logging before uploading the data.</li></ul></p><p class="listspace"><ul class="Bullet" type="disc"><li><a name="86521"> </a>Continuous upload mode uploads data automatically and periodically while logging continues.</li></ul></p><p class="listspace"><ul class="Bullet" type="disc"><li><a name="86522"> </a>Post-mortem mode uploads data when you request it. It preserves collected data so you can upload it after a warm reboot of the target. </li></ul></p></dl></dl><font face="Helvetica, sans-serif" class="sans"><h4 class="H4"><i><a name="83948">Deferred Upload Mode </a></i></h4></font><dl class="margin"><dl class="margin"><dd><p class="Body"><a name="86894"> </a>Deferred upload is the default upload mode. Data is collected first and uploaded after collection is complete. Not uploading data during the period you are examining minimizes the effect of logging on target performance and eliminates events associated with upload from the sample. In most cases, there is too much data to be able to examine it as fast as it is generated, so a real-time analysis is not possible anyway. </p><dd><p class="Body"><a name="86934"> </a>WindView 2.0 optimizes deferred upload mode with the following facilities:</p></dl><dl class="margin"><p class="listspace"><ul class="Bullet" type="disc"><li><a name="83950"> </a>The dynamic ring buffer (<i class="term">rBuff</i>) allows maximum flexibility in utilizing available memory for logging (see <a href="c-datacol7.html#85021"><i class="title">7.7&nbsp;Dynamic Buffer Allocation</i></a>). </li></ul></p><p class="listspace"><ul class="Bullet" type="disc"><li><a name="83951"> </a>Logging stops when the buffer is completely full so no data is overwritten. </li></ul></p><p class="listspace"><ul class="Bullet" type="disc"><li><a name="84861"> </a>Triggering provides a facility for focusing event collection on sequences of interest (see <a href="c-trigger.html#84816"><i class="title">6.&nbsp;Triggering</i></a>). </li></ul></p></dl></dl><font face="Helvetica, sans-serif" class="sans"><h4 class="H4"><i><a name="84874">Continuous Upload Mode</a></i></h4></font><dl class="margin"><dl class="margin"><dd><p class="Body"><a name="86904"> </a>Continuous upload mode uploads data periodically as it is being logged. It allows you to collect more data than you have target memory available to store it, with the penalty of having the upload activity reflected in the log being captured. </p><dd><p class="Body"><a name="84875"> </a>Continuous upload mode delivers data to the host whenever the amount of data in the ring buffer passes the upload threshold. If data is being logged faster than it can be uploaded to the host, the ring buffer grows. When the rate of logging slows, the excess buffers are deallocated. If the ring buffer becomes full because it has grown to the maximum size or because the buffer cannot expand fast enough to accommodate peaks in event generation, logging stops.</p></dl></dl><dl class="margin"><dd><font face="Helvetica, sans-serif" size="-1" class="sans"><h5 class="HU"><i><a name="84876">Upload Threshold</a></i></h5></font><dl class="margin"><dd><p class="Body"><a name="84877"> </a>The upload threshold is determined by WindView, and is proportional to the size of the buffers in the ring. The threshold minimizes the intrusion by WindView on the target by minimizing irregularities in the source and sink of the data. Data may be written to the ring buffer in short, intense bursts. When the amount of data in the ring reaches the threshold, the upload task (<b class="task">tWVUpload</b>) is wakened and uploads data until the amount remaining falls below the threshold. The event source may continue to add data to the ring, and if it is added faster than it is uploaded, the ring continues to grow. When data collection stops, the buffers are flushed to upload any remaining data. </p></dl></dl><dl class="margin"><dd><p class="table" callout><table border="0" cellpadding="0" cellspacing="0"><tr valign="top"><td valign="top" width="40"><br><img border="0" alt="*" src="icons/note.gif"></td><td><hr><div class="CalloutCell"><a name="90194"><b class="symbol_UC"><font face="Helvetica, sans-serif" size="-1" class="sans">NOTE:  </font></b></a>Normally the default priority of 150 is appropriate for <b class="task">tWVUpload</b>. On rare occasions, the priority may need to be adjusted. If higher-priority tasks execute often enough to prevent <b class="task">tWVUpload</b> from executing, the event buffer cannot be uploaded when it becomes full. In this case, the logging mechanism turns itself off. For more information, see <a href="c-xfer2.html#85634"><i class="title">Configuring the Upload Task</i></a>.</div></td></tr><tr valign="top"><td></td><td><hr></td></tr><tr valign="middle"><td colspan="20"></td></tr></table></p callout></dl><font face="Helvetica, sans-serif" class="sans"><h4 class="H4"><i><a name="83954">Post-Mortem Mode</a></i></h4></font><dl class="margin"><dl class="margin"><dd><p class="Body"><a name="86908"> </a>Post-mortem analysis is configured to log data that can be used to determine the cause of an application failure. It requires placing the log buffers in a region of memory that is not overwritten when the target reboots.</p><dd><p class="Body"><a name="85627"> </a>Post-mortem mode allows you to recover WindView log data after a warm reboot of the target. This is useful for investigating the events leading up to an unrecoverable error on the target. It works by configuring the ring buffer in a region of memory that is <i class="term">preserved</i>, that is, not overwritten during reboot. Shared memory and off-board memory are not overwritten on reboot. Many BSPs do not reinitialize areas of system memory that are not overwritten by the operating system during a warm reboot. If none of these is available, you can partition your system memory to reserve an area for your post-mortem buffer (see <a href="c-xfer2.html#85527"><i class="title">Configuring VxWorks to Reserve System Memory for Post-Mortem Mode</i></a>).</p></dl></dl><dl class="margin"><dd><p class="table" callout><table border="0" cellpadding="0" cellspacing="0"><tr valign="top"><td valign="top" width="40"><br><img border="0" alt="*" src="icons/note.gif"></td><td><hr><div class="CalloutCell"><a name="90215"><b class="symbol_UC"><font face="Helvetica, sans-serif" size="-1" class="sans">NOTE:  </font></b></a>Be sure that the address range you choose for your preserved memory is aligned according to the requirements of your board.</div></td></tr><tr valign="top"><td></td><td><hr></td></tr><tr valign="middle"><td colspan="20"></td></tr></table>

⌨️ 快捷键说明

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