189 8069 5689

进程线程的调度阻塞唤醒-创新互联

1Cpu线程调度

1一个CPU最多可以运行一个进程或者一个线程,如果是双核的CPU最多可运行 两个进程或两个线程, 操作系统是多任务操作系统,他不止同时运行两个任务,可能有很多个,如word文档,QQ,音乐,浏览器,等都是一个或多个进程或线程, 如果要跑这个多个进程 每个进程都对应一个应用程序,或里面的线程, 如果有N个这样的线程,那么一个2核的CPU 处理这样的线程, 每一次 一个核只能挂一个线程, 这时候就涉及到调度。

专业成都网站建设公司,做排名好的好网站,排在同行前面,为您带来客户和效益!成都创新互联为您提供成都网站建设,五站合一网站设计制作,服务好的网站设计公司,成都网站建设、网站制作负责任的成都网站制作公司!

2什么是调度怎么调度: OS会给每个进程或线程可调度的单元 一个叫做时间片的东西,根据线程的级别给时间片,每个CPU 执行这个线程时间是根据这个时间片决定的,然后把这个线程挂起,就是暂停,然后这个CPU的核去执行另一个线程 执行完所有线程后,回来又开始执行第一个线程或进程。 每一个线程根据时间片一次进行调度,这样就保证了每个线程都能被执行的到, 人类是感觉不到这个暂停的,因为CPU速度是非常快的,
线程会经常休眠,强制休眠就是 时间片到了,系统给你休眠挂起, 还有就是主动休眠, 例如一个程序窗口
打开后不去动他,他就是休眠状态。

3主动休眠: 比如说 c语言的Read读取文件的函数 调用之后 就会主动休眠,他要等OS 从磁盘里读取文件数据到内存,然后这个线程才会被唤醒,读到文件,满足他继续往下的条件。

4阻塞与唤醒:比如一个网卡,他和OS相连 有很多的SOCKET对象,又有很多的线程,其中的线程就阻塞在这个socket对象上面, 知道OS线程读取到网卡的数据,然后解析到这个socket对象上,这时候就会唤醒这个线程。

另外有需要云服务器可以了解下创新互联scvps.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。


分享名称:进程线程的调度阻塞唤醒-创新互联
文章源于:http://cdxtjz.cn/article/djccsi.html

其他资讯