- Main Page
- Modules
- Data Structures
- Files

# Nano Layer Initialization
[User API: Nano Layer]

## Functions
NANOEXT void | nosInit (POSTASKFUNC_t firstfunc, void *funcarg, VAR_t priority, UINT_t taskStackSize, UINT_t idleStackSize)

## Function Documentation

NANOEXT void nosInit | ( | POSTASKFUNC_t | firstfunc,
|  | void * | funcarg,
|  | VAR_t | priority,
|  | UINT_t | taskStackSize,
|  | UINT_t | idleStackSize
| ) |

  | Operating System Initialization. This function initializes the operating system (pico layer and nano layer) and starts the first tasks: the idle task and the first user task. Note: The nano layer requires dynamic memory management. If NOSCFG_MEM_MANAGER_TYPE is set to 1 (=use internal memory manager), it is required to set the variables __heap_start and __heap_end to valid values before this function is called. Parameters:
  | firstfunc | pointer to the first task function that will run in the multitasking environment.
  | funcarg | optional argument passed to the first task.
  | priority | task priority. Must be in the range 0 .. POSCFG_MAX_PRIO_LEVEL - 1. The higher the number, the higher the priority.
  | taskStackSize | size of the stack memory for the first task.
  | idleStackSize | size of the stack memory for the idle task.
Note: This function replaces the function posInit if the nano layer is enabled and linked to the destination application.