嵌入式入门——虚拟机Ubuntu的安装配置

本文详细介绍了在Windows 10环境下,使用VirtualBox安装32位Ubuntu 14.04系统的过程,包括VirtualBox的安装、Ubuntu的系统安装、增强功能工具的安装以及一些实用的小技巧,如更改文件目录名称、更换软件源和解决vi编辑器问题。
摘要由CSDN通过智能技术生成

       这学期学习了嵌入式Linux系统开发,在此记录一下学习过程与遇到的问题及解决方法。
主机操作系统:win10 64bit
虚拟机软件:VirtualBox 6.0.4
Linux系统:Ubuntu-14.04.6-desktop-i386(32-bit)
因为我们学校的实验箱采用ubuntu14.04系统。所以这里选择32-bit PC (i386) desktop image下载。

1.VirtualBox的安装

       找到下载好的VirtualBox-6.0.4-128413-Win.exe,双击安装。选择好适合的安装位置后,一直点下一步使用默认的设置即可。中间会弹出下图警告,选择 【是】在这里插入图片描述
       安装好后打开软件,点击上方【新建(N)】,随意取个名称(英文),选择合适的文件夹及对应的类型版本。注意区分安装的系统是32还是64位
在这里插入图片描述
       下一步 ->分配内存大小,建议为主机内存的一半左右(32位系统在理论上最高支持4G内存)。
       下一步 ->现在创建虚

CarpVM 是一个用 C 语言编写的小型虚拟机。可以嵌入在应用程序中使用。 包含的指令集有: HALT (code): Halts and attempts to clean up stack, data memory, and label memory before exiting with given exit code. NOP (): Does nothing. Seriously. LOAD (reg, val): Loads given integer value into given register. MOV (dst, src): Copies contents of src register into dst register. ADD (): Pops the top two integers from the stack and pushes their sum. SUB (): Pops the top two integers from the stack and pushes the difference (lower minus upper). MUL (): Pops the top two integers from the stack and pushes their product. MOD (rega, regb): Computes rega % regb and stores in ERX. NOT (reg): Computes bitwise NOT of reg and stores in reg. XOR (): Pops the top two integers from the stack and XORs them. OR (): Pops the top two integers from the stack and ORs them. AND (): Pops the top two integers from the stack and ANDs them. INCR (reg): Increments value in given register. DECR (reg): Decrements value in given register. INC (): Increments the value at the top of the stack. DEC (): Decrements the value at the top of the stack. PUSHR (reg): Pushes value in given register. PUSH (val): Pushes given value. POP (val): Pops an integer from the stack and dumps it into GBG. CMP (): Pops the top two integers from the stack and checks if equal. 0 means equal. Result will be pushed onto the stack. MOV (rega, regb): Move value in rega to regb. JZ (addr): Jumps to given absolute address if top of the stack is 0. RJZ (diff): Adds differential to current EIP (relative jump) if top of the stack is 0. JNZ (addr): Jumps to given absolute address if top of the stack is not 0. RJNZ (diff): Adds differential to current EIP (relative jump) if top of the stack is not 0. JMP (addr): Jumps to given absolute address. RJMP (diff): Adds differential to current EIP (relative jump). DBS (key, val): Sets data memory at key (string pointer) to given value. DBG (key, reg): Gets value from data memory at key (string pointer) and dumps it into given register. CALL (key, nargs): Save state and set EIP to value in data memory at key. RET (val): Push return value and load state. PREG (reg): Prints contents of given register. PTOP (): Peeks top of stack and prints top value. 标签:CarpVM
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值