
任务实施
Linux操作系统作为兼容性、适应性很强的开源系统,在嵌入式开发中获得广泛使用,但基于ARM处理器的嵌入式Linux系统无法搭建强大的开发环境,开发人员一般在基于x86处理器上的Windows系统上使用虚拟机创建Linux桌面系统进行程序编写,并配置ARM相关的工具链生成嵌入式系统对应的目标程序即可在嵌入式平台上运行。因此使用虚拟机搭建嵌入式开发环境是首要的工作步骤,这里的虚拟机选用主流的VirtualBox软件,Linux桌面系统选用人机界面友好的Ubuntu系统。开发者还需要灵活掌握相关开发命令,因此项目中还选用了轻量级Linux系统Tiny Linux供初学者训练使用。
1.创建简易Linux系统Tiny Linux
1)启动VirtualBox软件,选择菜单“控制”→“新建”命令,如图1-4所示,弹出“新建虚拟电脑-虚拟电脑名称和系统类型”对话框,如图1-5所示。

图1-4 选择“新建”命令

图1-5 “新建虚拟电脑-虚拟电脑名称和系统类型”对话框
说明:本任务中的VirtualBox软件版本是6.1.8,是2020年发布的,不同的VirtualBox界面略有差异,但基本操作方式是大体相同的。
2)在“名称”文本框中输入需要创建系统的名称如“simplelinux”,在“类型”下拉列表中选择“Linux”,“版本”下拉列表中选择“Linux 2.6/3.x/4.x(64-bit)”选项。
注意:系统内核版本兼容2.6/3.x/4.x等,选择64位还是32位,应与计算机系统保持一致。
3)单击“下一步”按钮,弹出“新建虚拟电脑-内存大小”对话框,如图1-6所示。
说明:默认值为软件根据所用计算机自动计算所得,由于虚拟机内存是直接占用所用计算机主机的内存,因此设置过大会导致虚拟机分走过多内存,不利于原有系统中其他软件的正常运行。一般保持软件的默认设置即可。

图1-6 设置虚拟机内存
4)保持系统默认设置,单击“下一步”按钮,弹出“新建虚拟电脑-虚拟硬盘”对话框,如图1-7所示。
说明:该界面有3个选项:“不添加虚拟硬盘”“现在创建虚拟硬盘”和“使用已有的虚拟硬盘文件”。如果选择第1项“不添加虚拟硬盘”,将只能从虚拟光驱或者网络上启动虚拟机,因此一般选择第2项或第3项。由于没有已创建好的虚拟硬盘映像可以直接使用,这里应选择第2项“现在创建虚拟硬盘”。

图1-7 选择虚拟硬盘
5)单击“创建”按钮,弹出“创建虚拟硬盘-虚拟硬盘文件类型”对话框,如图1-8所示。
说明:虚拟硬盘文件类型主要包括VDI、VHD及VMDK三种。VDI为VirtualBox专用的虚拟硬盘格式,VHD为微软Virtual PC虚拟机虚拟硬盘格式,VMDK为VMware文件格式。
6)保持系统默认设置,单击“下一步”按钮,弹出“创建虚拟硬盘-存储在物理硬盘上”对话框,如图1-9所示。

图1-8 选择虚拟硬盘文件类型
说明:创建虚拟硬盘选择“动态分配”还是“固定大小”各有优缺点,“动态分配”可以按需使用存储空间,而“固定大小”占用的空间需要提前预估,即使实际使用很少也会占用相同磁盘空间,但使用速度较快。如果无法预估磁盘空间占用量,直接保持默认设置“动态分配”。

图1-9 虚拟硬盘分配方式
7)单击“下一步”按钮,弹出“创建虚拟硬盘-文件位置和大小”对话框,如图1-10所示。
说明:可以直接输入新建虚拟硬盘文件的路径,也可以单击“文件夹”按钮,选择要保存的文件夹,并指定虚拟硬盘占用实际硬盘的极限大小。实际上软件已经给出了相关默认信息,可以不用修改,直接使用。
8)单击“创建”按钮,就会回到主界面“Oracle VM VirtualBox管理器”,系统名会自动出现在界面左边,如图1-11所示。

图1-10 设置虚拟硬盘路径和大小

图1-11 系统创建完成
9)单击界面上方“启动”按钮,即可启动系统,出现“选择启动盘”对话框,如图1-12所示。

图1-12 选择启动盘
说明:“没有盘片”表示需要手动选择系统镜像文件。
10)单击“没有盘片”右边的“文件夹”按钮,出现“请选择一个虚拟光盘文件”对话框,如图1-13所示。选择镜像文件所在文件夹,并在文件列表中选中系统镜像文件“CorePlus-current.iso”,单击“打开”按钮,“选择启动盘”对话框中出现镜像文件名,如图1-14所示。

图1-13 选择系统镜像文件

图1-14 光盘方式启动
11)单击“启动”按钮,出现启动菜单栏,如图1-15所示。

图1-15 选择系统内核启动项
说明:可以根据实际需要选择不同的启动方式,默认是第一种启动方式,直接选中并按〈Enter〉键即可。
12)等待几秒就会进入Tiny Linux系统界面,如图1-16所示。在系统界面右击鼠标出现快捷菜单,选择菜单“Applications”→“Terminal”命令,如图1-17所示,会出现“Terminal”窗口。
13)“Terminal”窗口即Linux的“终端”,可输入Linux系统命令,如输入命令uname -a,可查看系统的版本号,如图1-18所示。接下来可以尝试练习Linux的基础命令。

图1-16 Tiny Linux系统界面

图1-17 打开系统终端控制台

图1-18 查看系统版本
2.创建简易Ubuntu系统
1)启动VirtualBox软件,选择菜单“控制”→“新建”命令,如图1-19所示。弹出“新建虚拟电脑-虚拟电脑名称和系统类型”对话框,如图1-20所示。

图1-19 新建系统
2)在“名称”文本框中输入需要创建系统的名称如“ubuntu_zxh”,在“类型”下拉列表中选择“Linux”,“版本”下拉列表中选择“Ubuntu(32-bit)”选项。
注意:创建虚拟机计算机的路径一般保持给定的默认路径即可,如若存放其他路径可以修改。
3)单击“下一步”按钮,弹出“新建虚拟电脑-内存大小”对话框,如图1-21所示。
说明:保持默认值不变即可,若内存修改过高可能导致桌面系统其他程序内存不足。

图1-20 设置虚拟机名称和系统类型

图1-21 设置虚拟内存大小
4)单击“下一步”按钮,弹出“新建虚拟电脑-虚拟硬盘”对话框,如图1-22所示。
说明:由于Ubuntu是大型桌面操作系统,从光盘映像文件开始创建需要花费很长的时间,而且还要重新安装大量软件工具才能用于开发,因此为提高开发效果可以通过复制加载已制作完成的虚拟硬盘文件节省大量重复工作时间,该任务中作者已经制作完成可用于开发的Ubuntu虚拟硬盘文件,选择第3项“使用已有的虚拟硬盘文件”即可,找到已有的硬盘映像文件mybuntu.vdi,单击“创建”即可创建完成Ubuntu系统。

图1-22 选择虚拟硬盘
5)回到主界面,单击“启动”按钮,待系统启动完成出现Ubuntu系统登录界面,输入密码123456,单击“登录”按钮即可进入系统,如图1-23所示。
6)进入系统后按组合键〈Ctrl+Alt+T〉,即可弹出系统终端窗口,如图1-24所示,现在可开始嵌入式Linux的开发工作。

图1-23 启动Ubuntu虚拟机

图1-24 打开系统终端控制台