首页 > 教育知识 > 手抄报内容 > [四核四线程和四核八线程]线程是什么_线程的特点

[四核四线程和四核八线程]线程是什么_线程的特点

时间:2019-07-30   来源:手抄报内容   点击:

【www.gbppp.com--手抄报内容】

相信很多人都不知道线程是什么吧。以下是Fqcu小编整理的关于线程的相关内容,欢迎阅读和参考!

线程是什么_线程的特点

  


  线程是什么
  线程,有时被称为轻量级进程(lightweight process,lwp),是程序执行流的最小单元。一个标准的线程由线程id,当前指令指针(pc),寄存器集合和堆栈组成。另外,线程是进程中的一个实体,是被系统独立调度和分派的基本单位,线程自己不拥有系统资源,只拥有一点儿在运行中必不可少的资源,但它可与同属一个进程的其它线程共享进程所拥有的全部资源。一个线程可以创建和撤消另一个线程,同一进程中的多个线程之间可以并发执行。由于线程之间的相互制约,致使线程在运行中呈现出间断性。线程也有就绪、阻塞和运行三种基本状态。就绪状态是指线程具备运行的所有条件,逻辑上可以运行,在等待处理机;运行状态是指线程占有处理机正在运行;阻塞状态是指线程在等待一个事件(如某个信号量),逻辑上不可执行。每一个程序都至少有一个线程,若程序只有一个线程,那就是程序本身。
  线程是程序中一个单一的顺序控制流程。进程内一个相对独立的、可调度的执行单元,是系统独立调度和分派cpu的基本单位指运行中的程序的调度单位。在单个程序中同时运行多个线程完成不同的工作,称为多线程。
  线程的特点
  在多线程os中,通常是在一个进程中包括多个线程,每个线程都是作为利用cpu的基本单位,是花费最小开销的实体。线程具有以下属性。
  1)轻型实体
  线程中的实体基本上不拥有系统资源,只是有一点必不可少的、能保证独立运行的资源。
  线程的实体包括程序、数据和tcb。线程是动态概念,它的动态特性由线程控制块tcb(thread control block)描述。tcb包括以下信息:
  (1)线程状态。
  (2)当线程不运行时,被保存的现场资源。
  (3)一组执行堆栈。
  (4)存放每个线程的局部变量主存区。
  (5)访问同一个进程中的主存和其它资源。
  用于指示被执行指令序列的程序计数器、保留局部变量、少数状态参数和返回地址等的一组寄存器和堆栈。
  2)独立调度和分派的基本单位。
  在多线程os中,线程是能独立运行的基本单位,因而也是独立调度和分派的基本单位。由于线程很“轻”,故线程的切换非常迅速且开销小(在同一进程中的)。
  3)可并发执行。
  在一个进程中的多个线程之间,可以并发执行,甚至允许在一个进程中所有线程都能并发执行;同样,不同进程中的线程也能并发执行,充分利用和发挥了处理机与外围设备并行工作的能力。
  4)共享进程资源。
  在同一进程中的各个线程,都可以共享该进程所拥有的资源,这首先表现在:所有线程都具有相同的地址空间(进程的地址空间),这意味着,线程可以访问该地址空间的每一个虚地址;此外,还可以访问进程所拥有的已打开文件、定时器、信号量机构等。由于同一个进程内的线程共享内存和文件,所以线程之间互相通信不必调用内核。
  


  [线程是什么_线程的特点]

本文来源:http://www.gbppp.com/jy/594095/

推荐访问:c++线程

热门文章