From mboxrd@z Thu Jan 1 00:00:00 1970 From: David Brusowankin Subject: Darwin OS (Newbie) Date: Tue, 21 Jun 2005 17:47:30 -0400 Message-ID: <42B88AF2.3060800@gmail.com> Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="===============1141308360==" Return-path: List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Mime-version: 1.0 Sender: xen-devel-bounces@lists.xensource.com Errors-To: xen-devel-bounces@lists.xensource.com To: xen-devel@lists.xensource.com List-Id: xen-devel@lists.xenproject.org --===============1141308360== Content-Type: text/html; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit Can anyone give me any pointers on modifying Darwin OS  so that it runs on top of Xen? My initial assumption is that is would be very much like BSD and that I could use BSD as a template.

Thanks,

David

--===============1141308360== Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Disposition: inline _______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel --===============1141308360==-- From mboxrd@z Thu Jan 1 00:00:00 1970 From: Mark Williamson Subject: Re: Darwin OS (Newbie) Date: Tue, 21 Jun 2005 23:45:20 +0100 Message-ID: <200506212345.20677.mark.williamson@cl.cam.ac.uk> References: <42B88AF2.3060800@gmail.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Return-path: In-Reply-To: <42B88AF2.3060800@gmail.com> Content-Disposition: inline List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Sender: xen-devel-bounces@lists.xensource.com Errors-To: xen-devel-bounces@lists.xensource.com To: xen-devel@lists.xensource.com Cc: David Brusowankin List-Id: xen-devel@lists.xenproject.org > Can anyone give me any pointers on modifying Darwin OS=C2=A0 so that it r= uns on > top of Xen? My initial assumption is that is would be very much like BSD > and that I could use BSD as a template. Bits of it are taken from FreeBSD 5, other bits come from elsewhere: in=20 particular you'd certainly also need to make Mach aware of Xen. There's so= me=20 other stuff in there (e.g. IOKit - Apple's driver framework) - Darwin is=20 rather a mutant. I don't know if Darwin can support BSD-style device drivers (in which case = you=20 could pretty closely follow the existing BSD drivers) or if you'd have to=20 port to IOKit straight away. One of the first steps in an OS port is obviously to get the initialisation= =20 code working. You'll find it helpful to look at the MiniOS code (and the=20 initialisation code in the existing ports), that'll give you a good idea of= =20 the changes that need to be made (e.g. guest starts in protected mode with= =20 paging enabled and a set of bootstrap page tables). (side note: the MiniOS= =20 occasionally breaks due to Xen API changes - I don't know if it works on=20 unstable at the moment) There's also an interface manual in the docs directory but we're awful abou= t=20 keeping it up to date ;-) Cheers, Mark