什么是虚拟机

虚拟机就像计算机(computer),它模拟包括 CPU 在内的几个硬件组件,能够执行 算术运算、读写内存、与 I/O 设备交互。最重要的是,它能理解机器语言(machine language),因此可以用相应的语言来对它进行编程。

虚拟机的跨平台方式是自己创建一个标准的 CPU 架 构,然后在不同的物理设备上模拟这个 CPU 架构。

Java Virtual Machine (JVM) 就是一个非常成功的例子。JVM 本身是一个中等大小、程序员完全能够看懂的程序,因此很 容易将它移植到包括手机在内的上千种设备上。只要在设备上实现了 JVM,接下来任何 Java、Kotlin 或 Clojure 程序都无需任何修改就可以直接运行在这个设备上。

一个寄存器就是 CPU 上一个能够存储单个数据的槽(slot)。寄存器就像是 CPU 的 "工作台"(workbench),CPU 要对一段数据进行处理,必须先将数据放到某个寄存器中。但 因为寄存器的数量很少,因此在任意时刻只能有很少的数据加载到寄存器。计算机的解决办 法是:首先将数据从内存加载到寄存器,然后将计算结果放到其他寄存器,最后将最终结果 再写回内存。

相关推荐
听风若依1 小时前
函数栈帧的创建与销毁-重置版
c语言·学习
水饺编程2 小时前
第2章:Linux 基础,pwd 命令
linux·c语言·汇编
鱼很腾apoc2 小时前
【MySQL】 第1期 从核心概念到表约束全解析
linux·c语言·数据库·学习·mysql
心仪久了会沦陷2 小时前
C语言数据结构入门——队列补充:循环队列的数组实现
c语言·开发语言·数据结构·笔记
爱吃提升2 小时前
Dev-C++ 5.11 完整版快捷键大全(信奥/初学适用)
c语言·c++
小小龙学IT3 小时前
FFmpeg 开源多媒体处理框架深度解析:从命令行到 libav* 全家桶
c语言·ffmpeg·开源
m0_547486663 小时前
《数据结构:基于C语言的描述》全套PPT课件2026
c语言·数据结构
启友玩AI4 小时前
微安级唤醒、毫安级识别:基于 CI3422 的 AI 眼镜语音交互开发实战
c语言·人工智能·科技·嵌入式硬件·ai·ar·语音识别
wuminyu4 小时前
stackChunkOop内部结构与GC屏障的配合工作原理剖析
java·linux·c语言·jvm·c++
小π军4 小时前
C 和 C++ 是否都支持函数的重载?
java·c语言·c++