我可以模拟x86以运行Windows 95吗?
在某种程度上似乎可以模拟x86 CPU。
在我的特殊情况下,我想运行一个Teamspeak服务器,目前还没有为ARM提供。
可以模仿Teamspeak服务器吗?
我知道存在本地替代方案。但这对我来说别无选择,因为在游戏社区中,我在Teamspeak 3中是唯一使用的游戏。
#1 楼
我使用运行x86 Debian压缩的qemu使Teamspeak 3运行。确实有一些改进的空间,但是现在这对我有用。我希望我不要忘记一些事情。首先要感谢Dietmar和rapiberry pi论坛的meigrafd。没有他们的工作,我不会成功。
如何
安装qemu
我们需要一些软件
apt-get install git zlib1g-dev libsdl1.2-dev
下载Dietmar已为Raspberry pi修补的qemu(
wget 198.154.101.186/RaspberryPI/qemudidi2.rar
)的源。它是Thoronir的qemu 0.15.50,因为当前版本对ARM主机的支持似乎更加糟糕。解压缩
unrar x qemuADLI.part1.rar
。您必须使用unrar非免费版本(链接至howto)配置要编译的内容(大约需要一分钟)
./configure --target-list="i386-softmmu" --enable-sdl --extra-cflags="-O3 -mfloat-abi=hard -mfpu=vfp -mcpu=arm1176jzf-s -mtune=arm1176jzf-s -march=armv6zk" --audio-drv-list="alsa oss sdl pa" --audio-card-list="ac97 es1370 sb16 cs4231a adlib gus hda"
现在编译
make
(需要半小时)至少)现在安装
make install
现在qemu已成功安装。
准备Debian Image(使用Windows作为主机)
下载并安装Windows版qemu(链接)
下载Debian netinstall映像(压缩)。我使用过挤压,但微风也可能很好。
使用
qemu-img.exe create -f qcow2 G:\debian.img 1500M
创建映像(也应该使用较小的大小)。安装debian x86。我建议不要选择任何meta包。
qemu -cpu 486 -hda G:\debian.img -cdrom G:\debian-6.0.4-i386-netinst.iso -boot d -m 512 -smp 1
安装后,再次运行qemu命令,但有一些更改
qemu -cpu 486 -hda G:\debian.img -boot d -m 512 -smp 1 -redir tcp:9022::22 -redir udp:1234::9987
。 -redir用于将网络从客户机重定向到主机端口。现在安装较少,您喜欢的编辑器(如nano,vim等)则要使用
apt-get install less vim
安装OpenSSH Server
apt-get install openssh-server
像往常一样安装Teamspeak。
使用localhost:1234从Windows主机从您的Windows主机连接到teampeak(记住上面我们重定向了端口)
使用localhost通过ssh / putty连接到它: 9022
关闭
shutdown -hP now
图像,然后通过scp(winscp)将其复制到您的pi。在Pi上运行它(对以下命令使用SSH)
获取丢失的qemu Bios
wget -O /usr/share/qemu/sgabios.bin http://qemu.weilnetz.de/w32/2012-06-28/sgabios.bin
开始!
qemu -cpu 486 -hda debian.img -m 150m -smp 1 -redir tcp:9022::22 -redir udp:9055::9987 --nographic
如果遇到内存错误,请尝试几次。
如果它提示启动Grub,请等待几分钟(它正在后台启动,但在这里永远不会提示!)。现在,使用另一个SSH终端登录以登录'ssh root @ localhost -p 9022'
现在启动Teamspeak并尝试登录Pi的9055端口。
再次关闭qemu guest虚拟机。
再次启动它,但添加-daemonize,因此即使您注销也可以运行。我还编写了一个脚本来帮助我。
性能
我的Pi是使用raspi-config超频到1000 Mhz的256 MB版本。
Pi会以平均70%的CPU负载持续运行。它在50%(使用700 MHz)和接近100%(使用1000 MHz)之间变化。但是负载显示为“ 0.77、0.83、0.80”,这是可以的。
将来我希望使用本机Teamspeak版本(我希望仍然可以使用)或在用户模式下使用qemu以及最新版本的更好性能。时间会证明一切:)
我是否需要测试teampeak本身的性能,如果它可以用于游戏场合。我注意到延迟开销有几毫秒,但不必担心太多。
评论
确实整齐!我想我低估了Pi的“ 300 MHz奔腾等效性” ...
– Tobias Kienzler
13年1月14日在13:08
我仍然必须注意性能。多少个团队可以用这种方式处理插槽。
–keiki
2013年1月14日13:29
Dietmar已经成功地使用户模式运行在当前的qemu版本中,从而极大地提高了酒的性能。
–keiki
2013年1月15日14:35
您是否有关于此的最新信息?
–波长
14年4月13日在13:22
@TheWavelength不是。对我来说,这是一个使其运转的实验。但是我不建议您使用它,因为一方面它需要大量工作,而另一方面却是非常不稳定且性能不佳的事情。我为此目的租了一个便宜的虚拟服务器,我对此表示满意。无论如何,我只需要更多的服务器功能即可:)
–keiki
14年4月13日在14:41
#2 楼
考虑改为使用Murmur(用于Mumble的服务器),它可以像在Pi上一样在本机上运行,同时还有用于Linux,Mac,Windows,iOS等的x86版本...评论
还有uMurmur,它对于Rpi更加资源友好(尽管我在编译它时花了很多时间)。
– David Strencsev
16年5月1日在12:07
#3 楼
除了QEMU,您还可以使用ExaGear Desktop在Raspberry Pi上仿真x86,并在RPi上运行Teamspeak 3 Server。 ExaGear Desktop比QEMU快得多,并允许ts3服务器在RPi3上管理大约50-100个客户端。另外,安装也更简单。安装ExaGear Desktop,该桌面允许在Raspberry上运行x86软件(请注意,ExaGear不是免费的,您必须获得许可证)
tar -xvzpf exagear-desktop-rpi2.tar.gz
sudo ./install-exagear.sh
运行ExaGear
exagear
现在您已进入x86世界。
我建议不要在root用户下运行Teamspeak 3 Server。因此,请创建特殊用户
sudo adduser teamspeak
sudo passwd teamspeak
创建安装目录并使teampeak用户成为该目录的所有者:
sudo mkdir /usr/local/teamspeak
sudo chown teamspeak /usr/local/teamspeak
以teampeak用户身份登录,下载ts3服务器并解压缩存档:
su teamspeak
cd /usr/local/teamspeak
wget http://dl.4players.de/ts/releases/3.0.11.4/teamspeak3-server_linux-x86-3.0.11.4.tar.gz
tar -xzvf teamspeak3-server_linux-x86-3.0.11.4.tar.gz
rm teamspeak3-server_linux-x86-3.0.11.4.tar.gz
启动ts3服务器
/usr/local/teamspeak/teamspeak3-server_linux-x86/ts3server_minimal_runscript.sh
您的ts3服务器正在运行。您应该复制连接Teampeak 3客户端所需的凭据。
按CTRL + C,然后在后台启动服务器
/usr/local/teamspeak/teamspeak3-server_linux-x86/ts3server_startscript.sh start
说明基于这篇文章
评论
我不想让你的回答不好。但是在我看来,您似乎正在为ExaGear工作。因此,这个答案将是广告。如果是这种情况,请在开始时在答案中注明。谢谢。
–keiki
16年6月7日在7:31
#4 楼
使用最近发布的RPI 2,可以通过使用linaro ubuntu和exagear桌面(可以以30美元购买的最后一个)来安装工作中的teampeak服务器。它的安装很简单:
安装linaro ubuntu
购买并安装exagear(我必须手动完成,但您也可以轻松做到)
下载并解压缩teampeak3 / home / linaro / downloads地图中的-server_linux-x86-3.0.11.2.tar
4:启动exagear
5:启动teampeak
,然后启动并运行:) (哦,如果您在防火墙后面,请不要忘记进行端口转发)
评论
如果必须模拟x86,那么我怀疑您能否获得所需的性能。更不用说在模拟环境中进行实时声音处理了。我认为您可以更好地询问TeamSpeak的开发人员是否(如果可能)将其移植到ARM。但是,我确实读了一个故事,说一些俄语在ARM上创建了x86模拟器,但是我认为它还不可用。
重新编辑:好吧,如果您必须托管服务器,则可以确定其他人应该使用哪个客户端。如果他们反对,就必须自己托管它-Teamspeak目前根本无法在Raspberry Pi上运行。没有明智的理由反对抱怨-它是免费的,开源的,可移植的,高质量的,低资源使用率等。
无论如何,也许wiki.winehq.org/ARM对您来说很有趣...
@TobiasKienzler我不必托管服务器。我自愿托管服务器。我在德国魔兽世界社区中认识的每个人都使用Teamspeak。即使当您让公会成员喃喃自语时,您也经常会有访客,他们也只知道Teamspeak。