Subversion Repositories HelenOS-doc

Rev

Rev 157 | Rev 169 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 157 Rev 160
Line 15... Line 15...
15
  protocols.</para>
15
  protocols.</para>
16
 
16
 
17
  <section>
17
  <section>
18
    <title>Kernel Services</title>
18
    <title>Kernel Services</title>
19
 
19
 
20
    <para>Every message consists of 4 numeric arguments (32-bit and 64-bit on
20
    <para>Every message consists of four numeric arguments (32-bit and 64-bit on
21
    the corresponding platforms), from which the first one is considered a
21
    the corresponding platforms), from which the first one is considered a
22
    method number on message receipt and a return value on answer receipt. The
22
    method number on message receipt and a return value on answer receipt. The
23
    received message contains identification of the incoming connection, so
23
    received message contains identification of the incoming connection, so
24
    that the receiving application can distinguish the messages between
24
    that the receiving application can distinguish the messages between
25
    different senders. Internally the message contains pointer to the
25
    different senders. Internally the message contains pointer to the
Line 31... Line 31...
31
    <para>Every message must be eventually answered. The system keeps track of
31
    <para>Every message must be eventually answered. The system keeps track of
32
    all messages, so that it can answer them with appropriate error code
32
    all messages, so that it can answer them with appropriate error code
33
    should one of the connection parties fail unexpectedly. To limit buffering
33
    should one of the connection parties fail unexpectedly. To limit buffering
34
    of the messages in the kernel, every task has a limit on the amount of
34
    of the messages in the kernel, every task has a limit on the amount of
35
    asynchronous messages it can send simultaneously. If the limit is reached,
35
    asynchronous messages it can send simultaneously. If the limit is reached,
36
    the kernel refuses to send any other message, until some active message is
36
    the kernel refuses to send any other message until some active message is
37
    answered.</para>
37
    answered.</para>
38
 
38
 
39
    <para>To facilitate kernel-to-user communication, the IPC subsystem
39
    <para>To facilitate kernel-to-user communication, the IPC subsystem
40
    provides notification messages. The applications can subscribe to a
40
    provides notification messages. The applications can subscribe to a
41
    notification channel and receive messages directed to this channel. Such
41
    notification channel and receive messages directed to this channel. Such
Line 170... Line 170...
170
        <listitem>
170
        <listitem>
171
          <para>creating a callback connection,</para>
171
          <para>creating a callback connection,</para>
172
        </listitem>
172
        </listitem>
173
 
173
 
174
        <listitem>
174
        <listitem>
175
          <para>sending an address space area,</para>
175
          <para>sending an address space area and</para>
176
        </listitem>
176
        </listitem>
177
 
177
 
178
        <listitem>
178
        <listitem>
179
          <para>asking for an address space area.</para>
179
          <para>asking for an address space area.</para>
180
        </listitem>
180
        </listitem>