需求分析报告书--Linux系统在s3c2440平台的移植的设计与实现_第1页
需求分析报告书--Linux系统在s3c2440平台的移植的设计与实现_第2页
需求分析报告书--Linux系统在s3c2440平台的移植的设计与实现_第3页
需求分析报告书--Linux系统在s3c2440平台的移植的设计与实现_第4页
需求分析报告书--Linux系统在s3c2440平台的移植的设计与实现_第5页
已阅读5页,还剩4页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

Linux 系统在 s3c2440 平台的移植的设计与实现需求分析报告书总页数 9 正文 附录 生效日期编制: 审批:南昌航空大学东软班 需求分析报告书 版本:0.1.0修改履历修改编号 日期 修改人 版本号 修改内容1 VER0.1.0 初始做成23南昌航空大学东软班 需求分析报告书 版本:0.1.0目录1 引言 .- 4-1.1 编写目的 .- 4-1.2 项目背景 .- 4 -2 任务概述 .- 5 -2.1 开发目标&应用目标 .-5-2.2 运行环境 .- 5 -2.3 条件与限制 .- 6-2.4 关键词 .- 6-3 功能要求 .- 7 -3.1 功能划分 .- 7 -3.2 系统结构及功能描述 .- 8-3.3 备注 .- 8-4 性能要求 .- 9-4.1 时间特性 .-9 -4.2 显示特性 .- 9 -5 运行要求 .-9-5.1 界面 .-9 -5.2 基本操作 .- 9 -5.3 显示要求 .- 9 -6 扩展需求分析 .- 9 -南昌航空大学东软班 需求分析报告书 版本:0.1.01 引言1.1 编写目的编写目的1.)本次毕业设计的题目为“Linux 在 S3C2440 平台的移植的设计与实现 ”,涉及到 Linux 操作系统的概念,并采用 Samsung 公司的 S3C2440 为微处理器。2.)Linux 是最受欢迎的自由电脑操作系统内核。它是一个用 C 语言写成,符合POSIX 标准的类 Unix 操作系统。Linux 最早是由芬兰黑客 Linus Torvalds 为尝试在英特尔 x86 架构上提供自由免费的类 Unix 操作系统而开发的。该计划开始于 1991 年,在计划的早期有一些 MINIX 黑客提供了协助,而今天全球无数程序员正在为该计划无偿提供帮助。内核指的是一个提供硬件抽象层、磁盘及文件系统控制、多任务等功能的系统软件。一个内核不是一套完整的操作系统。一套基于 Linux 内核的完整操作系统叫作 Linux 操作系统。1.2 项目背景项目背景嵌入式系统的广泛应用,使得各大软件公司开发出各具特色的操作系统。也有一些组织和个人开发了免费的,源代码开放的操作系统。现在常见的国外开发的有风河公司的 VxWorks 操作系统;微软公司的 Windows CE 操作系统;开源的 Linux 操作系统和 C/OS-II 操作系统。国内的开发则有中科院的EEOS,凯思集团的 HOPEN OS 等。嵌入式操作系统提供三项功能来辅助程序员:1.内存管理;2.多任务管理;3.外围设备管理。以上的嵌入式操作系统主要特点有:1.可定制性,操作系统需要提供可裁剪和添加的内核和其他功能,让用户自行配置。2.可移植性,也是本课题的重要研究对象,由于嵌入式的处理器多种多样,为使操作系统支持尽可能多的微处理器,就必须从硬件支持和应用程序接口两方面来实现。3.实时性,如果设计的操作系统不具备实时性就无法再具有实时性的嵌入式环境中运行。4.低资源占有性,处理器配置资源少决定操作系统也要减少资源占有率。南昌航空大学东软班 需求分析报告书 版本:0.1.02 任务概述2.1 开发目标开发目标 &应用目标应用目标本课题主要研究在 S3C2440 硬件开发平台上移植嵌入式 Linux 操作系统与文件系统以及相关的设备驱动等。在嵌入式移植过程中,还需要移植合适的引导装载程序(Boot Loader),引导装载程序和系统硬件紧密相关,它们不仅与处理器的体系结构有关,而且还需要根据系统的硬件配置对引导装载程序进行配置,主要是设置处理器参数、内存地址分配、内存空间的映射、加载操作系统内核等。Linux 内核的配置、移植,将主要是修改内核源代码树中各个文件夹下的配置文件,合理组织新的驱动程序,根据配置进行条件编译、连接,最终生成内核映像文件。根文件系统负责以文件的方式管理系统的各种资源。2.2 运行环境运行环境在进行嵌入式开发时,选择合适的开发平台是一个很重要的环节,开发板可以为用户提供基本的底层硬件,系统和驱动等资源。考虑到诸如开发成本,资源特性要求,周期,技术支持程度等的不同,即使是基于同一款处理器的开发板也会因为开发的目的不同而不同。本论文的研究课题是基于 ARM9 的嵌入式 Linux 系统移植。选择广州友善之臂计算机有限公司的 mini2440 作为我们的研究平台,该开发板是基于Samsung 2440 处理器的开发平台,具有完备的硬件资源和丰富的软件资源包,为我们进行嵌入式开发技术研究提供了一个较理想的平台。软件开发平台是嵌入式开发的关键,由于嵌入式硬件平台的存储空间有限、处理器频率较低,很难直接在嵌入式硬件式平台上建立 Linux 系统、安装嵌入式开发软件,因此只能采用嵌入式交叉开发环境来解决这个问题。通过建立开发环境我们才能更方便的进行 Boot Loader 移植、 Linux 内核移植以及 GUI 系统开发等。交叉开发环境交叉开发环境由于嵌入式系统的硬件资源的局限性,在嵌入式系统的开发过程,通常都要借助于交叉开发环境,这样我们可以在开发主机上安装开发工具,编辑,编译目标的引导程序,内核和文件系统,然后在目标板上调试运行。交叉开发方式的好处是:一方面开发者可以在熟悉的主机环境下进行程序开发;另外一方面可以真实地在目标板上调试运行程序,可以避免受到目标板硬件的限制。南昌航空大学东软班 需求分析报告书 版本:0.1.02.3 条件与限制条件与限制目标板与主机之间的连接有串口,以太网接口,USB 接口以及 JTAG 几口等连接方式。(1)串行通讯接口。常用 9 针串口和 25 针串口。通过串口可以作为控制台,向目标板发送命令,显示信息;也可以通过串口传送文件以及调试内核及程序。通常串口设备的驱动实现比较简单,缺点是通讯网络速率慢,不适合大数据量传输。(2) 以太网接口。以太网高度灵活,相对简单,易于实现等特点,是当今最重要的一种局域网组网技术。网络接口一般采用 RJ-45 标准插头,PC 机上一般都配置 10M/100M 以太网卡,通过以太网连接和网络协议,可以实现快速的数据通讯和文件传输。缺点是驱动程序实现比较麻烦。(3) USB 接口。USB(Universal Serial Bus)接口,支持热拔插,具有即插即用的优点,支持热拔插,通讯速率也很快。缺点是 USB 设备分主从端,两端分别要有不同的驱动程序支持。(4) JTAG 等接口。JTAG 是一种嵌入式调试技术,它在芯片内部封装了专门的测试电路测试接口,通过 JTAG 测试工具对芯片的核进行测试。目前大多数比较复杂的器件都支持 JTAG 协议,如 ARM,DSP,FPGA 器件等,标准的 JTAG 接口是四线,TMS,TCK,TDI ,TDO ,分别为测试模式选择,测试时钟,测试数据输入和测试数据输出等。2.4 关键词关键词1)交叉开发环境配置2)Boot Loader 及移植3)根文件系统南昌航空大学东软班 需求分析报告书 版本:0.1.03 功能要求3.1 功能划分 模块名称 功能要求 功能说明负 责 保 证 内 核 及 时 对 硬 件 进 行 操 作 。负责在可运行进程中公平地选择进程调度负责控制进程对 CPU 的使用充分利用 CPU 的资源虚拟文件系统隐藏了不同硬件的具体细节,为所有设备提供统一的接口虚拟文件系统可再分为逻辑文件系统和设备驱动程序两部分网络通信协议部分负责实现各种标准的链路层、网络层和传输层协议;网络接口负责支持标准的网络通信协议和各种网络硬件设备而设备驱动程序负责对网络硬件进行具体操作。进程间通信支持进程间各种通信机制其 通 信 手 段 主 要 有 :信 号 、 文 件锁 、 管 道 、 等 待 队 列 、 信 号 量 、 消 息队 列 、 共 享 内 存 和 套 接 字 。内存管理标准 Linux 的内存管理支持虚拟内存,进程的代码、数据和堆栈的总量可以超过实际内存的大小一 类 是 和 标 准 Linux 一 样 运 行在 有 硬 件 存 储 管 理 器 的 处 理 器 上 , 另外 一 类 通 常 针 对 无 硬 件 存 储 管 理 器 的CPU 进 行 裁 剪 和 移 植 。南昌航空大学东软班 需求分析报告书 版本:0.1.03.2 系统结构及功能描述系统结构及功能描述图 1 Linux 内 核 系 统 模 块 结 构 及 相 互 依 赖 关 系由 上 图 可 以 看 出 , 所 有 的 模 块 都 与 进 程 调 度 模 块 存 在 依 赖 关 系 。 因 为 它们 都 需 要 依 靠 进 程 调 度 程 序 来 挂 起 ( 暂 停 ) 或 重 新 运 行 它 们 的 进 程 。 通 常 ,一 个 模 块 会 在 等 待 硬 件 操 作 期 间 被 挂 起 , 而 在 操 作 完 成 后 才 可 继 续 运 行 。 例如 , 当 一 个 进 程 试 图 将 一 数 据 块 写 到 软 盘 上 去 时 , 软 盘 驱 动 程 序 就 可 能 在 启动 软 盘 旋 转 期 间 将 该 进 程 置 为 挂 起 等 待 状 态 , 而 在 软 盘 进 入 到 正 常 转 速 后 再使 得 该 进 程 能 继 续 运 行 。 另 外 3 个 模 块 也 是 由 于 类 似 的 原 因 而 与 进 程 调 度模 块 存 在 依 赖 关 系 。其他几个模块的依赖关系有些不太明显,同样也很重要。进程调度子系统需要使用内存管理来调整特定进程所使用的物理内存空间。进程通信子系统则需要依靠内存管理器来支持共享内存通信机制。这种通信机制允许两个进程访问内存的同一区域以进行进程间信息的交换。虚拟文件系统也会使用网络接口来支持网络文件系统(NFS) ,同样也能使用内存管理子系统提供内存虚拟盘(ramdisk)设备。而内存管理子系统也会使用文件系统来支持内存数据块的交换操作3.3 备注Linux 内核系统模块结构及相互依赖关系内存管理进程调度网络接口进程间通信文件系统虚拟文件系统南昌航空大学东软班 需求分析报告书 版本:0.1.04 性能要求4.1 时间特性时间特性要求用户在使用本系统的环境的时候不会感受到明显的延迟,对各项文件的操作不应该比本来的文件系统延迟多于 1 秒4.2 适应性适应性操作系统尽可能简单,在与其他的软件接口以及开发计划等发生变化时,具有较强的适应能力5 运行要求5.1 界面界面屏幕格式:可在全屏及适应屏幕大小之间任意切换菜单格式:下拉式菜单、命令菜单为主输入输出时间:以服务器输入输出的时间为标准5.2 基本操作基本操作Linux

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论