Linux系统移植的分析
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
L i n u x 系 统的突 出特 点决定 , L i n u x作为嵌 入式操作 系统 ,
在 嵌 入式 操作 系统 开发 中 占有 比例 达 到 5 2 %。L i n u x 的 代码 可依 据应 用 领 域 的需要 进 行修 改 。L i n u x 是 一种 自由软 件 , 用 户可 以免 费 获得 它 和它 的源 代码 ,L i n u x 的代 码是 一 种具 有丰富资 源的软件 , 可对 它 的代 码 自由使 用随 意修改和扩展 , 在L i n u x 中可以找到 任何一种 你所需 要程序 。L i n u x 系统 兼容
关键 词 : 系统移植 ;L i n u x ;硬 件 ;嵌 入式
一
、
嵌入式 L i n u x操作系统 的特点
在 宿 主机上建 立 交叉 编译 环 境并 在宿 主机上 使用 编译 器生 成
二 进制 编码 ,再将 生成 的可执 行 的二进 制编 码下 载到 目标 平 台进行 调整 ,目的主要是 为 了解决 目标 平 台 的资 源 和开发 及 调试 工具 不 足的 问题 。然 后对 引导 程序 进行 移植 ,引 导程 序
多种硬 件设备 ,系统 中大量 的驱 动程序 可兼 容最新 的硬 件设 备技术 ,现有 的硬 件平 台都可支 持 L i n u x系统运行 。L i n u x 具
是 在 操 作 系统 内核 程 序及 应 用 程 序 之 前启 动 运 行 的一 段 程 序 ,它 与移植 系统 体系结 构关 联 密切 。引导 程序 的主 要工作
是完 成 系统程 序 的启 动 和加载 。引 导程 序不 能实 现在嵌 入 系 统 中 的通 用 ,它严重 依赖 于 系统 中的硬 件设 备存 在 ,所 以引 导 程序必 须通 过用 户针对 系统 硬件设 备 来编 写 ,才能 实现 系 统硬 件设 备 的初 始化 _ [ 作 。引导 程序 可将 系统 的软 件 和硬件
由L i n u x内 核代 码控 制 内存 后 L i n u x 开 始 对设 备 进行 初 始 化
多 的代 码 中分离 出来 ,使与 硬件 有关 的代码 永远 不必 关心 其
他代码的操作内容。总的代码中与硬件相关 的代码只占少数 ,
L i n u x移植 时只需 改 动少量 的与 硬件 有关 的代 码 ,所 以 L i n u x 系统 对 于硬 件平 台 的跨 越 很 容 易实 现 。另 一方 面 ,L i n u x的
有 建立 系统开 发环境 接运行 环境 的专用 工具 ,具有 移植 的可
行 性 ,它 可支持 多种体 系 和 C P U,可 移植 到各种硬 件平 台。
设备 调整 到一个 平衡 的状 态 ,并 建立 起针 对 内存 空 间 的映射
图 ,为系统 的内核运 行提供 基本条 件准备 。
L i n u x 与 网络 的关 系 紧密 ,标 准 的 网络协 议 它全 部 支持 ,网 络 是 它 的突 出优 势 ,L i n u x 对 与 文件 和 网络 的管理 有着 完 善
处理 ,做 好前 期 准 备工 作 使硬 件设 备 受 内核 控 制 。L i n u x 的
系统部 分负 责使用 和操 作这些 硬件 ,配置用 户 网络 ,各 服务 终 端等 。 L i n u x系统 移植 所必 需 的环境 包括 两部 分 ,第一 ,L i n u x 系统 移植 的程 序 员 需要 具备 一 个 由 G N U开发 的新版 本 编程
AC ADE MI C RE S E AR C H 学术 研究
I Ⅸ系统移植的分析
◆ 沈 学 银 刘 中奇
摘 要 :L i n u x 系统是 一 个强 大的 多 用户 、 多任 务操 作 系统 ,L i n u x 具有 高效 性和 灵 活性 的优 点 , L i n u x 既可在 昂贵 的工作站 上运行 ,也 可在廉 价 的个人 计算机 上 实现 多用户 、多任务操 作 。L i n u x 具确 源代码 免 费开放 ,可对 其 自由使 用 ,修 剪和 扩展 等较 为 突 出的特 点 , 由于这 些特点 ,L i n u x 系统 受到 广 大计算机 爱好者 的喜 爱,关 于L i n u x ,  ̄ . 统移植 问题 经常被探 讨分析 。
分 层 结构 和 L i n u x 采 用 的等 待 队列 的 内核机 制 很容 易解 决 了
程 序 的扩展 问题 ,代 码在 需要 时像 带着 的 随身听 可 以随时加 载 ,不需要 时可 以像 把代码 锁进抽 屉里一 样轻松 卸下 。 L i n u x系 统 的 内核 有 内 存 管 理 部 分 、虚 拟 文 件 系 统 部 分 、设 备 管 理 部 分 、进 程 管 理 部 分 、网络 部 分 组 成 。 由 于 L i n u x系统 将 与 硬 件 相 关 的代 码 相 对 独 立 ,所 以 L i n u x系统 的 内核各 部 分 在 调用 时 涉 及 到 的移 植 代码 数 量 较 少 。L i n u x 系统 移植 时需 要针对 所需 移植 的平 台编写 硬件 相关 的代 码 , 在L i n u x系 统 内核 的各 部分 中进 程 管理部 分 、内存 管 理部 分
的管理机制 。
三 、L i n u x系统 的 移 植
L i n u x 系统 的移 植包含 两个方 面 ,内存 移植 和系统移 植 。
二 、L i n u x系统移植 的组成部分及环境要求
L i n u x系 统是 由系统 和 内核两 个Fra Baidu bibliotek独立 的部 分 组成 ,内核
( 一 )内存 移植 。L i n u x 系统 采用 的是 等待 队列 的 内核 机制 它相对 单一 的 内核机 制来说 并不 是很 灵活 ,但这 种机 制 并 不 能影 响 到 L i n u x自由使 用 修 改 和 扩 展 。L i n u x 通 过 两 种 手段 实现 了 L i n u x的平 台跨 越 和它 的 程序 修 改及 扩展 ,一 方
面 ,L i n u x系统 对 代码 进 行 划分 ,将 与 硬件 有 关 的代 码 从 繁
部 分主要 工作是 实现数 据 的初始化 ,对 系统 的大部 分硬件 设
备进 行 控制 ,做好 L i n u x 系 统实 现管 理 内存 、工作 进程 和设
备读 写等 工作 的前 期准 备 。系统部 分主要 作用 是加 载系统 设 备设 施 ,配 置 系统 工作 环 境方 便 行业 用 户使 用 。L i n u x 系 统 的启 动过 程是 特定 的加 载 程序将 部 分 L i n u x 内核 调入 内存 ,