嵌入式Linux从入门到精通之第十二节:线程

Posted 产品人卫朋

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了嵌入式Linux从入门到精通之第十二节:线程相关的知识,希望对你有一定的参考价值。

线程类比于人得大脑,进程来实现具体操作

每个进程都拥有自己的数据段、代码段和堆栈段,这就造成进程在进行创建、切换、撤销操作时,需要较大的系统开销。
为了减少系统开销,从进程中演化出了线程。
线程存在于进程中,共享进程的资源。
线程是进程中的独立控制流,由环境(包括寄存器组和程序计数器)和一系列的执行指令组成。

线程概述

线程的概念


每个进程有一个地址空间和一个控制线程

线程和进程的比较


调度线程是CPU调度和分派的基本单位。
拥有资源:
    进程是系统中程序执行和资源分配的基本单位。

    线程自己一般不拥有资源(除了必不可少的程序计数器,一组寄存器和    栈),但它可以去访问其所属进程的资源,如进程代码段,数据段以及    系统资源(已打开的文件,I/O设备等)。

系统开销

同一个进程中的多个线程可共享同一地址空间,因此它们之间的同步和通信的实现也变得比较容易。

    在进程切换时候,涉及到整个当前进程CPU环境的保存以及新被调度运行的进程的CPU环境的设置;而线程切换只需要保存和设置少量寄存器的内容,并不涉及存储器管理方面的操作,从而能更有效地使用系统资源和提高系统的吞吐量。

并发性


不仅进程间可以并发执行,而且在一个进程中的多个线程之间也可以并发执行。

以上是关于嵌入式Linux从入门到精通之第十二节:线程的主要内容,如果未能解决你的问题,请参考以下文章

嵌入式Linux从入门到精通之第十节:系统编程之进程

嵌入式Linux从入门到精通之第十四节:Linux IO控制技术

嵌入式Linux从入门到精通之第十一节:进程间通信

嵌入式Linux从入门到精通之第十六节:U-boot分析

嵌入式Linux从入门到精通之第十三节:系统编程之互斥与同步

嵌入式Linux从入门到精通之第十五节:嵌入式系统简介