Android开发(题外话之虚拟机卡顿)

【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】

我们平常开发嵌入式的时候,一种是keil居多,还有一种就是linux开发、或者是android开发。前者的话,基本安装一下keil软件即可,烧入和调试都是可以的。后者就是需要安装linux系统。目前用的比较多的linux系统,主要还是ubuntu。一来安装比较方便,二来下载软件比较方便。但是最近发现,virtualbox安装ubuntu的时候,如果是比较新的ubuntu,会比较卡顿。

一、目前的virtualbox版本

当前电脑里面的virtualbox版本不算老,也不算新,是6.1,大约是2023年的时候发布的。和最新的virtualbox版本7.1,还是有点不同。

二、6.1版本最适配的os

本身virtualbox对于老的ubuntu适配还是比较好的,比如说早期的14.04、16.04等等。最最稳定的还是20.04,基本都是非常稳定的。只要安装好增强包,和usb扩展包,就可以很舒服的使用ubuntu系统。哪怕ubuntu本身磁盘大小不够,也可以通过添加数据盘的方法解决。

三、新soc搭配新的ubuntu os

目前各个soc厂家都不断推出自己的soc芯片,比如rk系类的3588、3576。其他厂家的soc也是如此。既然是新的soc,那么他们就喜欢用新的ubuntu,来对这些soc做交叉编译。所以在sdk里面,或者是手册里面就会优先推荐比较新的os,来编译这些sdk,比如rk3576,就会优先推荐ubuntu 22.04。

四、新ubuntu os比较容易卡顿

之前一直用virtualbox 6.1 + ubuntu 20.04来开发各个soc,做各种交叉编译,一般也没有什么问题。但是,自从安装了ubuntu 22.04之后,就会发生一个明显的问题,那就是卡死。这种卡死,就是画面完全卡住,完全不能动弹的状态。

比如说,如果虚拟机一直开着,我们在terminal下面做各种操作,这种情况下一般不会有什么问题,最多就是鼠标略微有点拖影。但是如果中途有事,合上了笔记本,再次打开virtualbox虚拟机的时候,就会出现刚才说的界面卡死的问题。而且,这种问题发生的概率特别高,基本一天都要发生好几回。

五、分析和解决

本来想通过安装另外一个virtualbox的方法来解决的,后来提示说一台电脑不能同时安装不同版本的virtualbox。所以,只好继续寻找答案。在一次搜索的时候,提示说是ubuntu 22.04最新的desktop方案和virtualbox不兼容,最好的办法,就是输入用户名密码的时候,选择ubuntu on xorg即可,这样几乎不会出现卡顿了。试了一下,果然如此。

其他的就是常规的配置调整,比如内存分配2G,cpu分配4个core,显存分配48M,显卡控制器用VMSVGA,不要启用3D加速。这样整体的os体验会提高不少。简单来说,就是不要吝啬给虚拟机分配资源,但是也不要分配太多资源,不然host主机也很卡。

相关推荐
2501_918126914 小时前
学习所有用c语言定义stm32的语句
c语言·stm32·嵌入式硬件·学习·个人开发
坚定学代码4 小时前
qt c++ 局域网聊天小工具
c++·qt·个人开发
2501_918126915 小时前
学习所有6502写游戏动作的语句
汇编·嵌入式硬件·学习·游戏·个人开发
2501_915918415 小时前
有没有Xcode 替代方案?在快蝎 IDE 中完成 iOS 开发的过程
ide·vscode·ios·个人开发·xcode·swift·敏捷流程
土土哥V_araolin1 天前
双迪大健康模式系统开发
小程序·个人开发·零售
2501_916007471 天前
在非 Xcode 环境下完成苹果开发编译的记录 iOS 编译与调试
ide·vscode·ios·cocoa·个人开发·xcode·敏捷流程
加密狗复制模拟2 天前
软件加密狗中时间限制机制的破解
开发语言·网络·安全·php·软件工程·个人开发
PM老周3 天前
ONES和Jira对比测评:研发管理工具选型该看功能、部署还是长期成本?
测试工具·团队开发·个人开发·软件需求·结对编程
蜗牛会飞 20244 天前
大数据时代个人信息保护五大挑战
开发语言·华为云·个人开发·c5全栈
We་ct4 天前
React Scheduler & Lane 详解
前端·react.js·前端框架·reactjs·个人开发·任务调度·优先