操作系统--进程和线程的区别

  1. 进程是资源的分配和调度的一个独立单元,而线程是CPU调度的基本单元(根本区别
  2. 同一个进程中可以包括多个线程,并且线程共享整个进程的资源(寄存器、堆栈、上下文),一个进行至少包括一个线程。系统在运行的时候会为每个进程分配不同的内存空间;而对线程而言,除了CPU外,系统不会为线程分配内存(线程所使用的资源来自其所属进程的资源),线程组之间只能共享资源。(内存分配
  3. 进程结束后它拥有的所有线程都将销毁,而线程的结束不会影响同个进程中的其他线程的结束
  4. 每个进程都有独立的代码和数据空间(程序上下文),线程可以看做小进程,同一类线程共享代码和数据空间,每个线程都有自己独立的运行栈和程序计数器(PC),线程是轻两级的进程,它的创建和销毁所需要的时间比进程小很多,所有操作系统中的执行功能都是创建线程去完成的
  5. 线程中执行时一般都要进行同步和互斥,因为他们共享同一进程的所有资源
  6. 线程有自己的私有属性TCB(Task Control Block),线程id,寄存器等,而进程也有自己的私有属性进程控制块PCB(Process Control Block),这些私有属性是不被共享的,用来标示一个进程或一个线程的标志
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章