我有一个现有的嵌入式独立主程序,正在尝试将Azure RTOS THREADX添加到其中。Azure RTOS是否需要引导加载程序?它是bootloader不可知的吗?
发布于 2020-05-02 21:05:50
Azure RTOS THREADX本身不需要bootloader,并且通常是bootloader不可知的。Azure RTOS THREADX的一个典型用法是在设备的闪存中作为应用程序的一部分进行链接和定位,其中入口点被绑定到重置向量。但是,有些应用程序确实需要引导加载程序。在这样的应用程序中,Azure RTOS THREADX看起来就像应用程序代码映像,所以在THREADX中不需要任何特殊的东西。在任何一种情况下,Azure RTOS THREADX都不知道或真正关心它是如何加载的,因此不会妨碍应用程序的特定启动顺序需要。
发布于 2020-07-21 21:58:22
Azure RTOS可以运行裸机,因此不需要bootloader。你实际上可以从main函数调用tx_kernel_entry,从某种意义上说,它就像一个引导加载程序,它运行一个叫做picokernel的小内核。然后调用tx_application_entry函数,您可以在其中调用那些仅在初始化(主线程)时才需要调用的rtos服务,并运行线程调度程序。调度器就像一个无限的while循环,所以以后不要调用任何tx_kernel_entry。
发布于 2020-07-29 07:08:14
bootloader独立于threadx,也与threadx无关。我们使用一个bootloader来更新我们的应用程序,它已经编译了threadx。
https://stackoverflow.com/questions/61559855
复制相似问题