GVKun编程网logo

windows 安装 java 虚拟机(电脑安装java虚拟机)

1

在这里,我们将给大家分享关于windows安装java虚拟机的知识,让您更了解电脑安装java虚拟机的本质,同时也会涉及到如何更有效地CentOS7.5安装KVM虚拟机(Windows)、CentOS

在这里,我们将给大家分享关于windows 安装 java 虚拟机的知识,让您更了解电脑安装java虚拟机的本质,同时也会涉及到如何更有效地CentOS 7.5 安装 KVM 虚拟机 (Windows)、CentOS7 设置静态 IP 以及 windows 下 ping 不通虚拟机、虚拟机 ping 不通外网解决方案、centos7 通过 kvm+vnc 实现远程桌面虚拟化和创建 windows、Linux 虚拟机、JAVA 和 JVM(java 虚拟机)运行原理揭秘的内容。

本文目录一览:

windows 安装 java 虚拟机(电脑安装java虚拟机)

windows 安装 java 虚拟机(电脑安装java虚拟机)

安装过程

1. 下载安装包

打开 oracle 官网找到下载目录:

https://www.oracle.com/java/technologies/javase/javase8-archive-downloads.html

2. 安装虚拟机

双击安装程序,设置安装路径,一路点下去

安装完成!

3. 配置环境变量

这里只需要配置 JAVA_HOME 和 Path,jdk6 以后的版本不需要配置 CLASSPATH,这里省略

JAVA_HOME : jdk 的安装目录,如:D:\Program Files\Java\jdk1.8.0_161

Path:根据该变量找到 java 编程中需要用到的程序,如 javac.exe,java.exe,如:% JAVA_HOME%\bin

注意:有的 windows 版本配置时,在原来 Path 的值后用分号进行追加,如: ;% JAVA_HOME%\bin

4. 验证是否配置成功

打开 cmd 命令框,输入 java -version ,显示如下代表安装成功。

CentOS 7.5 安装 KVM 虚拟机 (Windows)

CentOS 7.5 安装 KVM 虚拟机 (Windows)

一、KVM 环境搭建
1. 检测系统是否支持
cat /proc/cpuinfo | egrep ''vmx|svm''
KVM 是基于 x86 虚拟化扩展 (Intel VT 或者 AMD-V) 技术的虚拟机软件,所以查看 CPU 是否支持 VT 技术,就可以判断是否支持 KVM。
有返回结果,如果结果中有 vmx(Intel)或 svm (AMD) 字样,就说明 CPU 的支持的。


2. 关闭 SELinux
setenforce 0
sed -i ''s/SELINUX=enforcing/SELINUX=disabled/'' /etc/selinux/config


3. 安装 KVM 环境
安装 kvm 基础包
yum -y install kvm

安装 kvm 核心包 -- 虚拟操作系统模拟器加速模块
yum -y install qemu-kvm qemu-kvm-tools

安装 kvm 管理工具
yum -y install libvirt python-virtinst libvirt-python virt-manager libguestfs-tools bridge-utils virt-install
libvirt:必须要装的核心工具
virt-manager:虚拟机图形管理工具(宿主机有桌面环境时可以考虑安装,命令操作或者远程控制则不需要)
bridge-utils:虚拟机与外界通信的命令管理工具
virt-install:虚拟机安装工具
pyhon-virtinst: 包含 python 模块和工具(virt-install,virt-clone 和 virt-image)

重启宿主机,加载 kvm 相关模块
shutdown -r now

查看 kvm 模块是否被正确加载
lsmod | grep kvm
出现以下信息则表示正确加载
kvm_intel         162153       0
kvm                  525259      1     kvm_intel
irqbypass        13503         1     kvm

开启 kvm 服务,并设置开机启动
systemctl start libvirtd.service
systemctl enable libvirtd.service

查看操作结果,出现 Active:active(running)字样则说明运行情况良好
systemctl status libvirtd
systemctl is-enabled libvirtd

 

二、网桥搭建
如果是在局域网内安装 kvm 虚拟机,为了方便连接和维护管理,kvm 虚拟机的网络模式我们建议使用 Bridge 模式(另外还有 NAT 模式),这样 kvm 虚拟机和宿主机就处在同一个网段,局域网内其它主机就直接连接

1. 查看宿主机网卡信息
ip a 或者 ifconfig a
一般物理网卡名称为 eth0、eth1 或 ens 开头的等等,我本机上的就是 ens33
复制 ens33 网卡配置文件到 br0 文件
cd /etc/sysconfig/network-scripts/
cp ifcfg-ens33 ifcfg-br0

2. 宿主机物理网卡配置
vim ifcfg-ens33

TYPE=Ethernet      #TYPE必须为Ethernet 
PROXY_METHOD=none
BROWSER_ONLY=no

#BOOTPROTO=dhcp
#DEFROUTE=yes

IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_FAILURE_FATAL=no
IPV6_ADDR_GEN_MODE=stable-privacy

NAME=ens33
UUID=5169b9de-3b6a-425e-8f92-3c74e1e8d97d
DEVICE=ens33
ONBOOT=yes

BRIDGE=br0       #在原来的ifcfg-ens33配置文件中必须添加的(这块网卡桥接到br0设备上) 
NM_CONTROLLED=no   #是否由NetworkManger服务控制该网络接口,修改后立即生效,无需重启,一般设置成no

# 因为要设置桥接,这几项IP地址等原来的配置信息必须关闭,在br0配置文件中再设置
#IPADDR=192.168.0.9
#NETMASK=255.255.255.0 
#GATEWAY=192.168.0.1 
#DNS1=114.114.114.114
#DNS2=8.8.8.8 
#PREFIX=24

3. 桥接网卡配置

vim ifcfg-br0

TYPE=Bridge      #TYPE必须为Bridge
DEVICE=br0
NAME=br0

BOOTPROTO=static
DEFROUTE=yes     #是否使用默认路由
PEERDNS=no      #是否指定DNS,如果使用DHCP协议,默认为yes
PEERROUTES=no     #是否指定路由
ONBOOT=yes
DELAY=0
NM_CONTROLLED=no    #同样设置为no,不让NetworkManager服务管理br0网卡

IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_DEFROUTE=yes
IPV6_AUTOCONF=yes
IPV6_FAILURE_FATAL=no

IPADDR=192.168.0.9
NETMASK=255.255.255.0
GATEWAY=192.168.0.1
DNS1=114.114.114.114
DNS2=8.8.8.8
PREFIX=24

4. 查看设置结果

关闭 NetworkManager 服务,也可以用 service stop NetworkManager,systemctl 是现在 linux 发行版通用的服务管理工具,CentOS 中使用 service 命令会自动调用 systemctl 工具
systemctl stop NetworkManager.service

重启网络服务,如果重启不成功,一般是 ens33 和 br0 配置文件中配置项冲突造成的
systemctl restart network.service

查看网络配置是否正确,可以 ip a 查看是否 ens33 和 br0 信息,推荐使用 brctl show 命令,如果提示没有 brctl 命令,yum -y install bridge-utils 安装 

brctl show

如果结果中出现类似下面的信息,则表明桥接初步设置成功,主要是第一项,第二项,第四项,常见的情况是第四项为空,原因是物理网卡配置文件中 Bridge=br0 这一项缺少

 

三、VNC 环境搭建
1. 安装 vnc 服务
yum -y install tigervnc tigervnc-server

2.vnc 服务配置 —— 宿主机远程控制
配置 vnc
将 /lib/systemd/system/vncserver@.service 文件复制一份到 /etc/systemd/system/ 目录
cp /lib/systemd/system/vncserver@.service  /etc/systemd/system/vncserver@:1.service
编辑刚刚复制得到的文件,将文件中的 <USER> 修改为 VNC Client (或者 VNC Viewer) 连接的账号,我只设置一个用户 root,多用户再增加对应的 vncserver@:2.service 文件即可
vim /etc/systemd/system/vncserver@:1.service
修改以后的文件部分内容 (只修改文件下半部分)

[Unit]
Description=Remote desktop service (VNC)
After=syslog.target network.target

[Service]
Type=forking
User=root

# Clean any existing files in /tmp/.X11-unix environment
ExecStartPre=/bin/sh -c ''/usr/bin/vncserver -kill %i > /dev/null 2>&1 || :''
ExecStart=/usr/sbin/runuser -l root -c "/usr/bin/vncserver %i"
#ExecStart=/usr/sbin/runuser -l root -c "/usr/bin/vncserver :1 -geometry 1280*720 -depth 24"
PIDFile=/root/.vnc/%H%i.pid
ExecStop=/bin/sh -c ''/usr/bin/vncserver -kill %i > /dev/null 2>&1 || :''

[Install]
WantedBy=multi-user.target

设置 vnc 连接密码,输入命令 vncpasswd 以后连续输入两次密码,然后直接连续回车
vncpasswd

启动 vncserver@:1.service 并设置开机启动
systemctl start vncserver@:1.service
systemctl enable vncserver@:1.service

设置防火墙 (VNC 默认是被防火墙阻止的)
firewall-cmd --permanent --add-service="vnc-server" --zone="public"
firewall-cmd --reload

启动 VNC 服务
vncserver
会出现以下信息:其中说明 VNC 客户端连接账号为 root,端口号为 5901
New ''dev:1 (root)'' desktop is dev:1
Starting applications specified in /root/.vnc/xstartup
Log file is /root/.vnc/dev:1.log

测试

3.vnc 服务配置 —— 虚拟机远程控制
上面是 VNC 连接主机的 VNC 服务时设置的情况,如果是要远程连接主机安装虚拟机,可以不进行上面的设置,安装虚拟机的时候用主机 ip,端口号 5900 (默认,可以进行设置,后面会说到),有权限的账号密码都可以连接。

这里也有一个坑:5900 是 VNC 里面远程连接虚拟机用的端口 (安装和安装好以后都用这个端口),能远程操作安装过程;5901,5902 等端口是 VNC 中设置的远程连接主机的端口号,这里要做好区分。

还有一种用 virt-manager 虚拟机图形管理的方式安装虚拟机,这里有个前提,主机必须安装好 GNOME 等桌面环境,CentOS 中安装有点复杂,很难安装成功 (踩过的第一个坑),个人觉得还是用 VNC 的方式安装比较好,服务器安装桌面环境多少有点累赘。

 

四、虚拟机安装
这一步操作需要注意的几个点:
a、局域网内与主机传输文件用 scp 或 ftp 命令,要保证 ISO 镜像文件在主机上有操作权限的目录下,比如 /home 等;
b、不管安装什么系统的虚拟机,创建的磁盘类型,分配的虚拟内存等参数可能有所不同,但有几个参数必须要正确对应,否则安装不成功。需要注意的几个参数:

--disk
--cdrom 或者 --location
--cpu (这个必须和主机的 cpu 型号一直)
--network (首先要确定需要安装虚拟机网络的类型,是 Bridge 模式还是 NAT 模式)
--graphics
--os-type

1. 创建磁盘(kvm 虚拟机的磁盘总大小)
创建类型为 raw 的磁盘,还有另外两种格式 img 和 qcow2
qemu-img create -f raw /data/vms/win2008.raw 20G

检查磁盘是否创建成功
qemu-img info /data/vms/win2008.raw

看到类似以下信息表明磁盘创建成功

2. 使用 virt-install 命令以及 VNC 远程控制安装虚拟机

Windows 系统安装

virt-install \
--virt-type kvm \
--name win2008 \
--ram 2048 \
--cdrom=/home/Windows_Server_2008_R2_with_SP1_x64_DVD_Chinese-Simplified.iso \
--boot cdrom \
--vcpu 1 \
--network bridge=br0,model=''e1000'' \
--graphics vnc,listen=0.0.0.0,port=5900 \
--disk path=/data/vms/win2008.raw,bus=''ide'' \
--noautoconsole \
--os-type=windows

执行上述命令后,虚拟机安装并未结束,接下来用上面配置的 VNC 连接主机进行后续操作

此时如果 virt-install 命令参数没有问题,会有提示信息:
开始安装......
域安装仍在进行,您可以重新连接
到控制台 (virsh console) 以便完成安装进程

执行以后只看到提示连接成功,其他没有变化,所以不用执行这个命令,暂时没发现有什么用处
局域网内的任意一台同网段的电脑通过 vnc client 或者 vnc viewer 连接虚拟机


CentOS 系统安装

virt-install \
--virt-type=kvm \
--name=centos7 \
--vcpus=2 \
--memory=2048 \
--location=/home/CentOS-7-x86_64-Minimal-1804.iso \
--disk path=/data/vms/centos7.qcow2,size=20,format=qcow2 \
--network bridge=br0 \
--graphics none \
--extra-args=''console=ttyS0'' \
--force

使用 --graphics none 说明安装过程不使用图形化的交互方式,直接在命令行终端操作安装即可
在命令行终端安装完毕后会提示回车继续,回车后虚拟机就会启动并进入到登陆界面


3.virt-install 常用参数说明
# 旧版本的写法

–name 指定虚拟机名称
–memory 分配内存大小。
–vcpus 分配 CPU 核心数,最大与实体机 CPU 核心数相同
–disk 指定虚拟机镜像,size 指定分配大小单位为 G。
–network 网络类型,此处用的是默认,一般用的应该是 bridge 桥接。
–accelerate 加速
–cdrom 指定安装镜像 iso
–vnc 启用 VNC 远程管理,一般安装系统都要启用。
–vncport 指定 VNC 监控端口,默认端口为 5900,端口不能重复。
–vnclisten 指定 VNC 绑定 IP,默认绑定 127.0.0.1,这里改为 0.0.0.0。
–os-type=linux,windows
–os-variant=rhel6

# 新版本的写法

--name 指定虚拟机名称
--ram 虚拟机内存大小,以 MB 为单位
--vcpus 分配 CPU 核心数,最大与实体机 CPU 核心数相同
--vnc 启用 VNC 远程管理,一般安装系统都要启用。
--vncport 指定 VNC 监控端口,默认端口为 5900,端口不能重复。
--vnclisten 指定 VNC 绑定 IP,默认绑定 127.0.0.1,这里改为 0.0.0.0。
--network 虚拟机网络配置
# 其中子选项,bridge=br0 指定桥接网卡的名称。

--os-type=linux,windows
--os-variant=rhel7.2

--disk 指定虚拟机的磁盘存储位置
# size,初始磁盘大小,以 GB 为单位。

--location 指定安装介质路径,如光盘镜像的文件路径。
--graphics 图形化显示配置
# 全新安装虚拟机过程中可能会有很多交互操作,比如设置语言,初始化 root 密码等等。
# graphics 选项的作用就是配置图形化的交互方式,可以使用 vnc(一种远程桌面软件)进行链接。
# 我们这列使用命令行的方式安装,所以这里要设置为 none,但要通过 --extra-args 选项指定终端信息,
# 这样才能将安装过程中的交互信息输出到当前控制台。
--extra-args 根据不同的安装方式设置不同的额外选项

 

五、VNC 端口说明
Linux 下的 VNC 可以同时启动多个 vncserver,各个 vncserver 之间用显示编号 (display number) 来区分,每个 vncserver 服务监听 3 个端口,它们分别是:

5800 + 显示编号: VNC 的 httpd 监听端口,如果 VNC 客户端为 IE,Firefox 等非 vncviewer 时必须开放。
5900 + 显示编号: VNC 服务端与客户端通信的真正端口,必须无条件开放。
6000 + 显示编号: X 监听端口,可选。
显示编号、开放的端口分别由 /etc/sysconfig/vncservers 文件中的 VNCSERVERS 和 VNCSERVERARGS 控制。
VNCSERVERS="显示编号 1: 用户名 1 …"
如:
VNCSERVERS="1:root 2:aiezu"
VNCSERVERARGS 的设置方式为:
VNCSERVERARGS [显示编号 1]="参数一 参数值一 参数二 参数值二 ……"
如:
VNCSERVERARGS[2]="-geometry 800x600 -nohttpd"
VNCSERVERARGS 的详细参数有:
-geometry 桌面分辨率,默认 1024x768;
-nohttpd 不监听 HTTP 端口 (58xx 端口);
-nolisten tcp 不监听 X 端口 (60xx 端口);
-localhost 只允许从本机访问;
-AlwaysShared 默认只同时允许一个 vncviewer 连接,此参数允许同时连多个 vncviewer;
#!/bin/sh
# Uncomment the following two lines for normal desktop:
# unset SESSION_MANAGER
# exec /etc/X11/xinit/xinitrc
[ -x /etc/vnc/xstartup ] && exec /etc/vnc/xstartup
[ -r $HOME/.Xresources ] && xrdb $HOME/.Xresources
xsetroot -solid grey
vncconfig -iconic &
#xterm -geometry 80x24+10+10 -ls -title "$VNCDESKTOP Desktop" &
#twm &
startkde &
# gnome-session &
配置完各个用户根目录下的 ".vnc/xstartup" 后,执行 service vncserver restart 重新启动 vncserver 使配置生效。

VNCSERVERS 的设置方式为:
-SecurityTypes None 登录不需要密码认证 VncAuth 默认值,要密码认证。
VNC Server 的默认设置下,客户端连接时启动的是 xterm,如果想看到桌面,必须将用户根目录下的 ".vnc/xstartup" 文件中的最后两行注释掉,然后根据你安装的桌面坏境,添加一行 "startkde &" 或者 "gnome-session &"。

 

CentOS7 设置静态 IP 以及 windows 下 ping 不通虚拟机、虚拟机 ping 不通外网解决方案

CentOS7 设置静态 IP 以及 windows 下 ping 不通虚拟机、虚拟机 ping 不通外网解决方案

问题:CentOS7 安装完成后默认使用的是动态 IP,当你每次重新启动 CentOS7 后,它的 IP 地址都不一样。一般我们都是使用远程连接工具连接 CentOS7 进行操作,如果每次 IP 都不一样,系统启动后,每次连接时都需要修改。针对这种情况我们一般都设置一个静态的 IP。具体操作如下

 

1. 查看网卡文件

如果你不知道网卡文件名,可以输入如下命令查看

ll /etc/sysconfig/network-scripts/ | grep ifcfg-en

IP 的设置是在网卡文件中,使用 vi 编辑器打开网卡文件

vi /etc/sysconfig/network-scripts/ifcfg-ens33

如果输入命令查看网卡文件时提示 No such file or directory,说明没有网卡文件,使用如下命令新建网卡文件,ifcfg-eno + 数字编号,数字编号任意

TYPE=Ethernet
 
BOOTPROTO=dhcp
 
DEFROUTE=yes
 
IPV4_FAILURE_FATAL=no
 
IPV6INIT=yes
 
IPV6_AUTOCONF=yes
 
IPV6_DEFROUTE=yes
 
IPV6_FAILURE_FATAL=no
 
IPV6_ADDR_GEN_MODE=stable-privacy
 
NAME=ens33
 
UUID=4783ccd4-78dd-41b0-857e-93d975a32817
 
DEVICE=ens33ONBOOT=yes
 
PEERDNS=yes
 
PEERROUTES=yes
 
IPV6_PEERDNS=yes
 
IPV6_PEERROUTES=yes
 
IPV6_PRIVACY=no

2. 设置静态 IP

修改网卡文件内容 
1).BOOTPROTO=dbcp 修改为 BOOTPROTO=static, ONBOOT=no 修改为 ONBOOT=yes
2). 在文件尾部添加如下代码,保存退出 
IPADDR=IP 地址 
NETMASK=255.255.255.0 子网掩码 
NM_CONTROLLED=no 
GATEWAY = 网关 IP 

网关 IP 查看:

网卡文件修改后,需要重启网络服务,输入如下命令

systemctl restart network

测试设置的静态 IP 是否生效,ping ip 地址,如果出现和如下类似的信息表示静态 IP 设置成功

问题:centos 可以 ping 通 windows,也可以 ping 通外网,但是 windows ping 不通 centos

问题描述:笔者本机使用的操作系统是 win7,虚拟机是 VM12,Linux 操作系统为 centos7,centos 中设置静态 IP、配置完 DNS 后,centos 可以 ping 通自己,也可以 ping 通 windows , 也能 ping 通外网,但是 windows ping 不通 centos,网上查阅资料说是关闭防火墙之类的,但是关闭后,还是不行。下面是笔者的解决方法,如果你也遇到类似问题,可以做下参考

Centos 中输入 ip addr,查看 ip 信息

windows 中输入 ipconfig 命令,查看 ip 信息,使 Centos 中和 winwods 的 ip 在一个网段即可:

 

centos7 通过 kvm+vnc 实现远程桌面虚拟化和创建 windows、Linux 虚拟机

centos7 通过 kvm+vnc 实现远程桌面虚拟化和创建 windows、Linux 虚拟机



感谢朋友支持本博客,欢迎共同探讨交流,由于能力和时间有限,错误之处在所难免,欢迎指正!
如果转载,请保留作者信息。
博客地址:http://blog.csdn.net/qq_21398167

原博文地址:http://blog.csdn.net/qq_21398167/article/details/46348305

CentOS6.5 上通过 KVM+VNC 实现远程桌面虚拟化

目录

1 安装 VNC.1

1.1 安装 VNC 服务端...1

1.2 安装 VNC 客户端...2

2 创建 KVM 虚拟机...2

2.1 创建 Linux 虚拟机...2

2.2 创建 Windows 虚拟机...3

3 远程桌面虚拟化连接...12

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1 安装 VNC

1.1 安装 VNC 服务端

Linux 系统上安装 VNC

yum -yinstall vnc-server     

yum -y install tigervnc-server

设置远程登录所需要的密码

输入 vncserver 后会提示输入密码

注:此密码是远程登录时所需要输入的密码

进行 vncserver 配置              

vi /etc/sysconfig/vncservers

设置以下配置值

VNCSERVRES=10000:root(其中 10000 为桌面号、root 为用户名)

VNCSERVERARGS[2]=geometry800x600 –nolisten tcp –localhost

进行防火墙配置允许远程连接 VNC 服务器

vi/etc/sysconfig/iptables

–A INPUT–m state –state NEW –m tcp –p tcp –dport 5901 –j ACCCEPT

重启 VNC 和防火墙服务

servicevncserver restart

serviceiptables restart

 

1.2 安装 VNC 客户端

  Linux 上安装 vncviewer

  Windows 上安装 TigerVNC 软件

2 创建 KVM 虚拟机

2.1 创建 Linux 虚拟机

通过 qemu-img 创建一个 7G 的映像文件

qemu-img create –f qow2 Ubuntu1204.img 7G

创建一个 Linux 虚拟机

qemu-kvm –m 1024 –cdrom ubuntu-12.04-desktop-i386.iso –drive file= Ubuntu1204.img;boot=on –boot d –nographic –vnc:2

注:-vnc:2 之间有空格

在另外一台机器上启动 TigerVNC,输入 192.168.0.123:5902 进行连接来进行安装操作和观察安装进度

注:192.168.0.123 为本机 IP5902 为相应端口号 (5900+2)

2.2 创建 Windows 虚拟机

制作包含 virtio 驱动的映像

安装 UltraISO 软件

下载 win7.iso, virtio-win-1.1.16.vfd,virtio-win-0.1-30.iso  

virtio-win-0.1-30.iso 解压成文件夹

使用 UltraISO 打开 win7.iso, 并将 virtio-win-0.1-30 复制到对应路径

                 

将添加了 virtio 驱动文件夹的新 win7.iso 文件另存为新的 ios 文件 win7_virtio.iso

qemu-img create –f raw win7_virtio.img 30G

qemu-kvm –m 1024 –cdrom win7_virtio.iso –drivefile=win7_virtio.img,if=virtio,boot=on–fda virtio-win-1.1.6.vfd –boot d –nographic –vnc :3

注:-vnc:3 之间有空格

在另外一台机器上启动 TigerVNC,输入 192.168.0.123:5903 进行连接来进行安装操作和观察安装进度

注:192.168.0.123 为本机 IP5903 为相应端口号 (5900+3)

整个安装过程如下

 

 

 

 

 

 

 

 

 

 

3 远程桌面虚拟化连接

在另外一台机器上启动 TigerVNC,输入 192.168.0.123:593 进行 win7 虚拟机登录

 


JAVA 和 JVM(java 虚拟机)运行原理揭秘

JAVA 和 JVM(java 虚拟机)运行原理揭秘

OSC 请你来轰趴啦!1028 苏州源创会,一起寻宝 AI 时代

JVM 是 java 的核心和基础,在 java 编译器和 os 平台之间的虚拟处理器。它是一种利用软件方法实现的抽象的计算机基于下层的操作系统和硬件平台,可以在上面执行 java 的字节码程序。


这里和大家简单分享一下 JAVA 和 JVM 运行的原理,Java 语言写的源程序通过 Java 编译器,编译成与平台无关的‘字节码程序’(.class 文件,也就是 0,1 二进制程序),然后在 OS 之上的 Java 解释器中解释执行,而 JVM 是 java 的核心和基础,在 java 编译器和 os 平台之间的虚拟处理器

JAVA 和 JVM 运行的原理

1.Java 语言运行的过程

Java 语言写的源程序通过 Java 编译器,编译成与平台无关的‘字节码程序’(.class 文件,也就是 0,1 二进制程序),然后在 OS 之上的 Java 解释器中解释执行。

也相当与

注:JVM(java 虚拟机)包括解释器,不同的 JDK 虚拟机是相同的,解释器不同。

2.JVM:

JVM 是 java 的核心和基础,在 java 编译器和 os 平台之间的虚拟处理器。它是一种利用软件方法实现的抽象的计算机基于下层的操作系统和硬件平台,可以在上面执行 java 的字节码程序。

java 编译器只要面向 JVM,生成 JVM 能理解的代码或字节码文件。Java 源文件经编译成字节码程序,通过 JVM 将每一条指令翻译成不同平台机器码,通过特定平台运行。

JVM 执行程序的过程 :

I. 加载。class 文件

II. 管理并分配内存

III. 执行垃圾收集

JRE(java 运行时环境)由 JVM 构造的 java 程序的运行环境 


今天的关于windows 安装 java 虚拟机电脑安装java虚拟机的分享已经结束,谢谢您的关注,如果想了解更多关于CentOS 7.5 安装 KVM 虚拟机 (Windows)、CentOS7 设置静态 IP 以及 windows 下 ping 不通虚拟机、虚拟机 ping 不通外网解决方案、centos7 通过 kvm+vnc 实现远程桌面虚拟化和创建 windows、Linux 虚拟机、JAVA 和 JVM(java 虚拟机)运行原理揭秘的相关知识,请在本站进行查询。

本文标签: