summaryrefslogtreecommitdiff
path: root/nuttx/Documentation/NuttxUserGuide.html
diff options
context:
space:
mode:
Diffstat (limited to 'nuttx/Documentation/NuttxUserGuide.html')
-rw-r--r--nuttx/Documentation/NuttxUserGuide.html74
1 files changed, 70 insertions, 4 deletions
diff --git a/nuttx/Documentation/NuttxUserGuide.html b/nuttx/Documentation/NuttxUserGuide.html
index 134a46dbc..09bad280c 100644
--- a/nuttx/Documentation/NuttxUserGuide.html
+++ b/nuttx/Documentation/NuttxUserGuide.html
@@ -21,7 +21,7 @@ User's Manual
<P>
Gregory Nutt
<P>
-<SMALL>Last Update: January 28, 2007</SMALL>
+<SMALL>Last Update: March 21, 2007</SMALL>
</CENTER>
<H1>1.0 <A NAME="Introduction">Introduction</A></H1>
@@ -37,7 +37,7 @@ perspective of the firmware developer. This section is divided
into several paragraphs that describe different groups of OS interfaces:
<UL>
<LI>Paragraph 2.1 <A HREF="#Task_Control">Task Control Interfaces</A>
-8nnnnn<LI>Paragraph 2.2 <A HREF="#Task_Schedule">Task Scheduling Interfaces</A>
+<LI>Paragraph 2.2 <A HREF="#Task_Schedule">Task Scheduling Interfaces</A>
<LI>Paragraph 2.3 <A HREF="#Task_Switch">Task Switching Interfaces</A>
<LI>Paragraph 2.4 <A HREF="#Message_Queue">Named Message Queue Interfaces</A>
<LI>Paragraph 2.5 <A HREF="#Semaphores">Counting Semaphore Interfaces</A>
@@ -1840,6 +1840,7 @@ interface of the same name.
<li><a href="#wddelete">2.6.2 wd_delete</a></li>
<li><a href="#wdstart">2.6.3 wd_start</a></li>
<li><a href="#wdcancel">2.6.4 wd_cancel</a></li>
+ <li><a href="#wdgettime">2.6.5 wd_gettime</a></li>
</ul>
<H3><a name="wdcreate">2.6.1 wd_create</a></H3>
@@ -2017,6 +2018,30 @@ VxWorks provides the following comparable interface:
STATUS wdCancel (WDOG_ID wdog);
</PRE>
+<h3><a name="wdgettime">2.6.5 wd_gettime</a></h3>
+<p>
+ <b>Function Prototype:</b>
+</p>
+<pre>
+ #include &lt;wdog.h&gt;
+ Sint wd_gettime(WDOG_ID wdog);
+</pre>
+<p>
+ <b>Description:</b>
+ This function returns the time remaining before the the specified watchdog expires.
+</p>
+<p>
+ <b>Input Parameters:</b>
+ <ul>
+ <li><code>wdog</code>. Identifies the watchdog that the request is for.</li>
+ </ul>
+</p>
+<p>
+ <b>Returned Value:</b>
+ The time in system ticks remaining until the watchdog time expires. Zero
+ means either that wdog is not valid or that the wdog has already expired.
+</p>
+
<HR>
<H2><A NAME="ClocksNTimers">2.7 Clocks and Timers</A></H2>
@@ -2217,7 +2242,8 @@ VxWorks provides the following comparable interface:
<b>Input Parameters:</b>
</p>
<ul>
- <li><code>clockid</code>. Specifies the clock to use as the timing base.</li>
+ <li><code>clockid</code>. Specifies the clock to use as the timing base.
+ Must be <code>CLOCK_REALTIME</code>.</li>
<li><code>evp</code>. Refers to a user allocated sigevent structure that defines the
asynchronous notification. evp may be NULL (see above).</li>
<li><code>timerid</code>. The pre-thread timer created by the call to timer_create().</li>
@@ -2241,6 +2267,13 @@ VxWorks provides the following comparable interface:
to the CPU-time clock that is specified by clock_id and associated with a
thread different thread invoking timer_create().</li>
</ul>
+<p>
+ <b>POSIX Compatibility:</b>
+ Comparable to the POSIX interface of the same name. Differences from the full POSIX implementation include:
+</p>
+<ul>
+ <li>Only <code>CLOCK_REALTIME</code> is supported for the <code>clockid</code> argument.</li>
+</ul>
<H3><a name="timerdelete">2.7.8 timer_delete</A></H3>
<p>
@@ -2275,6 +2308,10 @@ VxWorks provides the following comparable interface:
<ul>
<li><code>EINVAL</code>. The timer specified timerid is not valid.</li>
</ul>
+<p>
+ <b>POSIX Compatibility:</b>
+ Comparable to the POSIX interface of the same name.
+</p>
<H3><a name="timersettime">2.7.9 timer_settime</A></H3>
<p>
@@ -2327,6 +2364,8 @@ VxWorks provides the following comparable interface:
disarmed, together with the previous timer reload value. Timers will not
expire before their scheduled time.
</p>
+ <b>NOTE:</b>At present, the <code>ovalue</code> argument is ignored.
+</p>
<p>
<b>Input Parameters:</b>
</p>
@@ -2334,7 +2373,7 @@ VxWorks provides the following comparable interface:
<li><code>timerid</code>. The pre-thread timer, previously created by the call to timer_create(), to be be set.</li>
<li><code>flags</code>. Specifie characteristics of the timer (see above)</li>
<li><code>value</code>. Specifies the timer value to set</li>
- <li><code>ovalue</code>. A location in which to return the time remaining from the previous timer setting.</li>
+ <li><code>ovalue</code>. A location in which to return the time remaining from the previous timer setting (ignored).</li>
</ul>
<p>
<b>Returned Values:</b>
@@ -2348,6 +2387,13 @@ VxWorks provides the following comparable interface:
<li><code>EINVAL</code>. A value structure specified a nanosecond value less than zero or greater than or equal to 1000 million,
and the it_value member of that structure did not specify zero seconds and nanoseconds.</li>
</ul>
+<p>
+ <b>POSIX Compatibility:</b>
+ Comparable to the POSIX interface of the same name. Differences from the full POSIX implementation include:
+</p>
+<ul>
+ <li>The <code>ovalue</code> argument is ignored.</li>
+</ul>
<H3><a name="timergettime">2.7.10 timer_gettime</A></H3>
<p>
@@ -2368,6 +2414,11 @@ VxWorks provides the following comparable interface:
<code>value</code> will contain the reload value last set by <code>timer_settime()</code>.
</p>
<p>
+ Due to the asynchronous operation of this function, the time reported
+ by this function could be significantly more than that actual time
+ remaining on the timer at any time.
+</p>
+<p>
<b>Input Parameters:</b>
</p>
<ul>
@@ -2386,6 +2437,10 @@ VxWorks provides the following comparable interface:
The <code>timerid</code> argument does not correspond to an ID returned by
<code>timer_create()</code> but not yet deleted by <code>timer_delete()</code>.</li>
</ul>
+<p>
+ <b>POSIX Compatibility:</b>
+ Comparable to the POSIX interface of the same name.
+</p>
<H3><a name="timergetoverrun">2.7.11 timer_getoverrun</A></H3>
<p>
@@ -2415,6 +2470,9 @@ VxWorks provides the following comparable interface:
return value of <code>timer_getoverrun()</code> is unspecified.
</p>
<p>
+ <b>NOTE:</b> This interface is not currently implemented in NuttX.
+</p>
+<p>
<b>Input Parameters:</b>
</p>
<ul>
@@ -2431,6 +2489,13 @@ VxWorks provides the following comparable interface:
The <code>timerid</code> argument does not correspond to an ID returned by
<code>timer_create()</code> but not yet deleted by <code>timer_delete()</code>.</li>
</ul>
+<p>
+ <b>POSIX Compatibility:</b>
+ Comparable to the POSIX interface of the same name. Differences from the full POSIX implementation include:
+</p>
+<ul>
+ <li>This interface is not currently implemented by NuttX.</li>
+</ul>
<B>Assumptions/Limitations:</B>
<P>
@@ -4925,6 +4990,7 @@ notify a task when a message is available on a queue.
<li><a href="#wdcancel">wd_cancel</a></li>
<li><a href="#wdcreate">wd_create</a></li>
<li><a href="#wddelete">wd_delete</a></li>
+ <li><a href="#wdgettime">wd_gettime</a></li>
<li><a href="#wdstart">wd_start</a></li>
</ul>