18
1 ARM Linux、Android、RaspberryPiで WindowsとアプリをX86エミュで動かそう x86 Emulation on ARM devices, and Wine on ARMhf ExaGear-Desktop 1、 自己紹介 Self introduction 2、x86 Emulation on ARM devices 3、Qemu i386 Emulation on ARM devices 4、x86 Emulation on ARM Andriod 5、x86 Emulation on ExaGear-Desktop & Wine 1 board PC, and ARM Chromebook 6、x86 Emulation on ExaGear-Desktop & Wine ARM RspberryPi, RaspberryPi2 7, x86 Emulation on DOSBox and Bochs 8, x86 Emulation on Qemu-user-static debootstrap and schroot 9, Next My Presentations OSC Nagoya, Taiwan MOPCON SpeakerKapper OSC Hamanako2016 2016/1/23 14:30~ Place:浜松 Hamamatsu 浜松市市民協働センター 2F ギャラリー NetBSD Teokure Live Image On chromebook This Presentation: Slideshare & PDF files publication of my HP http://kapper1224.sakura.ne.jp

x86 Emulation on ARM devices, and Wine on ARMhf ExaGear-Desktop

Embed Size (px)

Citation preview

1ARM Linux、Android、RaspberryPiでWindowsとアプリをX86エミュで動かそう

x86 Emulation on ARM devices,and Wine on ARMhf ExaGear-Desktop

1、 自己紹介 Self introduction 2、x86 Emulation on ARM devices3、Qemu i386 Emulation on ARM devices4、x86 Emulation on ARM Andriod5、x86 Emulation on ExaGear-Desktop & Wine 1 board PC, and ARM Chromebook6、x86 Emulation on ExaGear-Desktop & Wine ARM RspberryPi, RaspberryPi27, x86 Emulation on DOSBox and Bochs8, x86 Emulation on Qemu-user-static debootstrap and schroot 9, Next My Presentations OSC Nagoya, Taiwan MOPCON

Speaker:Kapper

OSC Hamanako2016 2016/1/23 14:30~ Place:浜松 Hamamatsu浜松市市民協働センター 2F ギャラリー

NetBSD Teokure Live ImageOn chromebook

This Presentation:Slideshare & PDF filespublication of my HPhttp://kapper1224.sakura.ne.jp

2

Self Introduction● My name: Kapper

● Twitter account:@kapper1224

● HP:http://kapper1224.sakura.ne.jp

● Slideshare: http://www.slideshare.net/kapper1224

● My Hobby:Linux、*BSD、and Mobile ARM Devices

● My favorite words:Record than experiment important

● Test Model:Netwalker(PC-Z1,T1)、Nokia N900、DynabookAZ、RaspberryPi      Nexus7(2012、2013)、Hercules eCAFE EX HD、Jetson TK-1、      OpenPandora、ARM Chromebook、ZTE OPEN C(FirefoxOS)      台湾Android電子辞書 無敵CD-920、CD-928

       

● Recent Activity: Netwalker on the Linux from Scratch.

 Hacking of Android Nexus7.

 I have recently often use the ARM Chromebook.

3Recent test こんな事やってます1.Linux distributions on Android 2. Hacking with SmartWatch

3. Windows and Wine on ARM 4. Plesentations in Asia(HongKong,Taiwan) Opensouce Conference

4

今回のテーマ This Presentation● 今回はマニアックにARMからx86をエミュレート

To emulate the x86 from ARM devices

● RaspberryPiやARM ChromebookでもWindowsWindows on RaspberryPi and ARM Chromebook

● 古いアプリや環境をARMでも再現Operation the old Windows apps and OS on ARM

● LinuxZaurusやNetwalkerなどの12年の経験のまとめI put together my 12 years of experience about ARM Linux

● 処理速度が上がれば色々と・・・実現出来るかも?I can be variously realized if rises ARM processing speed?

● 海外で発表する資料と共有する為に一部英語で作っています。ご了承願います。I am made presentation materials in English in order to share content and information for oversea presentations.Please understand.

5Target ARM devices on PC Market

ChineseTablet

SmartWatch

Android SmartPhone

AndroidWindows

Tablet

WindowsNotebook PC

iPad

Chromebook

Macbook

RaspberryPi

Android Stick1board PC

WindowsPC

GoogleGlass

Mobile PCDesktop PC

iPhone

0 inch 6 inch 10 inch

$200

$100

$500

$1000

MacPC

Display Size

ChromeBox

$149~$350

AppleWatch

1.0GHz 1.6GHz 1.9GHz 2.2GHz 2.5GHzCortex-A8 Cortex-A9 Cortex-A15 Cortex-A57 Cortex-A72

0123456789

The same frequency

Relative single   thread performance

ARM devices Benchmark score

Reference:A Walk Through the Cortex-A Mobile Roadmaphttp://community.arm.com/groups/processors/blog/2013/11/19/a-walk-through-the-cortex-a-mobile-roadmap

ARM Cortex-A roadmap

ARMdevices BOINC benchmark

x86

Reference:Kapper blog

Estimation

ARM

7

x86 Emulationon ARM Linux Devices

8In 2004,Windows95 on ARM LinuxZaurus

MSDOS on bochs/XQt

● I was operated in the bochs emulator the Windows95 using the first ARM Linux Zaurus in Japan in 2004

● ARM LinuxZaurus was emulated x86 about 486 20MHz on Xscale 400MHz.

● My Website documentations

Linux Zaurus上でBochs、Win95を動かす方法について

About the method of using Bochs and Win95 on Linux Zaurus

Win95 on bochs/XQt LinuxZaurusMy ARM LinuxZaurus

● In 2004, 2ch board, ARM LinuxZaurus Emulatorhttp://pc5.2ch.net/test/read.cgi/mobile/1074209920/

221 :いつでもどこでも名無しさん:04/03/26 13:14 ID:???Bochsを使ってZaurusでWindows95を起動してみました。 ただ、今の所では凄く遅いです。 起動に10分以上、 マイコンピュータを開くのに30秒ほど掛かりますが、 思ったほど遅くは無いようです。 気が長い人なら気合いで使えるかもしれません。 とりあえず設定等を最適化してみようと思います。 まともに使うならDOSかWindows3.1で運用するのが良いかと。 とりあえずDOS端末として使ってみる事にします。

225 :いつでもどこでも名無しさん:04/03/26 20:07 ID:???>>222,223 昔PC9801FAで95を動かした時はもっと遅かったので。 Pen266MHz位でBochsを動かしたのと似たような動作です。 bochsの体感速度はベンチ取れないので表現しにくいです。 >>224 元々DOS世代のユーザーなんで。 200LXのソフトを動かしたり、アプリを動かしていましたから。

9x86 Emulations on ARM DevicesEmulation OS Root

DeviceEmulated OS Spec Comment

Qemu LinuxAndroidRaspberryPi

No WindowsMacOSX?Linux,*BSD

Slow Tegra K-1⇒PenⅡ 266MHzVer1.5〜(ARM GUI)

Qemu+Wine LinuxAndroidRaspberryPi

Required +Windows APP Slow Difficultkernel 3G/1G onlychroot environment

Exagear-Desktop LinuxRaspberryPi

Required Ubuntu,Debian Fast Tegra K-1⇒Pen4 1.8GHz

Exagear-Desktop+Wine

LinuxRaspberryPi

Required Ubuntu+WineWindows APP

Fast Tegra K-1⇒Pen4 1.8GHz

DOSBox LinuxAndroidRaspberryPiiOS,DS,PSP

No DOS,WIndows9x(i386〜i586)

Slow Tegra K-1⇒PenⅡ 266MHzNEON SupportsVoodoo1+Glide

Bochs LinuxAndroidRaspberryPiiOS,PSP

No Windows〜XP(i386〜x86-64)Linux,*BSD

Slow Tegra K-1⇒PenⅡ 266MHz

XNP2(PC-98 Emulation)

LinuxAndroidRaspberryPiiOS

No DOS、Windows95?

Slow Tegra K-1⇒?

Internet dogmatic investigation of Kapper (if I wrong it, I'm sorry. )

VMWare and Virtualbox are not working on ARM devices.(Only x86)

10x86 Qemu Emulation on ARM devices

Cortex-A15Tegra K-12.1GHz

Core i5-2540M2.60GHz

Cortex-A15Tegra K-12.1GHz

Core i5-2540M2.60GHz

Acer Chromebook13Qemu Win2000HDBench4.6.1

CF-S10Qemu Win2000HDBench4.6.1

Acer Chromebook13BOINC Benchmarck

CF-S10BOINC Benchmarck

0

5,000

10,000

15,000

20,000

25,000

30,000

35,000

40,000

1,3014,062

9142,941

12,119

35,526

6,1188,064

floating point MIPS (Whetstone) per CPU

integer MIPS (Dhrystone) per CPU

QemuWIndows2000

HDBenchBOINC Bench

Windows98、2000 on chromebook

● You can use the x86 emulator will be like can be moved and Wine Windows apps and Steam and Skype.

● The x86 emulator also works such as Windows and NetBSD.TegraK-1 in Using Qemu Pentium2 266MHz equivalent Win98 is in HDBench, it was to use and Pentium4 1.8GHz equivalent to ExaGear-Desktop.

● In ARM Devices,Qemu isx86:ARM=3:1(proportional to the floating point?)

ARM x86ARM x86

NetBSD Teokure Live ImageOn chromebook

11

x86 Emulation on Android● You can operate the Windows or NetBSD by the

use of Android even x86 emulation● PC: Bochs,Qemu,DOSBox,Linbo PC emulation

MAC:vMacMini● In the case of Qemu、Windows and NetBSD, and

the others operation.NetBSD Teokure Live Image(Qemu) on Nexus7

Windows9x、2000(Qemu) on Nexus7

12x86 Emulation on ExaGear-Desktop1 board PC, and ARM Chromebook ● ExaGear-Desktop is 4.5 times faster than qemu.

● i686 Ubuntu12.04LTS on ARMhf Ubuntu 14.04,12.04

● Boinc Benchmarchs:@ ARM Chromebook CB5-311 TegraK-1 Integer points (ARMhf Base) : 6118 ⇒ (i686): 1800  29.4% Flotings points (ARMhf Base) : 914 ⇒(i686): 700 76.6%about Pentium4 1.8GHz on ARM.(Qemu =Pentium2 266MHz)

● Windows applications on Wine, on ARM devices. Bonanza(Wine) on ARM ChromebookTouhou(Wine) on ARM Chromebook

13

Maujan(Wine) on ARM RaspberryPi2HDBench3.40(Wine) on ARM RaspberryPi2

x86 Emulation on ExaGear-DesktopARM RaspberryPi, RaspberryPi2

● ExaGear-Desktop RaspberryPi is 5 times faster than Qemu.

● i386 Debian7Wheezy on ARMhf Raspbian,Ubuntu14.04,Debian7

● HDBench Benchmarchs:@ ARM Raspberry Pi2 Integer points (ExaGear i686) : 7586 (Qemu i386: 1999 26.4%) Flotings points (ExaGear i686) :6224 (Qemu i386: 384 6.2%)about MMX Pentium 200MHz on ARM. (Qemu =Pentium 40MHz?)

● Windows applications on Wine, on ARM devices.

14

DOSBox on 3DSDOSBox on Android Wear

https://youtu.be/GZx-LJH5J_I

x86 Emulation on DOSBox and Bochs ● DOSBox can operate 〜Windows9x in the i386〜i586 emulator

DOSBox has been ported MobileOSs, about Android, iOS, WindowsMobile, Blackberry, PSP, Vita, 3DS and others.

It is a way to activate the img file in the DOSBox command line imgmount c hd0.img -size 512,63,16,1021 -fs fat boot -l c

● Bochs will start once 〜WindowsXP is now supports up to i686〜x86-64.(But too slow)

DOSBox on iOShttps://www.youtube.com/watch?v=ZgX2BkM_6q4

15

HP200LX APP on DOSBoxhttp://masaland.cocolog-nifty.com/blog/2012/10/nokiahp200lx-c1.html

x86 Emulation on DOSBox and bochs ● Old apps and emulator works with DOSBox

● Old MacOS、the OtherOS and APP opereted any ARM devices

● DOSBox SVN build can run CD-ROM boot and operate i386Linux?

● To high-speed operation x86 emulator is in RaspberryPi

Mini vMAC on DOSBox Simcity2000 on DOSBox

16x86 Emulation on Qemu-user-staticdebootstrap and schroot

● Using Qemu and schroot to operate the x86 environment on ARM

● Qemu-i386-static and binfmt-support, you can operate x86 app

● Install schroot and debootstrap in ARM Debian,Ubuntu.

#sudo -s#apt-get install debootstrap schroot binfmt-support qemu qemu-user-static#cp /etc/schroot/schroot.conf /etc/schroot/schroot.conf.old#mkdir debian_i386_wheezy#debootstrap --foreign --arch i386 wheezy debian_i386_wheezy http://ftp.debian.org/debian/#cp /usr/bin/qemu-i386-static debian_i386_wheezy/usr/bin#chroot debian_i386_wheezy /debootstrap/debootstrap --second-stage#apt-get update && upgrade#apt-get install (x86 app)#exit#(Edit /etc/schroot/schroot.conf)#schroot -c debian_i386_wheezy

● Debian supports multi-lib,but doesn't support multi-binary. If you use 「apt-get install *:i386」command,overwrite the x86 binary on the ARM binary(/usr/bin).So Qemu requires chroot environment.

● Wine only works with normal user. Wine doesn't work with superuser account. So you have to use the schroot command.

Linux(ARM base)

Linux(x86 Chroot)

x86 Wine

17RaspberryPi2+Qemu-i386-static

Wine patch for 2G/2G kernel

18Next My PresentationOSC Nagoya、Kyoto、Taiwan MOPCON● OSC Nagoya Kyoto、and Taiwan MOPCON

my exhibition schedule● Content:OSC Nagoya:Hacking of Android?

:OverSea:Hacking with ARM devices  ● FOSSASIA2016 Singapole 3/18〜20

OSC Nagoya  5/28HongKong OSC 6/M?OSC Kyoto 8/E?Taiwan COSCUP 8/M?KOF(Kansai Open Forum) 11/?Taiwan MOPCON 10/E?

● ・・・And Tokaido Linux Users Group