https://blog.csdn.net/laughing1997/article/details/83177292

这里简单谈一下线程,但是要把一个线程谈好,要结合NIO,结合锁机制一起学习,记忆才会深刻。所以,以下说明。结合这三个方面的线程和NIO进行谈谈,锁部分另外再谈。

1、进程

1.1概念

进程=程序+执行。当把一个程序从磁盘中加载到内存中,cpu去运算和处理这个进程(运行起来的程序就是进程)。

从三个维度来看进程的模型

Untitled

Untitled

1.2 为什么会引入进程模型?

最开始的操作系统是单道编程(一个程序处理完,再处理下一个程序)

缺点:1、响应时间慢(客户体验差)2、cpu利用率非常低

例如:假设一个进程,20%需要做cpu运算,80%在做IO(发送IO事件时,cpu时闲置的)=>cpu利用率是20%

单道编程模型:cup利用率=1-0.8=20%

多道编程模型下:

同时执行两个进程的话:1-0.80.8=36%

同时执行三个进程的话:1-0.80.8*0.8=48.8%

总结:引入进程模型,目的就是为了满足多道编程,而多道编程的目的就是为了提高cpu的利用率。随着进程数量的增加,cpu的利用率逐步提高。

Untitled

1.3 进程产生和消亡的时间

Untitled