what's best?

Question about which tools to use, bugs, the best way to implement a function, etc should go here. Don't forget to see if your question is answered in the wiki first! When in doubt post here.
Post Reply
blito

what's best?

Post by blito »

hello out there :-)
i'm writing a modular kernel, the problem is how to make the modules comunicate (a function in a
module call another function in another module).
the options are :
1- define a segment descriptor in the gdt or ldt.
this segment contains an array of function pointers.
2 - define call gates in the gdt or ldt.
3 - define interrupt gates in the idt
have you any other idea.
or some link's that can help me.
K.J.

RE:what's best?

Post by K.J. »

>On 2002-04-24 10:35:12, blito wrote:
>hello out there :-)
>i'm writing a modular kernel, the problem is how to make the modules comunicate (a function in a
>module call another function in another module).
>the options are :
>1- define a segment descriptor in the gdt or ldt.
>this segment contains an array of function pointers.
>2 - define call gates in the gdt or ldt.
>3 - define interrupt gates in the idt
>have you any other idea.
>or some link's that can help me.

I'd go with interrupt gates. Have them do IPC(inter process communication).

K.J.
Chase

RE:what's best?

Post by Chase »

>On 2002-04-25 11:40:56, K.J. wrote:
>>On 2002-04-24 10:35:12, blito wrote:
>>hello out there :-)
>>i'm writing a modular kernel, the problem is how to make the modules comunicate (a function in a
>>module call another function in another module).
>>the options are :
>>1- define a segment descriptor in the gdt or ldt.
>>this segment contains an array of function pointers.
>>2 - define call gates in the gdt or ldt.
>>3 - define interrupt gates in the idt
>>have you any other idea.
>>or some link's that can help me.
>
>I'd go with interrupt gates. Have them do IPC(inter process communication).
>
>K.J.

I would go with a interrupt modular rather than and interrupt, it will allow to occupy the irq's and i/o allot better
blito

RE:what's best?

Post by blito »

>On 2002-04-25 14:53:41, Chase wrote:
>>On 2002-04-25 11:40:56, K.J. wrote:
>>>On 2002-04-24 10:35:12, blito wrote:
>>>hello out there :-)
>>>i'm writing a modular kernel, the problem is how to make the modules comunicate (a function in a
>>>module call another function in another module).
>>>the options are :
>>>1- define a segment descriptor in the gdt or ldt.
>>>this segment contains an array of function pointers.
>>>2 - define call gates in the gdt or ldt.
>>>3 - define interrupt gates in the idt
>>>have you any other idea.
>>>or some link's that can help me.
>>
>>I'd go with interrupt gates. Have them do IPC(inter process communication).
>>
>>K.J.
>
>I would go with a interrupt modular rather than and interrupt, it will allow to occupy the irq's and i/o allot better

Thank's guys.
But i don't know how implement IPC (that's my problem).
and i don't know what do you mean with interrupt modular.
i'm new in this guys sorry.
could you explain it to me, please
thank's
Guest

RE:what's best?

Post by Guest »

>On 2002-04-26 13:40:39, blito wrote:
>>On 2002-04-25 14:53:41, Chase wrote:
>>>On 2002-04-25 11:40:56, K.J. wrote:
>>>>On 2002-04-24 10:35:12, blito wrote:
[...]
>>>I'd go with interrupt gates. Have them do IPC(inter process communication).
>>I would go with a interrupt modular rather than and interrupt, it will allow to occupy the irq's and i/o allot better
>Thank's guys.

I'd say that interrupts are the wrong solution for a modular kernel, assuming
your whole kernel shares one address space.
Interrupts are always slower than direct near calls.
Tim Robinson

RE:what's best?

Post by Tim Robinson »

>On 2002-04-26 13:40:39, blito wrote:
>>On 2002-04-25 14:53:41, Chase wrote:
>>>On 2002-04-25 11:40:56, K.J. wrote:
>>>>On 2002-04-24 10:35:12, blito wrote:
[...]
>>>I'd go with interrupt gates. Have them do IPC(inter process communication).
>>I would go with a interrupt modular rather than and interrupt, it will allow to occupy the irq's and i/o allot better
>Thank's guys.

I'd say that interrupts are the wrong solution for a modular kernel, assuming
your whole kernel shares one address space.
Interrupts are always slower than direct near calls.
Post Reply