[Barrelfish-users] building an arm kernel of barrelfish for gem5

Tim Harris (RESEARCH) tharris at microsoft.com
Mon Feb 27 14:55:50 CET 2012

Hi Samuel,

I remember talking about this with Matt Horsnell from ARM some time ago, though I’m not sure if they’ve had a chance to look at BF-on-ARM yet.

The “molly” tool is used to wrap up the kernel and modules into a single bootable image.  I wrote it because x64 gem5 was quite tailored to Linux, and expected to load a single kernel passed on the simulator’s command line.  I think that, for Linux, that kernel would proceed to load modules from a hard disk attached to the simulated machine.

The two initial things I’d suggest investigating are:

·         Checking what methods gem5 supports for loading kernels and modules on ARM.  E.g., when booting Linux, then where do things come from?

·         Checking that the kinds of ARM system that gem5 can model fit with the kinds of ARM system supported by BF.

It may also be worth checking whether QEMU supports the same kind of ARM system that you wish to model.  If so, then you could start off using QEMU (for a faster debugging cycle), and then switch over to gem5 later.  Also, I’d suggest getting a simple non-heterogenous system booting and running first, before starting on the more complex big.LITTLE setting.



From: Samuel Hitz [mailto:samuel.hitz at gmail.com]
Sent: 27 February 2012 13:01
To: Tim Harris (RESEARCH)
Cc: barrelfish-users at lists.inf.ethz.ch
Subject: Fwd: building an arm kernel of barrelfish for gem5

CCing the public barrelfish list.
---------- Forwarded message ----------
From: Samuel Hitz <samuel.hitz at gmail.com<mailto:samuel.hitz at gmail.com>>
Date: Mon, Feb 27, 2012 at 9:21 AM
Subject: building an arm kernel of barrelfish for gem5
To: tharris at microsoft.com<mailto:tharris at microsoft.com>

Hi Tim,

I'm a CS student at ETH Zurich and for my Bachelor Thesis, I try to port Barrelfish to a heterogeneous ARM multicore system (big.LITTLE) using the gem5 simulator. Now the first step is to build a Barrelfish kernel suitable for the use with gem5. I saw on the wiki, that you did this already for x86. Now my question is, what must be modified in the build process to get an ARM kernel for gem5?
I saw you're using 'molly' in order to build the kernel. How is this applicable to build an ARM kernel for gem5? What do I have to rewrite? Or is it just a matter of building an ARM Barrelfish tree and run 'make m5_kernel'?

Thank you for your help.



-------------- next part --------------
An HTML attachment was scrubbed...
URL: https://lists.inf.ethz.ch/pipermail/barrelfish-users/attachments/20120227/4966e08c/attachment-0001.html 

More information about the Barrelfish-users mailing list