线程概念的引入

1.目的

         1)线程是什么网络

         2)引入线程有什么用并发

          3)为何引入线程spa

2.历史

          20世纪60年代提出进程的概念,在操做系统中一直都是以进程做为独立运行的单位操作系统

          20世纪80年代中期,在操做系统领域,提出了比进程更小的能独立运行的基本单位---线程线程

3.引入线程做用

           引入进程的目的

                  1)为了使多个程序并发执行 进程

                    2)改善资源利用率图片

                    3)提升系统吞吐量内存

        从内存管理的角度看资源

            一个系统多个进程,他们都会使用内存,为了确保内存互不影响,内存大小位置都是固定的;内存管理

            进程间互相不影响,一个进程崩溃了,不影响其余进程

            举个栗子:

          你能够在window系统上边一边听音乐,一边玩QQ,

          听音乐开个一个进程,玩QQ开个一个进程

                引入线程的目的

                      1)提升系统的并发性

              举个栗子

                若是咱们把运行在操做系统的程序,好比QQ看做一个进程,那么程序执行不可能一个分支,

你可能用来传输文字A,发送图片B

具体的执行就是

               1) QQ获取CPU上下文

                2)开始执行QQ中的传输文件A 

                3)执行QQ中的发送图片B

               4)CPU保存QQ的上下文

执行A B时共享了QQ的资源,CPU没有进行上下文切换  A B就是线程

4.详解

          咱们首先从进程谈起,进程有两个基本属性

            1)进程是一个能够拥有资源的独立单位

            2)进程同时也是一个能够独立调度和分配的基本单位

所谓的资源就是计算机里的中央处理器,内存,文件,网络等等。

因此进程能够并发执行

为了使线程能够并发执行,系统还必须进行以下操做

 1)建立进程

系统在建立进程时,必须分配必须的,除处理机之外的全部资源;

内存空间;IO设备,进程控制块PCB

2)撤销进程

系统在撤销进程时,必须对这些资源进行回收,并撤销PCB块

3)进程切换

在对线程进行切换时,须要保存当前进程的CPU环境和须要切换的进程的CPU上下文

5.思考

           思考?

             是否能够把进程的两个属性分开,

             做为系统独立调度和分配和单元,而不独立分配资源,产生了线程

在引入线程的系统中,线程是进程的一个实体,是被系统独立调度和分配的基本单位,

线程本身不拥有系统资源,只拥有一点在运行中必不可少的资源(如程序计数器,一组寄存器和栈)

但它能够和同属同一个进程的其余线程共享进程的所有资源

一个线程能够建立和撤销另外一个线程

同一进程的多个线程能够并发执行

因为线程之间相互制约,线程运行时会出现间断

线程通常拥有就绪 阻塞 执行三种基本状态

有些系统可能线程还有终止状态

相关文章
相关标签/搜索