zephyr/samples/microkernel/test/test_critical
Anas Nashif 7383383c12 CONFIG_DRV_RANDOM is obsolete
This options does not exist anymore, no need to carry it
here.

Change-Id: I0bcafe2ff959dbc2e0fcc3f9481b65c43ea64f14
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2016-02-05 20:15:35 -05:00
..
src microkernel: rename K_swapper to _k_server 2016-02-05 20:15:21 -05:00
Makefile Renames supported platform configurations 2016-02-05 20:14:39 -05:00
prj_arm.conf Configure number of task priorities for sample projects 2016-02-05 20:13:48 -05:00
prj_x86.conf CONFIG_DRV_RANDOM is obsolete 2016-02-05 20:15:35 -05:00
prj.mdef Rename VPF files to use MDEF file extension 2016-02-05 20:14:15 -05:00
README.txt Update Title in sample project README.txt files 2016-02-05 20:15:21 -05:00
testcase.ini initial commit for next-gen sanity checks 2016-02-05 20:14:42 -05:00

Title: Offload to the Kernel Service Fiber

Description:

This test verifies that the microkernel task_offload_to_fiber() API operates as
expected.

This test has two tasks that increment a counter.  The routine that
increments the counter is invoked from _k_server() due to the two tasks
calling task_offload_to_fiber().  The final result of the counter is expected
to be the the number of times task_offload_to_fiber() was called to increment
the counter as the incrementing was done in the context of _k_server().

This is done with time slicing both disabled and enabled to ensure that the
result always matches the number of times task_offload_to_fiber() is called.

--------------------------------------------------------------------------------

Building and Running Project:

This microkernel project outputs to the console.  It can be built and executed
on QEMU as follows:

    make qemu

--------------------------------------------------------------------------------

Troubleshooting:

Problems caused by out-dated project information can be addressed by
issuing one of the following commands then rebuilding the project:

    make clean          # discard results of previous builds
                        # but keep existing configuration info
or
    make pristine       # discard results of previous builds
                        # and restore pre-defined configuration info

--------------------------------------------------------------------------------

Sample Output:

tc_start() - Test Microkernel Critical Section API

Obtained expected <criticalVar> value of 10209055
Enabling time slicing ...
Obtained expected <criticalVar> value of 15123296
===================================================================
PASS - RegressionTask.
===================================================================
PROJECT EXECUTION SUCCESSFUL