A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 月生春 中级黑马   /  2013-11-10 21:21  /  1080 人查看  /  1 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文



如果说,在操作系统中引入进程都是目的是为了使多个程序能并发执行,以提高资源的利用率和系统吞吐量,那么,在操作系统中再引入线程,则是为了减少程序在并发执行时所付出的时空开销,使计算机操作系统具有更好的并发性。为了说明这一点,首先回顾进程的两个基本属性:⑴进程是一个可拥有资源的独立单元。⑵进程同时又是一个可独立调度和分配的基本单元。正是由于进程有这两个基本属性才使之成为一个能独立运行的基本单元,从而也就构成了线程并发执行的基础。然而,为了使程序能并发执行,系统还必须进行一下一系列操作:⑴创建进程。系统在创建一个进程时,必须为它分配其所必需的,除处理机外的所以资源。如内存空间、I/O设备以及建立相应的PCB⑵撤销进程。系统在撤销进程时又必须先对其所占用的资源执行操作,然后再撤销PCB⑶进程切换。对进程进行切换时,由于要保留当前进程的PCB环境和设置新选中的进程的CPU环境,须花费不少的处理机时间。
换言之,由于进程是一个资源的拥有者,因而在创建、撤销和切换中,系统必须为之付出较大的时空开销。也因如此,在系统中所设置的进程,其数目不宜过多,进程切换的频率也不宜过高,这也就限制了并发进程的进一步提高。如何能使多个程序更好地并发执行同时又尽量减少系的开销已成为近年设计操作系统时所追求的重要目标。有不少演技操作系统的学者们想到,若能将进程的上述两个属性分开,由操作系统分别处理,也就是对于作为调和分派的基本单位不同时作为拥有资源的单位,以做到“轻装上阵”;而对于拥有资源的基本单位,又不对之进行频繁的切换。正是在这种思想的指导下,形成了线程的概念。

1 个回复

倒序浏览
恩,不错!总算对多线程的由来有一点点了解了
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马