• 已解决 73482 个问题
  • 已帮助 5993 位优秀工程师

在STM32中多任务相当于linux中的多线程吗

Argent 2019-04-02 浏览量:1750
在STM32中多任务相当于linux中的多线程吗?
0 0 收起

我来回答

上传资料:
选择文件 文件大小不超过15M(格式支持:doc、ppt、xls、pdf、zip、rar、txt)
所有亮答 数量:8
  • 只能说类似,因为linux里面有进程任务线程这三个概念,而stm32只有任务这个概念,linux里一个任务可以有多个进程,一个进程可以有多个线程,所以比stm32复杂一些

  • 不是线程,而是进程。

  • 应该是多进程的概念吧,一个进程可以划分成多个线程。

  • 当硬件配置非常高时,每个用户还可以同时执行多个任务,多个线程同时工作,提高效率

  • 是的,这些操作系统实质上都是靠的时间片轮转来实现调度的,就是每个thread获取一段时间,时间一到,系统就进行调度,根据优先级,当前就绪情况等将CPU的使用权再次进行分配

    不过Linux针对多核系统进行过优化的,可以每个处理器处理不同的任务,那种是真正的多线程。STM32上面的实时系统目前还不具备这个功能,都是伪多线程

  • STM32的多任务应该是和Linux下的多线程类比吧。

    STM32跑多任务时,可能需要移植实时操作系统,确保实时性的满足;

    Linux下更强调高性能的处理吧。

    Linux下多线程是同时工作,效率还是比较高的;STM32的多任务实际上还是一个一个执行,只是尽量降低延时等待。

  • 如果硬件都是单核、STM32使用RTOS可以说是同种实现方式

    使用一个CPU来不断切换任务,宏观看是在同时运行即可说是多任务并行或多线程

  • STM32的多任务应该和Linux下的多进程类似。

    STM32的多任务是在实时操作系统的调度下,切换执行;

    Linux下应该是可同时执行的。

相关问题

问题达人换一批

在STM32中多任务相当于linux中的多线程吗