mpni_io_funcs μˤĤ

--  ---

mpni_io_funcs ϡISISΥͥåȥ󥿥ե˥åȤǤ 
mp_network_interface ˥åȤȤ̿𤹤饤֥ؿǤ롣
̿饤֥ȤƤϺǤⲼؤʤ饤֥Ǥ뤿ᡢŪ1
δؿϥͥåȥ󥿥եФ1ĤΥꥯȯԤΤߤ
ȤñưԤ

mp_network_interface ưξܺ٤ˤĤƤϡISISѥå
lib/unit/mp_network_interface.txt 򻲾Ȥ줿ʲǲ⤷Ƥ
ϡmp_network_interface ưͤ¤˽äԤ
롣


-- ؿ ----

  __mpni_io_init:       
  __mpni_io_finalize:   λ
  __mpni_io_sense:      senseޥȯ
  __mpni_io_send:       sendޥȯ
  __mpni_io_rawsend:    raw sendޥȯ
  __mpni_io_psend:      progressive sendޥȯ
  __mpni_io_prawsend:   progressive raw sendޥȯ
  __mpni_io_recv:       recvޥȯ
  __mpni_io_rawrecv:    raw recvޥȯ
  __mpni_io_precv:      progressive recvޥȯ
  __mpni_io_prawrecv:   progressive raw recvޥȯ
  __mpni_io_latebind:   late bindޥȯ
  __mpni_io_latecancel: late cancelޥȯ
  __mpni_io_send_poll:  Ԥ
  __mpni_io_recv_poll:  Ԥ
  __mpni_io_show_fixed_parameters:    ǥХå: ѥ᡼ɽ
  __mpni_io_show_variable_parameters: ǥХå: ѥѥ᡼ɽ


-- ݡȴؿ ----

  __mpni_io_init:
    ͥåȥ󥿥ե˥뤿ѿ롣

  __mpni_io_finalize:
    ͥåȥ󥿥եؤΥλ롣ä˲
    

  __mpni_io_show_fixed_parameters:
    ǥХåѴؿͥåȥ󥿥եθѥ᡼ɽ
    롣

  __mpni_io_show_variable_parameters:
    ǥХåѴؿͥåȥ󥿥եβѥѥ᡼ɽ
    롣

-- __mpni_io_sense ----

senseޥɤȯԤͥåȥ󥿥եθߤβѥѥ᡼
ɤ߽Ф褦ˤ롣


-- __mpni_io_send ----

sendޥɤȯԤ롣sendޥɤǤϡ絭ˤإåȥǡ
2Υǡ̾(= progressiveǤʤ)ˡǥͥåȥ
եϤꤵ줿롣

Ǥϡͥåȥ󥿥եϤޤ絭إåȥǡ
DMAžɤ߹ࡣɤ߹ߤλ˥ͥåȥؤ
Ϥ롣

ꥯȯԤϰ ret_id ѿꥯ
ID񤭹ߡ֤

δؿΤϥꥯȤȯԤλǽλνλԤ
ʤνλԤĤˤϡ__mpni_io_send_poll ؿѤ롣
Ϥ٤ƤؿǶ̤Ǥ롣


-- __mpni_io_rawsend ----

raw sendޥɤȯԤ롣raw sendޥɤǤϡ絭ˤñ
ǡ̾(= progressiveǤʤ)ˡǥͥåȥ󥿥ե
Ϥ

sendޥɤȰäƥǡ1Ǥ: إåȥǡ2ˤ
ʤäƤʤʳư __mpni_io_send ؿƱǤ롣


-- __mpni_io_psend ----

progressive sendޥɤȯԤ롣progressive sendޥɤǤϡ絭
ˤإåȥǡ2Υǡѥץ饤Ū˥ͥåȥ
󥿥եϤ

ͥåȥ󥿥եϼ絭ͥåȥ󥿥ե
DMAѤƥǡžĤġäǡ缡ͥåȥ
롣sendޥɤΤ褦ˡ絭ͥåȥ󥿥ե
ΥǡžλޤǥͥåȥؤΥǡԤĤȤϤʤ
ʳư __mpni_io_send ؿƱǤ롣


-- __mpni_io_prawsend ----

progressive raw sendޥɤȯԤ롣__mpni_io_send,
__mpni_io_rawsend, __mpni_io_psend 򻲾ȤΤȡ


-- __mpni_io_recv ----

recvޥɤȯԤ롣recvޥɤǤϡꤵ줿λꤵ
줿ΥѥåȤͥåȥ絭ˤإåΰ
ȥǡΰ̾(= progressiveǤʤ)ˡǽ񤭹ࡣanysrc_flag 
ꤵƤϡΥѥåȤ롣

μǤϡͥåȥ󥿥եϤޤͥåȥѥ
Ȥ롣٤ƤΥѥåȤμλˡ絭Фإå
ȥǡDMAžǽ񤭹ࡣ

ꥯȯԤϰ ret_id ѿ˼ꥯ
ID񤭹ߡ֤

δؿΤϥꥯȤȯԤλǽλνλԤ
ʤνλԤĤˤϡ__mpni_io_recv_poll ؿѤ롣
Ϥ٤ƤμؿǶ̤Ǥ롣


-- __mpni_io_rawrecv ----

raw recvޥɤȯԤ롣raw recvޥɤǤϡꤵ줿
λꤵ줿ΥѥåȤͥåȥ絭ˤñ
Υǡΰ̾(= progressiveǤʤ)ˡǽ񤭹ࡣanysrc_flag 
ꤵƤϡΥѥåȤ롣
anysize_flag ꤵƤϡ륵ΥѥåȤ
롣

recvޥɤȰäƥǡ1Ǥ: إåȥǡ2ˤ
ʤäƤʤʳư __mpni_io_recv ؿƱǤ롣


-- __mpni_io_precv ----

progressive recvޥɤȯԤ롣progressive recvޥɤǤϡ
줿ΥѥåȤͥåȥĤġ絭ˤ
إåΰȥǡΰ˥ѥץ饤Ū˽񤭹ߤԤrecvޥɤ
褦ˡͥåȥͥåȥ󥿥եؤΥǡžλ
ޤǼ絭ؤν񤭹ߤԤĤȤϤʤ

anysrc_flag ꤵƤϡΥѥåȤ
롣

anysize_flag ꤵƤϡ륵ΥѥåȤ
롣

ǡΰΥɥ쥹NULLꤵƤϡإåΰΤߤ絭
ž夫ؼޤǥǡΰžԤʤ:
__mpni_io_latebind ޤ__mpni_io_latecancel ؿƤФޤǡǡ
ΰϥͥåȥ󥿥եݻ롣


-- __mpni_io_prawrecv ----

progressive raw recvޥɤȯԤ롣__mpni_io_recv,
__mpni_io_rawrecv, __mpni_io_precv 򻲾ȤΤȡ


-- __mpni_io_latebind ----

latebindޥɤȯԤ롣ǻꤷԤȯԤƤ
progressive recvꥯȤФǡΰžϤؼ롣


-- __mpni_io_latecancel ----

latecancelޥɤȯԤ롣ǻꤷԤȯԤƤ
progressive recvꥯȤФǡΰѴؼ롣


-- __mpni_io_send_poll ----

ԤȯԤƤǻꤷꥯȤδλȽ̤롣
λƤп֤


-- __mpni_io_recv_poll ----

ԤȯԤƤǻꤷꥯȤδλȽ̤롣
λƤп֤

ꤷꥯȤ precv ꥯȤǡĥǡΰNULL
ꤵƤˤϡإåΰžλǿ֤
