1、 中文 4460 字 毕业设计 (论文 )外文资料翻译 嵌入式实时操作系统 RTX-51 的研究 学 生 姓 名: 班 级: 电自 047 学 号: 指 导 教 师: 所 在 单 位: 答 辩 日 期: 2008 年 6 月 23 日 1 附件 1:外文资料翻译译文 RTX-51 实时操作系统 RTX51是一个适用于 8051 家族的实时多任务操作系统。 RTX51使复杂的系统和软件设计以及有时间限制的工程开发变得简单。 RTX51是一个强大的工具,它可以在 单个 CPU上管理几个作业(任务)。 RTX51有两种不同的版本: RTX51 Full 允许 4个优先权任务的循环和切换,并且还能并行
2、的利用中断功能。 RTX51支持信号传递,以及与系统邮箱和信号量进行消 息 传递。 RTX51的os_wait 函数 可以 等待 以 下事 件 : 中断 、 时间 到、来自 任务 或 中断的信号 、来自任务 或 中断的消 息、 信号量。 RTX51 Tiny 是 RTX51 Full 的一个 子集 。 RTX51 Tiny 可以 很容易 的 运 行在没 有 扩展外部存储器 的单 片机 系统上。 但 是,使用 RTX51 Tiny 的程 序 可以 访问外部 存储器 。 RTX51 Tiny允许循环任务切换,并且支持信号传递,还能并行的利用中断功能。 RTX51 Tiny 的 os_wait函数
3、可以 等待 以 下事 件 : 时间 到、 时间间 隔、来自 任务 或者 中断的信号。 以 后 的 部分 用 RTX-51 来指代 RTX-51 Full 和 RTX-51 Tiny。在两 者之 间不同的 地方会加 以 说明 。 导 言 许多 微处 理 器 应用 都需要 同时 执 行多个作业 或者 任务。 对 于 这 种应用,一个实时的操作系统( RTOS)允许系统 资源 ( CPU、内存等 ) 被灵活 的 分配给 几个任务。 RTX-51是一个强大的实时操作系统,并且 易 于应用。 RTX-51 可以工作在 8051系 列 的 微处 理 器 上。 你使用 标准 C语言编写 RTX-51应用程
4、序 ,并且用 C51来编译它 们 。 为了 具 体指明 任务的 标志 和优先 级 , 会 与 标准 C存 在一 点差别 。 RTX-51应用程 序要求 你 将 RTX51.H或者 RTX51TNY.H头文 件 包含 进 来 。 当 你在 Vision2集成环 境里打 开 目标选项对话 框 , 选 择 目标 操作系统以 后 , 链接 器 便 会 添 加 合 适的RTX-51库 文 件。 单任务程序 一个 标准 C程 序 从主 函数 开始 执 行。在 嵌入式 应用 里 , 主 函数 经常 被编写为一个 无穷 循环, 也 可以 被 认 为 是一个 连续 执 行的单个任 务。 例如 : 2 循环任务切
5、换 RTX51 Tiny 允许 “ 准 并行 ” 的同时 执 行几个任务。 每 一个任务在 预 先 定义好 的时间 片内 得以 执 行。时间 到 使 正 在 执 行的任务 挂起 ,并使 另 一个任务开始 执行。 下 面 的 例 子 使用 了 循环任务切换的 技术 。 使用 RTX51的 C程 序 例 子 RTX51 从 任务 0( 分配给 作业 0)开始 执 行程 序 。 os_create_task 函数标 记任务 1( 分配给 作业 1) 为准 备 执 行。 这 两个任务是简单的计 数 循环。在一个时间片 结束 后 , RTX51 中断作业 0,并且开始 执 行作业 1。作业 1 在一个时间 片 结束 后 ,系统 重新 开始 执 行作业 0。 os_wait 函数 os_wait 函数 提供 了 一种 更 为 有 效 的 方 式 来给 几个任务 分配 可使用的 处 理 器 时间。 os_wait函数 中断 当 前正 在 运 行的任务,并且 等待 特定 的 事 件。在一个任务等待事 件的时间 里 , 其他 任务可以 被执 行。 等待时间到 RTX51使用 8051 的一个 定 时 器来 产生 一个循环的中断(时 钟周期 )。 响 应