首页 考试吧论坛 Exam8视线 考试商城 网络课程 模拟考试 考友录 实用文档 求职招聘 论文下载
2011中考 | 2011高考 | 2012考研 | 考研培训 | 在职研 | 自学考试 | 成人高考 | 法律硕士 | MBA考试
MPA考试 | 中科院
四六级 | 职称英语 | 商务英语 | 公共英语 | 托福 | 雅思 | 专四专八 | 口译笔译 | 博思 | GRE GMAT
新概念英语 | 成人英语三级 | 申硕英语 | 攻硕英语 | 职称日语 | 日语学习 | 法语 | 德语 | 韩语
计算机等级考试 | 软件水平考试 | 职称计算机 | 微软认证 | 思科认证 | Oracle认证 | Linux认证
华为认证 | Java认证
公务员 | 报关员 | 银行从业资格 | 证券从业资格 | 期货从业资格 | 司法考试 | 法律顾问 | 导游资格
报检员 | 教师资格 | 社会工作者 | 外销员 | 国际商务师 | 跟单员 | 单证员 | 物流师 | 价格鉴证师
人力资源 | 管理咨询师考试 | 秘书资格 | 心理咨询师考试 | 出版专业资格 | 广告师职业水平
驾驶员 | 网络编辑
卫生资格 | 执业医师 | 执业药师 | 执业护士
会计从业资格考试会计证) | 经济师 | 会计职称 | 注册会计师 | 审计师 | 注册税务师
注册资产评估师 | 高级会计师 | ACCA | 统计师 | 精算师 | 理财规划师 | 国际内审师
一级建造师 | 二级建造师 | 造价工程师 | 造价员 | 咨询工程师 | 监理工程师 | 安全工程师
质量工程师 | 物业管理师 | 招标师 | 结构工程师 | 建筑师 | 房地产估价师 | 土地估价师 | 岩土师
设备监理师 | 房地产经纪人 | 投资项目管理师 | 土地登记代理人 | 环境影响评价师 | 环保工程师
城市规划师 | 公路监理师 | 公路造价师 | 安全评价师 | 电气工程师 | 注册测绘师 | 注册计量师
缤纷校园 | 实用文档 | 英语学习 | 作文大全 | 求职招聘 | 论文下载 | 访谈 | 游戏
您现在的位置: 考试吧(Exam8.com) > 软件水平考试 > 复习资料 > 嵌入式系统设计 > 正文

2011软考嵌入式系统设计师考试学习笔记(4)

来源:考试吧Exam8.com) 2011-6-20 15:21:22 考试吧:中国教育培训第一门户 模拟考场
考试吧提供了2011软考嵌入式系统设计师考试学习笔记,供考生参考。

  四、嵌入式软件开发

  1、嵌入式平台选型

  嵌入式设计分三个阶段:分析、设计和实现。

  分析阶段:是确定要解决的问题及需要完成的目标,也称需求阶段;

  设计阶段:主要是解决如何在给定的约束条件下完成用户的需求;

  实现阶段:主要是解决如何在所选择的硬件和软件的基础上进行整个软硬件系统的协调和实现。

  硬件的选择包括:处理器、硬件部件

  软件的选择包括:操作系统、编程语言、软件开发工具、硬件调试工具和软件组件。

  2、软件设计

  ⑴、软件设计任务:准备一个工作计划;确定软件的结构;设计评审;维护工作计划;与硬件部门密切合作、相互协调;控制工作的结果、把工作记录存档。

  ⑵、模块结构设计

  模块结构设计的任务:将系统划分为模块,确定软件的结构,模块的功能和模块间的接口,以及全局数据结构设。

  模块:是组成系统的基本单位,它的特点是可以组合、分解和更换。

  模块的四要素:输入和输出;处理功能;内部数据;程序代码。

  模块结构设计应遵守的原则:所划分的模块其内部凝聚性要强,模块之间的联系要少,即要有很强的独立性;模块之间的连接只能存在上下级之间的调用关系,不能有同级之间的横向关系;整个结构呈树状结构,不允许网状结构或交叉调用关系;所有模块必须严格地分类编码并建立归档文件。

  ⑶、结构化设计的方法

  结构化设计的方法是一种面向数据流的设计方法,基本思想是将系统设计成由相对独立、功能单一的模块组成的结构。

  信息流的类型:变换流和事务流。

  结构化设计方法的步骤:复查并精化数据流图;确定DFD的信息流类型(变换型或事务型);根据流类型分别实施变换分析或事务分析;根据系统设计的原则,对程序结构图进行优化。

  3、嵌入式程序设计

  ⑴、bootloader的设计

  步骤;stage1和stage2两大部

  Stage1步骤:硬件设备初始化;为加载bootloader的stage1准备内存空间;复制bootloader的stage1到内存;设置好堆栈;跳转到stage1的C入口点。

  Stage2步骤:初始化本阶段要使用的硬件设备;检测系统内存映射;将内核映像和根文件系统映像到flash上读入到内存中;为内核设置启动参数,并调用内核。

  ⑵、设备驱动程序设计

  ⑶、网络应用程序设计

  4、编码

  四个步骤:确定源程序的标准格式、制定编程规范;准备编程环境;编写代码;进行代码审查,提高编码质量。

  5、测试

  ⑴、概述

  软件测试:是从经济和效率的角度出发,对软件代码进行质量和正确性保证的一个过程。

  系统测试的目的:是为了发现至今尚未发现的错误。

  规范化的测试过程:拟定测试计划;编制测试大纲;根据测试大纲设计和生产测试用例;实施测试;生成测试报告。

  ⑵、测试方法

  分类:人工测试和机器测试

  人工测试的三种方法:个人复查、抽查、会审

  机器测试分成:黑盒测试和白盒测试

  黑盒测试:也称功能测试,将软件看成黑盒子,在完成不考虑软件内部结构和特性的情况下,测试软件的外部特性。包括:极限情况测试;边界测试;异常测试;随机测试;性能测试。

  白盒测试:也称结构测试,将软件看成透明的的盒,根据程序的内部结构和逻辑来设计测试用例。原则:程序模块中的所有独立路径至少执行一次;在所有的逻辑判断中,取“真”“假”的两种情况至少都要执行一次;每个循环都应在边界条件和一般条件下各执行一次;测试程序内部的数据结构的有效性。

  ⑶、测试步骤:

  ①、系统平台测试:包括硬件电路测试、操作系统及底层驱动程序测试;

  ②、单元测试:也称模块测试。一般采用白盒测试法。主要测试模拟块接口、局部数据结构、重要的执行路径、出错处理、边界条件。

  测试时需要开的模块包括:驱动模块(相当于一个程序,负责接收测试用例的数据,将这些数据送到测试模块,并输出结果)和桩模块(也称为存根模块,用来代替测试模块中所调用的子模块,其内可进行少量的数据处理,目的是为了检验入口,并输出调用和返回的信息)

  ③、集成测试:也称组装测,就是把各个模块按照系统设计说明书的要求组合起来进行测试。

  两种方法:一种是分别测试各个模块,再把这些模块组合起来进行整体测试,即非增量式集成;另一种是把下一个要测试的模块组合到已测试好的模块中,测试完成再将下一个模块组合进来,进行测试,这样逐步把所有的模块组合在一起,并完成测试,即增量式集成。

  ④、系统测试:将嵌入式软件、硬件,外设和网络等各种因素结全在一起,进行整个系统的组装测试和确认测试。一般采用黑盒测试法。

  主要测试内容:恢复测试、强度测试、性能测试、可靠性测试。

  ⑤、测试结果分析

  对测试结果分析和比较帮助错误的定位,指导程序员修改代码。

  ⑷、覆盖测试:是一种白盒测试法,测试人员必须拥有程序的规格说明书和程序清单。其基本思路是以程序的内部结构为基础来设计测试用例,以覆盖尽可能多的程序内部逻辑结构,发现其中的错误和问题,一般用在单元测试阶段。

  主要策略:语句覆盖、判定覆盖、条件覆盖、判定/条件覆盖、条件组合覆盖。

  5、下载运行

  相关推荐:

  经验分享:软考系统分析师冲刺及临场作战技巧

  软考系统分析师历年真题汇总(2007年-2010年)

文章搜索
软件水平考试栏目导航
版权声明:如果软件水平考试网所转载内容不慎侵犯了您的权益,请与我们联系800@exam8.com,我们将会及时处理。如转载本软件水平考试网内容,请注明出处。