0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

嵌入式开发中的几种常用的工具介绍

嵌入式IoT 来源:嵌入式IoT 作者:嵌入式IoT 2021-04-02 10:05 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

嵌入式开发中常用的虚拟机与容器

1.本文说明

2.VMware Workstatio

2.Oracle VM VirtualBox

3.window10 中的WSL2 Linux子系统

4.docker容器技术

5.multipass

6.qemu

1.本文说明嵌入式开发已经从以往的单片机开发逐渐过渡到越来越依赖Linux的系统。虽然大多数情况下,windows的开发工具可以做很多嵌入式开发工作,也有很多好用的工具,但是Linux里面的好用的工具也很多。这种情况下,解决的办法就是装windows,linux双系统就可以解决,但是这样切换系统的效率太低了,传输文件也非常的麻烦。用虚拟机也可以解决该问题,虚拟机也是比较庞大的,而且性能也不怎么好。遇到这些问题,下面介绍几种常用的工具。

2.VMware Workstatio自然这是一种强大的桌面虚拟计算机软件,可以非常方便的安装各种系统,也可以根据需要进行外设的开发。

一般嵌入式开发上,用来编译Linux、uboot等镜像,然后放到windows系统上利用各种工具烧录,比较的方便。

分为商业版本和个人体验版本,做个人学习开发时,可以使用该软件来学习,但是到公司开发则需要购买许可证才能使用。不然一堆的法务材料会找上门。

个人觉得使用该软件学习Linux的使用,同时个人做一些Linux开发等等,是不错的选择,上手简单,便于操作,而且界面也比较好用。当然,缺点就是虚拟机需要安装一整个系统,占用空间比较大,而且分配的内存、cpu使用都比较低,性能差一些。

2.Oracle VM VirtualBox这个就是一款开源的虚拟机软件了,这款软件就是完全免费的。如果说VMware Workstatio担心会有版权的问题,那么用上这个虚拟机则完全不用担心这个问题了。

使用上和VMware Workstatio类似,也都是需要安装一个完整的系统镜像。

当然两者之间简单的使用来看,差别不大,一些基本的功能使用起来也差不多。需要注意的是,如果虚拟机镜像损坏,起不来了,那么这个系统镜像也就不能用了。所以使用这些虚拟机时,需要注意重要的资料及时备份。

使用虚拟机适合日常的开发工作,容易上手,学习成本不高,但是资源占用大,效率低。

3.window10 中的WSL2 Linux子系统因为是windows自己实现的虚拟化技术,效果还是可以的。虽然被很多人说有一些bug,但是基本的应用程序的使用还是可以应对的,如果不涉及到复杂的使用,学习使用Linux的命令也是不错的选择。但是缺点就是bug太多,而且系统的占用也比较大,而且东西不可控。

在安装完成WSL2后可以安装Linux的内核。

可以安装的Linux版本非常的多。其中安装Ubuntu版本可以自由的选择。

比较遗憾的是只能用命令行进行操作,还有在开发Linux的过程中,一些软件支持的不是很好,还有就是没有图形化界面。

而且如果要使用Linux上的USB等外设驱动,也不能很好的支持。

4.docker容器技术docker的思想就是利用操作系统资源,上面构建一些应用程序。因为操作系统的资源是共享的,所以只需要构建上层的应用即可。

docker的系统资源是在Linux基础上的,所以如果在windows上使用,需要安装wsl2后才能启动docker。

docker的好处在于跨平台,而且只需要构建一个镜像,可以在不同的平台上进行部署,镜像也可以推送到远程的仓库,以便于相同环境的搭建。

在嵌入式上使用时,可以搭建一个编译嵌入式Linux的环境,也可以构建编译uboot等环境,在分享给其他人使用时,不用再重复的搭建环境的操作。解决很多环境搭建的问题。

当然也可以编译很多好用的工具,比如编译qemu的源代码等等,编译操作系统镜像,编译开源的仓库里的工具的等等。

42018df0-92e6-11eb-8b86-12bb97331649.png

docker的远程仓库里有各种版本的linux的镜像,十分方便构建编译环境。利用docker搭建一个虚拟化的Linux内核学习lab是不错的选择。

docker搭建环境、部署很方便,缺点就是上手难度有一些,需要掌握docker的使用思想。

5.multipass如果觉得docker比较复杂,用起来也不如虚拟机一样方便。同时又觉得安装VM VirtualBox等占用太多资源,那么multipass就是一个不错的选择。

https://multipass.run/

选择Multipass的优势在于操作简单,而且可以完全搭建一个全新的ubuntu环境。

支持Linux、Windows和macos的平台。

操作上与完整Ubuntu的控制台操作无差别,而且可以自己定义系统的硬盘、内存大小。

使用时,如果不想破坏原生Ubuntu环境,又想在Ubuntu环境下开发,multipass可以提供一个干净的隔离空间。也想安装不同版本的Ubuntu。

42d2e3e6-92e6-11eb-8b86-12bb97331649.png

基本的Ubuntu版本都可以供选择。

这个虚拟机使用稍微比docker简单一些,但是差别就是multipass的镜像是无法分享的,只能自己使用。

每次开一个镜像就是一个新的干净的工作空间。

6.qemu对于qemu的使用,一般都会作为嵌入式虚拟环境来使用。用软件模拟不同硬件的平台,比如arm、mips、riscv等等开发,都可以模拟硬件平台。同时借助模拟硬件虚拟化技术,可以很好的开发上层软件。

这样在做嵌入式开发时,可以节约调试的时间成本,在开发嵌入式Linux、嵌入式上层软件的业务逻辑的设计时,也非常的有优势,在qemu上调试完成后,再移植到真实的设备上。

当然,在qemu上也能安装一些大型的操作系统。对于嵌入式开发,可以通过软件模拟硬件的实现,利用这一点,很方便写上层应用、网络应用、图形化界面的交互等等。

原文标题:嵌入式开发中常用的虚拟机与容器

文章出处:【微信公众号:嵌入式IoT】欢迎添加关注!文章转载请注明出处。

责任编辑:haq

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 嵌入式
    +关注

    关注

    5186

    文章

    20155

    浏览量

    328966
  • Linux
    +关注

    关注

    88

    文章

    11628

    浏览量

    218005

原文标题:嵌入式开发中常用的虚拟机与容器

文章出处:【微信号:Embeded_IoT,微信公众号:嵌入式IoT】欢迎添加关注!文章转载请注明出处。

收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    一个面向单片机、事件驱动的嵌入式开发平台介绍

    EventOS,是一个面向单片机、事件驱动的嵌入式开发平台。它主要有两大技术特色:一是事件驱动,二是超轻量。EventOS以及其母项目EventOS,目标是开发一个企业级的嵌入式开发平台,以事件总线
    发表于 12-05 06:26

    分享一个嵌入式开发学习路线

    法,这些语法在嵌入式开发至关重要。 2. 技能进阶期(2-3个月) 从51单片机过渡到主流的ARM Cortex-M系列(嵌入式就业核心平台),学会使用STM32单片机,掌握嵌入式开发
    发表于 12-04 11:01

    嵌入式开发工具版本的选择策略

    版本在嵌入式开发团队协作,软件工具版本的统一性管理需要分层次、分场景处理。 一、必须强制统一软件版本的情况 1、编译器版本 像Keil/IAR/GCC这种带有编译器的工具,团队之间必
    发表于 11-25 06:11

    嵌入式开发的关键点介绍

    嵌入式开发在现代科技扮演着非常重要的角色。随着物联网的发展,嵌入式系统的需求也越来越大。嵌入式开发不仅需要开发人员具备深入的硬件知识和编程
    发表于 11-13 08:12

    恩智浦如何攻克两大嵌入式开发难题

    在我们的身边,嵌入式系统无处不在。而随着技术的进步和应用的拓展,今天的嵌入式开发也面临着诸多新课题、新挑战。
    的头像 发表于 10-27 09:28 1200次阅读

    新一代嵌入式开发平台 AMD嵌入式软件和工具2025.1版现已推出

    AMD 2025.1 版嵌入式软件和工具是面向新一代嵌入式系统开发而打造的综合平台,全面加速概念构想到部署落地。 2025.1 版嵌入式软件
    的头像 发表于 08-20 09:15 3635次阅读

    嵌入式开发就业还有前景吗?

    嵌入式的发展前景如何呢?随着科技的飞速发展,嵌入式开发在各个领域的应用越来越广泛,因此嵌入式开发的就业前景也备受关注。以下将从智能家居、医疗设备、工业控制、汽车电子、航空航天等方面,探讨嵌入式
    发表于 07-16 10:47

    嵌入式开发入门指南:从零开始学习嵌入式

    随着物联网、智能硬件的发展,嵌入式开发成为热门技能之一。以下将为初学者提供一份详细的嵌入式开发入门指南,涵盖学习路径、必备工具、推荐资源等内容。 1. 嵌入式系统的定义与应用
    发表于 05-15 09:29

    嵌入式开发:高门槛的系统性工程与 996 的行业困局

    嵌入式开发的门槛,往往被培训机构和表象所掩盖。许多人误以为 “用 C 语言写个跑在 ARM 上的程序” 就是嵌入式,实则连皮毛都未触及。真正的嵌入式开发是硬件与软件深度融合的系统性工程,需跨越三重壁垒
    的头像 发表于 04-09 11:06 681次阅读
    <b class='flag-5'>嵌入式开发</b>:高门槛的系统性工程与 996 的行业困局

    代码+案例+生态:武汉芯源半导体CW32嵌入式开发实战正式出版

    关于 CW32 单片机的书籍。在这本书中,我们从最基础的知识讲起,详细介绍了 CW32 单片机的硬件架构、内核特性、存储系统以及各类外设功能。无论是刚刚踏入嵌入式开发领域的新手,还是经验丰富的专业人士
    发表于 03-03 15:14

    如何成为嵌入式开发工程师?

    如何成为嵌入式开发工程师? 成为嵌入式开发工程师通常需要掌握一系列技能和知识,并且在实践不断积累经验。以下是一些基本步骤和建议: 1. 基础教育:- 获取电子工程、计算机科学或相关领域的学位
    发表于 02-19 10:39

    盘点工程师常用嵌入式开发工具

    嵌入式开发涉及硬件与软件的紧密结合,开发工具的选择对效率和质量至关重要。以下是嵌入式开发常用工具分类及代表性
    的头像 发表于 02-07 10:06 3763次阅读

    嵌入式开发必备-RK3562演示Linux常用系统查询命令(上)触觉智能出品

    实用干货!嵌入式开发学习必备-RK3562演示Linux常用系统查询命令(上)关注触觉智能持续为大家带来更多嵌入式开发内容
    的头像 发表于 12-31 10:51 117次阅读
    <b class='flag-5'>嵌入式开发</b>必备-RK3562演示Linux<b class='flag-5'>常用</b>系统查询命令(上)触觉智能出品

    嵌入式工程师常用开发工具有哪些?

    。此外,ARM 公司的编译器也备受青睐,针对 ARM 架构的微控制器进行了深度优化,能够生成高效的代码。 三、调试工具 调试是嵌入式开发过程中不可或缺的环节。J-Link 调试器是常用的硬件调试
    发表于 12-20 15:29

    如何使用 RISC-V 进行嵌入式开发

    RISC-V是一种开源的指令集架构(ISA),它允许任何人设计、制造和销售基于RISC-V的处理器,这为嵌入式开发提供了极大的灵活性和创新空间。以下是使用RISC-V进行嵌入式开发的基本步骤: 一
    的头像 发表于 12-11 17:32 2753次阅读