[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Xen-users] Interrupt distribution


  • To: Xen User-List <xen-users@xxxxxxxxxxxxxxxxxxx>
  • From: "Fajar A. Nugraha" <fajar@xxxxxxxxx>
  • Date: Wed, 6 May 2009 15:23:46 +0700
  • Delivery-date: Wed, 06 May 2009 01:24:31 -0700
  • List-id: Xen user discussion <xen-users.lists.xensource.com>

On Wed, May 6, 2009 at 2:42 PM, ITZIAR BALENCIAGA <ibalenciaga@xxxxxxxx> wrote:
> at least I can't find the way of doing it). I'll put here the info about the
> RTS Hypervisor that made me believe this was possible:
>

> Users assign computer resources and OSs to the various CPU cores.
> The user makes nearly all product settings and customizations in a single,
> plain-text ASCII file. Here you may specify the number of CPU cores and the
> amount of memory to be used by a particular OS.

Xen can do that.

> The user can also assign
> legacy-device (non-PCI) interrupts and PCI devices to the exclusive use of
> specific operating systems.

Not sure what they mean by "legacy-device (non-PCI) interrupts", but
Xen can allocate (or rather, passthru) a PCI, USB, or SCSI device for
a domU's exclusive use.

What are you using as interrupt source?

> In a running system, in order not to impair an
> operating system?s realtime characteristics, the Hypervisor neither
> processes nor redirects any
> IRQs. During startup, it programs the system?s Interrupt Controller so that
> every interrupt is dispatched directly (without intermediate software
> processing) to its designated CPU core.

CMIIW, If I understand correctly this means any interrupts generated
by a device is processed by the domain that handles it without going
thru the hypervisor layer. I believe the same thing also applies to
Xen where device drivers are in dom0 or domU (when using passthru),
not in the hypervisor.

> Each OS  processes its own
> interrupts.

Also the same.

> It's often necessary for applications under one OS to communicate with and
> possibly coordinate activities with applications running under another OS.
> To this end, two communication mechanisms have been implemented: Shared
> Memory and Virtual Network.
> Virtual Network moves the data through an area of main memory specifically
> designated
> for that purpose. Since data is transferred through memory, this is a quick
> method for moving data from an application program under one operating
> system to another.

Xen can also have "virtual network" (sort of). It goes thru dom0's
bridge, but since you can set it not to use dom0 physical layer (like
ethernet card) you can easily achieve several Gbps when using domU -
domU communication.

There's also Xenbus and Xenstore, which can be use as some sort of
"shared-storage" for inter domain communication. See
http://wiki.xensource.com/xenwiki/XenStore

>
> After reading it I thought I could make something similar but perhaps it
> isn't possible with Xen. I've taken the info direct from the user's guide so
> I hope this time you can understand my goals better.

At this point I still say you need to define your requirements more clearly.
AFAIK Windows is NOT a true real-time system (sometimes refered to as
hard real time OS). If you're using Windows, and it works, then IMHO
it doesn't matter much what hypervisor you use as long as they can
present the interrupt source to Windows guest with as little delay as
possible.

Regards,

Fajar

_______________________________________________
Xen-users mailing list
Xen-users@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-users


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.