
有些客户询问我们是否可以在Linux下运行PC-3000。 我们决定进行一些测试并回答这个问题。
给忙碌的人:是的,这是可能的。但性能会降低4-5倍。如果您想知道原因 – 欢迎继续阅读。
我的笔记本电脑中已经安装了Windows和Ubuntu。
作为虚拟机解决方案,我选择了Oracle VirtualBox,一个用于x86计算机的免费开源虚拟化软件。
为了节省驱动器空间,我没有从Vagrantfile创建新的虚拟机,只是创建了一个指向已安装Windows的真实驱动器的链接(我已经在这里安装了PC-3000)。以下是相关命令:
VBoxManage internalcommands createrawvmdk -filename hdd.vmdk -rawdisk /dev/sda

请注意,由于我使用GPT分区,我使用了/dev/sda,而不是仅挂载Windows分区(在上面的屏幕截图中未挂载)和/dev/sda2(即/boot/efi)。因为我使用GPT分区,并且Windows无法访问包含Ubuntu的分区,所以可以创建链接到整个驱动器(/dev/sda)的vmdk文件。
此外,要能够从原始磁盘创建vmdk,您需要使用sudo,或者执行此操作的系统用户必须添加到“disk”组中。
然后,在创建新虚拟机时,我只需选择“使用现有的虚拟硬盘文件”:

不要忘记启用EFI(如果您在安装Windows时启用了它):

然后运行虚拟机,并确保在设备管理器中可以看到PC-3000:

如果您在设备管理器中看不到您的PC-3000,这意味着您尚未将USB设备转发到客户机:

如果您想获得更高的性能,需要安装Oracle VM VirtualBox扩展包。它支持USB 2.0和USB 3.0仿真(如果您为设备设置USB 3.0模式,将获得与便携设备操作的最高可能速度)。
如您所见,PC-3000软件运行良好。

您可能会问,这样的配置是否会降低PC-3000应用程序的性能?是的,确实如此。
降低多少?让我们做一个速度测试。我拿了一个2.5英寸的WD3200BEVT-75ZCT2硬盘,并读取了前2500万个LBA(约12 GB)。
默认情况下,我的虚拟机使用USB 2.0仿真,PC-3000中的读取速度约为4 Mb/s,因此读取耗时约45分钟。这极其缓慢,我决定切换并尝试USB 3.0。

结果是15 Mb/s,耗时约20分钟。CPU负载约为85%。

为了比较,我决定在本机运行的Windows上进行测试。结果是24 MB/s,耗时12分钟。平均CPU负载约为33%:

最终,在本机Windows上,镜像速度比通过虚拟机工作快1.6倍,CPU浪费少2.6倍。
总之,我可以说在实践中,您可以通过虚拟机在任何操作系统上运行PC-3000。但这不是一个好主意。无论您使用哪种虚拟机解决方案,VirtualBox还是其他任何方案,性能都肯定会降低。因此,为了获得更好的性能和稳定性,我们建议在本机安装的Windows操作系统上使用PC-3000软件,并使用推荐的硬件。
测试中使用的系统配置总结:
笔记本电脑: DELL Inspiron 3542 (4 GB RAM, Intel Celeron Dual Core 2957U)
PC-3000产品: PC-3000 Portable
主机操作系统: Ubuntu 16.04 Xenial amd64 linux内核 4.4.0-66-generic
客户机操作系统: Windows 10 Pro x64
无虚拟化时的最大读取速度: 24 Mb/s (平均CPU负载 ~33% )
虚拟化时的最大读取速度: 15 Mbs/s (平均CPU负载约 ~90%)
用于测试的硬盘: 2.5英寸 WD3200BEVT-75ZCT2
如果您进行了在虚拟机下测试PC-3000性能的实验 – 欢迎在评论中分享您的结果。