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

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

    关注

    5058

    文章

    18970

    浏览量

    301882
  • Linux
    +关注

    关注

    87

    文章

    11203

    浏览量

    208695

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

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

收藏 人收藏

    评论

    相关推荐

    嵌入式开发常见问题排查

    嵌入式开发问题排查很多人认为嵌入式开发很难,主要是因为在这个过程中常常会遇到各式各样的问题。这些问题的复杂性和多样性使得许多人感到困惑和无所适从。然而,如果将这些问题逐一拆解,实际上大部分都可以
    的头像 发表于 09-22 08:04 229次阅读
    <b class='flag-5'>嵌入式开发</b>常见问题排查

    嵌入式常用总线有哪些

    嵌入式系统中常用的总线种类繁多,它们各自具有不同的特点和应用场景。以下将详细介绍几种嵌入式开发常用
    的头像 发表于 09-10 11:34 434次阅读

    嵌入式开发常用软件有哪些?

    嵌入式开发常用软件有哪些? 对于初学嵌入式的朋友们,会想要了解嵌入式软件开发常用的软件有些,有什
    发表于 09-09 15:22

    一种常用嵌入式开发代码库

    使用开源协议:GPL-2.0varch简介varch(we-architecture,意为我们的框架库)是嵌入式C语言常用代码模块库,包含了嵌入式常用的算法库,数据结构(容器)库,解
    的头像 发表于 09-04 08:06 358次阅读
    一种<b class='flag-5'>常用</b><b class='flag-5'>嵌入式开发</b>代码库

    聚焦嵌入式开发的合规性工具、项目管理工具、版本迭代工具应用

    ,就嵌入式开发与管理领域的最新趋势、工具选择以及DevSecOps实践应用等方面展开了深入探讨。 本期对话龙智资深DevSecOps顾问徐晨晖, 分享嵌入式开发的合规性
    的头像 发表于 07-29 15:15 429次阅读

    嵌入式开发前景怎么样?

    嵌入式开发前景非常广阔,这主要得益于物联网、人工智能、大数据等技术的快速发展,以及嵌入式系统在各个领域的广泛应用。以下是对嵌入式开发前景的详细分析
    的头像 发表于 07-10 09:00 2326次阅读
    <b class='flag-5'>嵌入式开发</b>前景怎么样?

    嵌入式开发就业前景怎么样?

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

    fpga是嵌入式开发

    FPGA(现场可编程门阵列)与嵌入式开发之间确实存在一定的关联,但它们在本质上是两个不同的领域。
    的头像 发表于 03-15 14:18 930次阅读

    嵌入式开发测试秘诀

    嵌入式软件开发过程中,花在测试和花在编码的时间比通常在3:1左右(实际上可能更多)。这个比例会随着工程师编程、测试水平的提高而不断下降,但无论如何,软件测试都是嵌入式软件开发
    的头像 发表于 11-24 16:18 481次阅读

    c语言嵌入式开发

    电子发烧友网站提供《c语言嵌入式开发.zip》资料免费下载
    发表于 11-17 14:11 2次下载
    c语言<b class='flag-5'>嵌入式开发</b>

    嵌入式开发系统基础知识

    电子发烧友网站提供《嵌入式开发系统基础知识.pdf》资料免费下载
    发表于 11-17 10:59 11次下载
    <b class='flag-5'>嵌入式开发</b>系统基础知识

    嵌入式开发学习路线

    电子发烧友网站提供《嵌入式开发学习路线.doc》资料免费下载
    发表于 11-17 10:13 13次下载
    <b class='flag-5'>嵌入式开发</b>学习路线

    嵌入式开发学习路线分享

    的实际应用范畴,可以说目前市场上对嵌入式开发人才的需求越来越大,很多小伙伴都想通过培训学习的方式走向嵌入式开发相关的岗位。下面,小编就给各位小伙伴介绍一个简单易懂的学
    的头像 发表于 11-15 11:51 1272次阅读
    <b class='flag-5'>嵌入式开发</b>学习路线分享

    windows ce嵌入式开发入门-基本Xscale架构

    电子发烧友网站提供《windows ce嵌入式开发入门-基本Xscale架构.pdf》资料免费下载
    发表于 11-10 11:18 0次下载
    windows ce<b class='flag-5'>嵌入式开发</b>入门-基本Xscale架构

    嵌入式软件开发常用工具有哪些?

    分享一些嵌入式软件开发常用工具。 1、Keil MDK:这是德国Keil公司开发的基于8051、9051、ARM7、ARM9系列微控制器的嵌入式
    发表于 11-10 11:03