Simple OS#

The Simple OS component in the RAIL SDK provides a basic structure for RAIL SDK users to update a baremetal application to an OS-based application. It supports FreeRTOS and Micrium OS, offering a seamless transition for developers who need to integrate OS functionalities into their applications.

Key Features#

  • Task Initialization: The app_task_init() function initializes the proprietary application task without using any dynamic memory allocation. This ensures that the task is created with a predefined stack and task buffer, making it suitable for memory-constrained environments.

  • Task Notification: The app_task_notify function is used to notify the kernel to allow the proprietary task to run. This function ensures that the task is only notified if it has been successfully created.

  • Static Task Allocation: The component uses static task allocation to avoid dynamic memory allocation, which is crucial for systems with limited memory resources. The task stack and buffer are statically allocated, ensuring predictable memory usage.

  • Max Blocking Time: The component defines a maximum blocking time for the proprietary application task, ensuring that the task does not block indefinitely.

Functions#

void

Initialize the task that will run the proprietary task than includes, the proprietary routines including app_init and app_process functions.

void

Notify the kernel to allow the proprietary task to run, as it is designed to wait for notifications or flags.

void
print_sample_app_name(const char *app_name)

Print the sample app name with the OS which it is running on.

Function Documentation#

app_task_init#

void app_task_init (void )

Initialize the task that will run the proprietary task than includes, the proprietary routines including app_init and app_process functions.

Parameters
N/A

Definition at line 60 of file /mnt/raid/workspaces/ws.bVpTDXqvc/overlay/gsdk/app/rail/component/sl_rail_sdk_simple_os/app_task_init.h

app_task_notify#

void app_task_notify (void )

Notify the kernel to allow the proprietary task to run, as it is designed to wait for notifications or flags.

Parameters
N/A

Definition at line 66 of file /mnt/raid/workspaces/ws.bVpTDXqvc/overlay/gsdk/app/rail/component/sl_rail_sdk_simple_os/app_task_init.h

print_sample_app_name#

void print_sample_app_name (const char * app_name)

Print the sample app name with the OS which it is running on.

Parameters
[in]app_name

Sample app name to be printed.


Definition at line 73 of file /mnt/raid/workspaces/ws.bVpTDXqvc/overlay/gsdk/app/rail/component/sl_rail_sdk_simple_os/app_task_init.h