2019个嵌入式市场研究,持续的C/C++优势

2019 Embedded Markets Study reflects emerging technologies, continued C/C++ dominance

根据Eee Times和嵌入式技术在今年早些时候发布的2019个嵌入式市场研究,虽然物联网(IOT)、嵌入式视觉、机器学习和其新兴技术在开发组织中的重要性日益提高,但C和C++仍然是嵌入式开发者中的主要编程语言。

2019年嵌入式市场研究延续了20多年的传统,提供了美洲、亚太地区(APAC)和欧洲、中东和非洲(EMEA)嵌入式发展状况的详细快照。在这张快照中,研究提供了一系列关键领域的见解,从受访者当前的应用焦点和设计环境到关键硬件组件和设计技术的作用。以下各节说明了这些领域的亮点。

应用程序焦点

在半数受访者中,物联网发展已经被认为是重要的,预计在未来的项目中,物联网发展将得到相当大的关注,超过65%的受访者表示,将有一个或多个项目致力于物联网(图1)。

图1.  2019年嵌入式市场研究

即便如此,在一个连接性基本上是一个基线设计需求的行业中,安全方法的使用充其量是混合使用的(图2)。纯软件安全方法通常比基于硬件的安全方法带来更多的安全漏洞。然而,目前约有26%的设计都是基于软件安全的。也许更令人担忧的是,20%的设计完全没有安全功能。调查并没有探究这些设计的本质,让了解这些设计的目标应用程序的性质,因此这些系统中的实际风险是未知的。然而,任何嵌入式系统仍然容易受到来自连接相关安全漏洞的威胁。

图2.  当前设计中采用的安全措施——2019年的新问题。

也许这项研究的一个更显著的结果在于对使用机器学习能力的期望。已经有32%的2019年研究受访者表示目前正在使用机器学习方法,但55%的受访者正在考虑使用机器学习方法,这一数字在欧洲、中东和非洲地区的开发者中升至68%(图3)。

图3.  正在使用或正在考虑的先进技术。

当前嵌入式设计环境

虽然对IEEE或GITHUB等编程语言的更一般的调查表明Python、java和JavaScript的统治,2019个嵌入式市场研究表明C++和C++仍然牢牢地处于嵌入式开发的顶层(图4)。

图4. 编程语言的使用。

开发人员可能将C/C++代码与汇编语言的结合,一方面用于关键循环,要么与Python、Matlab和LabVIEW进行建模和算法探索。Python在人工智能(AI)开发中的迅速普及可能会使这些数字略有改变,因为其研究结果表明边缘计算系统和基于AI的方法的重要性日益增加。然而,目前,C和C++仍然是嵌入式开发人员中首选的编程语言。

嵌入式设计过程

嵌入式设计过程仍然以详细设计阶段为主,占设计时间的30%——这一数字在过去几年中基本保持不变(图5)。在2019年的一个新问题中,花费在安全或隐私风险评估上的时间量引发了对在嵌入式设计中构建安全性和隐私性的更高级别方法的作用的质疑。

图5.  花在不同设计阶段的时间。

操作系统

嵌入式Linux和FreeRTOS继续超越嵌入式开发中使用的其操作系统。然而,在未来12个月内可能使用哪些操作系统方面,地区差异明显,尤其是Android操作系统(图6)。

图6.  正在考虑的主要操作系统的区域性突破。

除上述章节外,2019年嵌入式市场研究还对微处理器、FPGA和开发领域(包括硬件IP重用、设计技术、系统级工具以及项目和版本控制)的当前和预期作用提供了详细的见解。

2019个嵌入式市场研究,持续的C/C++优势的更多相关文章

  1. IntelliJ IDEA 最新版 2019.2.4 激活 (持续更新)(含windows和Mac)

    IntelliJ IDEA 最新版 2019.2.4 激活 最新版激活包下载地址: 百度网盘 提取码: i28c 转载: Neo Peng Jetbrains系列产品 激活方式 同下述方式相同,只需要 ...

  2. Linux嵌入式系统与硬件平台的关系

    一. Linux嵌入式系统 操作系统是一种在计算机上运行的软件,它的主要任务是管理计算机上的系统资源,为用户提供使用计算机及其外部设备的接口.它存在的目的是为了管理所有硬件资源,并且提供应用软件一个合 ...

  3. 使用buildbot实现持续集成(转载)

    转载自:http://www.oschina.net/p/buildbot 使用 Buildot 实现持续集成 使用基于 Python 的工具实现持续集成的理论与实践 牛仔式编码的日子在大多数组织中早 ...

  4. 构建基于Jenkins + Github的持续集成环境

    搭建持续集成首先要了解什么是持续集成,带着明确的目标去搭建持续集成环境才能让我们少走很多弯路.持续集成(Continuous integration)简称CI,是一种软件开发的实践,可以让团队在持续集 ...

  5. CI持续集成

    CI持续集成 “我的TDD实践”系列之CI持续集成 写在前面: 我的TDD实践这几篇文章主要是围绕测试驱动开发所展开的,其中涵盖了一小部分测试理论,更多的则是关注工具的使用及环境的搭建,做到简单实践先 ...

  6. 我的TDD实践---CI持续集成

    “我的TDD实践”系列之CI持续集成 写在前面: 我的TDD实践这几篇文章主要是围绕测试驱动开发所展开的,其中涵盖了一小部分测试理论,更多的则是关注工具的使用及环境的搭建,做到简单实践先行,后理论专精 ...

  7. 32位嵌入式微处理器(processor)一览

    32位嵌入式微处理器(processor)一览 由于嵌入式系统的专用型与定制性,与全球PC市场不同,没有一种微处理器或者微处理器公司可以主导嵌入式系统.本文分析了当前市场上主流的一些32位嵌入式微处理 ...

  8. 【译文】用Spring Cloud和Docker搭建微服务平台

    by Kenny Bastani Sunday, July 12, 2015 转自:http://www.kennybastani.com/2015/07/spring-cloud-docker-mi ...

  9. 如何自行搭建一个威胁感知大脑 SIEM?| 硬创公开课

    如何自行搭建一个威胁感知大脑 SIEM?| 硬创公开课 本文作者:谢幺 2017-03-10 10:09 专题:硬创公开课 导语:十年安全产品经验的百度安全专家兜哥,手把手教你用开源项目搭建SIEM安 ...

随机推荐

  1. Swift系列三 - 函数

    函数在任何语言中都是存在的,Swift中函数更加灵活. 一.函数的定义 1.1. 有返回值(形参默认是let,也只能是let) func pi() -> Double { return 3.14 ...

  2. Andrew Ng机器学习算法入门(二):机器学习分类

    机器学习的定义 Arthur Samuel给出的定义,Field of Study that gives computers the ability to learn without being ex ...

  3. 谷歌浏览器安装Vue.js devtools

    第一步:访问谷歌商店 在之前的博客中已经谈到了这一点的实现方式 https://www.cnblogs.com/10134dz/p/13552777.html 第二步:下载Vue.js devtool ...

  4. 远程分支git换地址了,本地重新关联

    由于本人把github远程仓库的名字修改了所以做了以下步骤修改 步骤:两步 (1)先把之前关联的git清除掉 git remote rm origin (2)再关联新的地址 git remote ad ...

  5. 谁动了我的 Linux?原来 history 可以这么强大!

    当我们频繁使用 Linux 命令行时,有效地使用历史记录,可以大大提高工作效率. 在平时 Linux 操作过程中,很多命令是重复的,你一定不希望大量输入重复的命令.如果你是系统管理员,你可能需要对用户 ...

  6. 风变编程(Python自学笔记)第12关-我们都是中国人

    1.类的个例叫做实例:类,是对某个群体的统称(类是某个特定的群体),实例是群体中某个具体的个体. 2.Python中的对象等于类和实例的集合. 3. 类的创建:class+类名+冒号,后面语句要缩进. ...

  7. python文件对象几种操作模式区别——文件操作方法详解

    文件对象的字节模式/b模式(以utf-8编码为例) 读操作 写操作 指针操作 ASCII字节 返回bytes/字节类型的Ascii 写入bytes类型字节 例如:b'This is ascii' 使用 ...

  8. xrandr 直接输这个能显示可用的分辨和当前的分辨率 xrandr -s 1920x1200就设置成指定的分辨率

    利用 xrandr 命令修改屏幕分辨率 时间  2016-10-29 原文   http://blog.csdn.net/mao0514/article/details/52965700   问题背景 ...

  9. Linux shell sed命令在文件行首行尾添加字符

    昨天写一个脚本花了一天的2/3的时间,而且大部分时间都耗在了sed命令上,今天不总结一下都对不起昨天流逝的时间啊~~~ 用sed命令在行首或行尾添加字符的命令有以下几种: 假设处理的文本为test.f ...

  10. SystemVerilog 编写FSM

    SystemVerilog 编写FSM 题目 SystemVerilog实现 仿真 SystemVerilog 编写FSM 好书: https://github.com/yllinux/blogPic ...