home *** CD-ROM | disk | FTP | other *** search
/ IRIX Base Documentation 2001 May / SGI IRIX Base Documentation 2001 May.iso / usr / share / catman / p_man / cat3c / stdipc.z / stdipc
Encoding:
Text File  |  1998-10-20  |  4.1 KB  |  67 lines

  1.  
  2.  
  3.  
  4. ssssttttddddiiiippppcccc((((3333CCCC))))                                                          ssssttttddddiiiippppcccc((((3333CCCC))))
  5.  
  6.  
  7.  
  8. NNNNAAAAMMMMEEEE
  9.      _ssss_tttt_dddd_iiii_pppp_cccc: _ffff_tttt_oooo_kkkk - standard interprocess communication package
  10.  
  11. SSSSYYYYNNNNOOOOPPPPSSSSIIIISSSS
  12.      _####_iiii_nnnn_cccc_llll_uuuu_dddd_eeee _<<<<_ssss_yyyy_ssss_////_tttt_yyyy_pppp_eeee_ssss_...._hhhh_>>>>
  13.      _####_iiii_nnnn_cccc_llll_uuuu_dddd_eeee _<<<<_ssss_yyyy_ssss_////_iiii_pppp_cccc_...._hhhh_>>>>
  14.  
  15.      _kkkk_eeee_yyyy______tttt _ffff_tttt_oooo_kkkk_((((_cccc_oooo_nnnn_ssss_tttt _cccc_hhhh_aaaa_rrrr _****_pppp_aaaa_tttt_hhhh_,,,, _iiii_nnnn_tttt _iiii_dddd_))))_;;;;
  16.  
  17. DDDDEEEESSSSCCCCRRRRIIIIPPPPTTTTIIIIOOOONNNN
  18.      All interprocess communication facilities require the user to supply a
  19.      key to be used by the _mmmm_ssss_gggg_gggg_eeee_tttt(2), _ssss_eeee_mmmm_gggg_eeee_tttt(2), and _ssss_hhhh_mmmm_gggg_eeee_tttt(2) system calls to
  20.      obtain interprocess communication identifiers.  One suggested method for
  21.      forming a key is to use the _ffff_tttt_oooo_kkkk subroutine described below.  Another way
  22.      to compose keys is to include the project ID in the most significant byte
  23.      and to use the remaining portion as a sequence number.  There are many
  24.      other ways to form keys, but it is necessary for each system to define
  25.      standards for forming them.  If some standard is not adhered to, it will
  26.      be possible for unrelated processes to unintentionally interfere with
  27.      each other's operation.  It is still possible to interface intentionally.
  28.      Therefore, it is strongly suggested that the most significant byte of a
  29.      key in some sense refer to a project so that keys do not conflict across
  30.      a given system.
  31.  
  32.      _ffff_tttt_oooo_kkkk returns a key based on _p_a_t_h and _i_d that is usable in subsequent
  33.      _mmmm_ssss_gggg_gggg_eeee_tttt, _ssss_eeee_mmmm_gggg_eeee_tttt, and _ssss_hhhh_mmmm_gggg_eeee_tttt system calls.  _p_a_t_h must be the path name of
  34.      an existing file that is accessible to the process.  _i_d is a character
  35.      that uniquely identifies a project.  Note that _ffff_tttt_oooo_kkkk will return the same
  36.      key for linked files when called with the same _i_d and that it will return
  37.      different keys when called with the same file name but different _i_d_s.
  38.  
  39. SSSSEEEEEEEE AAAALLLLSSSSOOOO
  40.      _iiii_nnnn_tttt_rrrr_oooo(2), _mmmm_ssss_gggg_gggg_eeee_tttt(2), _ssss_eeee_mmmm_gggg_eeee_tttt(2), _ssss_hhhh_mmmm_gggg_eeee_tttt(2).
  41.  
  42. DDDDIIIIAAAAGGGGNNNNOOOOSSSSTTTTIIIICCCCSSSS
  43.      _ffff_tttt_oooo_kkkk returns _((((_kkkk_eeee_yyyy______tttt_)))) _----_1111 if _p_a_t_h does not exist or if it is not accessible
  44.      to the process.
  45.  
  46. NNNNOOOOTTTTEEEESSSS
  47.      If the file whose _p_a_t_h is passed to _ffff_tttt_oooo_kkkk is removed when keys still refer
  48.      to the file, future calls to _ffff_tttt_oooo_kkkk with the same _p_a_t_h and _i_d will return
  49.      an error.  If the same file is recreated, then _ffff_tttt_oooo_kkkk is likely to return a
  50.      different key than it did the original time it was called.
  51.  
  52.  
  53.  
  54.  
  55.  
  56.  
  57.  
  58.  
  59.  
  60.  
  61.  
  62.  
  63.                                                                         PPPPaaaaggggeeee 1111
  64.  
  65.  
  66.  
  67.