zephyr/samples/userspace/hello_world_user
Nicolas Pitre 5393103084 hello_world_user: don't always assume userspace
Print whether or not the code is actually in usermode.
Fail the execution with an assertion if not the case.

Signed-off-by: Nicolas Pitre <npitre@baylibre.com>
2022-04-13 13:29:52 -07:00
..
src hello_world_user: don't always assume userspace 2022-04-13 13:29:52 -07:00
CMakeLists.txt
prj.conf
README.rst hello_world_user: don't always assume userspace 2022-04-13 13:29:52 -07:00
sample.yaml boards/intel_adsp_cavs25: Improve test coverage 2022-01-21 14:36:49 -05:00

.. _hello_world_user:

Hello World
###########

Overview
********
A simple Hello World example that can be used with any supported board and
prints 'Hello World from UserSpace!' to the console.
If unavailable or unconfigured then 'Hello World from privileged mode.'
is printed instead.

This application can be built into modes:

* single thread
* multi threading

Building and Running
********************

This project outputs 'Hello World from UserSpace!' to the console.
It can be built and executed on QEMU as follows:

.. zephyr-app-commands::
   :zephyr-app: samples/userspace/hello_world_user
   :host-os: unix
   :board: qemu_riscv32
   :goals: run
   :compact:

Sample Output
=============

.. code-block:: console

    Hello World from UserSpace! qemu_riscv32

Exit QEMU by pressing :kbd:`CTRL+A` :kbd:`x`.