On 19 Dec 2013, at 01:04, cem akpolat <akpolatcem@gmail.com> wrote:


On 19 Dec 2013, at 00:36, Adam Lackorzynski <adam@os.inf.tu-dresden.de> 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@os.inf.tu-dresden.de
Lackorzynski         http://os.inf.tu-dresden.de/~adam/
Best Regards,
Cem