source: rtems/doc/itron3.0/status.t @ 41d2eaca

4.104.114.84.95
Last change on this file since 41d2eaca was 41d2eaca, checked in by Joel Sherrill <joel.sherrill@…>, on Nov 9, 1999 at 4:31:26 AM

Added more status information.

  • Property mode set to 100644
File size: 19.9 KB
Line 
1@c
2@c  This is the chapter from the RTEMS ITRON User's Guide that
3@c  documents the services provided by the task
4@c  manager.
5@c
6@c  $Id$
7@c
8
9@chapter ITRON Implementation Status
10
11@section Introduction
12
13This chapter describes the status of the implementation of each
14manager in the RTEMS implementataion of the uITRON 3.0 API.   The
15status of each manager is presented in terms of documentation and
16status relative to the extended level (level 'E') of the uITRON 3.0
17API specification.  The extended level of the specification is
18the level at which dynamic object creation, deletion, and
19reference services are available.  This level is more akin to the other
20APIs supported by RTEMS.  This purpose of this chapter is
21to make it clear what is required to bring the RTEMS
22uITRON API implementation into compliance with the
23specification.  The following description of the specification
24levels is taken from the uITRON 3.0 API specification.
25
26
27uITRON 3.0 specification is divided into fewer system call levels than was the
28previous uITRON 2.0 specification.  There are now just three levels: Level R
29(Required), Level S (Standard) and Level E (Extended).  In addition to these
30three levels, there is also Level C for CPU-dependent system calls.
31In addition, the uITRON 3.0 API, defines the network level ('N') which
32represents system calls that support the connection function
33
34@itemize @bullet
35@item [level R] (Required)
36The functions in this level are mandatory for all implementations of
37uITRON 3.0 specification.  This includes basic functions for achieving
38a real-time, multitasking OS.  These functions can be implemented even
39without a hardware timer.  This level corresponds to Levels 1 and 2
40of uITRON 2.0 specification.
41
42@item [level S] (Standard)
43This includes basic functions for achieving a real-time, multitasking
44OS.  This level corresponds to Levels 3 and 4 of uITRON 2.0
45specification.
46
47@item [level E] (Extended)
48This includes additional and extended functions.  This corresponds to
49functions not included in uITRON 2.0 specification (functions of
50ITRON2 specification).  Specifically, this level includes object
51creation and deletion functions, rendezvous functions, memorypools
52and the timer handler.
53
54@item [level C] (CPU dependent)
55This level provides implementation-dependent functions required due to
56the CPU or hardware configuration.
57
58@end itemize
59
60The support level of the connection function is indicated by appending an 'N'
61to the end of the level.  For example, connectivity supported at [level S]
62would be referred to as [level SN].  The support level for functions which
63can only send requests for operations on other nodes but offer no system call
64processing on the issuing node itself are indicated by the lower case letter
65's' or 'e'.
66
67
68@c
69@c Task
70@c
71
72@section Task
73
74@itemize @bullet
75
76@item Implementation
77@itemize @bullet
78@item cre_tsk - Stub, Needs to be Fleshed Out
79@item del_tsk - Stub, Needs to be Fleshed Out
80@item sta_tsk - Stub, Needs to be Fleshed Out
81@item ext_tsk - Stub, Needs to be Fleshed Out
82@item exd_tsk - Stub, Needs to be Fleshed Out
83@item ter_tsk - Stub, Needs to be Fleshed Out
84@item dis_dsp - Stub, Needs to be Fleshed Out
85@item ena_dsp - Stub, Needs to be Fleshed Out
86@item chg_pri - Stub, Needs to be Fleshed Out
87@item rot_rdq - Stub, Needs to be Fleshed Out
88@item rel_wai - Stub, Needs to be Fleshed Out
89@item get_tid - Stub, Needs to be Fleshed Out
90@item ref_tsk - Stub, Needs to be Fleshed Out
91@end itemize
92
93@item Executive Modifications
94@itemize @bullet
95@item None Expected
96@end itemize
97
98@item Testing
99@itemize @bullet
100@item No Tests Written
101@end itemize
102
103@item Documentation
104@itemize @bullet
105@item Shell, Needs to be Fleshed Out
106@end itemize
107
108@item ITRON 3.0 API Conformance
109@itemize @bullet
110@item Level E - Extended Functionality
111@itemize @bullet
112@item
113@end itemize
114
115@item Level C - CPU Dependent Functionality
116@itemize @bullet
117@item NA
118@end itemize
119
120@item Level N - Connection Functionality
121@itemize @bullet
122@item Not implemented
123@end itemize
124@end itemize
125
126@end itemize
127
128@c
129@c Task-Dependent Synchronization
130@c
131
132@section Task-Dependent Synchronization
133
134@itemize @bullet
135
136@item Implementation
137@itemize @bullet
138@item sus_tsk - Stub, Needs to be Fleshed Out
139@item rsm_tsk - Stub, Needs to be Fleshed Out
140@item frsm_tsk - Stub, Needs to be Fleshed Out
141@item slp_tsk - Stub, Needs to be Fleshed Out
142@item tslp_tsk - Stub, Needs to be Fleshed Out
143@item wup_tsk - Stub, Needs to be Fleshed Out
144@item can_wup - Stub, Needs to be Fleshed Out
145@end itemize
146
147@item Executive Modifications
148@itemize @bullet
149@item None Expected
150@end itemize
151
152@item Testing
153@itemize @bullet
154@item No Tests Written
155@end itemize
156
157@item Documentation
158@itemize @bullet
159@item Shell, Needs to be Fleshed Out
160@end itemize
161
162@item ITRON 3.0 API Conformance
163@itemize @bullet
164@item Level E - Extended Functionality
165@itemize @bullet
166@item
167@end itemize
168
169@item Level C - CPU Dependent Functionality
170@itemize @bullet
171@item NA
172@end itemize
173
174@item Level N - Connection Functionality
175@itemize @bullet
176@item Not implemented
177@end itemize
178@end itemize
179
180@end itemize
181
182@c
183@c Semaphore
184@c
185
186@section Semaphore
187
188@itemize @bullet
189
190@item Implementation
191@itemize @bullet
192@item cre_sem - Complete, Pending Review
193@item del_sem - Complete, Pending Review
194@item sig_sem - Complete, Pending Review
195@item wai_sem - Complete, Pending Review
196@item preq_sem - Complete, Pending Review
197@item twai_sem - Complete, Pending Review
198@item ref_sem - Complete, Pending Review
199@end itemize
200
201@item Executive Modifications
202@itemize @bullet
203@item None Required
204@end itemize
205
206@item Testing
207@itemize @bullet
208@item Yellow Lined BUT Timeout Cases Not Actually Executed
209@end itemize
210
211@item Documentation
212@itemize @bullet
213@item Complete, Pending Review
214@end itemize
215
216@item ITRON 3.0 API Conformance
217@itemize @bullet
218@item Level E - Extended Functionality
219@itemize @bullet
220@item Complete, Pending Review
221@end itemize
222
223@item Level C - CPU Dependent Functionality
224@itemize @bullet
225@item NA
226@end itemize
227
228@item Level N - Connection Functionality
229@itemize @bullet
230@item Not implemented
231@end itemize
232@end itemize
233
234@end itemize
235
236@c
237@c Eventflags
238@c
239
240@section Eventflags
241
242@itemize @bullet
243
244@item Implementation
245@itemize @bullet
246@item cre_flg - Stub, Needs to be Fleshed Out
247@item del_flg - Stub, Needs to be Fleshed Out
248@item set_flg - Stub, Needs to be Fleshed Out
249@item clr_flg - Stub, Needs to be Fleshed Out
250@item wai_flg - Stub, Needs to be Fleshed Out
251@item pol_flg - Stub, Needs to be Fleshed Out
252@item twai_flg - Stub, Needs to be Fleshed Out
253@item ref_flg - Stub, Needs to be Fleshed Out
254
255@item Notes:
256@itemize @bullet
257@item Similar in Functionality to Classic API Events Manager
258@item Implement Using new SuperCore Event Handler
259@end itemize
260
261@end itemize
262
263@item Executive Modifications
264@itemize @bullet
265@item Add SuperCore Events Object Based on Classic Events
266@item Redo Classic Events to use SuperCore Events
267@end itemize
268
269@item Testing
270@itemize @bullet
271@item No Tests Written
272@end itemize
273
274@item Documentation
275@itemize @bullet
276@item Shell, Needs to be Fleshed Out
277@end itemize
278
279@item ITRON 3.0 API Conformance
280@itemize @bullet
281@item Level E - Extended Functionality
282@itemize @bullet
283@item
284@end itemize
285
286@item Level C - CPU Dependent Functionality
287@itemize @bullet
288@item NA
289@end itemize
290
291@item Level N - Connection Functionality
292@itemize @bullet
293@item Not implemented
294@end itemize
295@end itemize
296
297@end itemize
298
299@c
300@c Mailbox
301@c
302
303@section Mailbox
304
305@itemize @bullet
306
307@item Implementation
308@itemize @bullet
309@item cre_mbx - Stub, Needs to be Fleshed Out
310@item del_mbx - Stub, Needs to be Fleshed Out
311@item snd_msg - Stub, Needs to be Fleshed Out
312@item rcv_msg - Stub, Needs to be Fleshed Out
313@item prcv_msg - Stub, Needs to be Fleshed Out
314@item trcv_msg - Stub, Needs to be Fleshed Out
315@item ref_mbx - Stub, Needs to be Fleshed Out
316
317@item Notes:
318@itemize @bullet
319@item Implement Using SuperCore Message Queue Handler
320@item Passes Addresses of Messages
321@item FIFO or Priority Task Blocking
322@item FIFO or Priority Message Ordering
323@item Send Returns Error on Overflow
324@end itemize
325
326@end itemize
327
328@item Executive Modifications
329@itemize @bullet
330@item None Expected
331@item Functionality Completely Supported by SuperCore Message Queue Handler
332@end itemize
333
334@item Testing
335@itemize @bullet
336@item No Tests Written
337@end itemize
338
339@item Documentation
340@itemize @bullet
341@item Shell, Needs to be Fleshed Out
342@end itemize
343
344@item ITRON 3.0 API Conformance
345@itemize @bullet
346@item Level E - Extended Functionality
347@itemize @bullet
348@item
349@end itemize
350
351@item Level C - CPU Dependent Functionality
352@itemize @bullet
353@item NA
354@end itemize
355
356@item Level N - Connection Functionality
357@itemize @bullet
358@item Not implemented
359@end itemize
360@end itemize
361
362@end itemize
363
364@c
365@c Message Buffer
366@c
367
368@section Message Buffer
369
370@itemize @bullet
371
372@item Implementation
373@itemize @bullet
374@item cre_mbf - Stub, Needs to be Fleshed Out
375@item del_mbf - Stub, Needs to be Fleshed Out
376@item snd_mbf - Stub, Needs to be Fleshed Out
377@item psnd_mbf - Stub, Needs to be Fleshed Out
378@item tsnd_mbf - Stub, Needs to be Fleshed Out
379@item rcv_mbf - Stub, Needs to be Fleshed Out
380@item prcv_mbf - Stub, Needs to be Fleshed Out
381@item trcv_mbf - Stub, Needs to be Fleshed Out
382@item ref_mbf - Stub, Needs to be Fleshed Out
383
384@item Notes:
385@itemize @bullet
386@item Implement Using SuperCore Message Queue Handler
387@item Passes Full Bodies of Messages
388@item FIFO or Priority Task Blocking
389@item FIFO Message Ordering Only
390@item Send (snd_mbf and tsnd_mbf) Blocks on Overflow
391@end itemize
392
393@end itemize
394
395@item Executive Modifications
396@itemize @bullet
397@item SuperCore Message Queue Handler Must Support Blocking Sends.  [NOTE:
398This is required for POSIX Message Queues as well.]
399@end itemize
400
401@item Testing
402@itemize @bullet
403@item No Tests Written
404@end itemize
405
406@item Documentation
407@itemize @bullet
408@item Shell, Needs to be Fleshed Out
409@end itemize
410
411@item ITRON 3.0 API Conformance
412@itemize @bullet
413@item Level E - Extended Functionality
414@itemize @bullet
415@item
416@end itemize
417
418@item Level C - CPU Dependent Functionality
419@itemize @bullet
420@item NA
421@end itemize
422
423@item Level N - Connection Functionality
424@itemize @bullet
425@item Not implemented
426@end itemize
427@end itemize
428
429@end itemize
430
431@c
432@c Rendezvous
433@c
434
435@section Rendezvous
436
437@itemize @bullet
438
439@item Implementation
440@itemize @bullet
441@item cre_por - Stub, Needs to be Fleshed Out
442@item del_por - Stub, Needs to be Fleshed Out
443@item cal_por - Stub, Needs to be Fleshed Out
444@item pcal_por - Stub, Needs to be Fleshed Out
445@item tcal_por - Stub, Needs to be Fleshed Out
446@item acp_por - Stub, Needs to be Fleshed Out
447@item pacp_por - Stub, Needs to be Fleshed Out
448@item tacp_por - Stub, Needs to be Fleshed Out
449@item fwd_por - Stub, Needs to be Fleshed Out
450@item rpl_rdv - Stub, Needs to be Fleshed Out
451@item ref_por - Stub, Needs to be Fleshed Out
452
453@item Notes:
454@itemize @bullet
455@item Hardest ITRON Manager to Implement
456@end itemize
457
458@end itemize
459
460@item Executive Modifications
461@itemize @bullet
462@item Doubtful, Probably Implement in Terms of Multiple SuperCore Objects.
463@end itemize
464
465@item Testing
466@itemize @bullet
467@item No Tests Written
468@end itemize
469
470@item Documentation
471@itemize @bullet
472@item Shell, Needs to be Fleshed Out
473@end itemize
474
475@item ITRON 3.0 API Conformance
476@itemize @bullet
477@item Level E - Extended Functionality
478@itemize @bullet
479@item
480@end itemize
481
482@item Level C - CPU Dependent Functionality
483@itemize @bullet
484@item NA
485@end itemize
486
487@item Level N - Connection Functionality
488@itemize @bullet
489@item Not implemented
490@end itemize
491@end itemize
492
493@end itemize
494
495@c
496@c Interrupt
497@c
498
499@section Interrupt
500
501@itemize @bullet
502
503@item Implementation
504@itemize @bullet
505@item def_int - Stub, Needs to be Fleshed Out
506@item ret_int - Stub, Needs to be Fleshed Out
507@item ret_wup - Stub, Needs to be Fleshed Out
508@item loc_cpu - Stub, Needs to be Fleshed Out
509@item unl_cpu - Stub, Needs to be Fleshed Out
510@item dis_int - Stub, Needs to be Fleshed Out
511@item ena_int - Stub, Needs to be Fleshed Out
512@item chg_iXX - Stub, Needs to be Fleshed Out
513@item ref_iXX - Stub, Needs to be Fleshed Out
514
515@item Notes:
516@itemize @bullet
517@item This quote from the ITRON specification needs to be thought about:@*
518@*@i{"When an interrupt is invoked, the interrupt handler defined with
519this system call is started directly by the
520interrupt processing mechanism of the CPU hardware.  Accordingly, code at the
521beginning and end of an interrupt handler must save and restore any registers
522used by the interrupt handler."}@*@*
523Based on another comment, in the ret_int description, I think this means
524that RTEMS will not support the TA_ASM style of interrupt handlers --
525only the TA_HLNG style.@*@*
526@i{When TA_HLNG is specified, a high-level language environment setting
527program (a high-level language support routine) is called before branching
528to the inthdr address.  The least significant bit (LSB) of the system
529attribute bits is used for this specification.}
530
531@item Specification allows special "interrupt-only" versions of system
532calls named i???_??? (i.e. sig_sem and isig_sem).  This does not seem
533to be something that would be implemented with RTEMS.  We could provide
534macros mapping them onto the default versions if this is an issue.
535
536@item How this operates versus the behavior of a true TRON chip is
537up for discussion.
538
539@item ret_wup is questionable in only high-level language ISRs.
540
541@item dis_int and ena_int refer to a specific interrupt number.  These
542may require hooking back out to the BSP.
543
544@item for chg_iXX and reg_iXX, the XX should be replaced with something
545that is meaningful on a particular CPU.
546@end itemize
547
548@end itemize
549
550@item Executive Modifications
551@itemize @bullet
552@item None Expected
553@end itemize
554
555@item Testing
556@itemize @bullet
557@item No Tests Written
558@end itemize
559
560@item Documentation
561@itemize @bullet
562@item Shell, Needs to be Fleshed Out
563@end itemize
564
565@item ITRON 3.0 API Conformance
566@itemize @bullet
567@item Level E - Extended Functionality
568@itemize @bullet
569@item
570@end itemize
571
572@item Level C - CPU Dependent Functionality
573@itemize @bullet
574@item NA
575@end itemize
576
577@item Level N - Connection Functionality
578@itemize @bullet
579@item Not implemented
580@end itemize
581@end itemize
582
583@end itemize
584
585@c
586@c Memory Pool
587@c
588
589@section Memory Pool
590
591@itemize @bullet
592
593@item Implementation
594@itemize @bullet
595@item cre_mpl - Stub, Needs to be Fleshed Out
596@item del_mpl - Stub, Needs to be Fleshed Out
597@item get_blk - Stub, Needs to be Fleshed Out
598@item pget_blk - Stub, Needs to be Fleshed Out
599@item tget_blk - Stub, Needs to be Fleshed Out
600@item rel_blk - Stub, Needs to be Fleshed Out
601@item ref_mpl - Stub, Needs to be Fleshed Out
602
603@item Notes:
604@itemize @bullet
605@item Implement Using SuperCore Heap Handler
606@item Similar to Region in Classic API with Blocking
607@item FIFO or Priority Task Blocking
608@item Specification Deliberately Open on Allocation Algorithm
609@item Multiple Tasks Can be Unblocked by a single rel_blk
610@end itemize
611
612@end itemize
613
614@item Executive Modifications
615@itemize @bullet
616@item None Expected
617@end itemize
618
619@item Testing
620@itemize @bullet
621@item No Tests Written
622@end itemize
623
624@item Documentation
625@itemize @bullet
626@item Shell, Needs to be Fleshed Out
627@end itemize
628
629@item ITRON 3.0 API Conformance
630@itemize @bullet
631@item Level E - Extended Functionality
632@itemize @bullet
633@item
634@end itemize
635
636@item Level C - CPU Dependent Functionality
637@itemize @bullet
638@item NA
639@end itemize
640
641@item Level N - Connection Functionality
642@itemize @bullet
643@item Not implemented
644@end itemize
645@end itemize
646
647@end itemize
648
649@c
650@c Fixed Block
651@c
652
653@section Fixed Block
654
655@itemize @bullet
656
657@item Implementation
658@itemize @bullet
659@item cre_mpf - Stub, Needs to be Fleshed Out
660@item del_mpf - Stub, Needs to be Fleshed Out
661@item get_blf - Stub, Needs to be Fleshed Out
662@item pget_blf - Stub, Needs to be Fleshed Out
663@item tget_blf - Stub, Needs to be Fleshed Out
664@item rel_blf - Stub, Needs to be Fleshed Out
665@item ref_mpf - Stub, Needs to be Fleshed Out
666
667@item Notes:
668@itemize @bullet
669@item Implement Using SuperCore Chain Handler
670@item Similar to Partition in Classic API with Blocking
671@item FIFO or Priority Task Blocking
672@item Specification Deliberately Open on Allocation Algorithm
673@item Should add Blocking to Classic API Partition at Same Time
674@end itemize
675
676@end itemize
677
678@item Executive Modifications
679@itemize @bullet
680@item None Expected
681@end itemize
682
683@item Testing
684@itemize @bullet
685@item No Tests Written
686@end itemize
687
688@item Documentation
689@itemize @bullet
690@item Shell, Needs to be Fleshed Out
691@end itemize
692
693@item ITRON 3.0 API Conformance
694@itemize @bullet
695@item Level E - Extended Functionality
696@itemize @bullet
697@item
698@end itemize
699
700@item Level C - CPU Dependent Functionality
701@itemize @bullet
702@item NA
703@end itemize
704
705@item Level N - Connection Functionality
706@itemize @bullet
707@item Not implemented
708@end itemize
709@end itemize
710
711@end itemize
712
713@c
714@c Time
715@c
716
717@section Time
718
719@itemize @bullet
720
721@item Implementation
722@itemize @bullet
723@item get_tim - Stub, Needs to be Fleshed Out
724@item set_tim - Stub, Needs to be Fleshed Out
725@item dly_tsk - Stub, Needs to be Fleshed Out
726@item def_cyc - Stub, Needs to be Fleshed Out
727@item act_cyc - Stub, Needs to be Fleshed Out
728@item ref_cyc - Stub, Needs to be Fleshed Out
729@item def_alm - Stub, Needs to be Fleshed Out
730@item ref_alm - Stub, Needs to be Fleshed Out
731@item ret_tmr - Stub, Needs to be Fleshed Out
732
733@item Notes:
734@itemize @bullet
735@item Need to Implement Time Conversion Routines
736@item Epoch is January 1, 1985, 00:00:00 am (GMT).
737@item Cyclic and Alarm Handlers may be TA_ASM or TA_HLNG.
738@item Alarms may be Absolute or Relative Time based.
739@item May Want to Implement a Timer Server Task
740@item Termination via ret_tmr is Not Consistent with Current RTEMS Timers.
741@end itemize
742
743@end itemize
744
745@item Executive Modifications
746@itemize @bullet
747@item None Expected
748@end itemize
749
750@item Testing
751@itemize @bullet
752@item No Tests Written
753@end itemize
754
755@item Documentation
756@itemize @bullet
757@item Shell, Needs to be Fleshed Out
758@end itemize
759
760@item ITRON 3.0 API Conformance
761@itemize @bullet
762@item Level E - Extended Functionality
763@itemize @bullet
764@item
765@end itemize
766
767@item Level C - CPU Dependent Functionality
768@itemize @bullet
769@item NA
770@end itemize
771
772@item Level N - Connection Functionality
773@itemize @bullet
774@item Not implemented
775@end itemize
776@end itemize
777
778@end itemize
779
780@c
781@c System
782@c
783
784@section System
785
786@itemize @bullet
787
788@item Implementation
789@itemize @bullet
790@item get_ver - Stub, Needs to be Fleshed Out
791@item ref_sys - Stub, Needs to be Fleshed Out
792@item ref_cfg - Stub, Needs to be Fleshed Out
793@item def_svc - Stub, Needs to be Fleshed Out
794@item def_exc - Stub, Needs to be Fleshed Out
795
796@item Notes:
797@itemize @bullet
798@item May Have to Obtain ITRON "OS Maker" Id
799@item - def_svc seems to imply a trap handler interface
800@item - def_exc needs to be examined.
801@end itemize
802
803@end itemize
804
805@item Executive Modifications
806@itemize @bullet
807@item None Expected
808@end itemize
809
810@item Testing
811@itemize @bullet
812@item No Tests Written
813@end itemize
814
815@item Documentation
816@itemize @bullet
817@item Shell, Needs to be Fleshed Out
818@end itemize
819
820@item ITRON 3.0 API Conformance
821@itemize @bullet
822@item Level E - Extended Functionality
823@itemize @bullet
824@item
825@end itemize
826
827@item Level C - CPU Dependent Functionality
828@itemize @bullet
829@item NA
830@end itemize
831
832@item Level N - Connection Functionality
833@itemize @bullet
834@item Not implemented
835@end itemize
836@end itemize
837
838@end itemize
839
840@c
841@c Network Support
842@c
843
844@section Network Support
845
846@itemize @bullet
847
848@item Implementation
849@itemize @bullet
850@item nrea_dat - Stub, Needs to be Fleshed Out
851@item nwri_dat - Stub, Needs to be Fleshed Out
852@item nget_nod - Stub, Needs to be Fleshed Out
853@item nget_ver - Stub, Needs to be Fleshed Out
854
855@item Notes:
856@itemize @bullet
857@item None of these are difficult to implement on top of MPCI
858@item MP Packet formats are well-defined.
859@end itemize
860
861@end itemize
862
863@item Executive Modifications
864@itemize @bullet
865@item None Expected
866@end itemize
867
868@item Testing
869@itemize @bullet
870@item No Tests Written
871@end itemize
872
873@item Documentation
874@itemize @bullet
875@item Shell, Needs to be Fleshed Out
876@end itemize
877
878@item ITRON 3.0 API Conformance
879@itemize @bullet
880@item Level E - Extended Functionality
881@itemize @bullet
882@item
883@end itemize
884
885@item Level C - CPU Dependent Functionality
886@itemize @bullet
887@item NA
888@end itemize
889
890@item Level N - Connection Functionality
891@itemize @bullet
892@item Not implemented
893@end itemize
894@end itemize
895
896@end itemize
897
Note: See TracBrowser for help on using the repository browser.