任务调度:
采用时间片 轮转的抢占式调度方式。运行状态->暂停状态,时间片。就单核而言,该时间片以线程为单位;对于多核,线程与处理器有多种模型。
进程:是一个独立的功能程序在一个数据集上的一次动态执行过程(程序的一个执行),它是操作系统分配资源、调度和独立运行的最小单位。
线程:它是进程中的一个实体,是CPU的一个基本调度单位,即程序执行的基本单位。
为什么要引入线程:由于进程在创建、撤销和切换的时候,花销的时间很大,而线程由于共享进程内存空间,线程切换等操作的时候所花费的时间和空间都比进程小。
进程与线程的区别:
1.进程之间的内存空间是相互隔离的,而线程之间的内存空间是共享一个进程的内存空间。
2.进程是能拥有系统资源和独立运行的最小单位,而线程是CPU的基本调度单元,即程序执行的最小单位。
3.进程切换的开销时空大,而线程相对来说小很多。
4.并发性。多个程序(进程和线程)可以同时处于就绪状态,等待运行,CPU会分配时间给程序,由于CPU分配时间很快很短,所以多个程序可以同时运行,但就单个CPU来说,这种并行属于伪并行,因为CPU运行程序,读取指令仍然按给定的顺序运行,就是说程序的组织结构仍然是顺序结构。