-
如何提高安全关键领域的软件开发质量
对安全关键领域或业务关键的软件来说,如在质量上有任何细微的妥协,都将可能导致严重的经济损失或危及生命安全的后果,该类软件开发的首要重点必须为质量。本文将讨论把软件质量放在首位时的嵌入式软件开发流程优化方法。
2023-05-15 digiproto
-
SkyEye卫星篇-国的加强“芯”
近年来,卫星产业发展迅猛,数字化、网络化、智能化、服务化转型升级需求日益增长。为进一步完善星务软件验证工作、获取在轨卫星模拟数据,“数字卫星”成为当下主流趋势。
2023-05-15 digiproto
-
Schiaparelli着陆器坠毁事故回溯与思考
2016年10月19日,Schiaparelli火星着陆器尝试登陆火星的过程中,在预定着陆前50秒与地面控制中心失联并意外坠毁,引起较大轰动。点击原文了解事故详情和解决方案。
2023-05-15 digiproto
-
浅谈CompCert:经过形式化验证的可信编译器
对编译器的正确性进行验证的诸多手段中,最为严格的莫过于采用形式化方法。点开原文查看经过形式化验证的可信编译器CompCert。
2023-05-15 digiproto
-
编译器前端概述与可信编译器
Java程序员应该会非常熟悉Spring,在Spring框架中对注解的支持和字节码动态生成都属于编译技术;前端程序员通常会使用Babel这个工具,主要是为了将ES6语法编写的代码转换为做向后兼容的JS语法...
2023-05-15 digiproto
-
二进制文件符号信息
在日常的开发工作中,程序员经常使用gdb工具来调试二进制编译文件,以定位和解决一些bug。但同时,很少会有人关注二进制文件中的调试信息从何而来,又是怎么保存和解读的呢?
2023-05-15 digiproto
-
关于嵌入式可执行程序,你了解多少?
嵌入式系统由硬件系统和软件系统组成,因此为了使整个嵌入式系统运行起来,必须有相应的程序,我们一般所说的程序,实际上就是存储在硬件设备中的一些可执行代码。可执行代码包括嵌入式操作系统和应用软件。
2023-05-15 digiproto
-
C语言函数在硬件中的执行原理
众所周知,C语言的应用程序总是以「main」函数作为程序入口地址,那到底什么是函数呢? 程序的执行其实本质上是CPU对指令的处理,那么一个C函数的本质其实也相当于一组协同工作的指令,而这组指令能够通过相互之间的配合实现特定的功能(Function)。例如从SPI缓冲区中提取数据,配置定时器的延时时间,或者从内存读取数据并写入DAC的寄存器中。 一个函数能完成的功能往往不止一个,比如某个函数能够实现通过串口传输一个字节的数据,然后检查状态位直到接收到一个字节,最后把接收到的所有数据组合起来做实际的计算。
2023-05-15 digiproto