📄 00000001.htm
字号:
容 易 造 成 其 他 问 题。 更 主 要 的 是 这 保 留 了 这 部 分 功 能, 能 够 <br /> 使 得 不 同 进 程 使 用 相 同 代 码 。 如 果 没 有 了 这 个 功 能, 每 个 程 <br /> 序 都 需 要 自 己 的 运 行 库, 在 内 存 中 就 会 有 库 的 很 多 拷 贝。 其 <br /> 实 只 需 把 交 换 空 间 的 长 度 设 置 为 零, 就 可 以 关 闭 虚 拟 内 存 的 <br /> 页 面 换 入 和 换 出 功 能。 对 一 些CPU, 虚 拟 存 储 器 的 功 能 提 供 内 <br /> 存 管 理, 防 止 不 同 程 序 占 用 相 同 的 地 址 空 间。 而 在 嵌 入 式 系 <br /> 统 中, 使 用 简 单 、 绝 对 的 地 址 空 间, 因 此 这 种 功 能 也 不 会 起 <br /> 作 用。 不 过 这 到 提 供 了 防 止 误 写 以 至 于 使 系 统 崩 溃 的 功 能。 <br /> 很 多 嵌 入 式 系 统 习 惯 使 用“ 全 局 变 量”, 让 进 程 共 享 数 据 。 <br />在Linux 系 统 中 提 供 共 享 内 存 方 法 让 进 程 共 享 数 据 信 息。 在RT- <br />Linux 中 使 用FIFO 进 行 信 息 交 换。 <br />7. 处 理 文 件 系 统 很 多 嵌 入 式 系 统 没 有磁 盘 和文 件 系 统;Linux 也 <br /> 可 以 在没 有 磁 盘 的 系 统 上 运 行。 正 如 上 面 提 到 的, 应 用 程 序 <br />可 以 和 核 心 一 起 编 译, 在 启 动 时 一 起 装 入 运 行。 这 适 应 于 简 <br />单 系 统, 但不 具 有 灵 活 性。 其 实, 许 多 商 业 的 嵌 入 式 系 统 都 提 <br /> 供 文 件 系 统 的 选 择。 大 都 是 特 殊 的 文 件 系 统 或 者 兼 容MS-DOS <br />文 件 系 统。Linux 提 供 包 括MS-DOS 等许 多 选 择。 其 他 的 文 件 系 统 具 <br /> 有 更 好 的 性 能。Linux 还 具 有 许 多 实 时商 业 操 作 系 统 所 不 具 备 <br />的检 查 和 修 复 文 件 系 统 的 功 能。 这 种 功 能 对 于 通 过 网 络 更 新 <br />的 系 统 尤 为 重 要。 Linux 的 文 件 系 统 可 以 建 立 在 传 统 的 磁 盘 上 <br />、Flash Memory、 或 其 他 载 体。 甚 至 可 以 用 RAM 磁 盘 存 放 临 时 文 件 <br />。 有 些 系 统 中 包 含 了 廉 价 的CD-ROM, 它 比Flash Memory 更 便 宜, 更 <br /> 新 升 级 更 容 易。Linux 系 统 可 以 从CD-ROM 中 启 动 以 及 运 行 程 序。 <br />在 网 络 化 的 嵌 入 式 系 统 ,Linux 支 持NFS( 网 络 文 件 系 统)。 于 是 <br /> , 你 可 以 使 用 很 多 网 络 功 能。 首 先, 可 以 通 过 网 络 来 启 动 应 <br /> 用 程 序。 因 为 通 过 服 务 器 来 启 动 应 用 程 序, 所 以 是 进 行 软 件 <br /> 更 新 的 最 好 解 决 办 法。 其 次, 在 运 行 过 程 中, 可 以 很 方 便 地 <br />导 入 和 导 出 数 据、 状 态 设 置 和 状 态 信 息 等。 这 个 功 能 很 适 合 <br />用 于 远 程 监 视 和 控 制 应 用 系 统。 例 如, 在RAM 中 建 立 磁 盘, 保 存 <br /> 各 种 需 要 的 重 要 数 据, 远 程 系 统 登 录 到 此RAM 文 件 系 统, 读 取 <br /> 数 据, 然 后 在 操 作 者 的 机 器 上 用 图 形 界 面显 示 运 行状 态, 起 到 <br /> 很 好 的 监 视 效 果。 <br />8. 设 置 启 动-LILO 和BIOS 当 微 机 启 动 时, 它 运 行 预 定 地 址 的 代 <br />码 ,那 地 址通 常 是 在 只 读 存 储 区, 存 放 有 启 动 代 码 。 在PC 中 , <br /> 即 BIOS, 它 执 行 底 层 的CPU 初 始 化 工 作 和 初 始 化 设 置 其 他 硬 件 <br />。BIOS 确 认 哪 个 硬 盘 存 放 操 作 系 统, 拷 贝 操 作 系 统 到RAM 中, 然 <br /> 后 运 行 操 作 系 统。同 样,Linux 在PC 上 运 行, 依 靠PC 的BIOS 来 设 置 <br />硬 件、 启 动OS。 在 嵌 入 式 系 统 中, 通 常 没 有BIOS, 因 此, 需 要 提 <br />供 等 价 的 启 动 代 码。 嵌 入 式 系 统 并 不 需 要 象PC 那 样 灵 活 的BIOS <br /> 启 动 程 序, 它 初 始 化 的 硬 件 比 较 单 一。 这 段 代 码 其 实 很 简 单 <br />, 只 是 把 一 些 很 重 要, 而 且 还 要 特 殊 的 写 入 顺 序 要 求 的 数 据 <br /> 写 入 硬 件 的 寄 存 器 。 另 外 必 须 具 备 的 功 能 有 内 存 检 测, 点 亮 <br />LED, 检 测 其 他 很 重 要 的 硬 件。 这 些 代 码 的 针 对 性 很 强, 不 需 <br />要 很 好 的 移 植 性。 所 以 不 同 的 硬 件 环 境 需 要 不 同 的 启 动 代 码 <br />。 为 了 进 行 测 试, 可 以 使 用ICE( 在 线 仿 真 器) 或 其 他 的 设 备 来 <br /> 调 试 这 部 分 代 码 。 这 部 分 代 码 总 是 运 行 在Flash 或EPROM 等 芯 片 <br /> 上, 所 以, 需 要 把 它 们 写 入 这 些 芯 片。 如 何 写, 当 然 因 硬 件 的 <br /> 不 同 而 不 同 了。 一 个 最 为 普 通 的 方 法 是 使 用EPROM 或Flash 烧 录 <br />器, 把 程 序 烧 录 在 芯 片, 然 后 把 芯 片 插 入 板 上。 另 外 的 方 法 是 <br /> 通 过JTAG 接 口 进 行。 <br />9. 嵌 入 式 的 Linux 同 样 健 壮 可 靠 和其他的运行于PC的系统相比,Linux是最 <br />可靠和最稳定的操作系统。而嵌入式的核心也是如此的。Linux的核心移植到新的微处理 <br />器上,基本不用什么修改。因此Linux可以使用许多计算机板。外设的驱动程序也多如牛 <br />毛,而且比其他的都稳定好用。但是,如果不是PC平台环境,那么你必需为特殊硬件编 <br />写驱动程序。对于各种硬件的相似驱动程序市面上随处可见,所以,你可以DOWN下来修 <br />改而成,所以安装新的或特殊 驱动器、网卡、串口、并口就不困难了。不过,我还是建 <br />议你在身边放一本Kernel的书比较好,以备查找。 在我的经验中,我觉得使用Linux的 <br />错误大都是对系统的了解不准确所至。况且,Linux的源代码随处可得、注释丰富、文档 <br />齐全,你完全可能自己去解决问题。 <br />10.结束语 嵌入式的Linux系统也有缺点。和某些商业操作系统一样,占用较大的内存 <br />。当然可以去掉部分无用的功能来减小使用的内存,但是,如果不仔细,将引起新的问 <br />题。 有些Linux的应用程序需要虚拟内存,而嵌入式系统中并没有或不需要虚拟内存, <br />所以,并非所有的Linux应用程序可以在嵌入式系统运行。 核心的调试工具并非完尽人 <br />意,虽然可以使用kgdb,不过我们更多的是使用print语句来帮助调试。 在应用于嵌入 <br />式系统的主要问题是:Linux本身具有很大的灵活性,而嵌入式系统不具有灵活性,它们 <br />主要针对特殊的问题。这是问题的关键。 总之,Linux用于开发嵌入式系统的应用软件 <br />是可能的和可行的。 <br /> <br />-- <br /> <br />※ 来源:·BBS 水木清华站 smth.org·[FROM: 166.111.167.231] <br /><a href="00000000.htm">上一篇</a><a href="javascript:history.go(-1)">返回上一页</a><a href="index.htm">回到目录</a><a href="#top">回到页首</a><a href="00000002.htm">下一篇</a></h1></center><center><h1>BBS 水木清华站∶精华区</h1></center></body></html>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -