嵌入式实时操作系统 需求规格说明

  • 格式:doc
  • 大小:141.00 KB
  • 文档页数:10

分 类:软件项目计划

使用者:E-fanciers

需求规格说明

Version: 1.0

项 目 承 担 队伍:烟台大学

计算机学院

E-fanciers小组

撰 写 人(签名): 许超 于歌

完 成 日 期: 2009-7-16

本文档使用小组: E-fanciers小组

评审负责人(签名): 孝瑞

评 审 日 期: 2009-7-19

2 目 录

一、引言 ............................................... 4

1.1编写目的 .......................................... 4

1.2项目背景 .......................................... 4

1.3定义 .............................................. 4

1.4参考资料: ........................................ 5

二、任务概述 ........................................... 5

2.1目标 .............................................. 5

2.2运行环境 .......................................... 6

2.3条件与限制 ........................................ 6

三、数据描述 ........................................... 7

3.1静态数据 .......................................... 7

3.2动态数据 .......................................... 7

四、功能需求 ........................................... 7

4.1功能划分 .......................................... 7

4.2功能描述 .......................................... 7

五、性能要求 ........................................... 8

5.1时间特性..........................................8

5.2适应性............................................8

六、运行需求 ........................................... 8

6.1用户界面...........................................8

6.2硬件接口...........................................9

3 6.3软件接口..........................................9

6.4故障处理.........................................10

七、其他需求 ......................................... 10

4 需求规格说明

(Requirements Specification)

一.引言

1. 编写目的(阐明编写需求说明书的目的,指明读者对象。)

1.作为嵌入式实时操作系统软件系统开发技术协议的参考依据,为开发提供参考。

2.根据齐鲁软件设计大赛 2009 赛题嵌入式实时操作系统(RTOS)设计的要求特点和当前背景下此类软件需求方向的特点,对被开发软件系统的主要功能、性能进行完整描述,为软件开发者进行详细设计和编程提供基础。

3.为软件提供测试和验收的依据,即为选取测试用例和进行验收的依据。

2. 项目背景(可包括:(1)项目的委托单位,开发单位和主管部门;(2)该软件系统与其他系统的关系。)

随着微电子技术、计算机技术和网络通信技术的发展,嵌入式系统已广泛应用在各个领域,包括消费电子、汽车电子、网络通信、工业设备、航空航天和国防军事等。随着嵌入式技术的发展,工业领域也一改过去传统的单片机应用模式,逐渐将一些新嵌入式技术引入到系统中。特别是作为软件基础的嵌入式操作系统已广泛为业界所接受,借以提高系统的开发效率和运行效率。是否采用嵌入式操作系统,已成为工业设备品质优劣的标志之一。

当今的嵌入式操作系统领域呈现百家争鸣的状态。据最近的调查数据显示,嵌入式操作系统有数十种之多的。这种多样性存在是必然的,是由嵌入式系统的定制性所决定的,是针对各个领域和行业的不同需求的应对。也就是说,各个嵌入式操作系统都有自己的应用领域,针对不同的应用没有绝对的优劣之分,不会出现一种操作系统垄断的局面。自主开发嵌入式操作系统绝对不是多余的,也是是对这种多样性的自然顺应,应该可拥有自己的用武之地。

有些国内嵌入式厂商将希望寄托在Linux之上,以为它可以帮助解决所面临的版税和安全等问题。但事实并非完全如此,至少在嵌入式系统领域。首先,Linux还是泊来货,国人并未掌握其核心技术和进程,也并未解决对外依赖的问题。其次,Linux是为桌面系统而设计的,并不能很好地满足嵌入式系统高效性和灵活性的要求;再次,Linux的一统也违背了嵌入式系统应用灵活定制的本质特性。

3. 定义(列出文档中用到的专门术语定义和缩写词的原文。)

int taskInit(void);

/*创建一个任务, 返回: 返回任务编号tid, >0: 成功, 其他: 失败.*/

/*name: 任务名称, entryPtr : 任务函数入口, stack_size: 任务栈大小, priority: 任务优先级*/

int taskCreate(char *name, void *entryPtr, int stack_size, int priority);

/*启动一个任务, 让taskCreat创建的任务参加调度*/

int taskStart(unsigned char tid);

/*tid: 任务编号, 由taskCreate返回*/

5 int taskPriorityGet(unsigned char tid);

int taskPrioritySet(unsigned char tid, int newPriority);

/*获取和设置任务优先级, 用于动态调整*/

int taskSuspend(unsigned char tid);

/*将任务挂起, 该任务退出调度*/

int taskDelete(unsigned char tid);

/*将任务删除 该任务退出调度且回收任务分配的资源*/

int semCreate(void);

/*互斥信号量创建, 返回信号量标识sid, <0: 失败*/

int semTake(int sid);

int semGive(int sid);

/*互斥信号量获取和释放*/

int taskSleep(int ticks);

/*任务睡眠(非忙等), 由任务自己调用, 主动阻塞一段时间. 时间单位为tick, 即10ms*/

4. 参考资料(可包括:(1)项目开发计划;(2)文档所引用的资料,标准和规范。列出这些资料的作者、标题、编号、发表日期、出版单位或资料来源。)

[1] 邵贝贝.μC/OS-Ⅱ—源码公开的实时嵌入式操作系统.北京:中国电力出版 2002

[2] 郑宗汉.实时系统软件基础.北京:清华大学出版社,2003

[3] 陈智育,温彦军,陈琪编著.VxWorks程序开发实践.北京:人民邮电出版社,2004

[4] 罗蕾.嵌入式实时操作系统及应用开发.北京:北京航空航天出版社,2007

[5] 于渊.自己动手写操作系统. 北京:电子工业出版社,2005

[6] LPC2138 芯片手册

二.任务概述

1.目标

本软件作品作为嵌入式实时操作系统系统,采用各种算法和策略,始终保证系统行为的可预测性(Predictability)。可预测性是指在系统运行的任何时刻,在任何情况下,实时操作系统的资源调配策略都能为争夺资源(包括CPU、内存等)的多个实时任务合理地分配资源,使每个实时任务的实时性要求都能得到满足。与通用操作系统不同,实时操作系统注重的不是系统的平均表现,而是要求每个实时任务在最坏情况下都要满足其实时性要求,也就是说,实时操作系统注重的是个体表现,更准确地讲是个体最坏情况的表现。

基本功能

1. 基于参考硬件平台,建立硬件抽象层,完成基本硬件初始化,建立时钟中断;

2. 在硬件抽象层基础上,建立多任务操作系统环境;

3. 任务调度采用同级时间片轮询机制;

4. 实现任务间基本通讯机制:互斥信号量(共享内存);

5. 实现基本的时钟管理机制:任务睡眠阻塞;

6. 实现一个RS232串口驱动。基于串口驱动实现一个命令行Shell(用一个独立的任务实现),可在超级终端显示信息和执行命令。

扩展功能