Kernel Callbacks

Application functions that are called BY the Kernel. More...

Functions

void gos_app_init (void)
 Application Initialization. More...
 
void gos_app_deinit (void)
 Application De-initialization. More...
 
void gos_app_idle (void)
 Application Idle. More...
 
void gos_app_preinit (void)
 Application Pre-initialization. More...
 
void gos_app_sram_init (void)
 RAM Initialization. More...
 

Detailed Description

Application functions that are called BY the Kernel.

Function Documentation

◆ gos_app_deinit()

void gos_app_deinit ( void  )

Application De-initialization.

This is called just before the application is shutdown by the Kernel. This is optional any may be omitted from the application.

This executes in the application thread.

Examples:
cloud/coap_demo/main.c, file/log_file/main.c, file/log_file_encrypted/main.c, hurricane/blinky/main.c, hurricane/marble/main.c, hurricane/weatherstation/main.c, intro/hello_world/main.c, manufacturing/factory_image/main.c, network/ethernet_bridge/main.c, peripheral/adc/main.c, system/system_monitor/main.c, test/certification/main.c, and test/hurricane/main.c.

◆ gos_app_idle()

void gos_app_idle ( void  )

Application Idle.

This is called when there are no more pending events. This is optional any may be omitted from the application.

This executes in the application thread.

Examples:
hurricane/blinky/main.c, hurricane/marble/main.c, hurricane/weatherstation/main.c, intro/hello_world/main.c, manufacturing/factory_image/main.c, network/ethernet_bridge/main.c, test/certification/main.c, and test/hurricane/main.c.

◆ gos_app_init()

void gos_app_init ( void  )

Application Initialization.

This is the starting point for the application. This MUST be implemented in the application.

This executes in the application thread.

Examples:
cloud/coap_demo/main.c, cloud/dps_demo/main.c, cloud/mqtt_demo/main.c, demo/3d_demo/main.c, demo/accelerometer_stream/main.c, demo/secure_element/main.c, demo/uart_blaster/main.c, dms/messages/main.c, dms/ota_update/main.c, dms/telemetry/main.c, file/file_encrypt/main.c, file/file_list/main.c, file/log_file/main.c, file/log_file_encrypted/main.c, hurricane/arducam/main.c, hurricane/blinky/main.c, hurricane/gps/main.c, hurricane/marble/main.c, hurricane/security_camera/main.c, hurricane/weatherstation/main.c, intro/blinky/main.c, intro/hello_world/main.c, manufacturing/factory_image/main.c, network/ethernet_bridge/main.c, network/http_methods/main.c, network/http_server/main.c, network/http_server_stream/main.c, network/https_server/main.c, network/softap_tcp_server/main.c, network/tcp_client/main.c, network/tcp_echo_server/main.c, network/tcp_multiclient/main.c, network/uart_tcp_client/main.c, network/udp_client/main.c, network/udp_hello_gpio/main.c, network/websocket_client/main.c, network/websocket_cmd_stream/main.c, network/websocket_server/main.c, peripheral/adc/main.c, peripheral/button/main.c, peripheral/gpio_irq/main.c, security/aes_ctr/main.c, system/application_nvm/main.c, system/application_settings/main.c, system/core_dump/main.c, system/custom_commands/main.c, system/factory_reset_gpio/main.c, system/indicator/main.c, system/settings_file/main.c, system/system_monitor/main.c, system/uart/main.c, test/certification/main.c, test/ethernet/main.c, test/hurricane/main.c, test/spi_loop_back/main.c, test/throughput/main.c, test/uart_flow_control/main.c, utility/buffer_dump/main.c, utility/json_parser/main.c, utility/msgpack/main.c, utility/profiler/main.c, wifi/device_setup/main.c, wifi/web_setup/main.c, and wifi/wifi_scan/main.c.

◆ gos_app_preinit()

void gos_app_preinit ( void  )

Application Pre-initialization.

This is called by the Kernel BEFORE the application is initialized. This is optional any may be omitted from the application.

This executes in the system thread.

Note
Extreme care should be used when implementing this function as it executes BEFORE the system is initialized.
Examples:
system/factory_reset_gpio/main.c.

◆ gos_app_sram_init()

void gos_app_sram_init ( void  )

RAM Initialization.

This is called by the Kernel very early on in the application boot-up sequence. This initializes the application's .bss and .data sections. This is implemented internally by the SDK.

Note
WARN: This is for internal use only