全国服务热线:400-0358-011

位置:成都达内教育IT培训机构 > 学校动态 > 疫情后浅谈什么是线程以及线程上下文切换

疫情后浅谈什么是线程以及线程上下文切换

来源:成都达内教育IT培训机构时间:2021/10/3 8:55:14

  疫情后浅谈什么是线程以及线程上下文切换
  线程是我们日常生活中经常会用到的一个机制,关于线程是什么以及线程的优缺点,还有线程是如何进行上下文切换的,这些都是需要我们去了解的,从而才能更好地了解线程,有助你的线程程序代码的开发。
  本文主要对线程是什么,以及相关的延伸,包括线程的上下文切换是如何进行的,谈到了与进程的联系,从而帮助你更好地认识线程。
  线程是什么
  早些时候的操作系统是以进程作为独立运行的基本单位,直到后来,计算机科学家又提出了更小的可以独立运行的基本单元,即线程。12-1.png
  现代化操作系统中,进程是较小的资源分配单位,线程是较小的运行单位,一个进程中可以有一个或多个线程,每个线程都有独立的一套寄存器和栈,从而增加了线程的控制流是相对独立的。
  线程的优缺点:
  优点:
  在一个进程中可以同时存在多个线程。
  使进程能够多任务并行处理。
  在同进程下,各个线程可以共享进程资源(同进程内的多线程通信是非常简单和的)

  更轻量与

疫情后浅谈什么是线程以及线程上下文切换

  缺点:
  由于进程资源共享,因此存在资源竞争,需要通过锁机制进行协同。
  如果进程中有一条线程奔溃,那么将导致其所属进程的所有线程奔溃(一般游戏的用户设计不会使用多线程)
  线程的上下文切换
  如果一个进程只有一个线程时,那么该进程就等于一个线程,线程上下文的切换分两种情况:
  不同进程的线程,切换的过程就和进程上下文是一样的。那么,进程的上下文又是如何切换的呢?下面会讲到,这里先跳过。
  两个线程是属于同一个进程时,由于虚拟内存是共享的,因此当切换时,这些资源保持不动,只需切换线程的私有数据、寄存器等非共享数据即可。
  因此,与进程相比,线程的上下文切换开销要少很多。
  进程的上下文是怎么切换的
  1.首先进程是由内核管理和调度的,因此进程上下文切换发生在内核态,其内容包括用户空间资源(虚拟内存、栈、全局变量等)和内核空间资源(内核堆栈、寄存器等)。
  2.当进行上下文切换时,个进程的上下文被保存到它的PCB(进程的标识,类似于id)中,当前进程的PCB上下文被载入到CPU中,使该进程能够继续执行。
领取试听课
每天限量名额,先到先得

尊重原创文章,转载请注明出处与链接:http://www.peixun360.com/3857/news/418726/违者必究! 以上就是成都达内教育IT培训机构 小编为您整理 疫情后浅谈什么是线程以及线程上下文切换的全部内容。

温馨提示:提交留言后老师会第一时间与您联系!热线电话:400-0358-011