先决条件: 线 , 多任务和多线程之间的区别 , 和多处理
null
A. 多任务操作系统 是一种操作系统,可以让你感觉到两个或多个任务/作业/进程同时运行。它通过在这些任务/作业/流程之间分配系统资源,并在任务/作业/流程反复执行时在它们之间切换来实现这一点。通常情况下,CPU一次只处理一个任务,但切换速度太快,看起来CPU同时执行多个进程。他们可以支持任何一种 先发制人 多任务,操作系统将时间分配给应用程序(几乎所有现代操作系统),或 合作的 多任务处理,操作系统等待程序返回控制(Windows 3.x、Mac OS 9及更早版本),导致挂起和崩溃。也称为 分时度假 ,多任务是多道程序设计的逻辑延伸。
多任务编程有两种类型:
- 基于过程的多任务处理
- 基于线程的多任务处理
不。 |
基于过程的多任务处理 |
基于线程的多任务处理 |
---|---|---|
1. | 在基于进程的多任务处理中,两个或多个进程和程序可以同时运行。 | 在基于线程的多任务处理中,可以同时运行两个或多个线程。 |
2. | 在基于进程的多任务处理中,进程或程序是最小的单元。 | 在基于线程的多任务处理中,线程是最小的单元。 |
3. | 该项目是一个更大的单元。 | 线程是一个较小的单元。 |
4. | 基于进程的多任务处理需要更多开销。 | 基于线程的多任务处理需要更少的开销。 |
5. | 该进程需要自己的地址空间。 | 线程共享相同的地址空间。 |
6. | 进程对进程的通信成本很高。 | 线程到线程的通信并不昂贵。 |
7. | 在这里,它无法在CPU空闲时间内访问。 | 它允许在CPU占用的空闲时间内进行访问。 |
8. | 这是一个相对较重的项目。 | 它比较轻。 |
9 | 它具有更快的多任务数据传输速率。 | 它具有更快的多任务数据传输速率。 |
10 | 例子: 我们可以一边听音乐,一边浏览互联网。本例中的过程是音乐播放器和浏览器。 | 例子: 使用浏览器,我们可以浏览网页,同时下载文件。在本例中,导航是一个线程,下载是另一个线程。同样在像MS word这样的文字处理应用程序中,我们可以在一个线程中键入文本,拼写检查器可以在另一个线程中检查错误。 |
© 版权声明
文章版权归作者所有,未经允许请勿转载。
THE END