点击空白处退出提示
作品详情
2. 熟悉 linux 环境下c编程,系统常用操作,熟悉 gcc/gdb等 linux 下开发工具
3. 熟悉常用的算法和数据结构(栈、单链表、队列、查找、排序);
4. 熟悉多线程编程技术、熟悉常见的线程同步、进程通信技术;
5. 熟悉 makefile 脚本,shell 编程,汇编语言,verilog vhdl 硬件描述语言,熟悉软件开发流程;
6. 熟练使用 testbed,specchecker,sunwiseaunit 测试工具;
10.克服过的困难
在负责卫星重构模块代码维护与测试中,需要对计算机底层 flash和 sram 不同扇区地址进行查看,擦除和写入,因当前代码与新
功能卫星需求会有一些不同,参照技术文档完善重构模块的时候,技术文档与代码在细节方面不够完善,会遇到各种问题与困难,
在与相关部门技术人员进行沟通,解决技术难点,修改错误代码,在重构的过程中,因为涉及到计算机底层,经常会出现地址错
位,数据写错等情况,每次写入文件要将写入的数据转化成二进制文件,再对二进制文件添加帧头帧尾,将固定的二进制数据长度
和字节,写入相对的地址,因保密要求,每次写入数据相当困难,工作量巨大,并且因为计算机接口吞吐量较小,仅1kb 文件需要
拆分成多个二进制文件,还要对齐添加帧头帧尾计算每一帧的检验和添加到每一帧里,在后期写入大文件时,几M的文件需拆分很
多,一个大文件需要写入一天,中间出现失误就要从头再来,后自己用c代码独自开发出一款小工具,可以对二进制文件进行读
取,自动截取想要的长度,自动添加帧头帧尾及检验和,几秒钟就将大文件拆分完,很大的方便了工作的进展
业绩:
1. 完成重构模块代码与技术文档的编写、完成重构模块使用手册的设计与编写,使卫星具备了在轨重构代码的完整技术,即便卫星
在轨出现软件问题,也可以通过重构技术跟新 bug ,解决了软件的安全隐患;
2. 通过可视化自动单元测试平台的应用,保证卫星整个工程的安全稳定运行;
3. 设计测试用例并编码,测试代码实现自动将各个模块用例的预期输入与实际输出做对比后的相对偏差输出到文档中,使测试结
果更加清晰直观的展示;
4. 熟悉软件开发流程和业务流程,熟悉部分重构和全部重构程序步骤,了解计算机的通讯方式,熟悉 gdb 测试方法,计算机程序
固化流程,tornado 软件的使用,重构文件配置。
5. 负责卫星软件部分功能模块的代码编写,按照已编代码画出代码流程图,按照流程图和代码对已编写代码进行测试用例设计,
并按照用例设计编写测试用例代码,对已编写代码进行单元测试,将测试用例预期输出与实际输出自动对比输出相对偏差到文件,
确保代码语句覆盖和分支百分百的安全性
Testbed 测试工具应用
1. 熟悉通过静态测试工具静态分析代码错误,生成错误报告,找对应 8114 编码规则改正完成静态测试;
2. 使用 TBvision 代码评审报告验证;
3. 熟悉桩函数插入代码为变量赋值、user global 的数组类型变量创建;
4. 软件报错通过检查序列目录生成的 exh 文件(用例执行代码的路径)和 sop (工具生成的中间过
程文件)文件定位错误位置,检查代码执行是否正常退出;
5. 配置 Constant Variables
6. 通过利用桩函数中止代码无限循环软件崩溃问题;
7. 在 testbed.ini 添加宏增加测试软件配置选项;
8. 通过 tornado 单步执行驱动文件,在 Testbed.ini 文件下添加的文件与模拟器不兼容问题;
9. 通过在桩函数插入循环代码,解决多次调用函数不进入某分支的情况;
声明:本文仅代表作者观点,不代表本站立场。如果侵犯到您的合法权益,请联系我们删除侵权资源!如果遇到资源链接失效,请您通过评论或工单的方式通知管理员。未经允许,不得转载,本站所有资源文章禁止商业使用运营!
下载安装【程序员客栈】APP
实时对接需求、及时收发消息、丰富的开放项目需求、随时随地查看项目状态
评论