Multitasking
内核是核似乎允操作系统中的核心组件。像Linux这样的操作系统使用的内核似乎允许用户同时访问计算机。多个用户可以同时执行多个程序。
操作系统控制下的每一个执行的程序叫做一个任务。如果一个操作系统可以以这种方式执行多个任务,就叫做多任务系统。
多任务操作系统的使用可以简化复杂软件应用程序的设计:
- 操作系统的多任务和任务间的通信特色,可以把复杂的应用分解成一系列小的和更容易管理的任务。
- 任务分解可以降低软件测试难度,易于团队任务分解和减少代码重复使用。
- 应用程序中可以去除复杂的时序细节,而变成操作系统的责任。
Multitasking Vs Concurrency
传统的处理器一次只能执行一个任务--但是多任务操作系统通过快速切换任务,使每个任务看起来一直在执行。下图显示了三个任务相对于时间的执行模式。任务名字是颜色编码的,并写在图片的左边。时间从左向右移动,带颜色的线展示在特定的时刻哪个任务在执行。上面的图片展示了我们感知到的并发的执行模式,下面的图片展示实际的多任务执行模式。