云文档网 - 专业文章范例文档资料分享平台

操作系统练习题

来源:网络收集 时间:2024-04-27 下载这篇文档 手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:xuecool-com或QQ:370150219 处理(尽可能给您提供完整文档),感谢您的支持与谅解。点击这里给我发消息

四十一、在UNIX系统中运行下面程序,最多可产生多少个进程?画出进程家族树。P249 main() {

fork(); fork(); fork(); }

[分析及相关知识] 系统调用fork的功能是创建一个新进程,新进程运行与其创建者一样的程序,新创建的进程称为子进程,调用fork的进程称为父进程,父子进程都从fork调用后的那条语句开始执行。

当程序执行时,若所有进程都能成功地执行系统调用fork,则会产生最多数目的进程。为了描述方便起见,将开始执行时的进程称为A进程,此时程序计数器PC,指向第一个fork调用。 main() {

fork(); /* ←PC,进程A*/ fork(): fork(); }

当进程A成功地执行完第一个fork调用时,它创建了一个子进程,将此子进程称

为进程B。此时,进程A、B的程序计数器PC指向第二个fork调用,进程A派生

了1个子孙进程. main() {

fork():

fork(); /* ←PC,进程A*/ fork(); }

main() {

fork();

fork(); /* ←PC,进程B*/ fork(); }

当进程A、B成功地执行完第二个fork调用时,它们分别创建了一个子进程,将

这些子进程分别称为进程C、D.此时,进程A、B、C、D的程序计数器PC指向第

三个fork调用,进程A派生了3个子孙进程。 main()

{

fork(); fork();

fork(); /* ←PC,进程A*/ }

main() {

fork(); fork();

fork(); /* ←PC,进程B*/ }

main() {

fork(); fork();

fork(); /* ←PC,进程C*/ )

main() {

fork(); fork();

fork(); /* ←PC,进程D*/ )

当进程A、B、C、D成功地执行完第三个fork调用时,它们分别创建了一个子进

程,将这些子进程分别称为进程E、F、C、H.此时,进程A、B、C、D、E、F、G、

H的程序计数器PC指向程序结束处,进程A派生了7个子孙进程。 main() {

fork(); fork(); fork();

} /* ←PC,进程A*/ main() {

fork(); fork(); fork();

) /* ←PC,进程B*/ main() {

fork(); fork(): fork();

} /* ←PC,进程C*/ main() {

fork(); fork(); fork();

} /* ←PC,进程D*/ main() {

fork(); fork(); fork():

} /* ←PC,进程E*/ main() {

fork(); fork(); fork();

} /* ←PC,进程F*/ main() {

fork(); fork(); fork();

) /* ←PC,进程G*/ main() {

fork(); fork(); fork();

} /* ←PC,进程H*/

进程家族树是一棵有向树,有向树的节点代表进程,由进程P指向进程Q的边表示由进程P创建了进程Q.我们称进程P是进程Q的父进程,进程Q是进程P的子进程,这样便形成了进程树。

解:从上面的分析过程可以看出,执行第一个fork调用时,进程A创建了进程B;执 行第二个fork调用时,进程A创建了进程C,进程B创建了进程D:执行第三个fork调用 时,进程A创建了进程E,进程B创建了进程F,进程C创建了进程G,进程D创建了进程H。因此,在UNIX系统中运行题目中的程序,最多可产生7个进程,其进程家族树如图8.26所示。

1、

进程调度又称为低级调度,其主要功能是()

A 选择一个作业调入内存

B 选择一个主存中的进程调出到外存 C 选择一个外存中的进程调入到主存 D 将一个就绪的进程投入运行 2、

下列进程调度算法中,进程可能会长期得不到调度的情况是

()

A 先来先服务调度算法 B 抢占式静态优先权法 C 时间片轮转调度算法 D 非抢占式动态优先权法 ? 下列属于预防死锁的方法是() A 剥夺资源法

B 资源分配图简化法 C 资源互斥使用 D 银行家算法

? 下列属于检测死锁的方法是() A 银行家算法 B 撤销进程法 C 资源静态分配法 D 资源分配图简化法

? 为了照顾紧迫性作业,应采用() A 先来先服务调度算法 B 短作业优先调度算法 C 时间片轮转调度算法 D 优先权调度算法

设某多道系统,有磁带机2台,打印机1台,采用资源的静态分配法(假设作业获得资源后才允许进入内存)以及短作业优先调度算法和先来先服务进程调度算法。忽略I/O时间,现有作业序列如下,求5个作业完成的时间 作业名 J1 到达时间 8:00 计算时间 25分钟 需磁带机 1台 需打印机 1台

百度搜索“yundocx”或“云文档网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,云文档网,提供经典教育范文操作系统练习题在线全文阅读。

操作系统练习题.doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印 下载失败或者文档不完整,请联系客服人员解决!
本文链接:https://www.yundocx.com/fanwen/673068.html(转载请注明文章来源)
Copyright © 2018-2022 云文档网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:370150219 邮箱:370150219@qq.com
苏ICP备19068818号-2
Top
× 游客快捷下载通道(下载后可以自由复制和排版)
单篇付费下载
限时特价:7 元/份 原价:20元
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信:xuecool-com QQ:370150219