运行态、阻塞态、就绪态。
当线程在执行读取文件、写入文件,或着遇到CACHE缺页失效等操作时,就会进入阻塞态,举个例子当读取\写入文件时,程序调用操作系统相应API,但真正读取或写入文件时,并不是由CPU进行控制,而是将要读取或写入文件的地址、大小、缓冲等信息传递给DMA,此时DMA将要读取的文件从硬盘读入缓冲或者将缓冲中的数据写入到硬盘,CPU则暂时挂起此线程,启动另一线程,当DMA运行完相应操作后,会产生一个中断,CPU捕获中断后,将阻塞的线程重新标记为就绪状态,根据CUP调度算法,选择接下来要运行的进程。 |
|