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

Re: [Xen-users] Interrupt distribution


  • To: Xen List <xen-users@xxxxxxxxxxxxxxxxxxx>
  • From: "Fajar A. Nugraha" <fajar@xxxxxxxxx>
  • Date: Thu, 30 Apr 2009 20:22:28 +0700
  • Delivery-date: Thu, 30 Apr 2009 06:23:13 -0700
  • List-id: Xen user discussion <xen-users.lists.xensource.com>

On Thu, Apr 30, 2009 at 2:43 PM, ITZIAR BALENCIAGA <ibalenciaga@xxxxxxxx> wrote:
>
> I'm sorry if I haven't explained myself well. All these things are new for
> me and probably I haven't done it ok.

Actually what I meant was you should consider using inline replies,
like what I did for your email. It makes reading easier, thus it will
make it easier for others to understand what you mean.

If you deliberately make it hard for others to understand your email
(like top-posting, or including entire email digest, or simply remove
ALL the previous emails during replying) then it's unlikely that
anybode will even try to help you, since they have no idea what you
mean.

> You are right when you think about a real-time system with Xen. I have a
> dual core and up to now I have installed Xen to have a dom0 with Linux and a
> domU with Windows. I've set CPU affinity so that each OS has his own core.
> My idea is putting the real-time part in the linux part and the interface in
> Windows. The real-time part works like this: an interrupt is generated and
> send every x ms. It interrupts the system and some values are taken. Then
> the interface uses this vale to make several operations. What I want is that
> when anything happens the windows part to handle it. That is, that nothing
> disturbs the real-time part in order to maintain the necessary performance.

First of all virtualized system (like Xen) might not be the best
candidate for real-time or time-sensitive operations (like VOIP, for
example). While some people DO use VOIP server under Xen, the
virtualization layers (for CPU, network, and disk) will introduce more
overhead and more latency which (depending or your needs) might or
might not be tolerable.

Second of all, what you're saying doesn't make any sense to me. Seriously.
You're saying that when an interrupt happens (possibly because of some
input from some I/O device) you want the dom0 to take some values
(read the I/O device?), and then PASS the values to another domian
(which, in this perspective, is essentially another machine), and THEN
have the other OS process it? Doesn't look like a good real-time
system to me. The process of passing values between different machines
(what do you have in mind? TCP-IP?) by itself could introduce delay
and latency which might be unsuitable for real-time system.

> In a simple way what I want is something like telling the interrupts where
> they have to go to be handled, if they have to go to core 0 or 1.

Things like irqbalance can be used to move interrupts between
processors on the same kernel. It has no idea about other operating
system/kernels running in the same virtualized system.

I suggest you rethink your setup, or (If I incorrectly understand your
explanation) put a clearer description of what you want. Who knows,
perhaps all you need is simply to let domU (Windows) have a direct
access to the interrupt-generator device, which might be possible
using PCI or USB passthrough.

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®.