From mboxrd@z Thu Jan 1 00:00:00 1970 From: tgh Subject: Re: shared memory and event channel Date: Fri, 21 Dec 2007 16:39:35 +0800 Message-ID: <476B7BC7.9030102@sina.com.cn> References: <0A8CFEC45B7F4C419F7543867C474423B7788E@mailserver.nechclst.in> <200711280145.31839.mark.williamson@cl.cam.ac.uk> Mime-Version: 1.0 Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: quoted-printable Return-path: In-Reply-To: <200711280145.31839.mark.williamson@cl.cam.ac.uk> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Sender: xen-devel-bounces@lists.xensource.com Errors-To: xen-devel-bounces@lists.xensource.com To: Mark Williamson , Keir Fraser Cc: xen-devel@lists.xensource.com, Amit Singh List-Id: xen-devel@lists.xenproject.org hi I read the code of eventchannel,and I am confused by the viarable=20 named as"consumer_is_xen"in the evtchn struct, what is the function of=20 consumer_is_xen? and does dom use eventchannel to communicate with=20 hypervisor? why not the hypercall? and in which condition is=20 eventchannel used in this way,that is ,the dom issues an event to=20 hypervisor or xen,and xen is a consumer? Thanks in advance Mark Williamson =E5=86=99=E9=81=93: >> For each domUs there is unique shared memory(2-way circular queue) = and >> event-channel(one shared memory and event-channel per domU) or there i= s >> only one shared memory and interdomain event-channel(for every DomU)? >> =20 > > Each domain has a separate shared memory page and event channel. Actua= lly, in=20 > general, there are multiple shared memory areas and event channels per = domU. > > Each virtual device (e.g. virtual network interface) may require its ow= n=20 > separate shared memory page and event channel to talk to the backend. = So if=20 > you have a domain with two vifs it'll need two shared memory pages and = two=20 > event channels. > > The block driver will also want a memory page and event channel for eac= h=20 > virtual block device. > > And so on. > > Hope this helps, > > Cheers, > Mark > > =20