嵌入式人必须了解的:虚拟机

✅面试一家外企时,面试官问我,32位机上如何运行64位程序,使得程序运行和在64位机上是一个效果?请思考一下再往下看~

64位程序是为64位架构设计的,它们利用了64位处理器的额外寄存器和更大的内存寻址空间,32位机由于硬件的缺陷,是兼容不了64位程序的。

我突然明白面试官问的是什么了,他在问虚拟机。

使用模拟器或虚拟机软件,如QEMU,可以在32位系统上模拟64位环境。这些工具可以模拟64位处理器的行为,允许64位程序在32位系统上运行。

✅虚拟机是我们学习过程中常用的工具,但是虚拟机分三类你知道吗?

I型:虚拟机直接运行在系统硬件上,创建硬件全仿真实例,被称为“裸机”型。微软Hyper-V就是这类产品。

II型:虚拟机运行在传统操作系统上,同样创建的是硬件全仿真实例,被称为“托管(宿主)”型。我们经常使用的VMware Workstation就是II型。

Ⅲ型:虚拟机运行在传统操作系统上,创建一个独立的虚拟化实例(容器),指向底层托管操作系统,被称为“操作系统虚拟化”。那么Docker容器就是Ⅲ型。

✅之前在一家智驾企业实习的时候,我们需要做I型虚拟机,也就是Hypervisor,随着 ICT 技术的发展,单 SOC 算力可以承担更多业务,有了Hypervisor,可以在一块IMX或者RK3588芯片上同时跑三个操作系统,分别负责车辆的智能驾驶(Linux),娱乐(Andriod),控制(RTOS)。整个软件架构如图所示。目前的主流解决方案都是单 SOC多OS。

所以智驾行业对虚拟机的需求是难免的。例如智驾大厂斑马智行,会有虚拟机相关开发的岗位。(招聘需求放在前面了)

✅扯远了,那么我们再回到最初的问题,32位机上如何运行64位程序,使得程序运行和在64位机上是一个效果?
我们可以回答:我们可以使用I型虚拟机模拟64位的硬件环境,根据需求,可以搭建一个64位的传统OS,这样就可以将64位的应用程序跑在32位的物理机上。 #春招#  #秋招#    #软件开发薪资爆料#  #如果再来一次,你还会学硬件吗#  #硬件/芯片公司工作体验#  #稳定和高薪机械人更看重哪个?#
#嵌入式Linux#
全部评论

相关推荐

02-20 17:19
关于嵌入式转行有感找工作前 你要想好 未来5年后,你打算做什么。如果你想就找个稳定的工作,那我建议你考个985研究生,专门去研究某一领域 ,毕业就按这个方向去投简历,最好在上学期间做个自己实验小产品,那面试拿产品更有说服力。如果你想创业,我建议找个创业型公司,但是要求就是你能接触到整个项目,目的不是钱,是为了5年后你能积累足够的知识。这种公司不能太抠门,我指的是研发经费不能少,你可以工资少,但是研发经验不能扣扣搜搜,到时候你学习买材料都不给拨款,那就没什么意义选择创业型,这种可能不适合大部分人,首先你要问你自己,对这行是不是真的感兴趣,如果你只为了工作而工作,最好别去这种创业型公司。你记住一句话,工作为了你自己以后有更好的发展,钱少,没关系 但是我要学到东西。如果你下班都不能拿出精力去学习,只能说你可能不适合创业。还是找个稳定工作上班为好。楼主之所以能研究2天3夜 去解决问题,最大原因是我喜欢这行,我非常喜欢自己做点小产品以达到自己内心的满足感。可以说,不是为了钱,就是兴趣爱好使然。还有两句话 ,一直激励我:1. 书山有路勤为径 学海无涯苦作舟我自认为我足够聪明,学习能力超强,应该超过60%人的智商了,不过我还是很勤奋。能静下心去专心做一件事。如果你们想成功,就必须达到忘我的境界。2 多年后你会感激当初那么奋斗的自己!当你到死的前一天,你回想你这辈子所有经历,你觉得你没白活,你作为一个人 值得了。不是行尸走肉。我这人信神学,我觉得有平行世界,我们每天做梦可能会看到平行世界的自己。所以我对死亡无所畏惧,但是我要活得有意义。这辈子我设计很多产品,走过很多地方,教育好下一代,这就是我人生目标很多人私信我,想转行,看到我写的这些,还是有些疑惑,我再此给些建议吧。1 计算机,通信,电气自动化专业 转到嵌入式这类人相比于土木生化跳专业转这行相对来说要容易得多。有很多优势。这些专业学过c语言,大学物理,高中物理,理解计算机基础部分,上手容易。具体想转行的,参照我之前楼层写的 怎么从入门开始学,一共6步。具体要转偏软件还是偏硬件,这个具体要看个人,如果说想短期上手挣钱,我建议转偏软,也就是linux,安卓这些。但是这种岁数大会有职业危机,可替代性强。如果说想长期从事嵌入式行业,并且还能静下心学习,不怕辛苦,这种不是三天打鱼 两天晒网 要持之以恒这种,我建议转偏硬件,这种偏硬件在未来可以选择自己创业,也可以选择在不断提高技术后,跳槽到大公司。这种越老越吃香,但是很困难。起码要5-8年 成为大手。具体看个人情况而定。另外大家不要心血来潮去干一件事,一定要深思熟虑后再做决定,要热爱这行 ,你才能学好!如果是土木生化 想转到嵌入式,说实话,我不太建议转,首先大学没怎么接触c语言,单片机这些基础知识,转行很费劲。其次,360行行行出状元,我认为任何行业都能挣钱,但是如果大环境不好,要善于观察,看准什么方面挣钱,抓紧风口。如果说硬要转,我建议报班转偏软件,硬件能把人弄疯的,什么都没有准确答案,程序写对了,电路没设计好,也会出问题。但是偏软件的,没有硬件这些额外因素,相对来说问题小很多。另外刚毕业有条件可以考虑 gwy,部队文职,选调生 这些,不用非干技术不可,理想很丰满 现实很骨感 ,毕竟要挣钱吃饭的。沈阳有900万人口,做我们这行精通的几千人都没有,所以嘛 有铁饭碗的,我建议去。想好自己职业规划,三思而行分享不易 嵌入式可以参考大佬的面经https://www.nowcoder.com/creation/manager/columnDetail/MJNwoM
点赞 评论 收藏
分享
#嵌入式项目#本人学校普普通通,通过读研期间系统学习嵌入式知识,以及帮助导师做了4个企业级项目,慢慢积攒了开发经验。以至于在2023年秋招,收获了满意offer。目前就职于汇川技术,嵌入式软件工程师岗位。趁着周末整理读研期间所作的一个项目,需要项目资料的学弟学妹可以私聊我。项目所属行业:该项目属于仪器仪表行业的产品,主要应用于化工生成、科学研究以及其他领域的气体测量与分析。项目解决的问题:由于传统的气体检测仪器,不能有效的测量混合气体中的浓度信息,设计该产品,基于气体的热导率不同,通过测量混合气体热导率,间接确定被测组分含量。项目中能学到什么:1、产品的行业知识:调零校准,环境背景补偿以及工业数据的通讯与传输等;2、产品硬件电路设计,包含三个电路板:模拟信号采集电路、温控PID电路、主控数字电路板。3、基于freertos操作系统设计产品的软件开发框架设计思路,高内聚低耦合。4、高速串口通讯框架设计,可靠,防止丢包,支持数据流和数据帧格式传输等。5、基于外部存储器(eeprom或flash)的微数据库,实现数据的存储与增删改查。6、工业通讯协议Modbus RTU与TCP通讯,串口驱动用于Modbus RTU通讯,编写以太网芯片驱动用于Modbus TCP通讯。7、面向对象编程实现产品功能,包括灵活的接口配置,通道选择以及数据的运算过程等。#我的成功项目解析##简历中的项目经历要怎么写#
点赞 评论 收藏
分享
评论
8
12
分享

创作者周榜

更多
牛客网
牛客企业服务