Single processor test suite - table of content :
(New window version. Put this html file just above your rtems source directory.)
directives:
ex_init, ex_start, t_create, t_start, tm_tick, i_return, t_ident,
tm_set, tm_get, tm_wkafter
concepts:
a. Verifies system can create and start both the executive's
system initialization and idle task.
b. Verifies executive can swap between three application tasks at the
same priority and the executive's internal idle task.
c. Verifies can print strings to the CRT on port 2 of the mvme136 board
using Print and Println in the board support package.
d. Verifies interrupt handler can handle a task switch from an interrupt
as specified with the i_return directive.
e. Verifies executive initialization performed correctly.
f. Verifies the executive trap handler except for the halt function.
g. Verifies that a task can get the task identification number of itself.
output:
"TA1" is printed once every 5 seconds. "TA2" is printed once every 10 seconds. "TA3" is printed once every 15 seconds.
directives:
ex_init, ex_start, t_create, t_start, tm_tick, i_return, t_ident,
t_delete, tm_wkafter, t_setpri, t_suspend
concepts:
a. Verifies that a task can delete another task and also delete
itself.
b. Verifies that memory is freed back to the heap correctly.
c. Verifies that TCBs are freed back to the inactive chain correctly.
d. Verifies that a task can get the task identification number of another task.
e. Verifies the _Set_state routine where the task is not READY.
f. Verifies the break statement in the _Block_activate routine.
g. Verifies the while loop in the _Prev_tcb routine.
directives:
ex_init, ex_start, t_create, t_start, tm_tick, i_return, tm_wkafter,
tm_wkwhen, tm_set, tm_get
concepts:
a. Verifies conversion routines - _Utd_to_etd and _Etd_to_utd
directives:
ex_init, ex_start, t_create, t_start, tm_tick, i_return,
tm_set, tm_get, ev_receive, t_mode
concepts:
a. Verifies timeslicing ( all tasks are in timeslice mode ).
b. Verifies the tswitch user extension.
c. Verifies the no preemption mode.
d. Verifies time-slice gets reset even if only one task ready.
output:
The task name and the current time are printed out each time that a new
task is being dispatched. The configured timeslice is 100 ticks
( 1 second ); therefore, a task name and the time are printed once
every second. After each task runs 3 times, task 1 changes its mode to
no preempt and runs for about 6 seconds and then changes its mode back to
preempt mode.
directives:
ex_init, ex_start, t_create, t_start, tm_tick, i_return, t_ident
tm_wkafter, t_suspend, t_resume
concepts:
a. Verifies that a task can be suspended and resumed.
b. Verifies that a task can suspend itself.
directives:
ex_init, ex_start, t_create, t_start, tm_tick, i_return,
tm_wkafter, t_restart
concepts:
a. Verifies that a task can restart a task other than itself.
b. Verifies that a task can restart itself.
directives:
ex_init, ex_start, t_create, t_start, tm_tick, i_return, t_delete, t_setreg, t_getreg, t_setpri, t_suspend
concepts:
a. Verifies that tasks can communicate with each other via the t_setreg and t_getreg directives.
b. Verifies that the highest priority task is dispatched to execute.
c. Verifies setting the priority of both a ready and a blocked task.
d. Verifies the deletion of ready and blocked tasks.
e. Verifies the tcreate user extension.
f. Verifies the tstart user extension.
g. Verifies the tdelete user extension.
directives:
ex_init, ex_start, t_create, t_start, tm_tick, i_return, t_mode
concepts:
a. Verifies every mode change possible.
b. Verifies the fatal error handler.
directives:
ex_init, ex_start, tm_tick, i_return, t_create,t_delete, t_getreg, t_ident, t_restart, t_resume, t_setpri, t_setreg, t_start, t_suspend, tm_delete, tm_get, tm_set, tm_wkafter, tm_wkwhen, ev_receive, ev_send, sm_create, sm_delete, sm_ident, sm_p, sm_v, q_broadcast, q_create, q_delete, q_ident, q_receive, q_send, q_urgent, as_catch, as_send, as_return, rn_create, rn_delete, rn_getseg, rn_ident, rn_retseg, pt_create, pt_delete, pt_getbug, pt_ident, pt_retbuf, de_close, de_cntrl, de_init, de_open, de_read, de_write
concepts:
a. Verifies all error codes returned by the executive in single processor configurations.
b. Verifies error conditions in the following kernel routines or macros:
_Ck_date_time, _Expired, _Q_submit, _Get_mnodes, _Get_node, _Free_mem, _Get_mem, _Valid_block, _Set_tcb, _Set_resource, _In_range, _On_boundary
test set name: test10 - there is no test10
directives:
ex_init, ex_start, t_create, t_start, t_delete, tm_tick, i_return, ev_send, ev_receive tm_wkafter, tm_set, tm_get
concepts:
a. This test checks out the event manager along with the associated event directives contained in the time manager.
directives:
ex_init, ex_start, t_create, t_start, t_delete, tm_tick, i_return, sm_create, sm_ident, sm_delete, sm_p, sm_v, tm_wkafter, t_setpri
concepts:
a. This test checks out the semaphore manager.
b. This test forces _Flush_taskq() to unblock a task waiting
on a deleted object.
directives:
ex_init, ex_start, t_create, t_start, t_delete, tm_tick, i_return, q_create, q_ident, q_delete, q_send, q_urgent, q_broadcast, q_receive, tm_wkafter, t_setpri
concepts:
a. This test checks out the message manager.
directives:
ex_init, ex_start, t_create, t_start, t_delete, tm_tick, i_return, as_catch, as_return, as_send, tm_wkafter
concepts:
a. This test checks out the signal manager.
directives:
ex_init, ex_start, t_create, t_start, t_delete, tm_tick, i_return, pt_create, pt_ident, pt_getbuf, pt_retbuf, pt_delete
concepts:
a. This test checks out the partition manager.
directives:
ex_init, ex_start, t_create, t_start, t_delete, tm_tick, i_return, rn_create, rn_ident, rn_getbuf, rn_retbuf, rn_delete
concepts:
a. This test checks out the region manager.
directives:
ex_init, ex_start, t_create, t_start, tm_tick, i_return, t_ident, as_catch, as_return
concepts:
a. Verifies system can create and start both the executive's system initialization and idle task.
b. Verifies can print strings to the CRT on port 2 of the mvme136 board using Print and Println in the board support package.
c. Verifies executive initialization performed correctly.
d. Verifies that a task can get the task identification number of another task.
e. Verifies that a signal can be sent to a remote task.
test set name: test18 - there is no test18
directives:
concepts:
a. Verifies system can dispatch a mixture of floating point and non-floating point tasks.
directives:
rm_create, rm_period
concepts:
a. Verifies Rate Monotonic Manager behavior.
directives:
ex_init, ex_start, t_create, t_start, tm_tick, i_return, t_delete de_init, de_open, de_close, de_read, de_write, de_cntrl
concepts:
a. Verifies all I/O manager directives always return successful for null drivers.
b. Verifies all I/O manager directives call and return from the driver entry points in the driver address table.
directives:
concepts:
directives:
ex_init, ex_start, t_create, t_start, tm_tick, i_return, t_delete, m_ext2int, m_int2ext
concepts:
a. Verifies the dual ported RAM directives work correctly.
output:
directives:
ex_init, ex_start, t_create, t_start, tm_tick, i_return, t_ident, ev_receive
concepts:
a. This test is a cyclic version of test1. The times printed by each test should not skew as in test1 (see output section).
b. Verifies system can create and start both the executive's system initialization and idle task.
c. Verifies executive can swap between three application tasks at the same priority and the executive's internal idle task.
d. Verifies can print strings to the CRT on port 2 of the mvme136 board using Print and Println in the board support package.
e. Verifies interrupt handler can handler a task switch from an interrupt as specified with the i_return directive.
f. Verifies executive initialization performed correctly.
g. Verifies the executive trap handler except for the halt function.
h. Verifies that a task can get the task identification number of itself.
output:
"TA1" is printed once every 5 seconds. "TA2" is printed once every 10 seconds. "TA3" is printed once every 15 seconds.
The times printed should be multiples of 5 seconds for TA1, 10 seconds for TA2, and 15 seconds for TA3. If this does not happen, the calendar time does not correspond correctly to the number of ticks.
directives:
task_create
task_start
task_delete
region_create
region_ident
region_get_segment
region_return_segment
region_delete
concepts:
a. Verifies that the heap maintains it's integrity trhough a series on region_get_segments and region_return_segments.
directives:
task_is_suspended
concepts:
a. task_is_suspended operates correctly.
directives:
ex_init, ex_start, t_create, t_start, tm_tick, i_return, t_ident, ev_receive
concepts:
a. This test is a cyclic version of test1. The times printed by each test should not skew as in test1 (see output section).
b. Verifies system can create and start both the executive's system initialization and idle task.
c. Verifies executive can swap between three application tasks at the same priority and the executive's internal idle task.
d. Verifies can print strings to the CRT on port 2 of the mvme136 board using Print and Println in the board support package.
e. Verifies interrupt handler can handler a task switch from an interrupt as specified with the i_return directive.
f. Verifies executive initialization performed correctly.
g. Verifies the executive trap handler except for the halt function.
h. Verifies that a task can get the task identification number of itself.
output:
"TA1" is printed once every 5 seconds. "TA2" is printed once every 10 seconds. "TA3" is printed once every 15 seconds.
The times printed should be multiples of 5 seconds for TA1, 10 seconds for TA2, and 15 seconds for TA3. If this does not happen, the calendar time does not correspond correctly to the number of ticks.
directives:
concepts:
directives:
none
concepts:
a. Verifies that the proper error is reported by k_fatal when a task exits.
b. Verifies that the task exitted extension works correctly.
c. Verifies that the fatal error extension works corectly.