操作系统-异步

多道程序环境下的进程执行

在多道程序环境下,系统允许多个进程并发执行。在单处理机环境下,由于系统中只有一台处理机,因此每次只允许一个进程执行,其余进程只能等待。当正在执行的进程提出某种资源请求,如打印请求,而打印机又正在被其他进程占用时,由于打印机属于临界资源,因此正在执行的进程必须等待并释放处理机,直到打印机空闲并再次获得处理机时,该进程才能继续执行。可见,由于资源等因素的限制,进程的执行通常不可能一气呵成,而是会以停停走走的方式运行。

对于内存中的每个进程,其在何时能获得处理机并运行,何时又因提出某种资源请求而暂停,以及进程以怎样的速度向前推进,每道程序总共需要多少时间才能完成等,都是不可预知的。由于各用户程序的性能不同,例如,有的程序侧重于计算而较少需要I/O,而有的程序则计算少而I/O多,这样,很可能是先进入内存的作业后完成,而后进入内存的作业先完成。换言之,进程是以人们不可预知的速度向前推进的,此即进程的异步性(asynchronism)。尽管如此,倘若在OS中配置完善的进程同步机制,且运行环境相同,则作业即便经过多次运行,也都会获得完全相同的结果的。因此,异步运行方式是被允许的,而且是OS的一个重要特征。

Donate
  • Copyright: Copyright is owned by the author. For commercial reprints, please contact the author for authorization. For non-commercial reprints, please indicate the source.

扫一扫,分享到微信

微信分享二维码
  • Copyrights © 2015-2024 buynonsense
  • Visitors: | Views:

请我喝杯咖啡吧~

支付宝
微信