当前位置:首页 > 单片机 > 单片机
[导读]多核处理器在嵌入式设备中无处不在,但是对于开发安全关键型设备来说,仍然是一个重大挑战。多核处理器提供真正的并发性,意味着需要真正多线程的编程,这仍旧很难处理。在任务关键型软件中,静态分析是关键,因为它

多核处理器在嵌入式设备中无处不在,但是对于开发安全关键型设备来说,仍然是一个重大挑战。多核处理器提供真正的并发性,意味着需要真正多线程的编程,这仍旧很难处理。在任务关键型软件中,静态分析是关键,因为它可以捕捉到传统测试(例如单元、功能和系统测试)遗漏的缺陷,及开发者花费数个小时甚至许多天才能解决的缺陷。在安全与保安关键型系统中,多核平台的优势必须大于风险。

安全关键型系统中的多核

多核处理器及其相应的硬件平台为安全关键型系统提供许多重要的功能:

1.分区:一个单一硬件单元可以通过虚拟分区安装多个操作系统和应用软件。多核CPU为强大的分区提供性能和处理器支持。

2.分割:类似于分区,但是可以将系统关键部分与非关键部分分割开来。例如,嵌入式平台可以安装一个实时操作系统,来控制一个带用户界面的强大且多功能的操作系统。

3.整合:多核平台在单一平台上提供分割功能,大幅减少产品所需的材料成本。提高单位电压的处理器性能会降低运行成本。

       图1. 在多核平台上采用虚拟分区的系统案例。按照关键性和功能来分割是具有可操作性的。

但是,多核处理器为多线程软件引进了真实且基于硬件层级的并发功能,而在开发编程中非常难侦测并解决潜在缺陷。尽管在极端情况下,可以向单一线程操作系统中强制施加安全关键性代码,但是效率却非常低。选择适当的并发程序设计和正确的工具可以使得多核处理器上编程的风险较低。

传统单元测试与多核并发编程比较

一般来说,单元测试假设为单线程操作系统——为预计输出提供输入和输出检查。在多线程编程中,“单元”之间的关系复杂,正确的测试方法是需要优先考虑的因素。多核平台加入了真实的硬件并行行,这就意味着线程是真实并行运行的。此外,事件在系统中的计划和调度变得不确定,因为指令交错在可用的处理器内核(或者超线程CPU线程)中。下图显示了从两个指令和两个线程到三个指令与两个线程之间交错的复杂性。根据安全关键程度,这可能会被禁止。如果不禁止,那么就意味着需要特别小心,以确保正确操作。

这种复杂性显著增加了测试的工作量、缺陷的风险度和脆弱性。幸运地是,静态分析工具可以帮助检测数据访问冲突情况和同步缺陷,这些在单元测试和次级单元测试中都很难被探测出来。

静态分析,侦测并发问题

静态分析工具创建分析软件的内部表征(IR),以推理出预计的行为。作为这种推理的一部分,它可以侦测可能会超越传统测试技术的冲突情况和并行性问题。GrammaTech CodeSonar可以侦测出多线程并行应用程序中的以下复杂缺陷:

----数据冲突:当两个线程都访问一个共享数据,且没有清晰且正确的同步时,会出现数据冲突。这种错误会导致系统处于不稳定状态,可能会偶尔随机出现。

----死锁:当单线程通过同步机制访问共享资源,但没有为其它线程访问释放时,就会出现死锁。这通常是由于同时采用了多种同步机制(锁定一个资源后再锁定第二个,但仍然处于等待状态)。

----进程饥饿现象:当线程被阻塞在一个同步对象上很长一段时间时,就会发生饥饿现象(starvation)。在实时软件中,这会影响系统运行,或触发监视警告。

----不当同步:滥用线程同步源语,例如缺失锁定或解锁对导致不可预测的系统行为。CodeSonar能探测到软件中的多种锁定和解锁乱用。

安全与保安的影响

并发错误和不当线程行为对于开发者进行侦测、诊断和修复来说是一个令人头疼的问题。由于这些错误会对系统行为产生重大影响,因此,它们会产生巨大的安全与保安风险。在极端情况下,真正的并发编程会由于安全问题(会采用上述分区来处理)受到禁止。然而,利用真正并发会带来性能优势,这两者是并行的。采用时,需要加倍小心。

静态分析工具为测试安全关键性系统提供独一无二的好处,因为他们不依靠测试用例(反过来,这可能有缺陷),并且解决传统系统测试无法解决的问题。在部署的任务关键型软件中,在部署前可能没有发现的严重并行缺陷,使用CodeSonar会发现并解决。

由于潜在的影响,利用并发漏洞是一个慎重的考虑。触发并发错误会导致系统不稳定和拒绝服务,甚至更糟。如同所有其它的潜在缺陷一样,如果存在威胁向量,需要按照正确的优先级进行处理和响应,那么并发错误可能也是安全缺陷。

总结:

传统测试往往忽视并发问题,只到系统测试阶段才会发现,或者完全遗漏——此时已经太迟、太危险,也太过于昂贵了。在安全性系统中,这就意味着大量的返工和重新测试,因为验证环境意味着高额成本。GrammaTech CodeSonar在早期,即开发代码时,通过系统行为分析,无须大量的测试,即可检测这些问题,降低风险,节约成本。

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

随着信息技术的飞速发展,网络安全问题日益凸显。作为一种重要的身份认证工具,密码器在保护用户信息安全方面发挥着至关重要的作用。本文将以Digipass 270密码器为例,详细论述其重启的作用、方法及其对保障信息安全的意义,...

关键字: 网络安全 密码器 Digipass 270

随着信息技术的飞速发展,网络安全已成为公众关注的焦点。然而,除了普遍认知的网络安全外,工业控制系统(Industrial Control Systems, ICS)的安全也日益受到重视。工控安全和网络安全虽然在某些方面存...

关键字: 工控安全 网络安全

随着社会的不断发展,汽车已经成为人们日常出行的主要交通工具。然而,随着汽车数量的不断增加,汽车盗窃案件也呈现出逐年上升的趋势。为了提高汽车的安全性,汽车防盗报警器成为了越来越多车主的选择。本文将详细介绍汽车防盗报警器的设...

关键字: 安全 汽车 防盗报警器

北京——2023年9月27日 近日,普华永道宣布与亚马逊云科技达成一项为期三年的全球战略合作协议(SCA),旨在加速创新、提高运营效率及推动商业变革。该合作将进一步增强普华永道利用云计算推动业务发展的专业技能,从而实现以...

关键字: 云计算 生成式AI 网络安全

凌云边缘计算除了与SASE协同运作,为客户提供云网安一体化服务,同时也满足用户的各类需求,可应用于实时渲染、线下零售、安全容灾、工业物联网、智慧城市、健康医疗、AI等应用场景。

关键字: 边缘计算 SASE 网络安全

无线传感器网络(WSN)在许多领域都得到了广泛应用,如环境监测、智能家居、农业自动化等。

关键字: 网络安全 无线传感器网络

随着互联网的普及和发展,网络服务器已成为信息共享和业务处理的重要基础设施。一方面,网络服务器负责处理和存储大量的网络数据,为各类网络应用提供稳定、高效的服务;另一方面,网络服务器也是网络安全的核心,面临着来自各方面的安全...

关键字: 网络服务器 网络安全

上海2023年9月22日 /美通社/ -- 2023年9月20-21日,由国际独立第三方检测、检验和认证机构德国莱茵TÜV集团(简称"TÜV莱茵...

关键字: 汽车 网络安全 芯片领域 ISO

早在14年前,美国就开始对华为发动网络攻击了,试图窃取华为的商业机密和技术信息——这是国家安全部最新披露的一个令人震惊的事实!

关键字: 华为 网络安全

9月15日南凌科技在上海举办「SASE技术论坛」,共同探讨SASE实践中的挑战和应对方案,为企业数字化转型提供新思路。

关键字: 网络安全 边缘计算 SASE SD-WAN
关闭
关闭