多任务原理
程序员文章站
2022-04-15 16:34:53
现代操作系统(Windows、Mac OS X、Linux、UNIX等)都支持"多任务"什么叫多任务???操作系统同时可以运行多个任务早期电脑都是单核cpu是纤所任务原理:操作系统轮流让各个任务交替执行,QQ执行2Us,切换到微信,执行2Us,再切换到陌陌,执行2Us,……。表面上看,每个任务反复执 ......
现代操作系统(windows、mac os x、linux、unix等)都支持"多任务"
什么叫多任务???
操作系统同时可以运行多个任务
早期电脑都是单核cpu是纤所任务原理:
操作系统轮流让各个任务交替执行,qq执行2us,切换到微信,执行2us,
再切换到陌陌,执行2us,……。表面上看,每个任务反复执行下去,但是cpu调度
执行太快了,导致我们感觉就像搜有任务都在同时执行一样。
现在是多核cpu实现多任务原理:
真正的并行执行多任务只能在多核cpu上实现,但是由于任务数量远远多于cpu核心数量
所以,操作系统也会自动把很多任务轮流调度到每个核心上的执行
并发:看上去一起执行,任务书多于核心数
并行:真正一起执行,任务书小于等于cpu核心数
实现多任务的方式:
1、多进程模式
2、多线程模式(常用)
3、协程模式(在开发中,很少用)
4、多进程+多线程模式