IRQ request from server to client and server.loop()

cem akpolat akpolatcem at
Thu Dec 19 02:03:33 CET 2013

On 19 Dec 2013, at 01:04, cem akpolat <akpolatcem at> wrote:

> On 19 Dec 2013, at 00:36, Adam Lackorzynski <adam at> wrote:
>> Hi,
> Hi Adam,
>> On Wed Dec 18, 2013 at 12:08:39 +0100, cem akpolat wrote:
>>> I am quite new to the microkernel concept and I am trying to somehow
>>> build an IRQ mechanism between client and server. There are two
>>> questions that I want to ask:
>>> 1- Is it possible to receive an IRQ message being sent by Server on
>>> the client and handle it? I tried to apply that on the shared_ds
>>> examples. However what I see is the IRQ registration could be done
>>> only on the server side. How can a client, in a shared memory
>>> case,receive an IRQ request from server and how can a server send an
>>> IRQ request (in other words trigger an IRQ) to the client.
>> For something such as shared memory, typically two IRQs are used, one
>> for each direction. So both sides can trigger the other and also receive
>> notifications.

I have forgotten to mention on your explanation, you mean actually that I should also use a server_object on the client side for receiving IRQ.

> This is actually the point that I have attempted to figure out until now. We see an example for server side for the registration of IRQ object.
> However there is no such a thing on the client side. If there is, I couldn’t find it which means that I have to keep reading the code.
> The simple question is actually how we can listen IRQ request on the cline side, especially in which source code should I search the response?
>>> 2- How can we remove or disable the server.loop mechanism? What is the
>>> role of this function?
>> This function implements the receiving part of a server and dispatches
>> incoming messages into the server functions that you're probably seen in
>> the examples. If you do not want to use that server-loop functionality,
>> for example, because it does not fit your needs, you just do something
>> different replacing the server.loop() call. Is that your intention?
> I have seen the loop code and its working mechanism as well as have noticed how to manipulate it. Honestly, the code is in a considerable manner huge and it is quite easy to muddle the whole thing. Probably, I would change this server loop according to my conditions. 
> Thank you so much again. 
>> Adam
>> -- 
>> Adam                 adam at
>> Lackorzynski
> Best Regards,
> Cem

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <>

More information about the l4-hackers mailing list