-
浅议嵌入式软件覆盖率测试
随着现代信息技术与软硬件技术的快速发展,嵌入式系统的功能日益强大,嵌入式设备和软件应用领域越来越宽泛。近年来,嵌入式软件代码量呈爆炸式增长,对测试的要求越来越高,尤其是涉及防务、航空、汽车等安全关键领域。
2023-05-15 digiproto
-
浅谈CompCert:经过形式化验证的可信编译器
对编译器的正确性进行验证的诸多手段中,最为严格的莫过于采用形式化方法。点开原文查看经过形式化验证的可信编译器CompCert。
2023-05-15 digiproto
-
二进制文件符号信息
在日常的开发工作中,程序员经常使用gdb工具来调试二进制编译文件,以定位和解决一些bug。但同时,很少会有人关注二进制文件中的调试信息从何而来,又是怎么保存和解读的呢?
2023-05-15 digiproto
-
Linux进程间通信
Linux环境下,进程地址空间相互独立,每个进程各自有不同的用户地址空间。任何一个进程的全局变量在另一个进程中都看不到,所以进程和进程之间不能相互访问,要交换数据必须通过内核,在内核中开辟一块缓冲区,进程1把数据从用户空间拷到内核缓冲区,进程2再从内核缓冲区把数据读走,内核提供的这种机制称为进程间通信(IPC,Inter-Process Communication)。
2023-05-15 digiproto
-
L2C中Lustre语义的环境定义
随着计算机技术越来越多地应用于航空航天、核电、高速铁路等安全关键系统(SCS,Safety-Critical System),对计算机技术的安全性要求也越来越高。安全关键系统中的丝毫错误都可能引发巨大的灾难。如何为安全关键系统构造一个基础的安全软件环境是需要面对的首要问题,尤其是对操作系统、编译器等基础软件。
2023-05-15 digiproto
-
如何在Linux上部署Jenkins
Jenkins是一个开源软件项目,是基于Java开发的一种持续集成工具,用于监控持续重复的工作,旨在提供一个开放易用的软件平台,使软件项目可以进行持续集成。
2023-05-15 digiproto
-
WebSocket的简单实现
WebSocket协议是基于TCP的一种新的网络协议。 浏览器通信通常是基于HTTP 协议,为什么还需要另一个协议?因为http只能由客户端发起,不能由服务端发起。而WebSocket 浏览器和服务器只需要完成一次握手,两者之间就直接可以创建持久性的连接,并进行双向数据传输。
2023-05-15 digiproto