关于操作系统中进程、线程、和任务之间的关系

版权声明:本文为博主原创文章,遵循 CC 4.0 by-sa 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/ywx123_/article/details/53899234
Vxworks系统中进程、线程和任务之间的关系

      
        操作系统中每个进程在独立的地址空间运行(操作系统以为只有一个进程,实际上是分时复用的),每个进程的逻辑地址为4GB(32位系统,逻辑地址的虚拟内存),实际不一定有4G(逻辑上操作系统以为有4G),整个电脑可能只有1G(物理内存,内存条)。实际进程使用多少,就在物理内存里对应多少,虚拟内存和物理内存之间有个映射关系。
         对于嵌入式而言,一般分为实时操作系统(RTOS)和非实时操作系统(OS)。RTOS主要就是实时性,在限定的时间内保持准确性。常用的有Vxworks,uCos-II,还有早期的手机;非实时的操作系统典型的就是Linux(实际linux也能做实时的),windows还有现在智能手机。
         由于RTOS操作系统没有虚拟地址空间,直接用的是物理内存,那里面的叫做任务。对于Vxworks实际上是单进程多线程。Vxworks只有一个进程(内存空间和资源分配),其任务的概念与线程相当。

        进程、线程任务之间关系如图所示,对于非实时操作系统,一般是多进程的,多任务并发。Vxworks里面实际相当于图中的进程1,然后其中的任务1、任务2类似线程,每个任务包含TCB(存储上下文)和堆栈。



展开阅读全文

没有更多推荐了,返回首页