Changes between Version 43 and Version 44 of library_stdio


Ignore:
Timestamp:
Jan 23, 2015, 7:22:34 PM (10 years ago)
Author:
alain
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • library_stdio

    v43 v44  
    117117 == Network related system call ==
    118118
    119 The GIET_VM allows a user task to access a private NIC channel, using the CMA component (chained buffers DMA).
     119The GIET_VM allows a user task to get and use a private NIC channel, using the CMA component (chained buffers DMA) to transfer packets to or an user buffer.
    120120The NIC channel and the CMA channel are registered in the task context.
    121121
    122  === 1) unsigned int '''giet_nic_tx_alloc'''( ) ===
    123 This function allocates a private NIC_TX channel (coming with the associated kernel NIC_TX chbuf), and a private CMA channel  to the calling task. It registers both indexes in the calling task context, and returns the NIC channel index, as this channel can be shared by severals tasks of a parallel multi-tasks application.
    124 The calling task exit if no available NIC_TX channel, or no available CMA channel.
     122 === 1) unsigned int '''giet_nic_tx_alloc'''( unsigned int x_size,  unsigned int y_size) ===
     123This function allocates a private NIC_TX channel (coming with the associated kernel NIC_TX chbuf), and a private CMA channel  to the calling task. It registers both indexes in the calling task context, and returns the NIC channel index. This channel can be shared by severals tasks of a parallel multi-tasks application.
     124The packets are transfered by the hardware to the NIC from a distributed kernel chbuf (one 4 Kbytes container per cluster), where the involved clusters are defined by the (x_size / y_size) parameters.
     125The calling task exit if no available NIC_TX channel,  if no available CMA channel, if (x_size / y_size) are too large, or if there is not enough memory for the distributed kernel containers in one selected cluster.
    125126
    126127 === 2) unsigned int '''giet_nic_rx_alloc'''( ) ===
    127 This function allocates a private NIC_RX channel (coming with the associated kernel NIC_RX chbuf), and a private CMA channel  to the calling task. It registers both indexes
    128 in the calling task context, and returns the NIC channel index, as this channel can be shared by severals tasks of a parallel multi-tasks application.
    129 The calling task exit if no available NIC_RX channel, or no available CMA channel.
     128This function allocates a private NIC_RX channel (coming with the associated kernel NIC_RX chbuf), and a private CMA channel  to the calling task. It registers both indexes in the calling task context, and returns the NIC channel index. This channel can be shared by severals tasks of a parallel multi-tasks application.
     129The packets are transfered by the hardware from the NIC to a distributed kernel chbuf (one 4 Kbytes container per cluster), where the involved clusters are defined by the (x_size / y_size) parameters.
     130The calling task exit if no available NIC_TX channel,  if no available CMA channel, if (x_size / y_size) are too large, or if there is not enough memory for the distributed kernel containers in one selected cluster.
    130131
    131132 === 3) void '''giet_nic_tx_start'''( unsigned int channel ) ===
    132 This function activates both the NIC_TX channel, and the CMA channel allocated to the calling task.
     133This function activates both the NIC_TX channel, and the CMA channel allocated to the calling task to transfer packets from the distributed kernel chbuf to the NIC.
    133134The calling task exit if no allocated NIC_TX channel or no allocated CMA channel, or if the NIC channel argument does not fit the channel allocated to the calling task.
    134135
    135136 === 4) void '''giet_nic_rx_start'''( unsigned int channel ) ===
    136 This function activates both the NIC_RX channel, and the CMA channel allocated to the calling task.
     137This function activates both the NIC_RX channel, and the CMA channel allocated to the calling task to transfer packets from the NIC to the distributed kernel chbuf.
    137138The calling task exit if no allocated NIC_RX channel or no allocated CMA channel.
    138139