- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
一、课程设计目的和任务
课 程 设 计 题 目 : 独 占 设 备 的 分 配 与 回 收
问 题 描 述 : 为 了 使 系 统 有 条 不 紊 地 工 作 , 系 统 在 分 配 设 备 是 ,应 考 虑 这 样 几
个 因 素 :① 设 备 的 固 有 属 性 ;② 设 备 分 配 算 法 ;③ 设 备 分 配 时 的 安 全 性 ④ 设 备 独
立 性 ; 系 统 也 要 通 过 回 收 , 实 现 设 备 的 再 分 配 。
要 求 : 设 备 分 配 在 计 算 机 系 统 中 , 设 备 、 控 制 器 和 通 道 等 资 源 是 有 限 的 ,并
不 是 每 个 进 程 随 时 都 可 以 得 到 这 些 资 源 。 进 程 首 要 向 设 备 管 理 程 序 提 出 申 请 ,
然 后 由 设 备 管 理 程 序 按 照 一 定 的 分 配 算 法 给 进 程 分 配 必 要 的 资 源 。如果 进 程 的 申
请 没 有 成 功 , 就 要 在 资 源 的 等 待 队 列 中 排 队 等 待 , 直 到 获 得 所 需 的 资 源 。 考 虑
设 备 的 特 性 和 安 全 性 。 设 备 的 特 性 是 设 备 本 身 固 有 的 属 性 , 一 般 分 为 独
占 、 共 享 和 虚 拟 设 备 等 。
二、分析与设计
1 、 设 计 任 务 分 析 :
独 占 设 备 的 分 配 与 虚 拟 设 备 独 占 设 备 每 次 只 能 分 配 给 一 个 进 程 使 用 ,这种 使
用 特 性 隐 含 着 死 锁 的 必 要 条 件 ,所 以 在 考 虑 独 占 设 备 的 分 配 时 ,一定 要 结 合 有 关
防 止 和 避 免 死 锁 的 安 全 算 法 。
2 、 设 计 方 案 论 证 :
为 了 提 高 O S 的 可 适 应 性 和 可 扩 展 性 ,在 O S 中 毫 无 例 外 地 实 现 了 设 备 的 独 立
性 , 即 使 应 用 程 序 独 立 于 具 体 使 用 的 物 理 设 备 。 在 实 现 了 设 备 独 立 性 的 功 能 后 ,
可 以 带 来 两 方 面 的 好 处 :
( 1 ) 设 备 分 配 时 的 灵 活 性 ;
( 2 ) 易 于 实 现 I/O 重 定 向 。
3 、 详 细 设 计
通 过 此 系 统 可 以 实 现 如 下 功 能 : 分 配 , 回 收 , 显 示 , 退 出 。 选 择 独 占 设 备 ,
通 过 执 行 功 能 项 , 输 出 设 备 表 , 实 现 设 备 的 分 配 与 回 收 。
4 、 源 代 码 清 单 :
#de fi n e fa l se 0
#de fi n e tru e 1
#de fi n e n 4
#de fi n e m 1 0
stru ct
{
cha r ty pe[ 1 0 ] ; /*设备类名 * /
int c ou nt; /* 拥有设备台数 * /
int re m a i n; /* 现存的可用设备台数 * /
int a d dress; /* 该类设备在设备表中的起 地址 * /
} equ i pty pe [ n] ; /* 设备类表定义 ,假定系统有 n 个设备类型 * /
stru ct
{
int nu m b er; /*设备绝对号 * /
int s ta tu s ; /* 设备好坏状态 * /
int re m a i n; /* 设备是否已分配 * /
cha r j obna m e [ 4 ] ;/* 占有设备的作业名 * /
int lnu m be r; /* 设备相对号 * /
} equ i pm ent[ m ] ; /*设备表定义 ,假定系统有 m 个设备 * /
a lloca te( J ,ty pe , m m )
cha r * J ,* ty pe;
int m m ;
{
int i ,t,
文档评论(0)