虚拟机的安装和使用

一、硬盘及其工作原理

3D参数

很久以前,硬盘的容量还非常小的时候,人们采用与软盘类似的结构生产硬盘。也就是硬盘盘片的每一条磁道都具有相同的扇区数。由此产生了所谓的3D参数(Disk Geometry),即磁头数(Heads),柱面数(Cylinders),扇区数(Sectors),以及相应的寻址方式。
其中:
磁头数(Heads)表示硬盘总共有几个磁头,也就是有几面盘片, 最大为255 (用8 个二进制存储)
柱面数(Cylinders) 表示硬盘每一面盘片上有几条磁道,最大为1023(用 10 个二进制位存储)
扇区数(Sectors) 表示每一条磁道上有几个扇区,最大为63(用 6个二进制位存储)
每个扇区一般是512个字节, 理论上讲这不是必须的,但好像没有取别的值的。
所以磁盘最大容量为:
255 * 1023 * 63 * 512 / 1048576 = 7.837 GB (1M =1048576 Bytes)
硬盘厂商常用的单位:
255 * 1023 * 63 * 512 / 1000000 = 8.414 GB (1M =1000000 Bytes)
在CHS寻址方式中,磁头,柱面,扇区的取值范围分别为0到 Heads - 1。0 到Cylinders - 1。1 到Sectors (注意是从1 开始)。

Int 13H 调用

BIOS Int 13H 调用是BIOS提供的磁盘基本输入输出中断调用,它可以完成磁盘(包括硬盘和软盘)的复位,读写,校验,定位,诊断,格式化等功能。它使用的就是CHS 寻址方式,因此最大只能访问 8 GB 左右的硬盘(本文中如不作特殊说明,均以 1M = 1048576 字节为单位)。

现代结构

在老式硬盘中,由于每个磁道的扇区数相等,所以外道的记录密度要远低于内道,因此会浪费很多磁盘空间 (与软盘一样)。为了解决这一问题,进一步提高硬盘容量,人们改用等密度结构生产硬盘。也就是说,外圈磁道的扇区比内圈磁道多,采用这种结构后,硬盘不再具有实际的3D参数,寻址方式也改为线性寻址,即以扇区为单位进行寻址。
为了与使用3D寻址的老软件兼容(如使用BIOSInt13H接口的软件), 在硬盘控制器内部安装了一个地址翻译器,由它负责将老式3D参数翻译成新的线性参数。这也是为什么硬盘的3D参数可以有多种选择的原因(不同的工作模式,对应不同的3D参数,如 LBA,LARGE,NORMAL)。

扩展Int 13H

虽然现代硬盘都已经采用了线性寻址,但是由于基本Int13H 的制约,使用BIOS Int 13H 接口的程序,如 DOS 等还只能访问8 G以内的硬盘空间。为了打破这一限制,West Digital和Phoenix Technologies联合推出了EDD标准(BIOS Enhanced Disk Drive Services),它支持64位LBA,采用线性寻址方式存取硬盘,所以突破了 8 G的限制,而且还加入了对可拆卸介质(如活动硬盘) 的支持。

二、创建和使用虚拟机
下载VirtualBox,或者选择Virtual PC,这里我们没有使用VMware,因为后者不支持VHD虚拟硬盘。
关于virtualbox可能面临一些问题,下面是解决方案:

下面我们介绍如何使用Virtual PC:
Windows Virtual PC是微软给windows7的补丁,只有win7才能用,创建虚拟机时进入用户家目录如下:

下次只用双击即可打开虚拟机

三、使用FixVhdWr工具向虚拟硬盘写入数据



LBA=C*磁头总数*每道扇区数+H*每道扇区数+(S-1)

四、更多关于虚拟机的文章

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
KVM(Kernel-based Virtual Machine)是一种开源的虚拟化解决方案,它允许在Linux操作系统上创建和管理虚拟。下面是KVM虚拟安装使用步骤: 1. 确认系统支持虚拟化:首先要确保使用的CPU支持虚拟化技术,并且已启用虚拟化扩展。可以通过在终端运行命令`egrep -c '(vmx|svm)' /proc/cpuinfo`来检查CPU是否支持虚拟化,如果返回值大于0,则表示支持。 2. 安装KVM软件包:使用包管理器安装KVM软件包。在基于Debian的系统上,可以使用以下命令进行安装: ``` sudo apt-get install qemu-kvm libvirt-daemon-system libvirt-clients bridge-utils virt-manager ``` 3. 配置网络桥接:KVM使用网络桥接来实现虚拟与物理网络的通信。可以通过编辑`/etc/network/interfaces`文件来配置桥接网络。添加以下行来创建一个桥接接口: ``` auto br0 iface br0 inet dhcp bridge_ports eno1 # 将eno1替换为物理网卡名称 ``` 保存并关闭文件后,执行`sudo service networking restart`来重新启动网络服务。 4. 创建虚拟使用virt-manager或者virsh命令行工具来创建和管理虚拟。virt-manager是一个图形化的管理工具,可以通过以下命令安装: ``` sudo apt-get install virt-manager ``` 安装完成后,可以在应用程序菜单中找到virt-manager并打开它。通过界面创建虚拟,选择适当的操作系统镜像、内存和存储配置等。 5. 启动和管理虚拟:可以使用virt-manager或者virsh命令来启动和管理虚拟。在virt-manager中,右键单击虚拟并选择“Start”来启动虚拟。在命令行中,可以使用以下命令来启动虚拟: ``` virsh start [虚拟名称] ``` 其他常用的virsh命令包括`virsh list`(列出虚拟)、`virsh shutdown [虚拟名称]`(关闭虚拟)等。 这是KVM虚拟的基本安装使用步骤,你可以根据自己的需求进一步了解和配置KVM。如果有任何问题,欢迎继续提问!

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值