home *** CD-ROM | disk | FTP | other *** search
-
-
-
- ssssttttddddiiiippppcccc((((3333CCCC)))) ssssttttddddiiiippppcccc((((3333CCCC))))
-
-
-
- NNNNAAAAMMMMEEEE
- _ssss_tttt_dddd_iiii_pppp_cccc: _ffff_tttt_oooo_kkkk - standard interprocess communication package
-
- SSSSYYYYNNNNOOOOPPPPSSSSIIIISSSS
- _####_iiii_nnnn_cccc_llll_uuuu_dddd_eeee _<<<<_ssss_yyyy_ssss_////_tttt_yyyy_pppp_eeee_ssss_...._hhhh_>>>>
- _####_iiii_nnnn_cccc_llll_uuuu_dddd_eeee _<<<<_ssss_yyyy_ssss_////_iiii_pppp_cccc_...._hhhh_>>>>
-
- _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_))))_;;;;
-
- DDDDEEEESSSSCCCCRRRRIIIIPPPPTTTTIIIIOOOONNNN
- All interprocess communication facilities require the user to supply a
- 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
- obtain interprocess communication identifiers. One suggested method for
- forming a key is to use the _ffff_tttt_oooo_kkkk subroutine described below. Another way
- to compose keys is to include the project ID in the most significant byte
- and to use the remaining portion as a sequence number. There are many
- other ways to form keys, but it is necessary for each system to define
- standards for forming them. If some standard is not adhered to, it will
- be possible for unrelated processes to unintentionally interfere with
- each other's operation. It is still possible to interface intentionally.
- Therefore, it is strongly suggested that the most significant byte of a
- key in some sense refer to a project so that keys do not conflict across
- a given system.
-
- _ffff_tttt_oooo_kkkk returns a key based on _p_a_t_h and _i_d that is usable in subsequent
- _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
- an existing file that is accessible to the process. _i_d is a character
- that uniquely identifies a project. Note that _ffff_tttt_oooo_kkkk will return the same
- key for linked files when called with the same _i_d and that it will return
- different keys when called with the same file name but different _i_d_s.
-
- SSSSEEEEEEEE AAAALLLLSSSSOOOO
- _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).
-
- DDDDIIIIAAAAGGGGNNNNOOOOSSSSTTTTIIIICCCCSSSS
- _ffff_tttt_oooo_kkkk returns _((((_kkkk_eeee_yyyy______tttt_)))) _----_1111 if _p_a_t_h does not exist or if it is not accessible
- to the process.
-
- NNNNOOOOTTTTEEEESSSS
- If the file whose _p_a_t_h is passed to _ffff_tttt_oooo_kkkk is removed when keys still refer
- to the file, future calls to _ffff_tttt_oooo_kkkk with the same _p_a_t_h and _i_d will return
- an error. If the same file is recreated, then _ffff_tttt_oooo_kkkk is likely to return a
- different key than it did the original time it was called.
-
-
-
-
-
-
-
-
-
-
-
-
- PPPPaaaaggggeeee 1111
-
-
-
-