zephyr/samples/microkernel/apps/cpp_synchronization
Dmitriy Korovkin 09acfc27f7 c++: Add sample projects
Change-Id: I2d74f6225ed9736d671f34a33c99da34e81863cc
Signed-off-by: Dmitriy Korovkin <dmitriy.korovkin@windriver.com>
2016-02-05 20:25:23 -05:00
..
src c++: Add sample projects 2016-02-05 20:25:23 -05:00
Makefile c++: Add sample projects 2016-02-05 20:25:23 -05:00
README.txt c++: Add sample projects 2016-02-05 20:25:23 -05:00
prj.mdef c++: Add sample projects 2016-02-05 20:25:23 -05:00
prj_arm.conf c++: Add sample projects 2016-02-05 20:25:23 -05:00
prj_x86.conf c++: Add sample projects 2016-02-05 20:25:23 -05:00
testcase.ini c++: Add sample projects 2016-02-05 20:25:23 -05:00

README.txt

Title: C++ Synchronization

Description:

The sample project illustrates usage of pure virtual class, member
functions with different types of arguments, global objects constructor
invocation.

A simple application demonstates basic sanity of the microkernel.
Two tasks (A and B) take turns printing a greeting message to the console,
and use sleep requests and semaphores to control the rate at which messages
are generated. This demonstrates that microkernel scheduling, communication,
and timing are operating correctly.

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

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:

task_a: Hello World!
task_b: Hello World!
task_a: Hello World!
task_b: Hello World!
task_a: Hello World!
task_b: Hello World!
task_a: Hello World!
task_b: Hello World!
task_a: Hello World!
task_b: Hello World!

<repeats endlessly>