Your SlideShare is downloading. ×
0
Lemay jin-reddy-schoudel
Lemay jin-reddy-schoudel
Lemay jin-reddy-schoudel
Lemay jin-reddy-schoudel
Lemay jin-reddy-schoudel
Lemay jin-reddy-schoudel
Lemay jin-reddy-schoudel
Lemay jin-reddy-schoudel
Lemay jin-reddy-schoudel
Lemay jin-reddy-schoudel
Lemay jin-reddy-schoudel
Lemay jin-reddy-schoudel
Lemay jin-reddy-schoudel
Lemay jin-reddy-schoudel
Lemay jin-reddy-schoudel
Lemay jin-reddy-schoudel
Lemay jin-reddy-schoudel
Lemay jin-reddy-schoudel
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

Lemay jin-reddy-schoudel

187

Published on

xen arm

xen arm

Published in: Technology
1 Comment
0 Likes
Statistics
Notes
  • How would I be able to get in touch with one of the authors of the slide??
    Thanks!
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here
  • Be the first to like this

No Downloads
Views
Total Views
187
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
1
Comments
1
Likes
0
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. XEN – ARM portCS523 Midterm Presentation Michael LeMay Dongyun Jin Sundeep Reddy Brian Schoudel I2CS
  • 2. Phase #1 Compile ARM/Linux  Familiarized us with QEMU and ARM architecture  Necessary, since Xen hosts Linux guest OSs  Outcomes/deliverables:  Instructions for building Linux kernel and software packages for ARM on QEMU  Instructions for using NFS from within ARM/Linux on QEMU
  • 3. Xen Architecture
  • 4. QEMU system emulator http://www.qemu.org Processor emulator including support for ARM Integrator/CP  ARM1026EJ-S processor Achieves good performance through dynamic translation Open source emulator
  • 5. QEMU stumbling blocks QEMU mailing lists are unresponsive  Paul Brook was personally very helpful, however Only offers support for ARM1026EJ-S processor, not newer ARMv6 series Doesn’t support VGA, causes Linux to crash if VGA enabled in kernel config  Enabled verbose kernel messages to detect error
  • 6. ARM Linux Compilation Cross compiler needed for any XEN, Linux compilations involving the ARM architecture Downloaded from CodeSourcery: http://www.codesourcery.com/gnu_toolchains/arm/d  Supports new ARM EABI Used kernel patches from arm.com, and compiled Linux v.2.6.16-rc3-xen for ARM  Xen support disabled
  • 7. ARM Linux System Creation Arm.com provides filesystem construction scripts  Contains precompiled version of busybox, ftp, etc.  Produces cramfs system image, loaded as ramdisk during QEMU/ARM bootup
  • 8. ARM and NFS Client-Server model – server exports filesystem to client QEMU emulates network card on Integrator  Host system acts as server  Emulated Linux system running on QEMU acts as client  Provides the means to install software and transfer files after booting up Linux on QEMU  Should be possible to boot directly from NFS root fs, but difficult on QEMU (received strange error) Works under ARM Linux!  We created script to install proper /etc/fstab in cramfs system image produced previously
  • 9. Demonstration Connect to Michael’s home server Run QEMU with ARM/Linux Connect to NFS server Transfer file between AMD64/Linux server and ARM/Linux client
  • 10. Phase #2 Port Xen hypervisor to ARM  This is the bottom layer in the Xen architecture  First software to boot on system
  • 11. Xen Architecture
  • 12. Beginnings Based on Xen 3.0.1  Based on Linux 2.6.12 kernel  Supports IA32, IA32 PAE, AMD64, IA64  Doesn’t include any support for ARM
  • 13. Xen Source Layout xen-3.0.1  buildconfigs: Makefiles  docs: Documentation  extras  mini-os: Minimal OS used for testing  linux-2.6-xen-sparse: Sources for stripped- down dom0 and domU  patches: Patches for full Linux sources  tools: Large collection of tools to run on dom0  xen: Hypervisor sources
  • 14. Xen Source Layout (cont.) xen  acm: sHype mandatory access control  arch: Architecture-specific implementation  ia64: Itanium sources  x86: IA32, IA32 PAE, and AMD64 sources  common: Architecture-independent sources  drivers: Common drivers for ACPI and console  include: Include files  tools: Figlet, for making block letter ASCII art, and other simple tools
  • 15. Modifications Copied IA64-specific directories to form ARM- specific directories  IA64 is simpler and better-organized than x86 Copied ARM-specific architectural implementation files from Linux 2.6.16-rc3-xen into xen/arch Copied ARM headers from Linux into include/ asm-arm Modified Makefile rules to use CodeSourcery cross-compilers and pass proper flags
  • 16. Challenges/Successes Large base of architecture-specific C code  Wanted to have hypervisor booted by this time, but simply too large a job Everything in xen directory compiles, except most of arch subdirectory Many warnings, undoubtedly many problems to resolve after compilation completes
  • 17. Remaining Work Compile remaining files in arch subdirectory  Will involve substantial porting effort Resolve problems with final executable Port Linux guest OS to form dom0 and domU, using ARM/Linux experience acquired earlier
  • 18. Anticipated Difficulties ARM has only two protection rings, not four as is the case in x86 and IA64  AMD64 only has two rings as well, perhaps we can learn from their modifications ARM has fairly unique MMU architecture ARM does not provide a timestamp counter, but the clocks Xen provides are based upon such a counter

×