source: rtems-docs/shell/rtems_specific_commands.rst @ 5ce8e43

5
Last change on this file since 5ce8e43 was 4e85468, checked in by Sebastian Huber <sebastian.huber@…>, on 06/16/17 at 04:19:16

shell: Update task command

  • Property mode set to 100644
File size: 46.1 KB
Line 
1.. comment SPDX-License-Identifier: CC-BY-SA-4.0
2
3.. COMMENT: COPYRIGHT (c) 1988-2008.
4.. COMMENT: On-Line Applications Research Corporation (OAR).
5.. COMMENT: All rights reserved.
6
7RTEMS Specific Commands
8***********************
9
10Introduction
11============
12
13The RTEMS shell has the following RTEMS specific commands:
14
15- shutdown_ - Shutdown the system
16
17- cpuinfo_ - print per-processor information
18
19- cpuuse_ - print or reset per thread cpu usage
20
21- stackuse_ - print per thread stack usage
22
23- perioduse_ - print or reset per period usage
24
25- profreport_ - print a profiling report
26
27- wkspace_ - Display information on Executive Workspace
28
29- config_ - Show the system configuration.
30
31- itask_ - List init tasks for the system
32
33- extension_ - Display information about extensions
34
35- task_ - Display information about tasks
36
37- queue_ - Display information about message queues
38
39- sema_ - display information about semaphores
40
41- region_ - display information about regions
42
43- part_ - display information about partitions
44
45- object_ - Display information about RTEMS objects
46
47- driver_ - Display the RTEMS device driver table
48
49- dname_ - Displays information about named drivers
50
51- pthread_ - Displays information about POSIX threads
52
53Commands
54========
55
56This section details the RTEMS Specific Commands available.  A subsection is
57dedicated to each of the commands and describes the behavior and configuration
58of that command as well as providing an example usage.
59
60.. raw:: latex
61
62   \clearpage
63
64.. _shutdown:
65
66shutdown - Shutdown the system
67------------------------------
68.. index:: shutdown
69
70SYNOPSYS:
71    .. code-block:: shell
72
73        shutdown
74
75DESCRIPTION:
76    This command is used to shutdown the RTEMS application.
77
78EXIT STATUS:
79    This command does not return.
80
81NOTES:
82    NONE
83
84EXAMPLES:
85    The following is an example of how to use ``shutdown``:
86
87    .. code-block:: shell
88
89        SHLL [/] $ shutdown
90        System shutting down at user request
91
92    The user will not see another prompt and the system will shutdown.
93
94.. index:: CONFIGURE_SHELL_NO_COMMAND_SHUTDOWN
95.. index:: CONFIGURE_SHELL_COMMAND_SHUTDOWN
96
97CONFIGURATION:
98    This command is included in the default shell command set.  When building a
99    custom command set, define ``CONFIGURE_SHELL_COMMAND_SHUTDOWN`` to have
100    this command included.
101
102    This command can be excluded from the shell command set by defining
103    ``CONFIGURE_SHELL_NO_COMMAND_SHUTDOWN`` when all shell commands have been
104    configured.
105
106PROGRAMMING INFORMATION:
107    The configuration structure for the ``shutdown`` has the following
108    prototype:
109
110    .. code-block:: c
111
112        extern rtems_shell_cmd_t rtems_shell_SHUTDOWN_Command;
113
114.. raw:: latex
115
116   \clearpage
117
118.. _cpuinfo:
119
120cpuinfo - print per-processor information
121--------------------------------------------
122.. index:: cpuinfo
123
124SYNOPSYS:
125    .. code-block:: shell
126
127        cpuinfo
128
129DESCRIPTION:
130    This command may be used to print per-processor information.
131
132EXIT STATUS:
133    This command returns 0 on success and non-zero if an error is encountered.
134
135EXAMPLES:
136    The following is an example of how to use ``cpuinfo``:
137
138    .. code-block:: shell
139
140        SHLL [/] $ cpuinfo
141        -------------------------------------------------------------------------------
142                                    PER PROCESSOR INFORMATION
143        -------+--------+--------------+-----------------------------------------------
144         INDEX | ONLINE | SCHEDULER ID | SCHEDULER NAME
145        -------+--------+--------------+-----------------------------------------------
146             0 |      1 |   0x0f010001 | UPD
147
148    In the above example, the system has only one processor.  This processor
149    has the index zero and is online.  It is owned by the scheduler with the
150    identifier ``0x0f010001`` and name ``UPD``.
151
152.. index:: CONFIGURE_SHELL_NO_COMMAND_CPUINFO
153.. index:: CONFIGURE_SHELL_COMMAND_CPUINFO
154
155CONFIGURATION:
156    This command is included in the default shell command set.  When building a
157    custom command set, define ``CONFIGURE_SHELL_COMMAND_CPUINFO`` to have this
158    command included.
159
160    This command can be excluded from the shell command set by defining
161    ``CONFIGURE_SHELL_NO_COMMAND_CPUINFO`` when all shell commands have been
162    configured.
163
164.. index:: rtems_shell_rtems_main_cpuinfo
165
166PROGRAMMING INFORMATION:
167    The ``cpuinfo`` is implemented by a C language function which has the following
168    prototype:
169
170    .. code-block:: c
171
172        int rtems_cpu_info_report(
173            const rtems_printer *printer
174        );
175
176    The configuration structure for the ``cpuinfo`` has the following prototype:
177
178    .. code-block:: c
179
180        extern rtems_shell_cmd_t rtems_shell_CPUINFO_Command;
181
182.. raw:: latex
183
184   \clearpage
185
186.. _cpuuse:
187
188cpuuse - print or reset per thread cpu usage
189--------------------------------------------
190.. index:: cpuuse
191
192SYNOPSYS:
193    .. code-block:: shell
194
195        cpuuse [-r]
196
197DESCRIPTION:
198    This command may be used to print a report on the per thread cpu usage or
199    to reset the per thread CPU usage statistics. When invoked with the ``-r``
200    option, the CPU usage statistics are reset.
201
202EXIT STATUS:
203    This command returns 0 on success and non-zero if an error is encountered.
204
205NOTES:
206    The granularity of the timing information reported is dependent upon the
207    BSP and the manner in which RTEMS was built.  In the default RTEMS
208    configuration, if the BSP supports nanosecond granularity timestamps, then
209    the information reported will be highly accurate. Otherwise, the accuracy
210    of the information reported is limited by the clock tick quantum.
211
212EXAMPLES:
213    The following is an example of how to use ``cpuuse``:
214
215    .. code-block:: shell
216
217        [/] cpuuse
218        -------------------------------------------------------------------------------
219                                      CPU USAGE BY THREAD
220        ------------+----------------------------------------+---------------+---------
221         ID         | NAME                                   | SECONDS       | PERCENT
222        ------------+----------------------------------------+---------------+---------
223         0x09010001 | IDLE                                   |     11.444381 |  73.938
224         0x0a010001 | UI1                                    |      0.206754 |   1.335
225         0x0a010002 | BSWP                                   |      0.008277 |   0.053
226         0x0a010003 | BRDA                                   |      0.000952 |   0.006
227         0x0a010004 | MDIA                                   |      0.000334 |   0.002
228         0x0a010005 | TIME                                   |      0.912809 |   5.895
229         0x0a010006 | IRQS                                   |      0.004810 |   0.031
230         0x0a010007 | swi1: netisr 0                         |      0.002593 |   0.016
231         0x0a010008 | kqueue_ctx task                        |      0.000663 |   0.004
232         0x0a010009 | swi5: fast task                        |      0.000059 |   0.000
233         0x0a01000a | thread taskq                           |      0.000057 |   0.000
234         0x0a01000b | swi6: task queu                        |      0.003063 |   0.019
235         0x0a01000c | DHCP                                   |      1.391745 |   8.986
236         0x0a01000d | FTPa                                   |      0.002203 |   0.014
237         0x0a01000e | FTPb                                   |      0.000233 |   0.001
238         0x0a01000f | FTPc                                   |      0.000226 |   0.001
239         0x0a010010 | FTPd                                   |      0.000228 |   0.001
240         0x0a010011 | FTPD                                   |      0.002959 |   0.019
241         0x0a010012 | TNTD                                   |      0.001111 |   0.007
242         0x0a010013 | SHLL                                   |      1.508445 |   9.736
243        ------------+----------------------------------------+---------------+---------
244         TIME SINCE LAST CPU USAGE RESET IN SECONDS:                         15.492171
245        -------------------------------------------------------------------------------
246        [/] # cpuuse -r
247        Resetting CPU Usage information
248        [/] # cpuuse
249        -------------------------------------------------------------------------------
250                                      CPU USAGE BY THREAD
251        ------------+----------------------------------------+---------------+---------
252         ID         | NAME                                   | SECONDS       | PERCENT
253        ------------+----------------------------------------+---------------+---------
254         0x09010001 | IDLE                                   |      0.000000 |   0.000
255         0x0a010001 | UI1                                    |      0.000000 |   0.000
256         0x0a010002 | BSWP                                   |      0.000000 |   0.000
257         0x0a010003 | BRDA                                   |      0.000000 |   0.000
258         0x0a010004 | MDIA                                   |      0.000000 |   0.000
259         0x0a010005 | TIME                                   |      0.000000 |   0.000
260         0x0a010006 | IRQS                                   |      0.000000 |   0.000
261         0x0a010007 | swi1: netisr 0                         |      0.000000 |   0.000
262         0x0a010008 | kqueue_ctx task                        |      0.000000 |   0.000
263         0x0a010009 | swi5: fast task                        |      0.000000 |   0.000
264         0x0a01000a | thread taskq                           |      0.000000 |   0.000
265         0x0a01000b | swi6: task queu                        |      0.000000 |   0.000
266         0x0a01000c | DHCP                                   |      0.000000 |   0.000
267         0x0a01000d | FTPa                                   |      0.000000 |   0.000
268         0x0a01000e | FTPb                                   |      0.000000 |   0.000
269         0x0a01000f | FTPc                                   |      0.000000 |   0.000
270         0x0a010010 | FTPd                                   |      0.000000 |   0.000
271         0x0a010011 | FTPD                                   |      0.000000 |   0.000
272         0x0a010012 | TNTD                                   |      0.000000 |   0.000
273         0x0a010013 | SHLL                                   |      0.016503 |  99.962
274        ------------+----------------------------------------+---------------+---------
275         TIME SINCE LAST CPU USAGE RESET IN SECONDS:                          0.016509
276        -------------------------------------------------------------------------------
277
278    In the above example, the system did something for roughly 15 seconds when the
279    first report was generated.  The ``cpuuse -r`` and ``cpuuse`` commands were
280    pasted from another window so were executed with no gap between.  In the
281    second report, only the ``SHLL`` thread has run since the CPU Usage was
282    reset.  It has consumed approximately 16.509 milliseconds of CPU time
283    processing the two commands and generating the output.
284
285.. index:: CONFIGURE_SHELL_NO_COMMAND_CPUUSE
286.. index:: CONFIGURE_SHELL_COMMAND_CPUUSE
287
288CONFIGURATION:
289    This command is included in the default shell command set.  When building a
290    custom command set, define ``CONFIGURE_SHELL_COMMAND_CPUUSE`` to have this
291    command included.
292
293    This command can be excluded from the shell command set by defining
294    ``CONFIGURE_SHELL_NO_COMMAND_CPUUSE`` when all shell commands have been
295    configured.
296
297.. index:: rtems_shell_rtems_main_cpuuse
298
299PROGRAMMING INFORMATION:
300    The ``cpuuse`` is implemented by a C language function which has the following
301    prototype:
302
303    .. code-block:: c
304
305        int rtems_shell_rtems_main_cpuuse(
306           int    argc,
307           char **argv
308        );
309
310    The configuration structure for the ``cpuuse`` has the following prototype:
311
312    .. code-block:: c
313
314        extern rtems_shell_cmd_t rtems_shell_CPUUSE_Command;
315
316.. raw:: latex
317
318   \clearpage
319
320.. _stackuse:
321
322stackuse - print per thread stack usage
323---------------------------------------
324.. index:: stackuse
325
326SYNOPSYS:
327    .. code-block:: shell
328
329        stackuse
330
331DESCRIPTION:
332    This command prints a Stack Usage Report for all of the tasks and threads
333    in the system.  On systems which support it, the usage of the interrupt
334    stack is also included in the report.
335
336EXIT STATUS:
337    This command always succeeds and returns 0.
338
339NOTES:
340    The ``CONFIGURE_STACK_CHECKER_ENABLED`` ``confdefs.h`` constant must be
341    defined when the application is configured for this command to have any
342    information to report.
343
344EXAMPLES:
345    The following is an example of how to use ``stackuse``:
346
347    .. code-block:: shell
348
349        [/] # stackuse
350                                     STACK USAGE BY THREAD
351        ID         NAME                  LOW        HIGH       CURRENT    AVAIL  USED
352        0x09010001 IDLE                  0x03559960 0x03564055 0x03563728   4080    584
353        0x0a010001 UI1                   0x03564664 0x03597431 0x03596976  32752   4168
354        0x0a010002 BSWP                  0x03714576 0x03718671 0x03718408   4080    564
355        0x0a010003 BRDA                  0x03718680 0x03722775 0x03722480   4080    596
356        0x0a010004 MDIA                  0x03722808 0x03755575 0x03755288  32752    588
357        0x0a010005 TIME                  0x03755664 0x03788431 0x03788168  32752   1448
358        0x0a010006 IRQS                  0x03788440 0x03821207 0x03820952  32752    608
359        0x0a010007 swi1: netisr 0        0x03896880 0x03929647 0x03929376  32752    820
360        0x0a010008 kqueue_ctx task       0x03929872 0x03962639 0x03962392  32752    580
361        0x0a010009 swi5: fast task       0x03963088 0x03995855 0x03995584  32752    572
362        0x0a01000a thread taskq          0x03996080 0x04028847 0x04028600  32752    548
363        0x0a01000b swi6: task queu       0x04029296 0x04062063 0x04061792  32752   1364
364        0x0a01000c DHCP                  0x04250192 0x04258383 0x04257288   8176   2764
365        0x0a01000d FTPa                  0x04258792 0x04266983 0x04265792   8176   1548
366        0x0a01000e FTPb                  0x04267120 0x04275311 0x04274120   8176   1496
367        0x0a01000f FTPc                  0x04275448 0x04283639 0x04282448   8176   1496
368        0x0a010010 FTPd                  0x04283776 0x04291967 0x04290776   8176   1496
369        0x0a010011 FTPD                  0x04292104 0x04296199 0x04295784   4080    772
370        0x0a010012 TNTD                  0x04297088 0x04329855 0x04329368  32752    804
371        0x0a010013 SHLL                  0x04329976 0x04346359 0x04344576  16368   3616
372
373.. index:: CONFIGURE_SHELL_NO_COMMAND_STACKUSE
374.. index:: CONFIGURE_SHELL_COMMAND_STACKUSE
375
376CONFIGURATION:
377    This command is included in the default shell command set.  When building a
378    custom command set, define ``CONFIGURE_SHELL_COMMAND_STACKUSE`` to have
379    this command included.
380
381    This command can be excluded from the shell command set by defining
382    ``CONFIGURE_SHELL_NO_COMMAND_STACKUSE`` when all shell commands have been
383    configured.
384
385.. index:: rtems_shell_rtems_main_stackuse
386
387PROGRAMMING INFORMATION:
388    The ``stackuse`` is implemented by a C language function which has the
389    following prototype:
390
391    .. code-block:: c
392
393        int rtems_shell_rtems_main_stackuse(
394            int    argc,
395            char **argv
396        );
397
398    The configuration structure for the ``stackuse`` has the following prototype:
399
400    .. code-block:: c
401
402        extern rtems_shell_cmd_t rtems_shell_STACKUSE_Command;
403
404.. raw:: latex
405
406   \clearpage
407
408.. _perioduse:
409
410perioduse - print or reset per period usage
411-------------------------------------------
412.. index:: perioduse
413
414SYNOPSYS:
415    .. code-block:: shell
416
417        perioduse [-r]
418
419DESCRIPTION:
420    This command may be used to print a statistics report on the rate monotonic
421    periods in the application or to reset the rate monotonic period usage
422    statistics. When invoked with the ``-r`` option, the usage statistics are
423    reset.
424
425EXIT STATUS:
426    This command returns 0 on success and non-zero if an error is encountered.
427
428NOTES:
429    The granularity of the timing information reported is dependent upon the
430    BSP and the manner in which RTEMS was built.  In the default RTEMS
431    configuration, if the BSP supports nanosecond granularity timestamps, then
432    the information reported will be highly accurate. Otherwise, the accuracy
433    of the information reported is limited by the clock tick quantum.
434
435EXAMPLES:
436    The following is an example of how to use ``perioduse``:
437
438    .. code-block:: shell
439
440        SHLL [/] $ perioduse
441        Period information by period
442        --- CPU times are in seconds ---
443        --- Wall times are in seconds ---
444        ID     OWNER COUNT MISSED          CPU TIME                  WALL TIME
445        MIN/MAX/AVG                MIN/MAX/AVG
446        0x42010001 TA1    502      0 0:000039/0:042650/0:004158 0:000039/0:020118/0:002848
447        0x42010002 TA2    502      0 0:000041/0:042657/0:004309 0:000041/0:020116/0:002848
448        0x42010003 TA3    501      0 0:000041/0:041564/0:003653 0:000041/0:020003/0:002814
449        0x42010004 TA4    501      0 0:000043/0:044075/0:004911 0:000043/0:020004/0:002814
450        0x42010005 TA5     10      0 0:000065/0:005413/0:002739 0:000065/1:000457/0:041058
451        MIN/MAX/AVG                MIN/MAX/AVG
452        SHLL [/] $ perioduse -r
453        Resetting Period Usage information
454        SHLL [/] $ perioduse
455        --- CPU times are in seconds ---
456        --- Wall times are in seconds ---
457        ID     OWNER COUNT MISSED          CPU TIME                  WALL TIME
458        MIN/MAX/AVG                MIN/MAX/AVG
459        0x42010001 TA1      0      0
460        0x42010002 TA2      0      0
461        0x42010003 TA3      0      0
462        0x42010004 TA4      0      0
463        0x42010005 TA5      0      0
464
465.. index:: CONFIGURE_SHELL_NO_COMMAND_PERIODUSE
466.. index:: CONFIGURE_SHELL_COMMAND_PERIODUSE
467
468CONFIGURATION:
469    This command is included in the default shell command set.  When building a
470    custom command set, define ``CONFIGURE_SHELL_COMMAND_PERIODUSE`` to have
471    this command included.
472
473    This command can be excluded from the shell command set by defining
474    ``CONFIGURE_SHELL_NO_COMMAND_PERIODUSE`` when all shell commands have been
475    configured.
476
477.. index:: rtems_shell_rtems_main_perioduse
478
479PROGRAMMING INFORMATION:
480    The ``perioduse`` is implemented by a C language function which has the
481    following prototype:
482
483    .. code-block:: c
484
485        int rtems_shell_rtems_main_perioduse(
486            int    argc,
487            char **argv
488        );
489
490    The configuration structure for the ``perioduse`` has the following prototype:
491
492    .. code-block:: c
493
494        extern rtems_shell_cmd_t rtems_shell_PERIODUSE_Command;
495
496.. raw:: latex
497
498   \clearpage
499
500.. _profreport:
501
502profreport - print a profiling report
503-------------------------------------
504.. index:: profreport
505
506SYNOPSYS:
507    .. code-block:: shell
508
509        profreport
510
511DESCRIPTION:
512    This command may be used to print a profiling report if profiling is built
513    into the RTEMS kernel.
514
515EXIT STATUS:
516    This command returns 0.
517
518NOTES:
519    Profiling must be enabled at build configuration time to get profiling
520    information.
521
522EXAMPLES:
523    The following is an example of how to use ``profreport``:
524
525    .. code-block:: shell
526
527        SHLL [/] $ profreport
528        <ProfilingReport name="Shell">
529        <PerCPUProfilingReport processorIndex="0">
530        <MaxThreadDispatchDisabledTime unit="ns">10447</MaxThreadDispatchDisabledTime>
531        <MeanThreadDispatchDisabledTime unit="ns">2</MeanThreadDispatchDisabledTime>
532        <TotalThreadDispatchDisabledTime unit="ns">195926627</TotalThreadDispatchDisabledTime>
533        <ThreadDispatchDisabledCount>77908688</ThreadDispatchDisabledCount>
534        <MaxInterruptDelay unit="ns">0</MaxInterruptDelay>
535        <MaxInterruptTime unit="ns">688</MaxInterruptTime>
536        <MeanInterruptTime unit="ns">127</MeanInterruptTime>
537        <TotalInterruptTime unit="ns">282651157</TotalInterruptTime>
538        <InterruptCount>2215855</InterruptCount>
539        </PerCPUProfilingReport>
540        <PerCPUProfilingReport processorIndex="1">
541        <MaxThreadDispatchDisabledTime unit="ns">9053</MaxThreadDispatchDisabledTime>
542        <MeanThreadDispatchDisabledTime unit="ns">41</MeanThreadDispatchDisabledTime>
543        <TotalThreadDispatchDisabledTime unit="ns">3053830335</TotalThreadDispatchDisabledTime>
544        <ThreadDispatchDisabledCount>73334202</ThreadDispatchDisabledCount>
545        <MaxInterruptDelay unit="ns">0</MaxInterruptDelay>
546        <MaxInterruptTime unit="ns">57</MaxInterruptTime>
547        <MeanInterruptTime unit="ns">35</MeanInterruptTime>
548        <TotalInterruptTime unit="ns">76980203</TotalInterruptTime>
549        <InterruptCount>2141179</InterruptCount>
550        </PerCPUProfilingReport>
551        <SMPLockProfilingReport name="SMP lock stats">
552        <MaxAcquireTime unit="ns">608</MaxAcquireTime>
553        <MaxSectionTime unit="ns">1387</MaxSectionTime>
554        <MeanAcquireTime unit="ns">112</MeanAcquireTime>
555        <MeanSectionTime unit="ns">338</MeanSectionTime>
556        <TotalAcquireTime unit="ns">119031</TotalAcquireTime>
557        <TotalSectionTime unit="ns">357222</TotalSectionTime>
558        <UsageCount>1055</UsageCount>
559        <ContentionCount initialQueueLength="0">1055</ContentionCount>
560        <ContentionCount initialQueueLength="1">0</ContentionCount>
561        <ContentionCount initialQueueLength="2">0</ContentionCount>
562        <ContentionCount initialQueueLength="3">0</ContentionCount>
563        </SMPLockProfilingReport>
564        <SMPLockProfilingReport name="Giant">
565        <MaxAcquireTime unit="ns">4186</MaxAcquireTime>
566        <MaxSectionTime unit="ns">7575</MaxSectionTime>
567        <MeanAcquireTime unit="ns">160</MeanAcquireTime>
568        <MeanSectionTime unit="ns">183</MeanSectionTime>
569        <TotalAcquireTime unit="ns">1772793111</TotalAcquireTime>
570        <TotalSectionTime unit="ns">2029733879</TotalSectionTime>
571        <UsageCount>11039140</UsageCount>
572        <ContentionCount initialQueueLength="0">11037655</ContentionCount>
573        <ContentionCount initialQueueLength="1">1485</ContentionCount>
574        <ContentionCount initialQueueLength="2">0</ContentionCount>
575        <ContentionCount initialQueueLength="3">0</ContentionCount>
576        </SMPLockProfilingReport>
577        </ProfilingReport>
578
579.. index:: CONFIGURE_SHELL_NO_COMMAND_PROFREPORT
580.. index:: CONFIGURE_SHELL_COMMAND_PROFREPORT
581
582CONFIGURATION:
583    When building a custom command set, define
584    ``CONFIGURE_SHELL_COMMAND_PROFREPORT`` to have this command included.
585
586    This command can be excluded from the shell command set by defining
587    ``CONFIGURE_SHELL_NO_COMMAND_PROFREPORT`` when all shell commands have been
588    configured.
589
590PROGRAMMING INFORMATION:
591    The configuration structure for the ``profreport`` has the following
592    prototype:
593
594    .. code-block:: c
595
596        extern rtems_shell_cmd_t rtems_shell_PROFREPORT_Command;
597
598.. raw:: latex
599
600   \clearpage
601
602.. _wkspace:
603
604wkspace - display information on executive workspace
605----------------------------------------------------
606.. index:: wkspace
607
608SYNOPSYS:
609    .. code-block:: shell
610
611        wkspace
612
613DESCRIPTION:
614    This command prints information on the current state of the RTEMS Executive
615    Workspace reported.  This includes the following information:
616
617    - Number of free blocks
618
619    - Largest free block
620
621    - Total bytes free
622
623    - Number of used blocks
624
625    - Largest used block
626
627    - Total bytes used
628
629EXIT STATUS:
630    This command always succeeds and returns 0.
631
632NOTES:
633    NONE
634
635EXAMPLES:
636    The following is an example of how to use ``wkspace``:
637
638    .. code-block:: shell
639
640        SHLL [/] $ wkspace
641        Number of free blocks: 1
642        Largest free block:    132336
643        Total bytes free:      132336
644        Number of used blocks: 36
645        Largest used block:    16408
646        Total bytes used:      55344
647
648.. index:: CONFIGURE_SHELL_NO_COMMAND_WKSPACE
649.. index:: CONFIGURE_SHELL_COMMAND_WKSPACE
650
651CONFIGURATION:
652    This command is included in the default shell command set.  When building a
653    custom command set, define ``CONFIGURE_SHELL_COMMAND_WKSPACE`` to have this
654    command included.
655
656    This command can be excluded from the shell command set by defining
657    ``CONFIGURE_SHELL_NO_COMMAND_WKSPACE`` when all shell commands have been
658    configured.
659
660.. index:: rtems_shell_rtems_main_wkspace
661
662PROGRAMMING INFORMATION:
663    The ``wkspace`` is implemented by a C language function which has the
664    following prototype:
665
666    .. code-block:: c
667
668        int rtems_shell_rtems_main_wkspace(
669            int    argc,
670            char **argv
671        );
672
673    The configuration structure for the ``wkspace`` has the following prototype:
674
675    .. code-block:: c
676
677        extern rtems_shell_cmd_t rtems_shell_WKSPACE_Command;
678
679.. raw:: latex
680
681   \clearpage
682
683.. _config:
684
685config - show the system configuration.
686---------------------------------------
687.. index:: config
688
689SYNOPSYS:
690    .. code-block:: shell
691
692        config
693
694DESCRIPTION:
695    This command display information about the RTEMS Configuration.
696
697EXIT STATUS:
698    This command always succeeds and returns 0.
699
700NOTES:
701    At this time, it does not report every configuration parameter.  This is an
702    area in which user submissions or sponsorship of a developer would be
703    appreciated.
704
705EXAMPLES:
706    The following is an example of how to use ``config``:
707
708    .. code-block:: shell
709
710        SHLL [/] $ config
711        INITIAL (startup) Configuration Info
712
713        WORKSPACE      start: 0x23d22e0;  size: 0x2dd20
714        TIME           usec/tick: 10000;  tick/timeslice: 50;  tick/sec: 100
715        MAXIMUMS       tasks: 20;  timers: 0;  sems: 50;  que's: 20;  ext's: 1
716        partitions: 0;  regions: 0;  ports: 0;  periods: 0
717
718.. index:: CONFIGURE_SHELL_NO_COMMAND_CONFIG
719.. index:: CONFIGURE_SHELL_COMMAND_CONFIG
720
721CONFIGURATION:
722    This command is included in the default shell command set.  When building a
723    custom command set, define ``CONFIGURE_SHELL_COMMAND_CONFIG`` to have this
724    command included.
725
726    This command can be excluded from the shell command set by defining
727    ``CONFIGURE_SHELL_NO_COMMAND_CONFIG`` when all shell commands have been
728    configured.
729
730.. index:: rtems_shell_rtems_main_config
731
732PROGRAMMING INFORMATION:
733    The ``config`` is implemented by a C language function which has the
734    following prototype:
735
736    .. code-block:: c
737
738        int rtems_shell_rtems_main_config(
739            int    argc,
740            char **argv
741        );
742
743    The configuration structure for the ``config`` has the following prototype:
744
745    .. code-block:: c
746
747        extern rtems_shell_cmd_t rtems_shell_CONFIG_Command;
748
749.. raw:: latex
750
751   \clearpage
752
753.. _itask:
754
755itask - list init tasks for the system
756--------------------------------------
757.. index:: itask
758
759SYNOPSYS:
760    .. code-block:: shell
761
762        itask
763
764DESCRIPTION:
765    This command prints a report on the set of initialization tasks and threads
766    in the system.
767
768EXIT STATUS:
769    This command always succeeds and returns 0.
770
771NOTES:
772    At this time, it includes only Classic API Initialization Tasks.  This is an
773    area in which user submissions or sponsorship of a developer would be
774    appreciated.
775
776EXAMPLES:
777    The following is an example of how to use ``itask``:
778
779    .. code-block:: shell
780
781        SHLL [/] $ itask
782        #    NAME   ENTRY        ARGUMENT    PRIO   MODES  ATTRIBUTES   STACK SIZE
783        ------------------------------------------------------------------------------
784        0   UI1    [0x2002258] 0 [0x0]        1    nP      DEFAULT     4096 [0x1000]
785
786.. index:: CONFIGURE_SHELL_NO_COMMAND_ITASK
787.. index:: CONFIGURE_SHELL_COMMAND_ITASK
788
789CONFIGURATION:
790    This command is included in the default shell command set.  When building a
791    custom command set, define ``CONFIGURE_SHELL_COMMAND_ITASK`` to have this
792    command included.
793
794    This command can be excluded from the shell command set by defining
795    ``CONFIGURE_SHELL_NO_COMMAND_ITASK`` when all shell commands have been
796    configured.
797
798.. index:: rtems_shell_rtems_main_itask
799
800PROGRAMMING INFORMATION:
801    The ``itask`` is implemented by a C language function which has the
802    following prototype:
803
804    .. code-block:: c
805
806        int rtems_shell_rtems_main_itask(
807            int    argc,
808            char **argv
809        );
810
811    The configuration structure for the ``itask`` has the following prototype:
812
813    .. code-block:: c
814
815        extern rtems_shell_cmd_t rtems_shell_ITASK_Command;
816
817.. raw:: latex
818
819   \clearpage
820
821.. _extension:
822
823extension - display information about extensions
824------------------------------------------------
825.. index:: extension
826
827SYNOPSYS:
828    .. code-block:: shell
829
830        extension [id [id ...]]
831
832DESCRIPTION:
833    When invoked with no arguments, this command prints information on the set
834    of User Extensions currently active in the system.
835
836    If invoked with a set of ids as arguments, then just those objects are
837    included in the information printed.
838
839EXIT STATUS:
840    This command returns 0 on success and non-zero if an error is encountered.
841
842NOTES:
843    NONE
844
845EXAMPLES:
846    The following is an example of using the ``extension`` command on a system
847    with no user extensions.
848
849    .. code-block:: shell
850
851        SHLL [/] $ extension
852        ID       NAME
853        ------------------------------------------------------------------------------
854
855.. index:: CONFIGURE_SHELL_NO_COMMAND_EXTENSION
856.. index:: CONFIGURE_SHELL_COMMAND_EXTENSION
857
858CONFIGURATION:
859    This command is included in the default shell command set.  When building a
860    custom command set, define ``CONFIGURE_SHELL_COMMAND_EXTENSION`` to have
861    this command included.
862
863    This command can be excluded from the shell command set by defining
864    ``CONFIGURE_SHELL_NO_COMMAND_EXTENSION`` when all shell commands have been
865    configured.
866
867.. index:: rtems_shell_rtems_main_extension
868
869PROGRAMMING INFORMATION:
870    The ``extension`` is implemented by a C language function which has the
871    following prototype:
872
873    .. code-block:: c
874
875        int rtems_shell_rtems_main_extension(
876            int    argc,
877            char **argv
878        );
879
880    The configuration structure for the ``extension`` has the following prototype:
881
882    .. code-block:: c
883
884        extern rtems_shell_cmd_t rtems_shell_EXTENSION_Command;
885
886.. raw:: latex
887
888   \clearpage
889
890.. _task:
891
892task - display information about tasks
893--------------------------------------
894.. index:: task
895
896SYNOPSYS:
897    .. code-block:: shell
898
899        task [id [id ...]]
900
901DESCRIPTION:
902    When invoked with no arguments, this command prints information on the set
903    of Classic API Tasks currently active in the system.
904
905    If invoked with a set of ids as arguments, then just those objects are
906    included in the information printed.
907
908EXIT STATUS:
909    This command returns 0 on success and non-zero if an error is encountered.
910
911NOTES:
912    NONE
913
914EXAMPLES:
915    The following is an example of how to use the ``task`` on an application
916    with just two Classic API tasks:
917
918    .. code-block:: shell
919
920        SHLL [/] # task
921        ID       NAME                 SHED PRI STATE  MODES    EVENTS WAITINFO
922        ------------------------------------------------------------------------------
923        0a010001 UI1                  UPD  254 EV     P:T:nA   NONE
924        0a010002 SHLL                 UPD  100 READY  P:T:nA   NONE
925
926.. index:: CONFIGURE_SHELL_NO_COMMAND_TASK
927.. index:: CONFIGURE_SHELL_COMMAND_TASK
928
929CONFIGURATION:
930    This command is included in the default shell command set.  When building a
931    custom command set, define ``CONFIGURE_SHELL_COMMAND_TASK`` to have this
932    command included.
933
934    This command can be excluded from the shell command set by defining
935    ``CONFIGURE_SHELL_NO_COMMAND_TASK`` when all shell commands have been
936    configured.
937
938.. index:: rtems_shell_rtems_main_task
939
940PROGRAMMING INFORMATION:
941    The ``task`` is implemented by a C language function which has the
942    following prototype:
943
944    .. code-block:: shell
945
946        int rtems_shell_rtems_main_task(
947            int    argc,
948            char **argv
949        );
950
951    The configuration structure for the ``task`` has the following prototype:
952
953    .. code-block:: c
954
955        extern rtems_shell_cmd_t rtems_shell_TASK_Command;
956
957.. raw:: latex
958
959   \clearpage
960
961.. _queue:
962
963queue - display information about message queues
964------------------------------------------------
965.. index:: queue
966
967SYNOPSYS:
968    .. code-block:: shell
969
970        queue [id [id ... ]]
971
972DESCRIPTION:
973    When invoked with no arguments, this command prints information on the set
974    of Classic API Message Queues currently active in the system.
975
976    If invoked with a set of ids as arguments, then just those objects are
977    included in the information printed.
978
979EXIT STATUS:
980    This command returns 0 on success and non-zero if an error is encountered.
981
982NOTES:
983    NONE
984
985EXAMPLES:
986    The following is an example of using the ``queue`` command on a system with
987    no Classic API Message Queues.
988
989    .. code-block:: shell
990
991        SHLL [/] $ queue
992        ID       NAME   ATTRIBUTES   PEND   MAXPEND  MAXSIZE
993        ------------------------------------------------------------------------------
994
995.. index:: CONFIGURE_SHELL_NO_COMMAND_QUEUE
996.. index:: CONFIGURE_SHELL_COMMAND_QUEUE
997
998CONFIGURATION:
999    This command is included in the default shell command set.  When building a
1000    custom command set, define ``CONFIGURE_SHELL_COMMAND_QUEUE`` to have this
1001    command included.
1002
1003    This command can be excluded from the shell command set by defining
1004    ``CONFIGURE_SHELL_NO_COMMAND_QUEUE`` when all shell commands have been
1005    configured.
1006
1007.. index:: rtems_shell_rtems_main_queue
1008
1009PROGRAMMING INFORMATION:
1010    The ``queue`` is implemented by a C language function which has the
1011    following prototype:
1012
1013    .. code-block:: c
1014
1015        int rtems_shell_rtems_main_queue(
1016            int    argc,
1017            char **argv
1018        );
1019
1020    The configuration structure for the ``queue`` has the following prototype:
1021
1022    .. code-block:: c
1023
1024        extern rtems_shell_cmd_t rtems_shell_QUEUE_Command;
1025
1026.. raw:: latex
1027
1028   \clearpage
1029
1030.. _sema:
1031
1032sema - display information about semaphores
1033-------------------------------------------
1034.. index:: sema
1035
1036SYNOPSYS:
1037    .. code-block:: shell
1038
1039        sema [id [id ... ]]
1040
1041DESCRIPTION:
1042    When invoked with no arguments, this command prints information on the set
1043    of Classic API Semaphores currently active in the system.
1044
1045    If invoked with a set of objects ids as arguments, then just those objects
1046    are included in the information printed.
1047
1048EXIT STATUS:
1049    This command returns 0 on success and non-zero if an error is encountered.
1050
1051NOTES:
1052    NONE
1053
1054EXAMPLES:
1055    The following is an example of how to use ``sema``:
1056
1057    .. code-block:: shell
1058
1059        SHLL [/] $ sema
1060        ID       NAME   ATTR        PRICEIL CURR_CNT HOLDID
1061        ------------------------------------------------------------------------------
1062        1a010001   LBIO   PR:BI:IN      0        1     00000000
1063        1a010002   TRmi   PR:BI:IN      0        1     00000000
1064        1a010003   LBI00  PR:BI:IN      0        1     00000000
1065        1a010004   TRia   PR:BI:IN      0        1     00000000
1066        1a010005   TRoa   PR:BI:IN      0        1     00000000
1067        1a010006   TRxa   <assoc.c: BAD NAME>   0    0 09010001
1068        1a010007   LBI01  PR:BI:IN      0        1     00000000
1069        1a010008   LBI02  PR:BI:IN      0        1     00000000
1070
1071.. index:: CONFIGURE_SHELL_NO_COMMAND_SEMA
1072.. index:: CONFIGURE_SHELL_COMMAND_SEMA
1073
1074CONFIGURATION:
1075    This command is included in the default shell command set.  When building a
1076    custom command set, define ``CONFIGURE_SHELL_COMMAND_SEMA`` to have this
1077    command included.
1078
1079    This command can be excluded from the shell command set by defining
1080    ``CONFIGURE_SHELL_NO_COMMAND_SEMA`` when all shell commands have been
1081    configured.
1082
1083.. index:: rtems_shell_rtems_main_sema
1084
1085PROGRAMMING INFORMATION:
1086    The ``sema`` is implemented by a C language function which has the following
1087    prototype:
1088
1089    .. code-block:: c
1090
1091        int rtems_shell_rtems_main_sema(
1092            int    argc,
1093            char **argv
1094        );
1095
1096    The configuration structure for the ``sema`` has the following prototype:
1097
1098    .. code-block:: c
1099
1100        extern rtems_shell_cmd_t rtems_shell_SEMA_Command;
1101
1102.. raw:: latex
1103
1104   \clearpage
1105
1106.. _region:
1107
1108region - display information about regions
1109------------------------------------------
1110.. index:: region
1111
1112SYNOPSYS:
1113    .. code-block:: shell
1114
1115        region [id [id ... ]]
1116
1117DESCRIPTION:
1118    When invoked with no arguments, this command prints information on the set
1119    of Classic API Regions currently active in the system.
1120
1121    If invoked with a set of object ids as arguments, then just those object
1122    are included in the information printed.
1123
1124EXIT STATUS:
1125    This command returns 0 on success and non-zero if an error is encountered.
1126
1127NOTES:
1128    NONE
1129
1130EXAMPLES:
1131    The following is an example of using the ``region`` command on a system
1132    with no user extensions.
1133
1134    .. code-block:: shell
1135
1136        SHLL [/] $ region
1137        ID       NAME   ATTR        STARTADDR LENGTH    PAGE_SIZE USED_BLOCKS
1138        ------------------------------------------------------------------------------
1139
1140.. index:: CONFIGURE_SHELL_NO_COMMAND_REGION
1141.. index:: CONFIGURE_SHELL_COMMAND_REGION
1142
1143CONFIGURATION:
1144    This command is included in the default shell command set.  When building a
1145    custom command set, define ``CONFIGURE_SHELL_COMMAND_REGION`` to have this
1146    command included.
1147
1148    This command can be excluded from the shell command set by defining
1149    ``CONFIGURE_SHELL_NO_COMMAND_REGION`` when all shell commands have been
1150    configured.
1151
1152.. index:: rtems_shell_rtems_main_region
1153
1154PROGRAMMING INFORMATION:
1155    The ``region`` is implemented by a C language function which has the
1156    following prototype:
1157
1158    .. code-block:: c
1159
1160        int rtems_shell_rtems_main_region(
1161            int    argc,
1162            char **argv
1163        );
1164
1165    The configuration structure for the ``region`` has the following prototype:
1166
1167    .. code-block:: c
1168
1169        extern rtems_shell_cmd_t rtems_shell_REGION_Command;
1170
1171.. raw:: latex
1172
1173   \clearpage
1174
1175.. _part:
1176
1177part - display information about partitions
1178-------------------------------------------
1179.. index:: part
1180
1181SYNOPSYS:
1182    .. code-block:: shell
1183
1184        part [id [id ... ]]
1185
1186DESCRIPTION:
1187    When invoked with no arguments, this command prints information on the set
1188    of Classic API Partitions currently active in the system.
1189
1190    If invoked with a set of object ids as arguments, then just those objects
1191    are included in the information printed.
1192
1193EXIT STATUS:
1194    This command returns 0 on success and non-zero if an error is encountered.
1195
1196NOTES:
1197    NONE
1198
1199EXAMPLES:
1200    The following is an example of using the ``part`` command on a system with
1201    no user extensions.
1202
1203    .. code-block:: shell
1204
1205        SHLL [/] $ part
1206        ID       NAME   ATTR        STARTADDR LENGTH    BUF_SIZE  USED_BLOCKS
1207        ------------------------------------------------------------------------------
1208
1209.. index:: CONFIGURE_SHELL_NO_COMMAND_PART
1210.. index:: CONFIGURE_SHELL_COMMAND_PART
1211
1212CONFIGURATION:
1213    This command is included in the default shell command set.  When building a
1214    custom command set, define ``CONFIGURE_SHELL_COMMAND_PART`` to have this
1215    command included.
1216
1217    This command can be excluded from the shell command set by defining
1218    ``CONFIGURE_SHELL_NO_COMMAND_PART`` when all shell commands have been
1219    configured.
1220
1221.. index:: rtems_shell_rtems_main_part
1222
1223PROGRAMMING INFORMATION:
1224    The ``part`` is implemented by a C language function which has the
1225    following prototype:
1226
1227    .. code-block:: c
1228
1229        int rtems_shell_rtems_main_part(
1230            int    argc,
1231            char **argv
1232        );
1233
1234    The configuration structure for the ``part`` has the following prototype:
1235
1236    .. code-block:: c
1237
1238        extern rtems_shell_cmd_t rtems_shell_PART_Command;
1239
1240.. raw:: latex
1241
1242   \clearpage
1243
1244.. _object:
1245
1246object - display information about RTEMS objects
1247------------------------------------------------
1248.. index:: object
1249
1250SYNOPSYS:
1251    .. code-block:: shell
1252
1253        object [id [id ...]]
1254
1255DESCRIPTION:
1256    When invoked with a set of object ids as arguments, then a report on those
1257    objects is printed.
1258
1259EXIT STATUS:
1260    This command returns 0 on success and non-zero if an error is encountered.
1261
1262NOTES:
1263    NONE
1264
1265EXAMPLES:
1266    The following is an example of how to use ``object``:
1267
1268    .. code-block:: shell
1269
1270        SHLL [/] $ object 0a010001 1a010002
1271        ID       NAME   PRIO   STAT   MODES  EVENTS   WAITID  WAITARG  NOTES
1272        ------------------------------------------------------------------------------
1273        0a010001   UI1      1   SUSP   P:T:nA  NONE
1274        ID       NAME   ATTR        PRICEIL CURR_CNT HOLDID
1275        ------------------------------------------------------------------------------
1276        1a010002   TRmi   PR:BI:IN      0        1     00000000
1277
1278.. index:: CONFIGURE_SHELL_NO_COMMAND_OBJECT
1279.. index:: CONFIGURE_SHELL_COMMAND_OBJECT
1280
1281CONFIGURATION:
1282    This command is included in the default shell command set.  When building a
1283    custom command set, define ``CONFIGURE_SHELL_COMMAND_OBJECT`` to have this
1284    command included.
1285
1286    This command can be excluded from the shell command set by defining
1287    ``CONFIGURE_SHELL_NO_COMMAND_OBJECT`` when all shell commands have been
1288    configured.
1289
1290.. index:: rtems_shell_rtems_main_object
1291
1292PROGRAMMING INFORMATION:
1293    The ``object`` is implemented by a C language function which has the
1294    following prototype:
1295
1296    .. code-block:: c
1297
1298        int rtems_shell_rtems_main_object(
1299            int    argc,
1300            char **argv
1301        );
1302
1303    The configuration structure for the ``object`` has the
1304    following prototype:
1305
1306    .. code-block:: c
1307
1308        extern rtems_shell_cmd_t rtems_shell_OBJECT_Command;
1309
1310.. raw:: latex
1311
1312   \clearpage
1313
1314.. _driver:
1315
1316driver - display the RTEMS device driver table
1317----------------------------------------------
1318.. index:: driver
1319
1320SYNOPSYS:
1321    .. code-block:: shell
1322
1323        driver [major [major ...]]
1324
1325DESCRIPTION:
1326    When invoked with no arguments, this command prints information on the set
1327    of Device Drivers currently active in the system.
1328
1329    If invoked with a set of major numbers as arguments, then just those Device
1330    Drivers are included in the information printed.
1331
1332EXIT STATUS:
1333    This command returns 0 on success and non-zero if an error is encountered.
1334
1335NOTES:
1336    NONE
1337
1338EXAMPLES:
1339    The following is an example of how to use ``driver``:
1340
1341    .. code-block:: shell
1342
1343        SHLL [/] $ driver
1344        Major      Entry points
1345        ------------------------------------------------------------------------------
1346        0          init: [0x200256c];  control: [0x20024c8]
1347        open: [0x2002518];  close: [0x2002504]
1348        read: [0x20024f0];  write: [0x20024dc]
1349        1          init: [0x20023fc];  control: [0x2002448]
1350        open: [0x0];  close: [0x0]
1351        read: [0x0];  write: [0x0]
1352        SHLL [/] $
1353
1354.. index:: CONFIGURE_SHELL_NO_COMMAND_DRIVER
1355.. index:: CONFIGURE_SHELL_COMMAND_DRIVER
1356
1357CONFIGURATION:
1358    This command is included in the default shell command set.  When building a
1359    custom command set, define ``CONFIGURE_SHELL_COMMAND_DRIVER`` to have this
1360    command included.
1361
1362    This command can be excluded from the shell command set by defining
1363    ``CONFIGURE_SHELL_NO_COMMAND_DRIVER`` when all shell commands have been
1364    configured.
1365
1366.. index:: rtems_shell_rtems_main_driver
1367
1368PROGRAMMING INFORMATION:
1369    The ``driver`` is implemented by a C language function which has the
1370    following prototype:
1371
1372    .. code-block:: c
1373
1374        int rtems_shell_rtems_main_driver(
1375            int    argc,
1376            char **argv
1377        );
1378
1379    The configuration structure for the ``driver`` has the following prototype:
1380
1381    .. code-block:: c
1382
1383        extern rtems_shell_cmd_t rtems_shell_DRIVER_Command;
1384
1385.. raw:: latex
1386
1387   \clearpage
1388
1389.. _dname:
1390
1391dname - displays information about named drivers
1392------------------------------------------------
1393.. index:: dname
1394
1395SYNOPSYS:
1396    .. code-block:: shell
1397
1398        dname
1399
1400DESCRIPTION:
1401    WARNING! This command does not appear to work as of 27 February 2008.
1402
1403EXIT STATUS:
1404    This command returns 0 on success and non-zero if an error is encountered.
1405
1406NOTES:
1407    NONE
1408
1409EXAMPLES:
1410    The following is an example of how to use ``dname``:
1411
1412    .. code-block:: shell
1413
1414        EXAMPLE_TBD
1415
1416.. index:: CONFIGURE_SHELL_NO_COMMAND_DNAME
1417.. index:: CONFIGURE_SHELL_COMMAND_DNAME
1418
1419CONFIGURATION:
1420    This command is included in the default shell command set.  When building a
1421    custom command set, define ``CONFIGURE_SHELL_COMMAND_DNAME`` to have this
1422    command included.
1423
1424    This command can be excluded from the shell command set by defining
1425    ``CONFIGURE_SHELL_NO_COMMAND_DNAME`` when all shell commands have been
1426    configured.
1427
1428.. index:: rtems_shell_rtems_main_dname
1429
1430PROGRAMMING INFORMATION:
1431    The ``dname`` is implemented by a C language function which has the
1432    following prototype:
1433
1434    .. code-block:: c
1435
1436        int rtems_shell_rtems_main_dname(
1437            int    argc,
1438            char **argv
1439        );
1440
1441    The configuration structure for the ``dname`` has the following prototype:
1442
1443    .. code-block:: c
1444
1445        extern rtems_shell_cmd_t rtems_shell_DNAME_Command;
1446
1447.. raw:: latex
1448
1449   \clearpage
1450
1451.. _pthread:
1452
1453pthread - display information about POSIX threads
1454-------------------------------------------------
1455.. index:: pthread
1456
1457SYNOPSYS:
1458    .. code-block:: shell
1459
1460        pthread [id [id ...]]
1461
1462DESCRIPTION:
1463    When invoked with no arguments, this command prints information on the set
1464    of POSIX API threads currently active in the system.
1465
1466    If invoked with a set of ids as arguments, then just those objects are
1467    included in the information printed.
1468
1469EXIT STATUS:
1470    This command returns 0 on success and non-zero if an error is encountered.
1471
1472NOTES:
1473    This command is only available when the POSIX API is configured.
1474
1475EXAMPLES:
1476    The following is an example of how to use the ``task`` on an application
1477    with four POSIX threads:
1478
1479    .. code-block:: shell
1480
1481        SHLL [/] $ pthread
1482        ID       NAME           PRI  STATE MODES   EVENTS    WAITID  WAITARG  NOTES
1483        ------------------------------------------------------------------------------
1484        0b010002   Main           133 READY  P:T:nA    NONE   43010001 0x7b1148
1485        0b010003   ISR            133 Wcvar  P:T:nA    NONE   43010003 0x7b1148
1486        0b01000c                  133 READY  P:T:nA    NONE   33010002 0x7b1148
1487        0b01000d                  133 Wmutex P:T:nA    NONE   33010002 0x7b1148
1488
1489CONFIGURATION:
1490    This command is part of the monitor commands which are always available in
1491    the shell.
1492
1493PROGRAMMING INFORMATION:
1494    This command is not directly available for invocation.
Note: See TracBrowser for help on using the repository browser.