Ãëàâíàÿ > Îïåðàöèîííûå ñèñòåìû > UNIX
SDENTER(3) XENIX System V (21 èþíÿ 1987)
ÈÌß
sdenter, sdleave - cèíxpoíèçèpyeò äocòyï ê paçäeëÿeìûì ceãìeíòaì äaííûx
ÑÈÍÒÀÊÑÈÑ
#include <sys/sd.h>
int sdenter (addr, flags)
char *addr;
int flags;
int sdleave (addr)
char *addr;
ÎÏÈÑÀÍÈÅ
Sdenter ècïoëüçyeòcÿ ïpè ïoïûòêe òeêyùeão ïpoöecca ïoëy÷èòü
äocòyï ê coäepæèìoìy paçäeëÿeìoão ceãìeíòa äaííûx. Apãyìeíò
addr paâeí çía÷eíèþ, âoçâpaùeííoìy ïpeäûäyùèì âûçoâoì
sdget(3). Bûïoëíÿeìoe äeécòâèe oïpeäeëÿeòcÿ apãyìeíòoì
flags, êoòopûé còpoèòcÿ ëoãè÷ecêoé cëoæeíèeì cëeäyþùèx
ôëaãoâ:
- SD_NOWAIT
- Ecëè äpyãoé ïpoöecc yæe cäeëaë âûçoâ sdenter
ïo oòíoøeíèþ ê ýòoìy ceãìeíòy äaííûx, ío íe
cäeëaë cooòâeòcòâyþùèé sdleave c ôëaãoì
SD_UNLOCK, ïpoöecc íe æäeò ocâoáoæäeíèÿ
ceãìeíòa è ôèêcèpyeòcÿ oøèáêa ENAVAIL.
-
SD_WRITE
- Óêaçûâaeò, ÷òo ïpoöecc coáèpaeòcÿ äeëaòü
çaïècü â paçäeëÿeìûé ceãìeíò äaííûx. Ïpoöecc,
ïpècoeäèíèâøèé paçäeëÿeìûé ceãìeíò äaííûx c
ycòaíoâëeííûì ôëaãoì SD_RDONLY, íe ìoæeò
âûïoëíÿòü sdenter c ôëaãoì SD_WRITE.
Sdleave ècïoëüçyeòcÿ äëÿ yêaçaíèÿ òoão, ÷òo òeêyùèé ïpoöecc
çaêoí÷èë ìoäèôèêaöèþ coäepæèìoão paçäeëÿeìoão ceãìeíòa
äaííûx.
Moäèôèêaöèè paçäeëÿeìoão ceãìeíòa äaííûx, cäeëaííûe ìeæäy
âûçoâaìè sdenter è sdleave, âûïoëíÿþòcÿ êoppeêòío è ìoãyò
áûòü y÷òeíû äpyãèìè ïpoöeccaìè. He peêoìeíäyeòcÿ íaäoëão
ocòaâëÿòü ceãìeíò ïoä äeécòâèeì âûçoâa sdenter: êaê òoëüêo
çaâepøeía òeêyùaÿ paáoòa c ceãìeíòoì, âûçûâaòü sdleave. B
÷acòíocòè, íe peêoìeíäyeòcÿ ìeæäy sdenter è sdleave
âûïoëíÿòü cècòeìíûe âûçoâû.
Ecëè ceãìeíò áûë coçäaí áeç ôëaãa SD_UNLOCK, ìeæäy sdenter è
sdleave çaïpeùeí cècòeìíûé âûçoâ fork.
Boçâpaùaeìoe çía÷eíèe
B cëy÷ae ycïeøíoão çaâepøeíèÿ âoçâpaùaeòcÿ çía÷eíèe 0.
Èía÷e âoçâpaùaeòcÿ çía÷eíèe -1 è â errno çaíocèòcÿ êoä
oøèáêè. Oøèáêa EINVAL oçía÷aeò, ÷òo ïpoöecc âûçâaë sdenter
c ôëaãoì SD_WRITE, a ceãìeíò yæe ïpècoeäèíeí äpyãèì
ïpoöeccoì c ôëaãoì SD_RDONLY. Oøèáêa ENAVAIL oçía÷aeò, ÷òo â
sdenter yêaçaí ôëaã SD_NOWAIT, a paçäeëÿeìûé ceãìeíò íe
câoáoäeí.
ÑÌ. ÒÀÊÆÅ
sdget(3), sdgetv(3)
ÇAÌE×AÍÈß
Ýòè cpeäcòâa cïeöèôè÷íû äëÿ XENIX è ìoãyò oòcyòcòâoâaòü â
äpyãèx peaëèçaöèÿx UNIX. Ïpoãpaììû, ècïoëüçyþùèe ýòè
ôyíêöèè, äoëæíû êoìïoíoâaòücÿ c ôëaãoì -lx.
Ãëàâíàÿ > Îïåðàöèîííûå ñèñòåìû > UNIX
|