$B%U%!%$%k%7%9%F%`$re$G$N3F\:Y$,5,Dj$5$l$F$$$k!#(B
$B%U%!%$%k%7%9%F%`$O!"?H%b%G%k$r4pK\$H$7$?9=B$$H$J$C$F$*$j!"(B
$B0J2<$N$h$&$JFCD'$r;}$D!#(B
- $B2DJQD9%l%3!<%I$N=g=xNs$K$h$k%U%!%$%kJT@.(B ( $B%l%3!<%I%9%H%j!<%`(B )
- $B%U%!%$%k$K4^$^$l$k%j%s%/(B ( $B2>?H(B ) $B$K$h$kG$0U$N%M%C%H%o!<%/>u$N;2>H4X78(B
( $B=>Mh$N%U%!%$%k%7%9%F%`$K$*$1$k%G%#%l%/%H%j$OB8:_$7$J$$(B )
- $B%j%s%/(B ( $B2>?H(B ) $B$K$h$k%U%!%$%k$ND>@\E*$J%"%/%;%9(B
- $B%f!<%6%l%Y%k$N35G0$rF3F~$7$?%"%/%;%94IM}(B
$B%U%!%$%k$O;~7ONs>e$K$*$$$FJ#?t$N%f!<%6$K$h$j;HMQ$5$l!"(B
$B$5$i$K%M%C%H%o!<%/4D6-$G$OJ#?t$N%f!<%6$K$h$jF1;~$K;HMQ$5$l$k$?$a%U%!%$%k$N%"%/%;%94IM}$r$-$a:Y$+$/9T$J$$!"(B
$B9b$$%l%Y%k$NJ]8n5!9=$rDs6!$7$F$$$k!#(B
$B%U%!%$%k$H%j%s%/(B
$B%U%!%$%k$O%G!<%?$rJ];}$9$k$?$a$NMF4o$^$?$OJ];}$5$l$?%G!<%?<+BN$G$"$j!"(B
1 $B$D$N%U%!%$%k$O2DJQD9$N=g=xIU$1$i$l$?%l%3!<%I$NNs$+$i9=@.$5$l$k!#(B
$B%j%s%/$O%U%!%$%k$r;2>H$9$k$?$a$NH$9$k%U%!%$%k$r<($9%G!<%?$H%j%s%/FH<+$N$$$/$D$+$NB0@-%G!<%?$r$R$H$^$H$a$K$7$?%G!<%?9=B$$G$"$k!#(B
$B%j%s%/$O!"(B 1 $B$D$N%l%3!<%I$H$7$FG$0U$N%U%!%$%k$NCf$KKd$a9~$^$l$FB8:_$9$k!#(B
1 $B$D$N%U%!%$%k$r<($9%j%s%/$OJ#?t8DB8:_$7$F$bNI$/!"(B
$B$3$l$K$h$jA4BN$H$7$F%M%C%H%o!<%/>u$NG$0U$N%U%!%$%k4V$N;2>H4X78$,Dj5A$5$l$k!#(B
$B?H%b%G%k$H$NBP1~$K$*$$$F!"(B
$B%U%!%$%k$O?H$K(B 1 $BBP(B 1 $B$KBP1~$9$k$3$H$K$J$k!#(B
$B?H%b%G%k$G$O!"(B
$B%f!<%6$H$N%S%8%e%"%k%$%s%?%U%'!<%9$r4pK\$H$7$F$*$j!"(B
$B$=$N0UL#$G!"FC$K2>?H$O%j%s%/$N%S%8%e%"%kI=8=$H$_$J$9$3$H$,$G$-$k!#(B
$B%U%!%$%k$N;2>H$O4pK\E*$K%j%s%/$rDL$7$FD>@\9T$J$o$l$k$?$a!"(B
$B%U%!%$%k$NL>A0$O@dBPE*$J0UL#$r;}$?$:!"(B
1$B$D$N8!:w%-!<$H$7$F;HMQ$5$l$k!#(B
$B%U%!%$%kL>$H$7$F$O:GBg(B20$BJ8;z$NG$0U$N%U%!%$%kL>$,IU$1$i$l$k$,!"(B
$BF10l$N%U%!%$%kL>$,B8:_$7$F$b9=$o$J$$!#(B
$B?^(B 6 : $B%U%!%$%k$H%j%s%/(B
$B%U%!%$%k%7%9%F%`(B
$B%U%!%$%k%7%9%F%`$O%U%!%$%k$r4IM}$9$k$?$a$N(B 1 $B$D$NJ*M}E*$JC10L$G$"$j!"(B
1$B$D$N5!4o>e$N0J2<$N$h$&$J5-21G^BN>e$K9=C[$5$l!"J*M}E*$J%5%$%:$N>e8B$r;}$D!#(B
- $B%U%m%C%T!<%G%#%9%/(B
- $B%O!<%I%G%#%9%/(B ( $B$N(B 1 $B$D$N%Q!<%F%#%7%g%s(B )
$B%U%!%$%k%7%9%F%`$K$O!"I,$:(B 1 $B$D$N%k!<%H%U%!%$%k$,B8:_$7!"(B
$B$=$N%k!<%H%U%!%$%k$K4^$^$l$k%j%s%/$r=g?H%b%G%k$H$NBP1~$K$*$$$F%G%P%$%9
$B%U%!%$%k4V$N%j%s%/$K$h$k;2>H4X78$O!"(B
$B4pK\E*$K(B 1 $B$D$N%U%!%$%k%7%9%F%`Fb$GDj5A$5$l@09g$,$N%U%!%$%k%7%9%F%`$KB8:_$9$k%U%!%$%k$r;2>H$9$k$?$a$N4V@\E*$J%j%s%/$r;}$D$3$H$,$G$-!"(B
$B$3$l$rFC$K4V@\%j%s%/$H8F$V!#(B
$B4V@\%j%s%/$K$h$k;2>H$N>l9g$O!"(B
$B;2>H@h$NB>$N%U%!%$%k%7%9%F%`$NJQ99$KBP$9$k@09g$OH@h$N%U%!%$%k$NB8:_$OJ]>Z$5$l$J$$>l9g$,$"$k$?$aCm0U$,I,MW$G$"$k!#(B
$B%U%!%$%k%7%9%F%`$N@8@.;~$K$O!"(B
$B%U%!%$%k%7%9%F%`L>!"$*$h$S%G%P%$%9=j:_L>$,@_Dj$5$l$k!#(B
$B%U%!%$%k%7%9%F%`L>$O%k!<%H%U%!%$%k$NL>>N$H$7$F$b@_Dj$5$l$k:GBg(B 20 $BJ8;z$NL>A0$G$"$j!"(B
$B%7%9%F%`$*$h$S%f!<%6$,%U%!%$%k%7%9%F%`$r@dBPE*$K<1JL$9$k$?$a$K;HMQ$5$l$k!#(B
$B%U%!%$%k%7%9%F%`L>$,F10l$N%U%!%$%k%7%9%F%`$O!"F10l$H$_$J$5$l$k$?$a!"(B
$B%U%!%$%k%7%9%F%`L>$O%f%K!<%/$G$J$1$l$P$$$1$J$$!#(B
$B%G%P%$%9=j:_L>$O!"(B
$B%U%!%$%k%7%9%F%`$,3JG<$5$l$F$$$kJ*M}%G%P%$%9$r<($9:GBg(B20$BJ8;z$NL>A0$G$"$j!"(B
$B%M%C%H%o!<%/7PM3$GB>$N%^%7%s$r%"%/%;%9$9$k>l9g$d!"(B
$B%U%m%C%T!l9g$K;HMQ$5$l$k!#(B
$BDL>o!"(B
$B%G%P%$%9=j:_L>$H$7$F$O%O!<%I%G%#%9%/Ey$N5!4o$K8GDjE*$KIUB0$7$F$$$k%G%P%$%9$N>l9g$K$O$=$NG^BN$N0lHLL>>N(B ( $BB($A!V%O!<%I%G%#%9%/!WEy(B ) $B$,;HMQ$5$l!"(B
$B%U%m%C%T!<%G%#%9%/Ey$Nl9g$K$O$=$NG^BN$N0lHLL>>N(B
( $BB($A!V%U%m%C%T!<%G%#%9%/!WEy(B ) $B$,;HMQ$5$l$k!#(B
$B?^(B 7 : $B%U%!%$%k%7%9%F%`$N9=@.(B
$B%U%!%$%k%7%9%F%`$N@\B3(B
$B%7%9%F%`$N%9%?!<%H%"%C%W;~$K$O!"(B
$B%U%!%$%k%7%9%F%`$O(B 1 $B$D$bB8:_$7$F$$$J$$>uBV$G$"$j!"(B
$B@\B3A`:n$r9T$J$&$3$H$K$h$j=i$a$F!"(B
$B%U%!%$%k%7%9%F%`$H$7$F;HMQ$9$k$3$H$,2DG=$H$J$k!#(B
$B=>$C$F!"(B
$BDL>o$O%7%9%F%`$N=i4|2==hM}$H$7$F:GDc8B$N%U%!%$%k%7%9%F%`$N@\B3$r9T$J$&I,MW$,$"$k!#(B
$B%U%!%$%k%7%9%F%`$N@\B3$O!"(B
$B@\B3$9$k%U%!%$%k%7%9%F%`$,B8:_$9$kO@M}%G%P%$%9L>$H!"(B
$B@\B3L>$r;XDj$7$F9T$J$o$l$k!#@\B3L>$O@\B3$7$?%U%!%$%k%7%9%F%`$r<1JL$9$k$?$a$N:GBg(B
8 $BJ8;z$NL>A0$G$"$j!"(B
$B@\B3$7$?%U%!%$%k%7%9%F%`$N%k!<%H%U%!%$%k$r<($9@dBP%Q%9L>>N$H$7$F;HMQ$5$l$k!#(B
$B$^$?!"@\B3;~$K$O@\B3$7$?%U%!%$%k%7%9%F%`$N%k!<%H%U%!%$%k$X$N%j%s%/$,F@$i$l$k!#(B
$B=>$C$F!"@\B3;~$KF@$i$l$?%j%s%/!"$^$?$O@\B3L>$r;HMQ$9$k$3$H$K$h$j!"(B
$B@\B3$7$?%U%!%$%k%7%9%F%`>e$N%k!<%H%U%!%$%k$r%"%/%;%9$9$k$3$H$,2DG=$H$J$j!"(B
$B%k!<%H%U%!%$%k$+$i=ge$NG$0U$N%U%!%$%k$r%"%/%;%9$9$k$3$H$,2DG=$H$J$k!#(B
$B%U%!%$%k%7%9%F%`$N@ZCG$O!"(B
$B@ZCG$9$k%U%!%$%k%7%9%F%`$NO@M}%G%P%$%9L>$r;XDj$7$F9T$J$o$l!"(B
$B$3$l$K$h$j@ZCG$7$?%U%!%$%k%7%9%F%`>e$N%U%!%$%k$r<($9%j%s%/$rDL$7$?%U%!%$%k$N%"%/%;%9$O$G$-$J$$>uBV$H$J$j!"(B
$B$3$N>uBV$r@ZCG>uBV$H8F$V!#(B
$B?H%b%G%k$H$NBP1~$K$*$$$F!"@ZCG>uBV$N%j%s%/$O5u?H$KBP1~$9$k$3$H$K$J$k!#(B
$B%U%!%$%k%7%9%F%`$N@\B3$O!"(B
$BC1$K%U%!%$%k%7%9%F%`$NB8:_$r%U%!%$%k4IM}5!G=$KF0E*$KEPO?$9$k$@$1$N5!G=$G$"$j!"(B
$B9=B$$r;}$?$J$$J?C3$J@\B3$G$"$k!#(B
$B=>$C$F!"J#?t$N%U%!%$%k%7%9%F%`$r$^$?$,$k%M%C%H%o!<%/>u$N@EE*$J%U%!%$%k;2>H9=B$$O!"(B
$B0[$J$k%U%!%$%k%7%9%F%`>e$N%U%!%$%k$r;2>H$9$k4V@\%j%s%/$rMxMQ$7$F9=C[$9$k$3$H$K$J$k!#(B
$B?^(B 8 : $B%U%!%$%k%7%9%F%`$N@\B3(B
$B%U%!%$%k(BID
1 $B$D$N%U%!%$%k%7%9%F%`Fb$NA4$F$N%U%!%$%k$K$O!"(B
$B@8@.;~$K%U%!%$%k(BID$B$H8F$P$l$k%f%K!<%/$JHV9f$,IU$1$i$l!"(B
$BFbItE*$K<1JL$5$l$k!#%U%!%$%k(BID$B$O(B 0 $B!A(B ( $B:GBg%U%!%$%k(BID )
$B$NHO0O$NCM$G$"$j!"(B
$B:GBg%U%!%$%k(BID($BB($A!":GBg$N%U%!%$%k?t(B)$B$O%U%!%$%k%7%9%F%`$N@8@.;~$K5,Dj$5$l$k!#(B
$B%U%!%$%k(BID$B$O(B 16 $B%S%C%H$N?tCM$GI=$o$5$l$k$?$a!"(B
$B:GBg%U%!%$%k(BID$B$O(B 65535 $B$r1[$($k$3$H$O$G$-$J$$!#(B
$B%U%!%$%k%7%9%F%`$N%k!<%H%U%!%$%k$O>o$K(B 0 $B$N%U%!%$%k(B ID $B$r;}$D!#(B
$B%j%s%/(B
$B%j%s%/$O!"%U%!%$%k$r%"%/%;%9$9$k$?$a$NH$9$k%U%!%$%k$,B8:_$9$k%U%!%$%k%7%9%F%`L>!"%U%!%$%k(BID $B!"(B
$B$*$h$S%j%s%/$H$7$F$N$$$/$D$+$NB0@-%G!<%?$rJ];}$7$F$$$k%G!<%?9=B$$G$"$k!#(B
$B%j%s%/$O!"%S%8%e%"%k$JA`:n4D6-$G$O!"2>?H$H$7$FI=<($5$l$k!#(B
$B%j%s%/$OC1$J$k%]%$%s%?$H$7$F$NF0E*$J%G!<%?$G$"$k$,!"(B
$B%U%!%$%kFb$K(B 1 $B$D$N%l%3!<%I$H$7$F3JG<$9$k$3$H$K$h$j8GDjE*$JB8:_$H$J$k!#(B
$B$3$N$h$&$K3JG<$5$l$?%j%s%/$rFC$K8GDj(B ( $B%U%#%C%/%9%I(B )
$B%j%s%/$H8F$V!#8GDj%j%s%/$O%U%!%$%k%7%9%F%`L>$r;}$?$J$$$?$a!"(B
$BF10l$N%U%!%$%k%7%9%F%`Fb$N%U%!%$%k$N;2>H$N$_2DG=$G$"$j!"(B
$B%U%!%$%k$+$i8GDj%j%s%/$r$,%j%s%/$N%G!<%?9=B$$H$7$F@_Dj$5$l$k$3$H$K$J$k!#(B
$B$3$N$?$a!"(B
$B0[$J$k%U%!%$%k%7%9%F%`$r;2>H$9$k%j%s%/$r8GDj%j%s%/$H$7$F%U%!%$%kFb$K3JG<$9$k>l9g$O!"(B
$B$"$i$+$8$a!"3JG<$9$k%U%!%$%k%7%9%F%`Fb$K%j%s%/%U%!%$%k$H8F$P$l$kFC
$B%j%s%/%U%!%$%k$O!";2>H$9$k%U%!%$%k$NB8:_$9$k%U%!%$%k%7%9%F%`L>!"(B
$B%U%!%$%k(BID$B!"%U%!%$%kL>!"$*$h$S@[email protected]|;~(B $B$rJ];}$7$F$$$kFCH$7$F$$$k0[$J$k%U%!%$%k%7%9%F%`Fb$N%U%!%$%k$X$N%"%/%;%9$H<+F0E*$K2ro$N%U%!%$%k$r<($9%j%s%/$rD>@\%j%s%/$H8F$V!#(B
$BB?=E$N4V@\%j%s%/!"(B
$BB($A(B 2 $B$D0J>e$N%j%s%/%U%!%$%k$r7PM3$7$?%U%!%$%k$N;2>H$O%5%]!<%H$5$l$J$$$?$a!"(B
$B%"%/%;%9$7$?;~E@$G%U%!%$%k$OB8:_$7$J$$$H$$$&%(%i!<$K$J$k!#(B
$B4V@\%j%s%/$K$h$k%j%s%/%U%!%$%k7PM3$K$h$k%U%!%$%k$N;2>H$O!"(B
$B0J2<$N$h$&$K9T$J$o$l$k!#(B
$B%U%!%$%k%7%9%F%`L>$K$h$j%U%!%$%k%7%9%F%`$rFCDj$9$k!#(B
$B@\B3$5$l$F$$$J$$>l9g$O!"(B
$B%"%/%;%9$OIT2D$H$J$k!#$J$*!"@\B3L>$O!"(B
$B%j%s%/%U%!%$%k7PM3$N%"%/%;%9$K$OL54X78$G$"$k!#(B
$B%U%!%$%k(BID$B$K$h$jFCDj$7$?%U%!%$%k%7%9%F%`Fb$N%U%!%$%k$r%A%'%C%/$7!"(B
$B%U%!%$%kL>$*$h$S@[email protected]|;~$NN>J}$^$?$O$I$A$i$+0lJ}$,0lCW$7$F$*$j!"(B
$B$+$D$=$N%U%!%$%k$,%j%s%/%U%!%$%k$G$J$$>l9g$K!"(B
$B$=$N%U%!%$%k$rBP>]$H$7$F%"%/%;%9$r9T$J$&!#(B
$B$=$l0J30$N>l9g$O!";2>H$9$Y$-%U%!%$%k$,B8:_$7$J$/$J$C$?$b$N$H$_$J$7$F%"(B
$B%/%;%9$OIT2D$H$J$k!#(B
$B?^(B 9 : $B4V@\%j%s%/!?%j%s%/%U%!%$%k(B
$B:n6H%U%!%$%k(B
$B$"$k%W%m%;%9$,8=:_=hM}$NBP>]$H$7$F$$$k%U%!%$%k$r$=$N%W%m%;%9$N:n6H%U%!%$%k$H8F$V!#(B
$B%W%m%;%9$O%7%9%F%`%3!<%k$K$h$jG$0U$N%U%!%$%k$r:n6H%U%!%$%k$H$9$k$3$H$,2DG=$G$"$k!#(B
$B:n6H%U%!%$%k$O%W%m%;%9$N5$5$l$k!#(B
$B:n6H%U%!%$%k$OL$Dj5A$H$9$k$3$H$b2DG=$G$"$j!"(B
$B%7%9%F%`$G:G=i$K@8@.$5$l$?%W%m%;%9$N:n6H%U%!%$%k$OL$Dj5A>uBV$H$J$C$F$$$k!#(B
$B%Q%9L>(B
$B%U%!%$%k$N;2>H$O4pK\E*$K%j%s%/$K$h$jD>@\E*$K9T$J$o$l$k$,!"(B
$B%P%C%AE*$J%"%W%j%1!<%7%g%sEy$G$O!"(B
$B%j%s%/$r%$%s%?%i%/%F%#%V$K=gHV$K$?$I$k$3$H$,$G$-$J$$$?$a!"(B
$BD>@\E*$K$?$I$k$Y$-%j%s%/$NNs$r;XDj$9$k$3$H$K$h$j%U%!%$%k$r;2>H$9$k$3$H$K$J$k!#(B
$B$3$N$?$a$N%j%s%/$NNs$H$7$F!"(B
$B3F%j%s%/$N;2>H$9$k%U%!%$%kL>$r=gHV$KJB$Y$?$b$N$r!"(B
$B%Q%9L>$H8F$V!#$3$N>l9g!"%U%!%$%kL>$@$1$G$O0l0U@-$,J]>Z$5$l$J$$$?$a!"(B
$B$=$N=P8==g$r%U%!%$%kL>$KIU2C$7$F;HMQ$9$k!#(B
$B=P8==g$O!"(B
1 $B$D$N%U%!%$%kFb$KF10l$N%U%!%$%kL>$r;}$D%U%!%$%k$r;2>H$9$k%j%s%/$,(B n
$B8DB8:_$9$k>l9g$K@hF,$+$iIU$1$i$l$?(B 0 $B!A(B n-1
$B$NO"B3HV9f$G$"$k!#(B
$B=P8==g$r>JN,$7$?>l9g$O(B 0$B!"B($A:G=i$H$_$J$5$l$k!#(B
$B?^(B 10 : $B%Q%9L>$N=P8==g(B
$B%Q%9L>$O0J2<$K<($99=J8$r;}$A!"(B
$B:GBg(B 256 $BJ8;z$^$G$N(B 1 $B$D$NJ8;zNs$H$7$F
[$B%Q%9L>(B] ::$B!a(B[$BFCH(B]$B!C(B[$BFCH(B] / [$BC1=c%Q%9L>(B]$B!C(B[$BC1=c%Q%9L>(B]
[$BC1=c%Q%9L>(B] ::$B!a(B[$BC1=c%Q%9L>(B] / [$B;2>H;XDj(B]$B!C(B [$B;2>H;XDj(B]
[$B;2>H;XDj(B] ::$B!a(B[$B%U%!%$%kL>(B] $B!C(B[$B%U%!%$%kL>(B]$B!'(B[$B=P8==g(B]
[$BFCH(B] ::$B!a(B / [$B@\B3L>(B]$B!C(B $B"a(B
[$B=P8==g(B] ::$B!a(B $B?tCM(B
[$B%U%!%$%kL>(B] ::$B!a(B $BJ8;zNs(B ($B:GBg(B20$BJ8;z(B)
[$B@\B3L>(B] ::$B!a(B $BJ8;zNs(B ($B:GBg(B8$BJ8;z(B)
$BFCH$O0J2<$N0UL#$r;}$D!#(B
/ [$B@\B3L>(B] -- $B;XDj$7$?@\B3L>$G@\B3$7$?%U%!%$%k%7%9%F%`$N%k!<%H%U%!%$%k$r<($9!#(B
$B"a(B -- $B:n6H%U%!%$%k$r<($9!#(B
/ $B"a(B :
$B$N5-9f$O!"$=$l$>$l0J2<$K<($9FC$H$7$F$O6uGr$r4^$a$?I=<(2DG=$J$9$Y$F$NJ8;z$,;HMQ2DG=$G$"$k!#(B
$B%Q%9L>$NJ8;zNs$N:G8e$K(B / $B$,B8:_$7$F$$$?>l9g$O!"(B
$B$=$l$OL5;k$5$l$k$b$N$H$9$k!#(B
$B!?(B TC_FDLM 0xff21
$B!'(B TC_FSEP 0xff22
$B"a(B TC_FOWN 0xff23
/ [$B@\B3L>(B]$B$G;O$^$k%Q%9L>$O!"(B
$B$=$N%U%!%$%k%7%9%F%`$N%k!<%H%U%!%$%k$+$i$N%Q%9L>$G$"$j!"(B
$B@dBP%Q%9L>$H8F$V!#(B
$B$=$l0J30$N>l9g$O8=:_$N:n6H%U%!%$%k$+$i$NAjBPE*$J%Q%9L>$G$"$j!"(B
$BAjBP%Q%9L>$H8F$V!#(B
$B%Q%9L>$H$7$F$O0J2<$N$h$&$J$b$N$,$"$2$i$l$k!#(B
/$B:G?7(B/$B%W%m%8%'%/%H(B/$B%=%U%H%&%'%";EMM(B/$B3K;EMM(B/$B%U%!%$%k4IM}(B
$B30It;EMM(B/$BBh(B10$B>O(B/$BNc(B:1
$B"a(B
$B%U%!%$%k$N%?%$%W(B
$B%U%!%$%k$K$O!"Bg$-$/0J2<$N(B2$Bl9g$O!"DL>o%U%!%$%k$r0UL#$9$k!#(B
- $BDL>o%U%!%$%k(B :
- $B%G!<%?$NJ]B8>l=j$H$7$F$NDL>o$N0UL#$G$N%U%!%$%k$G$"$k!#(B
- $B%j%s%/%U%!%$%k(B :
- $BJL$N%U%!%$%k%7%9%F%`Fb$N%U%!%$%k$r4V@\E*$K;2>H$9$k$?$a$K;HMQ$5$l$kFC
$B$J$*!"(BFD$B!"(BHD$B!"%W%j%s%?!"DL?.%i%$%sEy$NJ*M}E*$J%G%P%$%9$O!"(B
$B%U%!%$%k$H$7$F$G$O$J$/FHN)$7$?%G%P%$%9$H$7$FA0$K$h$j%7%9%F%`$KEPO?$5$l!"(B
$B$=$NL>A0$r;HMQ$7$F%"%/%;%9$5$l$k!#(B
$BDL>o%U%!%$%k$N9=@.(B
( $BDL>o(B ) $B%U%!%$%k$O!"(B
$BG$0U%P%$%HD9$N%l%3!<%I$N=g=xIU$1$i$l$?Ns!"(B
$BB($A%l%3!<%I%9%H%j!<%`$K$h$j9=@.$5$l!"(B
$B3F%l%3!<%I$O!"0J2<$NMWAG$K$h$j9=@.$5$l$k!#(B
- $B%l%3!<%I%?%$%W(B
- $B%l%3!<%I%5%V%?%$%W(B
- $B%l%3!<%I%5%$%:(B
- $B%l%3!<%IK\BN(B
$B%l%3!<%I%?%$%W$O!"%l%3!<%I$N%?%$%W$r<($9(B 0 $B!A(B 31 $B$NCM$G$"$k!#(B
- 0 $B!'%j%s%/%l%3!<%I(B
$BB>$N%U%!%$%k$X$N%j%s%/$r3JG<$9$k%l%3!<%I$G$"$j!"(B
$B$=$NFbMF$O%U%!%$%k4IM}5!G=$K$h$jD>@\E*$K@\E*$JA`:n$O8BDj$5$l$k!#(B
- 1 $B!A(B31 : $B%G!<%?%l%3!<%I(B
$B%7%9%F%`$H$7$F5,Dj$5$l$k%l%3!<%I%?%$%W$G$"$k$,!"(B
$B$=$NFbMF$K4X$7$F$O%U%!%$%k4IM}5!G=$H$7$F$OFC$K4XCN$;$:!"(B
$BC1$J$k%P%$%HNs$H$7$F
$B%l%3!<%I%5%V%?%$%W$O!"%l%3!<%I%?%$%W$K1~$8$F;HMQ$5$l$kJd=uE*$J%?%$%W;XDj$d!"(B
$B%-!<%o!<%I$K;HMQ$5$l$k(B 16 $B%S%C%H$NId9fL5$7?tCM$G$"$k!#(B
$B%l%3!<%I%5%$%:$O!"%l%3!<%IK\BN$N%P%$%H?t$r<($9(B32$B%S%C%H$N%G!<%?$G$"$k!#(B
$B%j%s%/%l%3!<%I$N>l9g$O%l%3!<%I%5%$%:>pJs$r;}$?$J$$$,!"(B
$B%l%3!<%I$NF~=PNO$KI,MW$JNN0h$N%5%$%:$G$"$k(B LINK $B9=B$BN$N%5%$%:(B
(52$B%P%$%H(B) $B$r%l%3!<%I%5%$%:$H$9$k!#(B
$B$?$@$7!"$3$N%j%s%/%l%3!<%I$N%5%$%:$O!"(B
$B%U%!%$%k4IM}>pJs$H$7$F$NAm%P%$%H?t$K$O!"(B
$B%+%&%s%H$5$l$J$$!#(B
$B%l%3!<%IK\BN$O!"%l%3!<%I%5%$%:$G<($5$l$?%P%$%H?t$N%G!<%?Ns$G$"$j!"(B
$B$=$NFbMF$O%l%3!<%I%?%$%W$K0MB8$7$F7h$a$i$l$F$$$k!#(B
$B%j%s%/%l%3!<%I$N>l9g$O%l%3!<%IK\BN$OFC
$BHV9f(B / $B8=:_%l%3!<%I(B
$B%U%!%$%k$N3F%l%3!<%I$K$O!"@hF,$N%l%3!<%I$r(B 0
$B$H$7$?%l%3!<%I$N=gHV$K=>$C$?O"B3HV9f$,IU$1$i$l$F$*$j!"(B
$B$3$l$r%l%3!<%IHV9f$H8F$V!#(B
$B%l%3!<%IHV9f$O%l%3!<%I$N=gHV$r<($7$F$$$k$?$a%l%3!<%I$NA^F~(B / $B:o=|$K$h$jF0E*$KJQ2=$9$k!#(B
$B:G8e$N%l%3!<%I$NA[E*$K%l%3!<%I$,B8:_$7$F$$$k$b$N$H9M$(!"(B
$B$3$N%l%3!<%I$r=*C<%l%3!<%I$H8F$V!#(B
N $B8D$N%l%3!<%I$,$"$k>l9g!"=*C<%l%3!<%I$O%l%3!<%IHV9f(B N $B$r;}$D$3$H$K$J$k!#(B
$B%*!<%W%s$7$?%U%!%$%k$KBP$7$F$O8=:_!"(B
$B%"%/%;%9$NBP>]$H$7$F$$$k%l%3!<%I$r<($98=:_%l%3!<%I$,Dj5A$5$l!"(B
$B8=:_%l%3!<%I$N%l%3!<%I$KBP$7$F%G!<%?%"%/%;%9$,9T$J$o$l$k!#(B
$B8=:_%l%3!<%I$O%l%3!<%IHV9f$N;XDj!"(B
$B%l%3!<%I%?%$%W$K$h$k8!:wEy$K$h$j0\F0$5$;$k$3$H$,$G$-$k!#(B
$B8=:_%l%3!<%I$O%l%3!<%I$NA^F~(B / $B:o=|$K$h$C$F$bJQ2=$;$:!"(B
$B8=:_%l%3!<%I$KBP1~$9$k%l%3!<%IHV9f$,JQ2=$9$k$3$H$K$J$k!#(B
$B?^(B 11 : $B%l%3!<%IHV9f!?8=:_%l%3!<%I(B
$B%j%s%/%U%!%$%k$N9=@.(B
$B%j%s%/%U%!%$%k$O!"(B
$B0[$J$k%U%!%$%k%7%9%F%`Fb$KB8:_$9$k%U%!%$%k$r4V@\E*$K;2>H$9$k$?$a$K@8@.$5$l;HMQ$5$l$k%U%!%$%k$G$"$j!"(B
$B%"%W%j%1!<%7%g%s%G!<%?$OB8:_$;$:!"0J2<$K<($94IM}MQ%G!<%?$N$_$,J]B8$5$l$F$$$k!#(B
- $B;2>H$9$k%U%!%$%k$N%U%!%$%k(BID
- $B;2>H$9$k%U%!%$%k$N%"%W%j%1!<%7%g%s%?%$%W(B
- $B;2>H$9$k%U%!%$%k$N%U%!%$%kL>(B
- $B;2>H$9$k%U%!%$%k$N@[email protected]|;~(B
- $B;2>H$9$k%U%!%$%k$,B8:_$7$?%U%!%$%k%7%9%F%`L>(B
- $B;2>H$9$k%U%!%$%k$,B8:_$7$?%U%!%$%k%7%9%F%`$N%G%P%$%9=j:_L>(B
$B%U%!%$%k$N%"%/%;%94IM}(B
$B%U%!%$%k$N%"%/%;%94IM}$O%U%!%$%k$r%"%/%;%9$G$-$k%f!<%6$rFCDj!"(B
$B$^$?$O@)8B$9$k$3$H$K$h$j!"(B
$B%U%!%$%k$N5!L)J]8n$dITN8$N2~JQ!?:o=|$+$iJ]8n$9$k$?$a$N5!9=$G$"$j!"(B
$B%U%!%$%k$r%"%/%;%9$9$k%W%m%;%9$,;}$D%f!<%6>pJs$H!"(B
$B3F%U%!%$%k$K@_Dj$5$l$?%"%/%;%94IM}>pJs$r>H$i$79g$o$;$k$3$H$K$h$j%U%!%$%k%"%/%;%9$N2DH]$r7hDj$9$k$3$H$K$J$k!#(B
$B%f!<%6>pJs(B
$B3F%f!<%6$K$O!"0J2<$K<($9%f!<%6>pJs$,@_Dj$5$l$k!#(B
- $B%f!<%6L>(B (12$BJ8;z(B) + $B1#$7%f!<%6L>(B (2$BJ8;z(B)
- $B=jB0%0%k!<%WL>(B1 (12$BJ8;z(B) + $B1#$7%0%k!<%WL>(B1 (2$BJ8;z(B)
- $B=jB0%0%k!<%WL>(B2 (12$BJ8;z(B) + $B1#$7%0%k!<%WL>(B2 (2$BJ8;z(B)
- $B=jB0%0%k!<%WL>(B3 (12$BJ8;z(B) + $B1#$7%0%k!<%WL>(B3 (2$BJ8;z(B)
- $B=jB0%0%k!<%WL>(B4 (12$BJ8;z(B) + $B1#$7%0%k!<%WL>(B4 (2$BJ8;z(B)
- $B%f!<%6%l%Y%k(B (0$B!A(B15$B!"(B0$B$,:G9b%l%Y%k(B)
- $B%M%C%H%o!<%/%f!<%6%l%Y%k(B (1$B!A(B15$B!"(B1$B$,:G9b%l%Y%k(B)
$B1#$7%f!<%6L>!"1#$7%0%k!<%WL>$O!"1Q?t;z(B 4 $BJ8;zDxEY$r0E9f2=$7$F!"(B
2 $BJ8;z$K%3!<%I2=$7$?$b$N$G$"$j!"%f!<%6L>!"%0%k!<%WL>$H9g$o$;$F!"(B
$B$=$l$>$l(B 14 $BJ8;z$NL>A0$H$7$F;HMQ$5$l$k!#(B
$B1#$7L>$OF10lL>$N>WFM$rHr$1$k$H$H$b$K!"0E>Z%3!<%I$H$7$F$NLr3d$r;}$C$F$$$k!#(B
$B1#$7L>$N0E9f2=%"%k%4%j%:%`$O%$%s%W%j%a%s%H$K0MB8$7$?Hs8x3+$N$b$N$G$"$j!"(B
$B$^$?8D!9$N5!4oKh$K0[$J$k0E9f2=$,$5$l$kI,MW$,$"$k!#(B
$B$3$l$i$N%f!<%6>pJs$O%7%9%F%`F0:n3+;O;~$K;HMQpJs$H$J$k!#(B
$B$3$N%f!<%6>pJs$O;R%W%m%;%9$K7Q>5$5$l!"(B
$B$=$N%W%m%;%9$,%U%!%$%k$r%"%/%;%9$9$k:]$N%f!<%6>pJs$H$7$F;HMQ$5$l$k!#(B
$B%U%!%$%k$N%"%/%;%94IM}>pJs(B
$B3F%U%!%$%k$K$O0J2<$N%"%/%;%94IM}>pJs$,@_Dj$5$l$k!#(B
- $B%U%!%$%k$N=jM-(B(12$BJ8;z(B) + $B1#$7L>(B (2$BJ8;z(B)
- $B%U%!%$%k$N=jM-%0%k!<%WL>(B (12$BJ8;z(B) + $B1#$7L>(B (2$BJ8;z(B)
- $B%U%!%$%k$N%"%/%;%9%b!<%I(B
- $B=jM-
$B%U%!%$%k$N=jM-RWE $B$=$l$>$l$N2DH](B
- $B%0%k!<%W%"%/%;%9%l%Y%k(B :
$B%U%!%$%k$N=jM-%0%k!<%W$K=jB0$9$k3F%f!<%6$KBP$7$F!"(B
RWE
$B$=$l$>$l$,5v2D$5$l$F$$$k:GDc%f!<%6%l%Y%k(B
(0$B!A(B15) $B$N;XDj(B
- $B0lHL%"%/%;%9%l%Y%k(B :
$B0lHL$N%f!<%6$KBP$7$F(B RWE
$B$=$l$>$l$,5v2D$5$l$F$$$k:GDc%f!<%6%l%Y%k(B ( 0$B!A(B15 ) $B$N;XDj(B
- $B%U%!%$%k$N%"%/%;%9B0@-(B
- $B=q9~IT2DB0@-(B
- $B:o=|IT2DB0@-(B
$B%"%/%;%9%b!<%I$N!"(BRWE
$B$O0J2<$N0UL#$r;}$D!#(B
R -- $B%U%!%$%k$NFI=P$7$N2DH](B
W -- $B%U%!%$%k$X$N=q9~$_(B / $BJQ99$N2DH](B
E -- $B%U%!%$%k$N
$B%U%!%$%k$N=jM-$O!"$=$N%U%!%$%k$r@8@.$7$?%f!<%6L>$,<+F0E*$K@_Dj$5$l!"(B
$B@8@.$7$?8e$O0l@ZJQ99$9$k$3$H$O$G$-$J$$!#$^$?!"%0%k!<%WL>!"%"%/%;%9%b!<%I$O!"(B
$B%U%!%$%k$N@8@.;~$K;XDj$9$k$3$H$,$G$-$k!#%0%k!<%WL>$O!"(B
$B$=$N%f!<%6$,=jB0$9$k:GBg(B 4 $B$D$N%0%k!<%W$N$J$+$N(B 1 $B$D$r;XDj$9$k$3$H$K$J$k!#(B
$BB($A!"%U%!%$%k$N@8@.;~$K$O!"0J2<$N$b$N$r;XDj$9$k$3$H$,$G$-$k!#(B
- $B=jM-RWE $B$=$l$>$l$N2DH](B
- $B%0%k!<%W$N(B
RWE
$B$=$l$>$l$N5v2D:GDc%l%Y%k(B (0$B!A(B15)
- $B0lHL$N(B
RWE
$B$=$l$>$l$N5v2D:GDc%l%Y%k(B (0$B!A(B15)
- $B<+J,$N=jB0%0%k!<%W$NFb$G$I$l$r%U%!%$%k$N=jM-%0%k!<%W$H$9$k$+$N;XDj(B
( 0$B$O%0%k!<%W$J$7!"(B1$B!A(B4$B$O<+J,$N=jB0%0%k!<%W$N$I$l$r@_Dj$9$k$+$r<($9(B)
$B%f!<%6Kh$K%G%U%)!<%k%H%"%/%;%9%b!<%I$,Dj5A$5$l$F$*$j!"(B
$B%U%!%$%k$N@8@.;~$K%G%U%)!<%k%H$H$7$FE,MQ$5$;$k$3$H$,$G$-$k!#(B
$B$3$N%G%U%)!<%k%H%"%/%;%9%b!<%I$O%f!<%6!<8GM-$N>pJs$H$7$F3JG<$5$l$F$$$kFbMF$,;HMQ$5$l$k$,!"(B
$B
$B$^$?!"%U%!%$%k$N=jM-!"(B
$B%0%k!<%WL>$N:G=i$N(B 1 $B%P%$%H$,(B 0 $B$N>l9g$O!"(B
$B=jM-l9g$O=jM-
$B%U%!%$%k$K@_Dj$5$l$?%"%/%;%94IM}>pJs$O!"(B
$B$=$N=jM-$O0l@ZJQ99$G$-$J$$(B) $B!#(B
$B=jM-l9g$O!"(B
$BNc30E*$K%l%Y%k(B 0 $B$N%f!<%6!<$G$"$l$P%"%/%;%94IM}>pJs$rJQ99$9$k$3$H$,$G$-$k!#(B
$B=q9~IT2DB0@-$O!"%U%!%$%k$NFbMF$NJQ99$r6X;_$9$kB0@-$G$"$j!"(B
$B$3$NB0@-$,(B ON $B$N>uBV$G$O$9$Y$F$NJQ99A`:n$O=jM-
$B:o=|IT2DB0@-$O!"%U%!%$%k$N:o=|$r6X;_$9$kB0@-$G$"$j!"(B
$B$3$NB0@-$,(B ON $B$N>uBV$G$O!"(B
$B%U%!%$%k$N:o=|$O=jM-
$B:o=|IT2DB0@-$,@_Dj$5$l$F$$$J$$%U%!%$%k$N:o=|$O!"(B
$BFC$K%"%/%;%98"$rI,MW$H$7$J$$$,!"(B
$B%U%!%$%k$O$I$3$+$i$b;2>H$5$l$F$$$J$$>l9g$K$N$_:o=|2DG=$G$"$k$?$a!"(B
$B
$B$J$*!"%U%!%$%k%7%9%F%`$N@\B3A`:n$K$*$$$F$O!"(B
$B=q9~IT2D$N@\B3;XDj$,2DG=$G$"$j!"(B
$B$3$N>l9g$O$=$N%U%!%$%k%7%9%F%`$KBP$9$k$$$+$J$kJQ99A`:n$b6X;_$5$l$k!#(B
$BF1MM$KJ*M}E*$K!V=q$-9~$_IT2D!W$H$J$C$F$$$k%U%m%C%T!<%G%#%9%/Ey$N>l9g$b!"(B
$B$$$+$J$kJQ99A`:n$b6X;_$5$l$k!#(B
$B%U%!%$%k$N%"%/%;%9%A%'%C%/(B
$B%U%!%$%k$N%"%/%;%9%A%'%C%/$O!"$=$N%f!<%6$,=jM-$N>l9g$O0lHL%"%/%;%9%l%Y%k$,E,MQ$5$l$k!#(B
$B%U%!%$%k$N=jM-!"%0%k!<%WL>$N1#$7L>$,(B0$B$N>l9g$O!"(B
$B1#$7L>$N%^%C%A%s%0$O9T$J$o$J$$$b$N$H$9$k!#(B
$BB($A!"%W%m%;%9$N%f!<%6>pJs$K$"$k=jM-!"(B
$B%0%k!<%WL>$N$=$l$>$l(B 12 $BJ8;z$N$_$N%^%C%A%s%0$K$h$jF10l@-$rH=CG$9$k$3$H$K$J$k!#(B
$B%l%Y%k(B 0 $B$N%f!<%6$O!"4pK\E*$K$9$Y$F$N%U%!%$%k$N(B RWE
$B$,2DG=(B ( $B=q9~IT2DB0@-$,IU$1$i$l$?>l9g$K$O(B W $B$O$G$-$J$$(B)
$B$H$J$k$,!"=jM-
$BNc!'(B
$B=jM-
$B>e5-$NNc$N>l9g!"!V%W%m%8%'%/%H(BA$B!W$K=jB0$9$k%l%Y%k(B 0 $B!A(B 10 $B$N%f!<%6$O!"(B
RWE $B2DG=$G$"$j!"(B
$B%l%Y%k(B 11 $B!A(B 13 $B$N%f!<%6$O!"(BRE $B2DG=$G!"(B
$B%l%Y%k(B 14, 15 $B$N%f!<%6$O0l@Z$N%"%/%;%9$O6X;_$5$l$k!#(B
$B$^$?!"!V%W%m%8%'%/%H(BA$B!W$KB0$5$J$$%f!<%6$KBP$7$F$O!"(B
$B%l%Y%k(B 0$B!"(B1 $B$O(B RWE $B2DG=$G$"$j!"%l%Y%k(B 2$B!"(B3 $B$O(B RE $B2DG=!"(B
$B%l%Y%k(B 4$B!"(B5 $B$O(B 3 $B$N$_2DG=!"(B
$B%l%Y%k(B 6 $B!A(B 15 $B$O0l@Z$N%"%/%;%9$,6X;_$5$l$k!#(B
$B%"%/%;%94IM}$N%l%Y%k(B
$B%U%m%C%T!<%G%#%9%/$O!"DL>o%G!<%?$N8r49G^BN$H$7$F;HMQ$5$l$k$3$H$,B?$/!"(B
$B%U%m%C%T!<%G%#%9%/>e$N%U%!%$%k$KBP$7$F$O%"%/%;%94IM}$O$J$$J}$,ET9g$,NI$$>l9g$,B?$$!#(B
$B$?$@$7!"8r49$NAjl9g$d!"(B
$B6&MQE*$K;HMQ$9$k>l9g$K$O%"%/%;%94IM}$,M-8z$J>l9g$b$"$k!#(B
$B$3$N$?$a$K!"(B
$B%U%!%$%k%7%9%F%`C10L$G0J2<$N(B 3
$Be$N$9$Y$F$N%U%!%$%k$KBP$7$FE,MQ$5$l!"(B
$B%U%!%$%k$r@8@.$9$k>l9g!"$*$h$S%U%!%$%k$N%"%/%;%94IM}>pJs$rJQ99$9$k>l9g$K!"(B
$B0J2<$K<($7$?%k!<%k$K=>$C$F%"%/%;%94IM}>pJs$N@_Dj$,9T$J$o$l$k!#(B
$B=>$C$F!"(B
$B%U%!%$%k$NDL>o$N%"%/%;%9%A%'%C%/$K4X$7$F$O%l%Y%k$N6hJL$J$/9T$J$o$l$k$,!"(B
$B=jM-
- a. $B%l%Y%k(B 0 -- $B%"%/%;%94IM}$O0l@Z9T$J$o$l$J$$(B
$B>o$K0J2<$NFbMF$N%"%/%;%94IM}>pJs$,@_Dj$5$l$k!#(B
$B=jM-!"1#$7L>(B : 0 ($B$J$7(B)
$B%0%k!<%WL>!"1#$7L>(B : 0 ($B$J$7(B)
$B=jM-
- b. $B%l%Y%k(B 1 -- $B%"%/%;%94IM}$OItJ,E*$K9T$J$o$l$k(B
$B=jM-(B/$B%0%k!<%WL>$N1#$7L>$O>o$K(B 0 $B$K@_Dj$5$l$k!#(B
- c. $B%l%Y%k(B 2 -- $B%"%/%;%94IM}$O40A4$K9T$J$o$l$k(B
$B40A4$J%"%/%;%94IM}>pJs$,@_Dj$5$l$k!#(B
$B0lHL$K%U%m%C%T!<%G%#%9%/Ey$Nl9g$O!"(B
$B0E9f2=$,5!4oKh$K0[$J$k$?$a;ve(B 1 $B$D$N5!4o$G$7$+;HMQ$G$-$J$/$J$k!#(B
$B$3$N%"%/%;%94IM}%l%Y%k$O%U%!%$%k%7%9%F%`$r@8@.$9$k;~E@$G!"(B
$B%U%!%$%k%7%9%F%`$N4IM}>pJs$H$7$F@_Dj$5$l$k!#(B
$B%W%m%;%9$N4D6-(B
$B%U%!%$%k$O%W%m%;%9$K$h$j%"%/%;%9$5$l$k$,!"(B
$B%*!<%W%s$7$?%U%!%$%k$KBP$7$F$O3F%W%m%;%9Kh$GDj5A$5$l$k%U%!%$%k%G%#%9%/%j%W%?(B
(fd
$B!d(B 0 ) $B$H$$$&@5$N@0?tCM$,3d$jEv$F$i$l!"(B
$B$=$N%U%!%$%k%G%#%9%/%j%W%?$r;HMQ$7$F
$B%W%m%;%9$N=*N;;~$K$O!"%*!<%W%s$7$?%U%!%$%k$O$9$Y$F<+F0E*$K%/%m!<%:$5$l$k!#(B
$B$^$?!"%*!<%W%s$7$?%U%!%$%k$KBP$7$F$O!"(B
$B8=:_BP>]$H$7$F$$$k%l%3!<%I$r<($98=:_%l%3!<%I$,Dj5A$5$l$k!#(B
$B%U%!%$%k%G%#%9%/%j%W%?!"8=:_%l%3!<%I0LCV$O!"(B
$B$=$N%W%m%;%98GM-$N$b$N$H$7$FDj5A$5$l!";R%W%m%;%9$K$OFC$K7Q>5$5$l$J$$!#(B
$B%W%m%;%9$N4D6-$H$7$F:n6H%U%!%$%k!"%f!<%64IM}>pJs$O;R%W%m%;%9$K7Q>5$5$l$k!#(B
$B$^$?!"%G%U%)!<%k%H%"%/%;%9%b!<%I$O%f!<%6Kh$KDj5A$5$l!"(B
$BJQ99$7$?>l9g$OF10l%f!<%6!<$N$9$Y$F$N%W%m%;%9$KBP$7$FB(;~$KM-8z$H$J$k!#(B
$B%U%!%$%k$N;2>H%+%&%s%H(B
$B%U%!%$%k$K$O!"(B
$B$=$N%U%!%$%k$r;2>H$7$F$$$kF10l%U%!%$%k%7%9%F%`Fb$N8GDj%j%s%/$N?t$r<($9;2>H%+%&%s%H$,B8:_$9$k!#(B
$B;2>H%+%&%s%H$O%U%!%$%k$r@8@.$7$?;~E@$G$O(B 0 $B$G$"$j!"(B
$B%U%!%$%k$KBP$9$k8GDj%j%s%/$r@8@.$7$?;~E@!"(B
$BB($A!"%j%s%/$r%U%!%$%kFb$K3JG<$7$?;~E@$G(B +1 $B$5$l$k!#(B
$B5U$K8GDj%j%s%/$,:o=|$5$l$?;~E@$G;2>H%+%&%s%H$O(B -1 $B$5$l$k!#(B
$B;2>H%+%&%s%H$O!"F10l%U%!%$%k%7%9%F%`Fb$G$N;2>H$r<($9$?$a!"(B
$B%j%s%/%U%!%$%k$r7PM3$7$?%U%!%$%k$N;2>H$O!"(B
$B;2>H%+%&%s%H$KH?1G$5$l$J$$$3$H$K$J$k!#(B
$B$J$*!"%j%s%/%U%!%$%k<+BN$K$b;2>H%+%&%s%H$OE,MQ$5$l$k!#(B
$B%U%!%$%k$N:o=|$O;2>H%+%&%s%H(B 0 $B$N%U%!%$%k$KBP$7$F$N$_2DG=$G$"$k!#(B
$B:o=|$7$?%U%!%$%k$K8GDj%j%s%/$,4^$^$l$F$$$?>l9g$O!"(B
$B$=$N8GDj%j%s%/$,;2>H$7$F$$$k%U%!%$%k$N;2>H%+%&%s%H$,(B -1 $B$5$l$k$,!"(B
$B$=$N7k2L(B 0 $B$H$J$C$?>l9g$G$b!"(B
$B$=$N%U%!%$%k$O:o=|$5$l$J$$!#(B
$B$J$*!"8GDj%j%s%/$,4^$^$l$F$$$k%U%!%$%k$N:o=|$O!"(B
$B:o=|;~$K6/@):o=|$N;XDj$r9T$J$C$?;~$N$_2DG=$H$J$k!#(B
$B%j%s%/%U%!%$%k$N:o=|$bF1MM$G$"$j!"(B
$B%j%s%/%U%!%$%k<+BN$N;2>H%+%&%s%H$,(B 0 $B$N>l9g$K:o=|2DG=$H$J$k!#(B
$B$J$*!"%j%s%/%U%!%$%k$N;2>H@h$N%U%!%$%k$O!"%j%s%/%U%!%$%k7PM3$G:o=|$9$k$3$H$O$G$-$J$$!#(B
$B%U%!%$%k%7%9%F%`$N%k!<%H%U%!%$%k$ONc30E*$K;2>H%+%&%s%H$,:G=i$+$i(B 1 $B$H$J$C$F$*$j!"(B
$B7h$7$F:o=|$9$k$3$H$,$G$-$J$$$h$&$K$J$C$F$$$k!#(B
$B;2>H%+%&%s%H(B 0 $B$N%U%!%$%k$O!"(B
$B$=$N%U%!%$%k$r;2>H$9$k8GDj%j%s%/$r;}$?$J$$$?$a!"(B
$BF0E*$J%j%s%/$,<:$o$l$F$7$^$&$H!"DL>o$NJ}K!$G$O%"%/%;%9$G$-$J$$$3$H$K$J$k$,!"(B
$B%U%!%$%k%7%9%F%`Fb$NA4$F$N%U%!%$%k$KBP$9$k%j%s%/$r
$B%U%!%$%k$N%"%/%;%9(B
$B%U%!%$%k$O!"FI9~$_(B(READ) / $B=q9~$_(B(WRITE) / $B99?7(B(UPDATE)
$B$N$$$:$l$+$r;XDj$7$F%*!<%W%s$9$k$,!"(B
$B%*!<%W%s;~$KB>$+$i$NF10l%U%!%$%k$NF1;~%*!<%W%s$r@)8B$9$k$?$a$N0J2<$N%b!<%I;XDj$,2DG=$G$"$k!#(B
$B%G%U%)!<%k%H$O6&M-%b!<%I$H$J$k$,!"DL>o$OGSB>=q9~%b!<%I$H$9$k$3$H$,0BA4$G$"$k!#(B
- $BGSB>%b!<%I(B :
- $BB>$+$i$N$$$+$J$kF1;~%*!<%W%s$r0l@Z6X;_$9$k%b!<%I!#(B
- $BGSB>=q9~%b!<%I(B :
- $BB>$+$i$N=q9~$_(B / $B99?7$NF1;~%*!<%W%s$r0l@Z6X;_$9$k%b!<%I!#(B
- $B6&M-%b!<%I(B :
- $BB>$+$i$N$$$+$J$kF1;~%*!<%W%s$b6X;_$7$J$$%b!<%I!#(B
$B0J2<$K4{$K%*!<%W%s$5$l$F$$$k%b!<%I$KBP$7$F?75,$KF1;~%*!<%W%s$G$-$k%b!<%I$NAH$_9g$o$;$r<($9!#(B
$B?75,$NF1;~%*!<%W%s$,IT2D$N>l9g$O%*!<%W%s;~$K%(%i!<$H$J$k!#(B
$B?^(B 12 : $B%U%!%$%k$N%*!<%W%s%b!<%I(B
$B$^$?!"(B
$B%*!<%W%s$7$?%U%!%$%k$N%l%3!<%IC10L$GB>$+$i$N%"%/%;%9$r6X;_$9$k$?$a$N%l%3!<%I%m%C%/5!G=$,MQ0U$5$l$F$$$k!#(B
$B%m%C%/$7$?%l%3!<%I$KBP$9$kB>$+$i$N%"%/%;%9$O0J2<$N$h$&$K$J$k!#(B
- $B%l%3!<%I$NFI9~$_!"=q9~$_!"CV49!"%5%$%:=L>.!"$*$h$S:o=|$O%(%i!<$H$J$k!#(B
- $B%5!<%A$NBP>]!"8=:_%l%3!<%I$H$9$k$3$H$O2DG=!#(B
$B4{$K%m%C%/$5$l$F$$$k%l%3!<%I$r%m%C%/$7$h$&$H$7$?>l9g$O%(%i!<$H$J$k$+!"(B
$B$^$?$O%m%C%/$,2r$+$l$k$^$GBT$?$5$l$k$3$H$K$J$k!#(B
$B%U%!%$%k%7%9%F%`$N4IM}>pJs(B
$B8D!9$N%U%!%$%k%7%9%F%`$KBP$7$F!"0J2<$NFbMF$N4IM}>pJs$rFI$_=P$9$3$H$,$G$-$k!#(B
typedef struct {
H fs_bsize; /* $BO@M}%V%m%C%/$N%P%$%H?t(B */
UH fs_nfile; /* $B:GBg%U%!%$%k?t(B */
H fs_lang; /* $B%U%!%$%k%7%9%F%`$G$N;HMQ8@8l(B */
H fs_level; /* $B%U%!%$%k%7%9%F%`$N%"%/%;%94IM}%l%Y%k(B */
W fs_nblk; /* $BA4BN$N%V%m%C%/?t(B */
W fs_nfree; /* $BL$;HMQ%V%m%C%/$NAm?t(B */
STIME fs_mtime; /* $B:G?7$N%7%9%F%`%V%m%C%/$N99?7F|;~(B */
STIME fs_ctime; /* $B%U%!%$%k%7%9%F%`$N@[email protected]|;~(B */
TC fs_name[L_FSNM]; /* $B%U%!%$%k%7%9%F%`L>(B */
TC fs_locat[L_DLNM]; /* $B%G%P%$%9=j:_L>(B */
} FS_STATE;
fs_bsize
$B$O(B 1 $BO@M}%V%m%C%/$N%P%$%H?t$G$"$j!"(B
2 $B$N$Y$->h$NCM$H$9$k!#(B
fs_nfile
$B$O$=$N%U%!%$%k%7%9%F%`$KEPO?2DG=$J:GBg$N%U%!%$%k?t$r<($9!#(B
$B$3$NCM$O!":GBg$N%U%!%$%k(BID + 1$B$KEy$7$$!#(B
fs_lang
$B$O%U%!%$%k%7%9%F%`$G$N;HMQ8@8l$r<($7!"(B
$B$3$N%U%!%$%k%7%9%F%`$G;HMQ$7$F$$$kJ8;z%3!<%IBN7O$rI=$o$7$F$$$k!#(B
fs_level
$B$O!"(B
$B%U%!%$%k%7%9%F%`$N%"%/%;%94IM}$N%l%Y%k$rI=$o$9$b$N$G!"0J2<$NCM$r$H$k!#(B
- 0:
- $B%l%Y%k(B0 -- $B%"%/%;%94IM}$J$7(B
- 1:
- $B%l%Y%k(B1 -- $B%"%/%;%94IM}$"$j(B($B1#$7L>$J$7(B)
- 2:
- $B%l%Y%k(B2 -- $B%"%/%;%94IM}$"$j(B($B1#$7L>$"$j(B)
fs_nblk
$B$O%U%!%$%k%7%9%F%`A4BN$NO@M}%V%m%C%/$NAm?t$G$"$j!"(B
$B$3$NCM$OO@M}%V%m%C%/HV9f$N:GBgCM(B + 1 $B$KEy$7$$!#(B
fs_nfree
$B$O!"(B
$B8=;~E@$NL$;HMQO@M}%V%m%C%/$NAm?t$G$"$j!"(B
$B$3$N%G!<%?$OF0E*$KJQF0$9$k!#(B
fs_mtime, fs_ctime
$B$O$=$l$>$l%U%!%$%k%7%9%F%`$N:G?799?7F|;~$H@8@.$5$l$?F|;~$G!"(B
$B4p=`F|(B(1985$BG/(B1$B7n(B1$BF|(B00:00:00 GMT) $B$+$i$NIC?t$GI=$o$9!#(B
fs_name, fs_locat
$B$O!"(B
$B$=$l$>$l%U%!%$%k%7%9%F%`$N@8@.;~$K@_Dj$5$l$kL>>N$G$"$j(B
20 $BJ8;z$KK~$?$J$$>l9g$O(B 0 $B$,5M$a$i$l$F$$$k!#(B
$B%U%!%$%k%7%9%F%`$N4IM}>pJs$O%U%!%$%k%7%9%F%`$N@8@.;~(B
( $B%U%)!<%^%C%H;~(B ) $B$K@_Dj$5$l!"(B
$B0J8e$OL$;HMQ%V%m%C%/$NAm?t(B (fs_nfree
) $B$H!"(B
$B:G?7$N%7%9%F%`%V%m%C%/$N99?7F|;~(B ( fs_mtime
)$B!"(B
$B%U%!%$%k%7%9%F%`L>!"$*$h$S%G%P%$%9=j:_L>$r=|$$$FJQ99$5$l$k$3$H$O$J$$!#(B
$B%U%!%$%k$N4IM}>pJs(B
$B8D!9$N%U%!%$%k$KBP$7$F0J2<$NFbMF$N4IM}>pJs$rFI$_=P$9$3$H$,$G$-$k!#(B
$BC"$7!"%j%s%/%U%!%$%k$N>l9g$O%j%s%/%U%!%$%k$,;2>H$9$k%U%!%$%k$N4IM}>pJs$H$J$j!"(B
$B%j%s%/%U%!%$%k<+BN$N4IM}>pJs$OFI$_=P$9$3$H$O$G$-$J$$!#(B
- $B%U%!%$%kL>(B :
- 20$BJ8;z$N%U%!%$%kL>$G$"$jJQ992DG=$G$"$k!#(B
- $B;2>H%+%&%s%H(B :
- $B%U%!%$%k$r;2>H$7$F$$$kF10l%U%!%$%k%7%9%F%`Fb$N8GDj%j%s%/$N?t$G$"$k!#(B
- $B%U%!%$%k4IM}>pJs(B :
- $B0J2<$K<($93FpJs$G$"$k!#(B
typedef struct {
UH f_type; /* $B%U%!%$%k%?%$%W!?=jM-(B ($B1#$7L>$O>o$K(B0) */
TC f_group[L_USRNM]; /* $B=jM-%0%k!<%WL>(B ($B1#$7L>$O>o$K(B0) */
UH f_grpacc; /* $B%0%k!<%W%"%/%;%9%l%Y%k(B */
UH f_pubacc; /* $B0lHL%"%/%;%9%l%Y%k(B */
H f_nlink; /* $B4^$^$l$F$$$k%j%s%/?t(B */
H f_index; /* $B%$%s%G%C%/%9%l%Y%k(B */
W f_size; /* $B%U%!%$%k$NAm%P%$%H?t(B */
W f_nblk; /* $BAm;HMQO@M}%V%m%C%/?t(B */
W f_nrec; /* $BAm%l%3!<%I?t(B */
STIME f_ltime; /* $B%U%!%$%k$NJ]B84|8B(B($BF|;~(B) */
STIME f_atime; /* $B:G?7$N%"%/%;%9F|;~(B */
STIME f_mtime; /* $B:G?7$N99?7F|;~(B */
STIME f_ctime; /* $B%U%!%$%k$N:[email protected]|;~(B */
} F_STATE;
f_type
$B$O%U%!%$%k$N%?%$%W!"%"%/%;%9B0@-!"(B
$B=jM-
TTTT xxxx BAPO xRWE
- T : $B%U%!%$%k%?%$%W(B
- 0 : $B%j%s%/%U%!%$%k(B
1 : $BDL>o%U%!%$%k(B
2$B!A(B : $BM=Ls(B
- P : $B:o=|IT2DB0@-(B
- 1$B$N>l9g!"$3$N%U%!%$%k$,:o=|6X;_$G$"$k$3$H$r<($9!#(B
- 0 : $B=q9~IT2DB0@-(B
- 1$B$N>l9g!"$3$N%U%!%$%k$,=q9~$_6X;_$G$"$k$3$H$r<($9!#(B
- A : $B%"%W%j%1!<%7%g%sB0@-(B1
- B : $B%"%W%j%1!<%7%g%sB0@-(B2
- $B%"%W%j%1!<%7%g%s$G5,Dj$7$F;HMQ$9$kB0@-$G$"$j!"(B
$B%U%!%$%k4IM}$G$O!"$=$N0UL#$O4XCN$7$J$$!#(B
- RWE :
- $B%U%!%$%k=jM-$l!"(B1$B$N;~2D(B)
- x :
- $BM=Ls(B (0$B$H$9$k(B)
$B%"%W%j%1!<%7%g%s%?%$%W(B ( f_atype
)
$B$O%"%W%j%1!<%7%g%s$,@_Dj(B / $B;HMQ$9$k%G!<%?$G$"$j!"(B
$B%U%!%$%k4IM}$G$O;HMQ$7$J$$!#(B
}
$B=jM-(B (f_owner
)$B!"(B
$B=jM-%0%k!<%WL>(B (f_group
)
$B$O$=$l$>$l(B 12 $BJ8;z$G$"$j!"(B
12 $BJ8;z0J2<$N>l9g$O(B 0 $B$GKd$a$i$l$k!#(B
$BB3$/(B2 $BJ8;z$N1#$7L>$O>o$K(B 0 $B$H$7$FF@$i$l$k!#(B
$B%0%k!<%W%"%/%;%9%l%Y%k(B(f_grpacc)$B!"0lHL%"%/%;%9%l%Y%k(B(f_pubacc)
$B$O0J2<$N9=@.$H$J$k!#(B
xxxx RRRR WWWW EEEE
RRRR
:
- $BFI9~$_2DG=$J:GDc$N%f!<%6%l%Y%k(B (0$B!A(B15)
WWWW
:
- $B=q9~$_2DG=$J:GDc$N%f!<%6%l%Y%k(B (0$B!A(B15)
EEEE
:
- $B
xxxx
:
- $BL$;HMQ(B (0)
$B4^$s$G$$$k%j%s%/?t$O(B ( f_nlink
)
$B$O$=$N%U%!%$%k$,4^$s$G$$$k%j%s%/%l%3!<%I$N?t$r<($9!#(B
$B%$%s%G%C%/%9%l%Y%k$O(B 0 $B!A(B $B$N%l%3!<%I%$%s%G%C%/%9$N4V@\$NB?=EEY$r<($9!#(B
$B%U%!%$%k$NAm%P%$%H?t(B ( f_size
)
$B$O%U%!%$%kFb$Kl9g!"(B
$B%j%s%/%l%3!<%I$N%l%3!<%I%5%$%:$O(B 0 $B$H$7$F%+%&%s%H$5$l$k!#(B
$BAm;HMQO@M}%V%m%C%/?t$O!"(B
$B$=$N%U%!%$%k$G;HMQ$7$F$$$kO@M}%V%m%C%/$NAm?t$r<($9!#(B
$BAm%l%3!<%I?t$O!"$=$N%U%!%$%kFb$KB8:_$9$k%l%3!<%I$NAm?t$r<($9!#(B
$BF|;~$K4X$7$F$O!"(B1985$BG/(B1$B7n(B1$BF|(B0$B!'(B00 GMT$B$+$i$NIC?t$,@_Dj$5$l$k!#(B
$B$3$NCM$,(B -1 $B$N>l9g$K$O$=$N%G!<%?$OL58z$G$"$k$3$H$r<($9!#(B
- $B:G?7$N%"%/%;%9F|;~(B (
f_atime
)
- $B%U%!%$%k$N%G!<%?$r:G8e$K%j!<%I$7$?!"(B
$B$^$?$O%$%s%G%C%/%9It$r:G8e$K99?7$7$?F|;~!#(B
$B%U%!%$%k$N@8@.;~$K$O(B -1 ($B%5%]!<%H$5$l$F$$$J$$>l9g(B)$B!"(B
$B$"$k$$$O%U%!%$%k$N@[email protected]|;~$,@_Dj$5$l$k!#(B
- $B:G?7$N99?7F|;~(B (
f_mtime
)
- $B%U%!%$%k$N%G!<%?$r:G8e$K99?7$7$?F|;~!#(B
$B%U%!%$%k$N@8@.;~$K$O@[email protected]|;~$,@_Dj$5$l$k!#(B
- $B%U%!%$%k$N:[email protected]|;~(B (
f_ctime
)
- $B%U%!%$%k$r:G=i$K@8@.$7$?F|;~!#(B
- $BJ]B84|8B(B (
f_ltime
)
- $B%U%!%$%k$NJ]B84|8B!#%U%!%$%k$N@8@.;~$K$O(B -1 $B$,@_Dj$5$l$k!#(B
$B$3$N%G!<%?$O%"%W%j%1!<%7%g%s$G@_Dj(B / $B;HMQ$9$k$b$N$G!"(B
$B%U%!%$%k4IM}$G$O;HMQ$7$J$$!#(B
- $B%U%!%$%k$N=j:_>pJs(B :
- $B3F%U%!%$%k$,B0$9$k%U%!%$%k%7%9%F%`$N>pJs$G$"$j!"(B
$B$3$NFbMF$O%U%!%$%k%7%9%F%`$N4IM}>pJs$N0lIt$G$"$k!#(B
typedef struct {
STIME fs_ctime; /* $B%U%!%$%k%7%9%F%`$N@[email protected]|;~(B */
TC fs_name[L_FSNM]; /* $B%U%!%$%k%7%9%F%`L>(B */
TC fs_locat[L_DLNM]; /* $B%G%P%$%9=j:_L>(B */
TC fs_dev[L_DEVNM]; /* $BO@M}%G%P%$%9L>(B */
} F_LOCATE;
- $BO@M}%G%P%$%9L>$O!"(B
$B$=$N;~E@$G%U%!%$%k%7%9%F%`$,B8:_$7$F$$$k%V%m%C%/7?%G%P%$%9$NL>>N$G$"$k!#(B
- $B%j%s%/%U%!%$%k>pJs(B :
- $B%j%s%/%U%!%$%k$KBP$7$F$O%j%s%/%U%!%$%k<+BN$KJ];}$5$l$F$$$k0J2<$N;2>H@h$N%U%!%$%k$N>pJs$,F@$i$l$k!#(B
$B$3$N>pJs$O;2>H@h$N%U%!%$%k%7%9%F%`$,@\B3$5$l$F$$$J$$>l9g$G$b
typedef struct {
STIME f_ctime; /* $B%j%s%/%U%!%$%k<+BN$N@[email protected]|;~(B */
UH f_atype; /* $B;2>H%U%!%$%k$N%"%W%j%?%$%W(B */
TC f_name[L_FNM]; /* $B;2>H%U%!%$%kL>(B */
UH f_id; /* $B;2>H%U%!%$%k(BID */
STIME rf_ctime; /* $B;2>H%U%!%$%k$N@[email protected]|;~(B */
TC fs_name[L_FSNM]; /* $B%U%!%$%k%7%9%F%`L>(B */
TC fs_locat[L_DLNM]; /* $B%U%!%$%k%7%9%F%`$N%G%P%$%9=j:_L>(B */
} F_LINK;
$B%j%s%/$N9=B$(B
$B%U%!%$%k$r%"%/%;%9$9$k$?$a$K;HMQ$5$l$k!"%j%s%/$O0J2<$N%G!<%?9=B$$H$J$k!#(B
typedef struct {
TC fs_name[L_FSNM]; /* $B%U%!%$%k%7%9%F%`L>(B */
UH f_id; /* $B%U%!%$%k(B ID */
UH atr1; /* $BB0@-%G!<%?(B1 */
UH atr2; /* $BB0@-%G!<%?(B2 */
UH atr3; /* $BB0@-%G!<%?(B3 */
UH atr4; /* $BB0@-%G!<%?(B4 */
UH atr5; /* $BB0@-%G!<%?(B5 */
} LINK;
- $B%U%!%$%k%7%9%F%`L>$O@\B3$5$l$?%U%!%$%k%7%9%F%`L>$=$N$b$N$G$"$j!"(B
$B%U%!%$%k%7%9%F%`$r@dBPE*$K<1JL$9$k$?$a$K;HMQ$5$l$k!#(B
$B8GDj%j%s%/$H$7$?>l9g$O!"$3$N>pJs$O%U%!%$%k$K3JG<$5$l$J$$!#(B
- $B%U%!%$%k(BID$B$O%U%!%$%k%7%9%F%`L>$K$h$j(B
$BFCDj$5$l$?%U%!%$%k%7%9%F%`Fb$N%U%!%$%k(BID$B$G$"$k!#(B
- $BB0@-%G!<%?(B 1$B!A(B5 $B$O%j%s%/<+BN$H$7$FJ];}$5$l$kB0@-%G!<%?$G$"$j!"(B
$B%U%!%$%k4IM}$H$7$F$O$=$NFbMF$K4pK\E*$K4XCN$;$:!"(B
$B>e0L%l%Y%k$G$=$NMQES$,7h$a$i$l$F$$$k$b(B
$B$N$G$"$k!#?75,$K%j%s%/$r@8@.$7$?>l9g$N%G%U%)!<%k%HCM$O$9$Y$F(B0$B$H$5$l$k!#(B
$B$3$N%G!<%?$O!"8GDj%j%s%/$H$7$?>l9g$K!"%U%!%$%k$K3JG<$5$l!"(B
$B8GDj%j%s%/$rFI$_=P$7$?>l9g$K!"(B
$B%U%!%$%k$K3JG<$5$l$F$$$kFbMF$,
$B%U%!%$%k4IM}$G$O%U%!%$%k%7%9%F%`L>$H%U%!%$%k(BID$B$N$_$r;HMQ$7$F
$BDL>o!"%j%s%/$O%U%!%$%k4IM}5!G=$+$iF@$i$l$?$b$N$r;HMQ$9$k$,!"(B
$B%"%W%j%1!<%7%g%s$,%U%!%$%k%7%9%F%`L>$H%U%!%$%k(BID$B$rD>@\@_Dj$7$F%j%s%/$r:n@.$9$k$3$H$b2DG=$G$"$k!#(B
$BNc$($P%U%!%$%k%7%9%F%`$N%k!<%H%U%!%$%k$X$N%j%s%/$O!"%U%!%$%k(B ID = 0 $B$G$"$k$?$a!"(B
$B%U%!%$%k%7%9%F%`L>$,H=$C$F$$$l$P%"%W%j%1!<%7%g%s$GD>@\%j%s%/$r:n@.$9$k$3$H$,2DG=$H$J$k!#(B
$B""(B $B3FA0$ND9$5(B($BJ8;z?t(B)
#define L_FSNM 20 /* $B%U%!%$%k%7%9%F%`L>(B */
#define L_DLNM 20 /* $B%G%P%$%9=j:_L>(B */
#define L_DEVNM 8 /* $BO@M}%G%P%$%9L>(B */
#define L_CONNM 8 /* $B@\B3L>(B */
#define L_USRNM (12+2) /* $B%f!<%6(B($B%0%k!<%W(B)$BL>(B + $B1#$7L>(B */
#define L_FNM 20 /* $B%U%!%$%kL>(B */
#define L_PATHNM 256 /* $B%Q%9L>(B */
$B""(B $B3F
#define N_GRP 4 /* $B=jB0%0%k!<%W?t(B */
$B""(B $B%Q%9L>$NFC
#define TC_FDLM 0xff21 /* '$B!?(B' $B%Q%9L>$N6h@Z$j(B */
#define TC_FSEP 0xff22 /* '$B!'(B' $B=P8==g$N6h@Z$j(B */
#define TC_FOWN 0xff23 /* '$B"a(B' $B<+J,<+?H(B($B:n6H%U%!%$%k(B) */
$B""(B get_lnk()
#define F_NORM 0x0000 /* $BDL>o;XDj(B */
#define F_BASED 0x0001 /* $B%Y!<%9;XDj(B */
#define F_DIRECT 0x0002 /* $BD>@\
$B""(B opn_fil()
#define F_READ 0x0004 /* $BFI$_9~$_@lMQ%*!<%W%s(B */
#define F_WRITE 0x0002 /* $B=q$-9~$_@lMQ%*!<%W%s(B */
#define F_UPDATE 0x0006 /* $B99?7MQ(B($BFI9~!?=q9~(B)$B%*!<%W%s(B */
#define F_EXCL 0x0100 /* $BGSB>%b!<%I(B */
#define F_WEXCL 0x0200 /* $BGSB>=q$-9~$_%b!<%I(B */
$B""(B cre_fil()$B!?(Bcre_lnk()
#define F_FLOAT 0x0000 /* $B8GDj%j%s%/$H$7$J$$(B */
#define F_FIX 0x0001 /* $B8GDj%j%s%/$H$9$k(B */
#define F_FILEID 0x0002 /* $B%U%!%$%k(B ID $B;XDj(B */
$B""(B fnd_rec()$B!?(Bfnd_lnk()
#define F_FWD 0x0000 /* $BA08~$-%5!<%A(B */
#define F_NFWD 0x0001 /* $BA08~$-%5!<%A(B($B
#define F_SFILE 0x4000 /* $BF10l%U%!%$%k(B */
#define F_SNAME 0x2000 /* $BF10l%U%!%$%kL>(B */
#define F_SATR1 0x1000 /* $BF10lB0@-%G!<%?(B1 */
#define F_SATR2 0x0800 /* $BF10lB0@-%G!<%?(B2 */
#define F_SATR3 0x0400 /* $BF10lB0@-%G!<%?(B3 */
#define F_SATR4 0x0200 /* $BF10lB0@-%G!<%?(B4 */
#define F_SATR5 0x0100 /* $BF10lB0@-%G!<%?(B5 */
$B""(B loc_rec()
#define F_UNLOCK 0x0000 /* $B%"%s%m%C%/(B */
#define F_LOCK 0x0001 /* $B%m%C%/(B */
#define F_TSLOCK 0x0002 /* $B%F%9%H(B & $B%m%C%/(B */
#define F_CKLOCK 0x0003 /* $B%m%C%/>uBV$N%A%'%C%/(B */
$B""(B map_rec()
#define F_READ 0x0004 /* R $B%"%/%;%9(B */
#define F_WRITE 0x0002 /* W $B%"%/%;%9(B */
#define F_EXCUTE 0x0001 /* E $B%"%/%;%9(B */
#define F_COMMON 0x0100 /* $B6&M-%a%b%j!<6u4V$K%^%C%W(B */
#define F_SYSTEM 0x0300 /* $B%7%9%F%`%a%b%j!<6u4V$K%^%C%W(B */
$B""(B chk_fil()
#define F_READ 0x0004 /* R $B%"%/%;%9%A%'%C%/(B */
#define F_WRITE 0x0002 /* W $B%"%/%;%9%A%'%C%/(B */
#define F_EXCUTE 0x0001 /* E $B%"%/%;%9%A%'%C%/(B */
#define F_EXIST 0x0000 /* $B%U%!%$%k$NB8:_%A%'%C%/(B */
#define F_PASWD 0x0008 /* $B%Q%9%o!<%I$NM-L5(B */
$B""(B chg_fat()
#define F_SETRONLY 0x0001 /* $B=q9~IT2DB0@-$N%;%C%H(B */
#define F_RSTRONLY 0x0002 /* $B=q9~IT2DB0@-$N%j%;%C%H(B*/
#define F_SETPERM 0x0003 /* $B:o=|IT2DB0@-$N%;%C%H(B */
#define F_RSTPERM 0x0004 /* $B:o=|IT2DB0@-$N%j%;%C%H(B*/
#define F_SETA1 0x0005 /* $B%"%W%jB0@-(B1$B$N%;%C%H(B */
#define F_RSTA1 0x0006 /* $B%"%W%jB0@-(B1$B$N%j%;%C%H(B */
#define F_SETA2 0x0007 /* $B%"%W%jB0@-(B2$B$N%;%C%H(B */
#define F_RSTA2 0x0008 /* $B%"%W%jB0@-(B2$B$N%j%;%C%H(B */
$B""(B att_fls()
#define FS_SYNC 0x0000 /* $BF14|;XDj(B */
#define FS_ASYN 0x0002 /* $BHsF14|;XDj(B */
#define FS_RONLY 0x0001 /* $B=q$-9~$_6X;_(B */
$B""(B lst_fls()
#define F_GETDEV (-1) /* $BBP1~$9$k%G%P%$%9L>$rF@$k(B */
#define F_GETNAM (-2) /* $BBP1~$9$k@\B3L>$rF@$k(B */
$B""(B syn_lnk()
#define F_SYNC 0 /* $B0lCW$7$F$$$k(B */
#define F_DNAME 1 /* $B%U%!%$%kL>$,0[$J$C$F$$$?(B */
#define F_DDATE 2 /* $B@[email protected]|;~$,0[$J$C$F$$$?(B */
#define F_DBOTH 3 /* $B%U%!%$%kL>$H@[email protected]|;~$,0[$J$k(B */
$B""(B $B%j%s%/(B
typedef struct {
TC fs_name[L_FSNM]; /* $B%U%!%$%k%7%9%F%`L>(B */
UH f_id; /* $B%U%!%$%k(B ID */
UH atr1; /* $BB0@-%G!<%?(B1 */
UH atr2; /* $BB0@-%G!<%?(B2 */
UH atr3; /* $BB0@-%G!<%?(B3 */
UH atr4; /* $BB0@-%G!<%?(B4 */
UH atr5; /* $BB0@-%G!<%?(B5 */
} LINK;
$B""(B $B%U%!%$%k%"%/%;%9%b!<%I(B
typedef struct {
UH f_ownacc; /* $B=jM-
$B""(B $B%G%U%)%k%H%U%!%$%k%"%/%;%9%b!<%I(B
typedef struct {
UH f_ownacc; /* $B=jM-
$B""(B $B%U%!%$%kF|;~(B
typedef struct {
STIME f_ltime; /* $B%U%!%$%k$NJ]B84|8B(B($BF|;~(B) */
STIME f_atime; /* $B:G?7$N%"%/%;%9F|;~(B */
STIME f_mtime; /* $B:G?7$N99?7F|;~(B */
} F_TIME;
$B""(B $B%U%!%$%k4IM}>pJs(B
typedef struct {
UH f_type; /* $B%U%!%$%k%?%$%W!?=jM-(B ($B1#$7L>$O>o$K(B0) */
TC f_group[L_USRNM]; /* $B=jM-%0%k!<%WL>(B ($B1#$7L>$O>o$K(B0) */
UH f_grpacc; /* $B%0%k!<%W%"%/%;%9%l%Y%k(B */
UH f_pubacc; /* $B0lHL%"%/%;%9%l%Y%k(B */
H f_nlink; /* $B4^$^$l$F$$$k%j%s%/?t(B */
H f_index; /* $B%$%s%G%C%/%9%l%Y%k(B */
W f_size; /* $B%U%!%$%k$NAm%P%$%H?t(B */
W f_nblk; /* $BAm;HMQO@M}%V%m%C%/?t(B */
W f_nrec; /* $BAm%l%3!<%I?t(B */
STIME f_ltime; /* $B%U%!%$%k$NJ]B84|8B(B($BF|;~(B) */
STIME f_atime; /* $B:G?7$N%"%/%;%9F|;~(B */
STIME f_mtime; /* $B:G?7$N99?7F|;~(B */
STIME f_ctime; /* $B%U%!%$%k$N:[email protected]|;~(B */
} F_STATE;
$B""(B $B%U%!%$%k%?%$%W(B(f_type)
#define F_FILE 0x1000 /* $BDL>o%U%!%$%k(B */
#define F_APLATR1 0x0040 /* $B%"%W%j%1!<%7%g%sB0@-(B1 */
#define F_APLATR2 0x0080 /* $B%"%W%j%1!<%7%g%sB0@-(B2 */
#define F_RONLY 0x0010 /* $B=q9~IT2DB0@-(B */
#define F_PERM 0x0020 /* $B:o=|IT2DB0@-(B */
#define F_OWNACC 0x0007 /* $B=jM-
#define F_NOCHG 0x8000 /* $BJQ99$7$J$$(B */
$B""(B $B%U%!%$%k=j:_>pJs(B
typedef struct {
STIME fs_ctime; /* $B%U%!%$%k%7%9%F%`$N@[email protected]|;~(B */
TC fs_name[L_FSNM]; /* $B%U%!%$%k%7%9%F%`L>(B */
TC fs_locat[L_DLNM]; /* $B%G%P%$%9=j:_L>(B */
TC fs_dev[L_DEVNM]; /* $BO@M}%G%P%$%9L>(B */
} F_LOCATE;
$B""(B $B%j%s%/>pJs(B
typedef struct {
STIME f_ctime; /* $B%j%s%/%U%!%$%k<+BN$N@[email protected]|;~(B */
UH f_atype; /* $B;2>H%U%!%$%k$N%"%W%j%?%$%W(B */
TC f_name[L_FNM]; /* $B;2>H%U%!%$%kL>(B */
UH f_id; /* $B;2>H%U%!%$%k(BID */
STIME rf_ctime; /* $B;2>H%U%!%$%k$N@[email protected]|;~(B */
TC fs_name[L_FSNM]; /* $B%U%!%$%k%7%9%F%`L>(B */
TC fs_locat[L_DLNM]; /* $B%U%!%$%k%7%9%F%`$N%G%P%$%9=j:_L>(B */
} F_LINK;
$B""(B $B%U%!%$%k%7%9%F%`4IM}>pJs(B
typedef struct {
H fs_bsize; /* $BO@M}%V%m%C%/$N%P%$%H?t(B */
UH fs_nfile; /* $B:GBg%U%!%$%k?t(B */
H fs_lang; /* $B%U%!%$%k%7%9%F%`$G$N;HMQ8@8l(B */
H fs_level; /* $B%U%!%$%k%7%9%F%`$N%"%/%;%94IM}%l%Y%k(B */
W fs_nblk; /* $BA4BN$N%V%m%C%/?t(B */
W fs_nfree; /* $BL$;HMQ%V%m%C%/$NAm?t(B */
STIME fs_mtime; /* $B:G?7$N%7%9%F%`%V%m%C%/$N99?7F|;~(B */
STIME fs_ctime; /* $B%U%!%$%k%7%9%F%`$N@[email protected]|;~(B */
TC fs_name[L_FSNM]; /* $B%U%!%$%k%7%9%F%`L>(B */
TC fs_locat[L_DLNM]; /* $B%G%P%$%9=j:_L>(B */
} FS_STATE;
$B""(B $B;HMQ8@8l(B
#define F_JPN 0x0021 /* $BF|K\8l(B ($BF|K\8lJ8;zB2(B) */
#define F_ENG 0x0080 /* $B1Q8l(B ($B%i%F%sJ8;zB2(B1) */
$B""(B $B%U%!%$%k%7%9%F%`@\B3>pJs(B
typedef struct {
TC a_name[L_CONNM]; /* $B@\B3L>(B */
TC dev[L_DEVNM]; /* $BO@M}%G%P%$%9L>(B */
} F_ATTACH;
$B4X?t$N%Q%i%a!<%?$N@bL@$G$O!"0J2<$K<($95-=RJ}K!$r;HMQ$7$F$$$k!#(B
( x $B!B(B y $B!B(B z ) -- x, y, z $B$N$$$:$l$+(B1$B$D$r0UL#$9$k!#(B
| -- OR $B$G;XDj2DG=$J$3$H$r0UL#$9$k!#(B
[ ] -- $B>JN,2DG=$J$3$H$r0UL#$9$k!#(B
$BNc(B: mode := (F_NORM $B!B(B F_BASED) | [F_DIRECT] $B$N>l9g!"(B
mode $B$N;XDj$O!"0J2<$N(B 4 $B
get_lnk |
|
$B%U%!%$%k$N%j%s%/3MF@(B |
|
$B!Z7A<0![(B
WERR get_lnk(TC *path, LINK *lnk, W mode)
$B!Z%Q%i%a!<%?![(B
TC *path $BBP>]%Q%9L>(B
NULL $B:n6H%U%!%$%k$rBP>](B
LINK *lnk $B3MF@$7$?%j%s%/$N3JGo;XDj(B
F_BASED $B:n6H%U%!%$%k;XDj(B
F_DIRECT $BD>@\%j%s%/3MF@;XDj(B
$B!Z%j%?!<%sCM![(B
$B!a(B0 $B@5>o(B($BDL>o%U%!%$%k$N%j%s%/(B)
$B!a(B1 $B@5>o(B($B%j%s%/%U%!%$%k$N%j%s%/!'(BF_DIRECT $B;XDj$J$7(B)
$B!a(B2 $B@5>o(B($B%j%s%/%U%!%$%k$,;2>H$9$kDL>o%U%!%$%k$N%j%s%/!'(BF_DIRECT $B;XDj;~(B)
$B!c(B0 $B%(%i!<(B($B%(%i!<%3!<%I(B)
$B!Z2r@b![(B
$B%Q%9L>$G;XDj$7$?%U%!%$%k$N%j%s%/$r3MF@$9$k!#(B
$B%Q%9L>$N;XDj$,(B NULL
$B$N;~$O8=:_$N:n6H%U%!%$%k$N%j%s%/$r3MF@$9$k!#(B
$B%Q%9L>$,AjBP%Q%9L>$N$H$-!"(BF_NORM
$B;XDj$N$H$-$O8=:_$N:n6H%U%!%$%k$r%Y!<%9$H$9$k$,!"(B
F_BASED
$B;XDj$N$H$-$O(B lnk
$B$G;XDj$7$?%U%!%$%k$r:n6H%U%!%$%k$H$_$J$7$F%Y!<%9$H$9$k!#(B
$B;XDj$7$?%U%!%$%k$,%j%s%/%U%!%$%k$N$H$-!"(B
F_DIRECT
$B;XDj$J$7$N$H$-$O%j%s%/%U%!%$%k<+BN$X$N%j%s%/$r3MF@$9$k!#(B
$B$3$N$H$-!"F@$i$l$?%j%s%/%U%!%$%k$,;2>H$9$kDL>o%U%!%$%k$NB8:_$OJ]>Z$5$l$J$$!#(B
F_DIRECT
$B;XDj$N$H$-$O%j%s%/%U%!%$%k$,;2>H$9$kDL>o%U%!%$%k$X$ND>@\$N%j%s%/$r3MF@$9$k!#(B
$B%U%!%$%k$N%j%s%/$r$K4^$^$l$k3F%U%!%$%k$KBP$7$F$N]%U%!%$%k<+BN$N
$B!Z%(%i!<%3!<%I![(B
ER_ACCES : $B%Q%9L>(B(path)$BFb$N7PO)%U%!%$%k$N%"%/%;%98"(B(E)$B$,$J$$!#(B
ER_ADR : $B%"%I%l%9(B(path,lnk)$B$N%"%/%;%9$O5v$5$l$F$$$J$$!#(B
ER_FNAME : $B%Q%9L>(B(path)$B$,6u!"IT@5!"$^$?$OD9$9$.$k!#(B
ER_IO : $BF~=PNO%(%i!<$,H/@8$7$?!#(B
ER_NOFS : $B%Q%9L>(B(path)$BFb$N%U%!%$%k!"%j%s%/%U%!%$%k$N;2>H%U%!%$%k(B
(F_DIRECT$B;XDj;~(B)$B$NB0$9$k%U%!%$%k%7%9%F%`$O@\B3$5$l$F$$$J$$!#(B
ER_NOEXS : $B%Q%9L>(B(path)$BFb$N%U%!%$%k!"%j%s%/%U%!%$%k$N;2>H%U%!%$%k(B
(F_DIRECT$B;XDj;~(B)$B$OB8:_$7$F$$$J$$!"$^$?$O:n6H%U%!%$%k$,L$Dj5A!#(B
ER_NOSPC : $B%7%9%F%`$N%a%b%jNN0h$,ITB-$7$?!#(B
ER_PAR : $B%Q%i%a!<%?$,IT@5$G$"$k(B(mode $B$,IT@5(B)$B!#(B
chg_wrk |
|
$B:n6H%U%!%$%kJQ99(B |
|
$B!Z7A<0![(B
ERR chg_wrk(LINK *lnk)
$B!Z%Q%i%a!<%?![(B
LINK *lnk $BJQ99$9$k:n6H%U%!%$%k(B
NULL $B:n6H%U%!%$%k$rL$Dj5A$H$9$k(B
$B!Z%j%?!<%sCM![(B
$B!a(B0 $B@5>o(B
$B!c(B0 $B%(%i!<(B($B%(%i!<%3!<%I(B)
$B!Z2r@b![(B
$B;XDj$7$?%U%!%$%k$r<+%W%m%;%9$N:n6H%U%!%$%k$H$9$k!#(B
$B:n6H%U%!%$%k$H$9$k$?$a$K$O!"$=$N%U%!%$%k$KBP$7$F$N
$B!Z%(%i!<%3!<%I![(B
ER_ACCES : $B%U%!%$%k(B(lnk)$B$N%"%/%;%98"(B(E)$B$,$J$$!#(B
ER_ADR : $B%"%I%l%9(B(lnk)$B$N%"%/%;%9$O5v$5$l$F$$$J$$!#(B
ER_IO : $BF~=PNO%(%i!<$,H/@8$7$?!#(B
ER_NOEXS : $B%U%!%$%k(B(lnk)$B$OB8:_$7$F$$$J$$!#(B
ER_NOFS : $B%U%!%$%k(B(lnk)$B$NB0$9$k%U%!%$%k%7%9%F%`$O@\B3$5$l$F$$$J$$!#(B
ER_NOSPC : $B%7%9%F%`$N%a%b%jNN0h$,ITB-$7$?!#(B
$B!Z7A<0![(B
WERR cre_fil(LINK *lnk, TC *name, A_MODE *mode, UH atype, W opt)
$B!Z%Q%i%a!<%?![(B
LINK *lnk $B@8@.$7$?%U%!%$%k$N%j%s%/3JG(B(0$B$^$?$O:GBg%U%!%$%kL>J8;z?t$^$GM-8z(B)
A_MODE *mode $B%"%/%;%9%b!<%I(B
NULL $B%G%U%)!<%k%H%"%/%;%9%b!<%IE,MQ(B
UH atype $B%U%!%$%k%"%W%j%1!<%7%g%s%?%$%W(B
W opt $B@[email protected]@-(B
( FLOAT $B!B(B F_FIX $B!B(B F_FILEID )
F_FLOAT $BIbF0%j%s%/;XDj(B
F_FIX $B8GDj%j%s%/;XDj(B
F_FILEID $B%U%!%$%k(BID$B;XDj(B
$B!Z%j%?!<%sCM![(B
$B!d(B0 $B@5>o(B($B%U%!%$%k%G%#%9%/%W%j%?(B)
$B!c(B0 $B%(%i!<(B($B%(%i!<%3!<%I(B)
$B!Z2r@b![(B
lnk
$B$G;XDj$7$?%U%!%$%k(B
( $B%j%s%/%U%!%$%k$N$H$-$O%j%s%/%U%!%$%k$,;2>H$9$kDL>o%U%!%$%k(B )
$B$,B8:_$9$k%U%!%$%k%7%9%F%`>e$K?75,$KDL>o%U%!%$%k$r@8@.$7!"(B
$B99?7MQ$K%*!<%W%s$9$k!#(B
$B@8@.$7$?%U%!%$%k$N%j%s%/$NB0@-%G!<%?$O$9$Y$F(B 0 $B$K@_Dj$5$l!"(B
lnk
$B$G;XDj$7$?NN0h$K3JG<$5$l$k!#(B
F_FLOAT
$B;XDj$N$H$-$O!"C1=c$K%U%!%$%k$r@8@.$9$k!#(B
$B@8@.$7$?%U%!%$%k$N;2>H%+%&%s%H$O(B 0 $B$H$J$k!#(B
$B$3$N>l9g!"(Blnk
$B$G;XDj$7$?FbMF$N%U%!%$%k%7%9%F%`L>$N$_$,M-8z$G$"$j%U%!%$%k(BID$B$OL5;k$5$l$k$?$a(B
lnk
$B$G;XDj$7$?%U%!%$%k$OB8:_$7$F$$$J$/$F$b$h$$!#(B
F_FIX
$B;XDj$N$H$-$O!"@8@.$7$?%U%!%$%k$N%j%s%/$r(B
lnk
$B$G;XDj$7$?%U%!%$%k$N:G8e$N%l%3!<%I0LCV$K%j%s%/%l%3!<%I(B
($B%5%V%?%$%W(B = 0 ) $B$H$7$FDI2C$k!#(B
$B@8@.$7$?%U%!%$%k$N;2>H%+%&%s%H$O(B 1 $B$H$J$k!#(B
$B$3$N>l9g!"(Blnk $B$G;XDj$7$?%U%!%$%k$OB8:_$7!"(B
$B$+$D=q$-9~$_%*!<%W%s$G$-$J$/$F$O$$$1$J$$!#(B
F_FILEID
$B;XDj$N$H$-$O!"(Blnk
$B$G;XDj$7$?FbMF$N%U%!%$%k(BID$B$HF1$8%U%!%$%k(BID$B$N%U%!%$%k$r@8@.$9$k!#(B
$B@8@.$7$?%U%!%$%k$N;2>H%+%&%s%H$O(B 0 $B$H$J$k!#(B
$B$3$N>l9g!"(Blnk
$B$G;XDj$7$?%U%!%$%k$OB8:_$7$F$$$F$O$$$1$J$$!#(B
A_MODE
$B$O@8@.$7$?%U%!%$%k$N%"%/%;%9%b!<%I$r;XDj$9$k!#(B
$B%U%!%$%k$N=jM-
$B@8@.$7$?%U%!%$%k$N=jM-uBV$G$O%l%3!<%I$O(B 1 $B$D$bB8:_$7$J$$$?$a8=:_%l%3!<%I$O=*C<%l%3!<%I$G$"$j!"(B
$B$=$N%l%3!<%IHV9f$O(B0$B$H$J$k!#(B
$B!Z%(%i!<%3!<%I![(B
ER_ACCES : $B%U%!%$%k(B(lnk)$B$N%"%/%;%98"(B(W)$B$,$J$$(B(F_FIX$B;XDj;~(B)$B!#(B
ER_ADR : $B%"%I%l%9(B(lnk,name,mode)$B$N%"%/%;%9$O5v$5$l$F$$$J$$!#(B
ER_BUSY : $B%U%!%$%k(B(lnk)$B$O4{$KGSB>E*$K%*!<%W%s$5$l$F$$$k0Y!"(B
$BF1;~$K%U%!%$%k$r%*!<%W%s$9$k$3$H$,$G$-$J$+$C$?(B(F_FIX$B;XDj;~(B)$B!#(B
ER_EXS : $B%U%!%$%k(B(lnk)$B$O4{$KB8:_$7$F$$$k(B(F_FILEID$B;XDj;~(B)$B!#(B
ER_FNAME : $B%U%!%$%kL>(B(name)$B$O6u$^$?$OIT@5$G$"$k!#(B
ER_IO : $BF~=PNO%(%i!<$,H/@8$7$?!#(B
ER_LIMIT : $B:GBg%U%!%$%k?t$r1[$($?!"(B
$B$^$?$OF1;~%*!<%W%s2DG=$J:GBg%U%!%$%k?t$r1[$($?!#(B
ER_NODSK : $B%G%#%9%/$NNN0h$,ITB-$7$?!#(B
ER_NOEXS : $B%U%!%$%k(B(lnk)$B$OB8:_$7$F$$$J$$(B(F_FIX$B;XDj;~(B)$B!#(B
ER_NOFS : $B%U%!%$%k(B(lnk)$B$NB0$9$k%U%!%$%k%7%9%F%`$O@\B3$5$l$F$$$J$$!#(B
ER_NOSPC : $B%7%9%F%`$N%a%b%jNN0h$,ITB-$7$?!#(B
ER_PAR : $B%Q%i%a!<%?$,IT@5$G$"$k(B(f_grpno<0,>4 ,opt $B$,IT@5(B)$B!#(B
ER_RONLY : $B%U%!%$%k(B(lnk)$B$O=q9~IT2D$G$"$k!"(B
$B$^$?$OB0$9$k%U%!%$%k%7%9%F%`$O=q9~IT2D$G$"$k!#(B
ER_SZOVR : $B%U%!%$%k(B(lnk)$B$N%5%$%:$,%7%9%F%`$N@)8B$r1[$($?(B(F_FIX$B;XDj;~(B)$B!#(B
cre_lnk |
|
$B%j%s%/%U%!%$%k$N@8@.(B |
|
$B!Z7A<0![(B
ERR cre_lnk(LINK *lnk, F_LINK *ref, W opt)
$B!Z%Q%i%a!<%?![(B
LINK *lnk $B@8@.$7$?%U%!%$%k$N%j%s%/3JG
F_FLOAT
:
- $BIbF0%j%s%/;XDj(B
$B@8@.$7$?%j%s%/%U%!%$%k$N%j%s%/$rC1$K(B lnk
$B$KLa$9!#(B
$B$3$N>l9g!"(B
$B@8@.$7$?%j%s%/%U%!%$%k$N;2>H%+%&%s%H$O(B 0 $B$H$J$k!#(B
$B$3$N;XDj$r9T$J$C$?>l9g$O!"(Blnk
$B$N%U%!%$%k%7%9%F%`L>$N$_$,;HMQ$5$l!"(B
$B%U%!%$%k(BID$B$G<($5$l$k%U%!%$%k$O
F_FIX
:
- $B8GDj%j%s%/;XDj(B
$B@8@.$7$?%j%s%/%U%!%$%k$N%j%s%/$r!"(B
lnk
$B$G;XDj$7$?%U%!%$%k$NE,Ev$J0LCV$N%l%3!<%I$H$7$FDI2C$9$k!#(B
$BDI2C$5$l$k%l%3!<%I$N0LCV$OJ]>Z$5$l$J$$!#(B
$B$3$N>l9g!"(B
$B@8@.$7$?%j%s%/%U%!%$%k$N;2>H%+%&%s%H$O(B 1 $B$H$J$k!#(B
$BDI2C$5$l$k%j%s%/%l%3!<%I$N%5%V%?%$%W$O(B 0 $B$G$"$j!"(B
$BB0@-%G!<%?$O$9$Y$F(B 0 $B$H$J$k!#(B
$B$3$N;XDj$r9T$J$C$?>l9g$O!"(Blnk
$B$G;XDj$7$?%U%!%$%k$OB8:_$7!"(B
$B$+$D(B F_WRITE
$B%*!<%W%s$G$-$J$/$F$O$$$1$J$$!#(B
F_FILEID
:
- $B%U%!%$%k(BID$B;XDj(B
lnk
$B$G;XDj$7$?%U%!%$%k(BID$B$r;}$D%j%s%/%U%!%$%k$r@8@.$7!"(B
$B@8@.$7$?%j%s%/%U%!%$%k$N%j%s%/$rC1$K(B lnk
$B$KLa$9!#(B
$B$3$N>l9g!"@8@.$7$?%j%s%/%U%!%$%k$N;2>H%+%&%s%H$O(B 0 $B$H$J$k!#(B
$B$3$N;XDj$r9T$J$C$?>l9g$O!"(Blnk
$B$G;XDj$7$?%U%!%$%k(BID$B$r;}$D%U%!%$%k$,4{$KB8:_$7$F$$$?>l9g(B($B%j%s%/%U%!%$%k$b4^$`(B)$B$O!"(B
$B%(%i!<(B ( ER_EXS
) $B$H$J$k!#(B
$B!Z%j%?!<%sCM![(B
$B!a(B0 $B@5>o(B
$B!c(B0 $B%(%i!<(B($B%(%i!<%3!<%I(B)
$B!Z2r@b![(B
lnk
$B$G;XDj$7$?%U%!%$%k(B
( $B%j%s%/%U%!%$%k$N$H$-$O%j%s%/%U%!%$%k$,;2>H$9$kDL>o%U%!%$%k(B )
$B$,B8:_$9$k%U%!%$%k%7%9%F%`>e$K?75,$K(B ref
$B$G;XDj$7$?FbMF$N%j%s%/%U%!%$%k$r@8@.$9$k!#(B
$B@8@.$7$?%j%s%/%U%!%$%k$N%j%s%/$NB0@-%G!<%?$O$9$Y$F(B 0 $B$K@_Dj$5$l!"(B
lnk
$B$G;XDj$7$?NN0h$K3JG<$5$l$k!#(B
F_FLOAT, F_FIX, F_FILEID
$B$N0UL#$O(B cre_fil()
$B$HF10l$G$"$k!#(B
$B@8@.$7$?%j%s%/%U%!%$%k$NFbMF$O(B ref
$B$G;XDj$7$?FbMF$H$J$k$,!"(B
$B$=$N@[email protected]|;~$O!"(Bref->f_ctime
$B$G$O$J$/!"(B
$BK\%7%9%F%`%3!<%k$r
ref
$B$G;XDj$7$?%U%!%$%k$N
ref->fs_name
$B$,(B lnk
$B$G;XDj$7$?%U%!%$%k%7%9%F%`L>$HF10l$N$H$-$O%j%s%/%U%!%$%k$O@8@.$G$-$J$$$?$a%(%i!<$H$J$k!#(B
$B!Z%(%i!<%3!<%I![(B
ER_ACCES : $B%U%!%$%k(B(lnk)$B$N%"%/%;%98"(B(W)$B$,$J$$(B(F_FIX$B;XDj;~(B)$B!#(B
ER_ADR : $B%"%I%l%9(B(lnk,ref)$B$N%"%/%;%9$O5v$5$l$F$$$J$$!#(B
ER_BUSY : $B%U%!%$%k(B(lnk)$B$O4{$KGSB>E*$K%*!<%W%s$5$l$F$$$k0Y!"F1;~$K%U%!%$%k$r(B
$B%*!<%W%s$9$k$3$H$,$G$-$J$+$C$?(B(F_FIX$B;XDj;~(B)$B!#(B
ER_EXS : $B%U%!%$%k(B(lnk)$B$O4{$KB8:_$7$F$$$k(B(F_FILEID$B;XDj;~(B)$B!#(B
ER_FNAME : $B%U%!%$%kL>(B(ref->f_name)$B%U%!%$%k%7%9%F%`L>(B(ref->fs_name)
$B$O6u$^$?$OIT@5$G$"$k!#(B
ER_IO : $BF~=PNO%(%i!<$,H/@8$7$?!#(B
ER_LIMIT : $B:GBg%U%!%$%k?t$r1[$($?!#(B
ER_NODSK : $B%G%#%9%/$NNN0h$,ITB-$7$?!#(B
ER_NOEXS : $B%U%!%$%k(B(lnk)$B$OB8:_$7$F$$$J$$(B(F_FIX$B;XDj;~(B)$B!#(B
ER_NOFS : $B%U%!%$%k(B(lnk)$B$NB0$9$k%U%!%$%k%7%9%F%`$O@\B3$5$l$F$$$J$$!#(B
ER_NOSPC : $B%7%9%F%`$N%a%b%jNN0h$,ITB-$7$?!#(B
ER_PAR : $B%Q%i%a!<%?$,IT@5$G$"$k(B(opt $B$,IT@5!"F10l%U%!%$%k%7%9%F%`(B)$B!#(B
ER_RONLY : $B%U%!%$%k(B(lnk)$B$O=q9~IT2D$G$"$k!"(B
$B$^$?$OB0$9$k%U%!%$%k%7%9%F%`$O=q9~IT2D$G$"$k(B(F_FIX$B;XDj;~(B)$B!#(B
ER_SZOVR : $B%U%!%$%k(B(lnk)$B$N%5%$%:$,%7%9%F%`$N@)8B$r1[$($?(B(F_FIX$B;XDj;~(B)$B!#(B
gen_fil |
|
$B%U%!%$%k$ND>@\@8@.(B |
|
$B!Z7A<0![(B
WERR gen_fil(LINK *lnk, TC *name, F_STATE *stat, F_LINK *ref, W opt)
$B!Z%Q%i%a!<%?![(B
LINK *lnk $B@8@.$7$?%U%!%$%k$N%j%s%/3JG(B(0$B$^$?$O:GBg%U%!%$%kJ8;z?t$^$GM-8z(B)
($BDL>o%U%!%$%k@8@.;~$N$_M-8z$G!"$3$N$H$-(B name $B$,(B NULL $B$J$i$P%(%i!<$H$J$k(B)
($B%j%s%/%U%!%$%k$N@8@.$N>l9g$O0l@Z;2>H$5$l$J$$(B)
F_STATE *stat $B@8@.$9$k%U%!%$%k$NFbMF(B
F_LINK *ref $B@8@.$9$k%j%s%/%U%!%$%k$NFbMF(B
($B%j%s%/%U%!%$%k@8@.;~$N$_M-8z(B)
W opt $B@[email protected]@-(B
( F_FLOAT $B!B(B F_FIX $B!B(B F_FILEID )
F_FLOAT $BIbF0%j%s%/;XDj(B
F_FIX $B8GDj%j%s%/;XDj(B
F_FILEID $B%U%!%$%k(BID$B;XDj(B
$B!Z%j%?!<%sCM![(B
$B!d(B0 $B@5>o(B($B%U%!%$%k%G%#%9%/%W%j%?!'DL>o%U%!%$%k@8@.;~(B)
$B!a(B0 $B@5>o(B($B%j%s%/%U%!%$%k@8@.;~(B)
$B!c(B0 $B%(%i!<(B($B%(%i!<%3!<%I(B)
$B!Z2r@b![(B
lnk
$B$G;XDj$7$?%U%!%$%k(B
( $B%j%s%/%U%!%$%k$N$H$-$O%j%s%/%U%!%$%k$,;2>H$9$kDL>o%U%!%$%k(B )
$B$,B8:_$9$k%U%!%$%k%7%9%F%`>e$K?75,$KDL>o%U%!%$%k$^$?$O%j%s%/%U%!%$%k$r@8@.$7!"(B
$BDL>o%U%!%$%k$N$H$-$O99?7MQ$K%*!<%W%s$9$k!#(B
$B@8@.$7$?%j%s%/%U%!%$%k$N%j%s%/$NB0@-%G!<%?$O$9$Y$F(B 0 $B$K@_Dj$5$l!"(B
lnk
$B$G;XDj$7$?NN0h$K3JG<$5$l$k!#(B
F_FLOAT, F_FIX, F_FILEID
$B$N0UL#$O(B cre_fil()
$B$HF10l$G$"$k!#(B
$B@8@.$7$?%U%!%$%k$NFbMF$O(B stat
$B$G;XDj$7!"(B
stat->f_type
$B$K$h$jDL>o%U%!%$%k$+%j%s%/%U%!%$%k$+6hJL$5$l$k!#(B
$BDL>o%U%!%$%k@8@.$N$H$-$O!"(Bname
$B$G;XDj$7$?L>A0$NDL>o%U%!%$%k$r@8@.$7!"@8@.$7$?%U%!%$%k$N4IM}>pJs$r(B
stat
$B$G;XDj$7$?FbMF$K@_Dj$9$k!#(B
$B$?$@$7!"(Bf_nlink, f_index, f_size, f_nblk, f_nrec
$B$NCM$OL5;k$5$l%U%!%$%k$N@8@.;~$K=i4|2=$5$l$k!#(B
$B%j%s%/%U%!%$%k@8@.$N$H$-$O!"(Bstat
$B$NB>$NFbMF$O$9$Y$FL5;k$5$l!"(B
ref
$B$NFbMF$N%j%s%/%U%!%$%k$r@8@.$9$k!"(B
cre_lnk()
$B$HF1MM$NF0:n$G$"$k$,!"(B
ref->f_ctime
$B$bM-8z$H$J$k!#(B
$BK\%7%9%F%`%3!<%k$O%U%!%$%k%7%9%F%`$NI|85$J$I$NFC
$BDL>o%U%!%$%k$r@8@.$7$?$H$-$O%U%!%$%k$O99?7MQ$K%*!<%W%s$5$l$k!#(B
$B$3$N>uBV$G$O%l%3!<%I$O(B 1 $B$D$bB8:_$7$J$$$?$a8=:_%l%3!<%I$O=*C<%l%3!<%I$G$"$j!"(B
$B$=$N%l%3!<%IHV9f$O(B 0 $B$H$J$k!#(B
$B!Z%(%i!<%3!<%I![(B
ER_ACCES : $B%l%Y%k(B0$B$N%f!<%6$G$J$$!#(B
ER_ADR : $B%"%I%l%9(B(lnk,ref,name,stat)$B$N%"%/%;%9$O5v$5$l$F$$$J$$!#(B
ER_BUSY : $B%U%!%$%k(B(lnk)$B$O4{$KGSB>E*$K%*!<%W%s$5$l$F$$$k0Y!"F1;~$K%U%!%$%k$r(B
$B%*!<%W%s$9$k$3$H$,$G$-$J$+$C$?(B(F_FIX$B;XDj;~(B)$B!#(B
ER_EXS : $B%U%!%$%k(B(lnk)$B$O4{$KB8:_$7$F$$$k(B(F_FILEID$B;XDj;~(B)$B!#(B
ER_FNAME : $B%U%!%$%kL>(B(name)$B!"%U%!%$%kL>(B(ref->f_name)$B!"(B
$B%U%!%$%k%7%9%F%`L>(B(ref->fs_name)$B$O6u$^$?$OIT@5$G$"$k!#(B
ER_IO : $BF~=PNO%(%i!<$,H/@8$7$?!#(B
ER_LIMIT : $B:GBg%U%!%$%k?t$r1[$($?!"$^$?$OF1;~%*!<%W%s2DG=$J:GBg%U%!%$%k?t$r(B
$B1[$($?!#(B
R_NODSK : $B%G%#%9%/$NNN0h$,ITB-$7$?!#(B
ER_NOEXS : $B%U%!%$%k(B(lnk)$B$OB8:_$7$F$$$J$$!#(B
ER_NOFS : $B%U%!%$%k(B(lnk)$B$NB0$9$k%U%!%$%k%7%9%F%`$O@\B3$5$l$F$$$J$$!#(B
ER_NOSPC : $B%7%9%F%`$N%a%b%jNN0h$,ITB-$7$?!#(B
ER_PAR : $B%Q%i%a!<%?$,IT@5$G$"$k(B
(opt $B$,IT@5!"F10l%U%!%$%k%7%9%F%`!"(Bref, stat $B$NFbMF$,IT@5(B)$B!#(B
ER_RONLY : $B%U%!%$%k(B(lnk)$B$O=q9~IT2D$G$"$k!"(B
$B$^$?$OB0$9$k%U%!%$%k%7%9%F%`$O=q9~IT2D$G$"$k!#(B
ER_SZOVR : $B%U%!%$%k(B(lnk)$B$N%5%$%:$,%7%9%F%`$N@)8B$r1[$($?(B(F_FIX$B;XDj;~(B)$B!#(B
opn_fil |
|
$B%U%!%$%k$N%*!<%W%s(B |
|
$B!Z7A<0![(B
WERR opn_fil(LINK *lnk, W o_mode, TC *pwd)
$B!Z%Q%i%a!<%?![(B
LINK *lnk $BBP>]%U%!%$%k(B
W o_mode $B%*!<%W%s%b!<%I(B
( F_READ $B!B(B F_WRITE $B!B(B F_UPDATE ) | [ F_EXCL $B!B(B F_WEXCL ]
F_READ $BFI$_9~$_MQ%*!<%W%s(B
F_WRITE $B=q$-9~$_MQ%*!<%W%s(B
F_UPDATE $B99?7(B($BFI$_9~$_!?=q$-9~$_(B)$BMQ%*!<%W%s(B
F_EXCL $BGSB>%b!<%I(B
F_WEXCL $BGSB>=q$-9~$_%b!<%I(B
TC *pwd $B%Q%9%o!<%I(B
NULL $B%Q%9%o!<%I;XDj$J$7(B
$B!Z%j%?!<%sCM![(B
$B!d(B0 $B@5>o(B($B%U%!%$%k%G%#%9%/%j%W%?(B)
$B!c(B0 $B%(%i!<(B($B%(%i!<%3!<%I(B)
$B!Z2r@b![(B
lnk
$B$G;XDj$7$?%U%!%$%k$r;XDj$7$?%b!<%I$G%*!<%W%s$9$k!#(B
$B%U%!%$%k$r%*!<%W%s$9$k$?$a$K$O%*!<%W%s%b!<%I$KBP1~$9$k%"%/%;%98"$,I,MW$G$"$k!#(B
pwd
$B$O%U%!%$%k$K%Q%9%o!<%I$,@_Dj$5$l$F$$$k>l9g$KM-8z$G$"$j!"(B
$B%Q%9%o!<%I$,0lCW$7$J$$>l9g$O%(%i!<$H$J$k!#(B
$B%*!<%W%s$7$?%U%!%$%k$N@hF,%l%3!<%I$,8=:_%l%3!<%I$H$J$k!#(B
$B%l%3!<%I$,(B 1 $B$D$bB8:_$7$J$$$H$-$O=*C<%l%3!<%I$,8=:_%l%3!<%I$H$J$k!#(B
$B!Z%(%i!<%3!<%I![(B
ER_ACCES : $B%U%!%$%k(B(lnk)$B$N%"%/%;%98"(B(o_mode$B$KBP1~(B)$B$,$J$$!#(B
ER_ADR : $B%"%I%l%9(B(lnk,pwd)$B$N%"%/%;%9$O5v$5$l$F$$$J$$!#(B
ER_BUSY : $B%U%!%$%k(B(lnk)$B$O4{$KGSB>E*$K%*!<%W%s$5$l$F$$$k0Y!"F1;~$K%U%!%$%k$r(B
$B%*!<%W%s$9$k$3$H$,$G$-$J$+$C$?!#(B
ER_IO : $BF~=PNO%(%i!<$,H/@8$7$?!#(B
ER_LIMIT : $BF1;~%*!<%W%s2DG=$J:GBg%U%!%$%k?t$r1[$($?!#(B
ER_NOEXS : $B%U%!%$%k(B(lnk)$B$OB8:_$7$F$$$J$$!#(B
ER_NOFS : $B%U%!%$%k(B(lnk)$B$NB0$9$k%U%!%$%k%7%9%F%`$O@\B3$5$l$F$$$J$$!#(B
ER_NOSPC : $B%7%9%F%`$N%a%b%jNN0h$,ITB-$7$?!#(B
ER_PAR : $B%Q%i%a!<%?$,IT@5$G$"$k(B(o_mode$B$,IT@5(B)$B!#(B
ER_PWD : $B%U%!%$%k(B(lnk)$B$N9g8@MU$,IT0lCW$G$"$k!#(B
ER_RONLY : $B%U%!%$%k(B(lnk)$B$O=q9~IT2D$G$"$k!"(B
$B$^$?$OB0$9$k%U%!%$%k%7%9%F%`$O=q9~IT2D$G$"$k!#(B
cls_fil |
|
$B%U%!%$%k$N%/%m!<%:(B |
|
$B!Z7A<0![(B
ERR cls_fil(W fd)
$B!Z%Q%i%a!<%?![(B
W fd $B%U%!%$%k%G%#%9%/%j%W%?(B
$B!Z%j%?!<%sCM![(B
$B!a(B0 $B@5>o(B
$B!c(B0 $B%(%i!<(B($B%(%i!<%3!<%I(B)
$B!Z2r@b![(B
$B%*!<%W%s$7$?%U%!%$%k$r%/%m!<%:$9$k!#(B
$B%U%!%$%k$r%*!<%W%s$7$?%W%m%;%9$,=*N;$7$?$H$-$K$O!"<+F0E*$K$=$N%U%!%$%k$O%/%m!<%:$5$l$k!#(B
$B!Z%(%i!<%3!<%I![(B
ER_FD : $B%U%!%$%k%G%#%9%/%j%W%?$OB8:_$7$F$$$J$$!#(B
ER_IO : $BF~=PNO%(%i!<$,H/@8$7$?!#(B
del_fil |
|
$B%U%!%$%k$N:o=|(B |
|
$B!Z7A<0![(B
WERR del_fil(LINK *org, LINK *lnk, W force)
$B!Z%Q%i%a!<%?![(B
LINK *org $B:o=|BP>]%U%!%$%k$N?F%U%!%$%k(B
NULL $B?F%U%!%$%k;XDj$J$7(B
LINK *lnk $B:o=|BP>]%U%!%$%k(B
W force $B6/@):o=|;XDj(B
- $B!a(B0 :
- $B:o=|BP>]%U%!%$%k$,%j%s%/%l%3!<%I$r4^$`$H$-$O%(%i!<$H$7$F:o=|$7$J$$!#(B
- $B!b(B0 :
- $B:o=|BP>]%U%!%$%k$,%j%s%/%l%3!<%I$r4^$`$H$-$b:o=|$7!"(B
$B4^$^$l$k%j%s%/%l%3!<%I$,<($9%U%!%$%k$N;2>H%+%&%s%H$r(B -1 $B$7!"(B
$B$=$N7k2L!";2>H%+%&%s%H$,(B 0 $B$H$J$C$?%j%s%/%l%3!<%I$N?t$r%j%?!<%sCM$H$9$k!#(B
$B!Z%j%?!<%sCM![(B
$B!f(B0 $B@5>o(B($B:o=|$7$?7k2L;2>H%+%&%s%H(B0$B$H$J$C$?%j%s%/%l%3!<%I$N?t(B)
$B!c(B0 $B%(%i!<(B($B%(%i!<%3!<%I(B)
$B!Z2r@b![(B
org
$B$G;XDj$7$??F%U%!%$%kFb$N(B
lnk
$B$G;XDj$7$?%U%!%$%k$r<($9%j%s%/%l%3!<%I$r:o=|$7!"(B
$B$=$N%U%!%$%k$N;2>H%+%&%s%H$r(B -1 $B$9$k!#(B
$B$=$N7k2L!";2>H%+%&%s%H$,(B 0 $B$K$J$C$?>l9g$K$O!"(Blnk
$B$G;XDj$5$l$?%U%!%$%k<+BN$r:o=|$9$k!#(B
$B$3$N>l9g!"?F%U%!%$%k$N=q$-9~$_(B(W)$B%"%/%;%98"$,I,MW$H$J$k!#(B
$B?F%U%!%$%k$N;XDj$J$7(B ( org = NULL
) $B$N$H$-$O!"(B
lnk
$B$G;XDj$7$?%U%!%$%k$N;2>H%+%&%s%H$,(B 0
$B$N>l9g$K%U%!%$%k$r:o=|$9$k!#(B
$B;2>H%+%&%s%H$,(B 0 $B$G$J$$>l9g$O%(%i!<$H$J$k!#(B
$B:o=|BP>]%U%!%$%k$,$,%j%s%/%U%!%$%k$N$H$-$O!"(B
$B%j%s%/%U%!%$%k<+BN$,:o=|$NBP>]$H$J$j!"(B
$B%j%s%/%U%!%$%k$N;2>H@h$N%U%!%$%k$O:o=|$5$l$k$3$H$O$J$$!#(B
$B:o=|BP>]%U%!%$%k$,0J2<$N$$$:$l$+$N$H$-$O:o=|$5$l$:$K%(%i!<$H$J$k!#(B
- $B:o=|IT2DB0@-$,@_Dj$5$l$F$$$k$H$-(B
- $B%*!<%W%s$7$F$$$k%W%m%;%9$,B8:_$7$F$$$k$H$-(B
- $B:n6H%U%!%$%k$H$7$F$$$k%W%m%;%9$,B8:_$7$F$$$k$H$-(B
$B=q9~IT2DB0@-$,%;%C%H$5$l$F$$$?>l9g$G$b:o=|2DG=$G$"$k!#(B
$B!Z%(%i!<%3!<%I![(B
ER_ACCES : $B%U%!%$%k(B(org)$B$N%"%/%;%98"(B(W)$B$,$J$$(B(org$B!b(BNULL$B$N;~(B)$B!#(B
ER_ADR : $B%"%I%l%9(B(org,lnk)$B$N%"%/%;%9$O5v$5$l$F$$$J$$!#(B
ER_BUSY : $B%U%!%$%k(B(org)$B$O4{$KGSB>E*$K%*!<%W%s$5$l$F$$$k0Y!"(B
$BF1;~$K%U%!%$%k$r%*!<%W%s$9$k$3$H$,$G$-$J$+$C$?(B(org$B!b(BNULL$B$N;~(B)$B!#(B
: $B%U%!%$%k(B(lnk)$B$O%*!<%W%sCf$G$"$k!"$^$?$O:n6H%U%!%$%k$G$"$k!#(B
: $B%U%!%$%k(B(lnk)$B$N;2>H%+%&%s%H$O(B0$B$G$J$$(B(org=NULL$B$N;~(B)$B!#(B
: $B%U%!%$%k(B(lnk)$B$r<($9%j%s%/%l%3!<%I$OB>$N%*!<%W%s$G8=:_%l%3!<%I(B
$B$H$7$F;HMQ$5$l$F$$$k(B(org=NULL$B$N;~(B)$B!#(B
ER_IO : $BF~=PNO%(%i!<$,H/@8$7$?!#(B
ER_LOCK : $B%U%!%$%k(B(lnk)$B$r<($9%j%s%/%l%3!<%I$O!"B>$+$i%m%C%/$5$l$F$$$k(B
(org$B!b(B NULL$B$N;~(B)$B!#(B
ER_NOEXS : $B%U%!%$%k(B(org,lnk)$B$OB8:_$7$F$$$J$$(B($B$^$?$O!"(Borg$BFb$K;XDj$5$l$?(B
$B%U%!%$%k(B(lnk)$B$r<($9%j%s%/%l%3!<%I$,B8:_$7$J$$(B)$B!#(B
ER_NOFS : $B%U%!%$%k(B(org,lnk)$B$NB0$9$k%U%!%$%k%7%9%F%`$O@\B3$5$l$F$$$J$$!#(B
ER_NOSPC : $B%7%9%F%`$N%a%b%jNN0h$,ITB-$7$?!#(B
ER_PERM : $B%U%!%$%k(B(lnk)$B$O:o=|IT2D$G$"$k(B($B:o=|IT2DB0@-$,%;%C%H$5$l$F$$$k(B)$B!#(B
ER_REC : $B%U%!%$%k(B(lnk)$B$O(B $B%j%s%/%l%3!<%I$r4^$s$G$$$k(B(force=0$B$N;~(B)$B!#(B
ER_RONLY : $B%U%!%$%k(B(org)$B$O=q9~IT2D$G$"$k!"(B
$B$^$?$OB0$9$k%U%!%$%k%7%9%F%`$O=q9~IT2D$G$"$k(B(org$B!b(BNULL$B$N;~(B)$B!#(B
: $B%U%!%$%k(B(lnk)$B$NB0$9$k%U%!%$%k%7%9%F%`$O=q9~IT2D$G$"$k!#(B
see_rec |
|
$B8=:_%l%3!<%I0\F0(B |
|
$B!Z7A<0![(B
ERR see_rec(W fd, W offset, W mode, W *recnum)
$B!Z%Q%i%a!<%?![(B
W fd $B%U%!%$%k%G%#%9%/%j%W%?(B
W offset $B0\F0%*%U%;%C%H(B
W mode $B0\F0%b!<%I(B
$B!a(B0 $B8=:_%l%3!<%IHV9f(B + offset $B$N%l%3!<%IHV9f0LCV$K0\F0!#(B
$B!d(B0 offset $B$N%l%3!<%IHV9f0LCV$K0\F0!#(B
offset$B!f(B0$B$G$J$/$F$O$$$1$J$$!#(B
$B!c(B0 $B=*C<%l%3!<%IHV9f(B $B!\(B offset $B$N%l%3!<%IHV9f0LCV$K0\F0!#(B
offset$B!e(B0$B$G$J$/$F$O$$$1$J$$!#(B
W *recnum $B0\F08e$N8=:_%l%3!<%IHV9f$N3JG
$B!Z%j%?!<%sCM![(B
$B!a(B0 $B@5>o(B
$B!c(B0 $B%(%i!<(B($B%(%i!<%3!<%I(B)
$B!Z2r@b![(B
$B%*!<%W%s$7$?%U%!%$%k$N8=:_%l%3!<%I0LCV$r;XDj$7$?0LCV$K0\F0$9$k!#(B
$BDj$7$?0\F0@h$,B8:_$9$k%l%3!<%I$NHO0O$r1[$($k>l9g$O%(%i!<$H$J$j!"(B
$B8=:_%l%3!<%I$OJQ2=$7$J$$!#(B
$B!Z%(%i!<%3!<%I![(B
ER_ADR : $B%"%I%l%9(B(recnum)$B$N%"%/%;%9$O5v$5$l$F$$$J$$!#(B
ER_FD : $B%U%!%$%k%G%#%9%/%j%W%?$OB8:_$7$F$$$J$$!#(B
ER_IO : $BF~=PNO%(%i!<$,H/@8$7$?!#(B
ER_REC : $BB8:_$9$k%l%3!<%I$NHO0O$r1[$($?!#(B
$B!Z7A<0![(B
WERR fnd_rec(W fd, W mode, UW typemask, UH subtype, W *recnum)
$B!Z%Q%i%a!<%?![(B
W fd $B%U%!%$%k%G%#%9%/%j%W%?(B
W mode $B8!:w%b!<%I(B($B8!:w3+;O0LCV!?J}8~$N;XDj(B)
( F_FWD $B!B(B F_NFWD $B!B(B F_BWD $B!B(B F_NBWD $B!B(B F_TOPEND $B!B(B F_ENDTOP )
F_FWD $B8=:_%l%3!<%I$+$i=*C<%l%3!<%I$^$G(B
F_NFWD $B8=:_%l%3!<%I$N]%l%3!<%I%?%$%W$N%S%C%H%^%9%/(B
LSB $B%?%$%W(B 0 $B$KBP1~(B
MSB $B%?%$%W(B 31 $B$KBP1~(B
UH subtype $B8!:wBP>]%l%3!<%I%5%V%?%$%W(B
0 $BA4%5%V%?%$%W$,BP>](B($B%5%V%?%$%W$N%A%'%C%/$J$7(B)
W *recnum $B8!:w7k2L$N8=:_%l%3!<%IHV9f$N3JG
$B!Z%j%?!<%sCM![(B
$B!f(B0 $B@5>o(B($B8!:w$7$?%l%3!<%I%?%$%W(B)
$B!c(B0 $B%(%i!<(B($B%(%i!<%3!<%I(B)
$B!Z2r@b![(B
$B%*!<%W%s$7$?%U%!%$%kFb$N;XDj$7$?%l%3!<%I$r8!:w$7!"8+$D$1$?%l%3!<%I$r8=:_%l%3!<%I$H$9$k!#(B
$BBP>]%l%3!<%I$,8+$D$+$i$J$+$C$?$H$-$O%(%i!<$H$J$j!"8=:_%l%3!<%I$OJQ2=$7$J$$!#(B
$B!Z%(%i!<%3!<%I![(B
ER_ADR : $B%"%I%l%9(B(recnum)$B$N%"%/%;%9$O5v$5$l$F$$$J$$!#(B
ER_FD : $B%U%!%$%k%G%#%9%/%j%W%?$OB8:_$7$F$$$J$$!#(B
ER_IO : $BF~=PNO%(%i!<$,H/@8$7$?!#(B
ER_PAR : $B%Q%i%a!<%?$,IT@5$G$"$k(B(mode$B$,IT@5(B)$B!#(B
ER_REC : $B;XDj$7$?8!:w>r7o$K9g$&%l%3!<%I$OB8:_$7$J$$(B
(typemask=0$B$N>l9g$b4^$`(B)$B!#(B
fnd_lnk |
|
$B%j%s%/%l%3!<%I8!:w(B |
|
$B!Z7A<0![(B
ERR fnd_lnk(W fd, W mode, LINK *lnk, UH subtype, W *recnum)
$B!Z%Q%i%a!<%?![(B
W fd $B%U%!%$%k%G%#%9%/%j%W%?(B
W mode $B8!:w%b!<%I(B($B8!:w3+;O0LCV!?J}8~!?FbMF$N;XDj(B)
( F_FWD $B!B(B F_NFWD $B!B(B F_BWD $B!B(B F_NBWD $B!B(B F_TOPEND $B!B(B F_ENDTOP )
| [ F_SFILE ] | [ F_SNAME ]
| [ F_SATR1 ] | [ F_SATR2 ] | [F_SATR3 ] |
[ F_SATR4 ] | [ F_SATR5 ]
F_FWD$B!A(BF_ENDTOP fnd_rec()$B$HF1$8(B
F_SFILE lnk $B$HF10l$N%U%!%$%k$r<($9%j%s%/%l%3!<%I(B
F_SNAME lnk $B$HF10l$N%U%!%$%kL>$N%U%!%$%k$r<($9%j%s%/%l%3!<%I(B
F_SATR1 lnk $B$HF10l$NB0@-%G!<%?(B1$B$r;}$D%j%s%/%l%3!<%I(B
F_SATR2 lnk $B$HF10l$NB0@-%G!<%?(B2$B$r;}$D%j%s%/%l%3!<%I(B
F_SATR3 lnk $B$HF10l$NB0@-%G!<%?(B3$B$r;}$D%j%s%/%l%3!<%I(B
F_SATR4 lnk $B$HF10l$NB0@-%G!<%?(B4$B$r;}$D%j%s%/%l%3!<%I(B
F_SATR5 lnk $B$HF10l$NB0@-%G!<%?(B5$B$r;}$D%j%s%/%l%3!<%I(B
LINK *lnk $B8!:wBP>]%j%s%/(B
F_SFILE$B!A(BF_SATR5 $B$r;XDj$7$?$H$-$N$_M-8z(B
UH subtype $B8!:wBP>]%l%3!<%I%5%V%?%$%W(B
0 $BA4%5%V%?%$%W$,BP>](B($B%5%V%?%$%W$N%A%'%C%/$J$7(B)
W *recnum $B8!:w7k2L$N8=:_%l%3!<%IHV9f$N3JG
$B!Z%j%?!<%sCM![(B
$B!a(B0 $B@5>o(B
$B!c(B0 $B%(%i!<(B($B%(%i!<%3!<%I(B)
$B!Z2r@b![(B
$B%*!<%W%s$7$?%U%!%$%kFb$N;XDj$7$?%j%s%/%l%3!<%I$r8!:w$7!"(B
$B8+$D$1$?%j%s%/%l%3!<%I$r8=:_%l%3!<%I$H$9$k!#(B
$BBP>]%l%3!<%I$,8+$D$+$i$J$+$C$?$H$-$O%(%i!<$H$J$j!"8=:_%l%3!<%I$OJQ2=$7$J$$!#(B
$B!Z%(%i!<%3!<%I![(B
ER_ADR : $B%"%I%l%9(B(lnk,recnum)$B$N%"%/%;%9$O5v$5$l$F$$$J$$(B
(lnk$B$O8!:w>r7o$r;XDj$7$?>l9g$N$_%"%/%;%9$5$l$k(B)$B!#(B
ER_FD : $B%U%!%$%k%G%#%9%/%j%W%?$OB8:_$7$F$$$J$$!#(B
ER_IO : $BF~=PNO%(%i!<$,H/@8$7$?!#(B
ER_NOSPC : $B%7%9%F%`$N%a%b%jNN0h$,ITB-$7$?!#(B
ER_NOEXS : $B%U%!%$%k(B(lnk)$B$OB8:_$7$F$$$J$$!#(B
ER_NOFS : $B%U%!%$%k(B(lnk)$B$NB0$9$k%U%!%$%k%7%9%F%`$O@\B3$5$l$F$$$J$$!#(B
ER_PAR : $B%Q%i%a!<%?$,IT@5$G$"$k(B(mode $B$,IT@5(B)$B!#(B
ER_REC : $B;XDj$7$?8!:w>r7o$K9g$&%l%3!<%I$OB8:_$7$J$$!#(B
rea_rec |
|
$B%l%3!<%IFI$_9~$_(B |
|
$B!Z7A<0![(B
WERR rea_rec(W fd, W offset, B *buf, W size, W *r_size, UH *subtype)
$B!Z%Q%i%a!<%?![(B
W fd $B%U%!%$%k%G%#%9%/%j%W%?(B
W offset $BFI$_9~$_3+;O%P%$%H0LCV(B($B!f(B0)
B *buf $BFI$_9~$_%G!<%?3JG
$B!Z%j%?!<%sCM![(B
$B!f(B0 $B@5>o(B($B8=:_%l%3!<%I$N%l%3!<%I%?%$%W(B)
$B!c(B0 $B%(%i!<(B($B%(%i!<%3!<%I(B)
$B!Z2r@b![(B
$B%*!<%W%s$7$?%U%!%$%k$N8=:_%l%3!<%I$rFI$_9~$`!#(B
$B%l%3!<%I%5%$%:(B < offset + size
$B$N$H$-$O!"(B
buf
$B$K$O(B ( $B%l%3!<%I%5%$%:(B - offset)
$B%P%$%H$N%G!<%?$N$_FI$_9~$^$l$F3JG<$5$l$k!#(B
offset $B!f(B $B%l%3!<%I%5%$%:(B
$B!"(Bbuf = NULL
$B!"(B
$B$^$?$O(B size = 0
$B$N$H$-$O(B buf
$B$K$O2?$b3JG<$5$l$:$K(B
*r_size$B!"(B*subtype
$B$KBP1~$9$kCM$,3JG<$5$l$k!#(B
$B$3$l$O!"%l%3!<%I%5%$%:$d%5%V%?%$%W$N$_$rl9g$K;HMQ$5$l$k!#(B
$B8=:_%l%3!<%I$,%j%s%/%l%3!<%I$N$H$-$O!"(B
LINK
$B9=B$BNA4BN$NFbMF$,(B
buf
$B$KFI$_=P$5$l!"(B*r_size
$B$K$O(B
LINK
$B9=B$BN$N%5%$%:$,3JG<$5$l$k!#(B
$B$3$N>l9g!"(Boffset = 0
$B!"(Bsize $B!f(B LINK
$B9=B$BN$N%5%$%:(B ( $B$^$?$O(B size = 0
)
$B$G$J$/$F$O$$$1$J$$!#(B
$B8=:_%l%3!<%I$,=*C<%l%3!<%I$N$H$-!"(B
$B$^$?$OB>%W%m%;%9$+$i%m%C%/$5$l$F$$$k$H$-$O%(%i!<$H$J$k!#(B
$B!Z%(%i!<%3!<%I![(B
ER_ADR : $B%"%I%l%9(B(buf,r_size,subtype)$B$N%"%/%;%9$O5v$5$l$F$$$J$$!#(B
ER_ENDR : $B8=:_%l%3!<%I$O=*C<%l%3!<%I$G$"$k!#(B
ER_FD : $B%U%!%$%k%G%#%9%/%j%W%?$OB8:_$7$F$$$J$$!"(B
$B$^$?$O(B F_WRITE $B%*!<%W%s$G$"$k!#(B
ER_IO : $BF~=PNO%(%i!<$,H/@8$7$?!#(B
ER_LOCK : $B8=:_%l%3!<%I$OB>$+$i%m%C%/$5$l$F$$$k!#(B
ER_PAR : $B%Q%i%a!<%?$,IT@5$G$"$k(B(size<0,offset<0,
$B%j%s%/%l%3!<%I$G(Boffset,size$B$,IT@5(B)$B!#(B
wri_rec |
|
$B%l%3!<%I=q$-9~$_(B |
|
$B!Z7A<0![(B
ERR wri_rec(W fd, W offset, B *buf, W size, W *r_size, UH *subtype, UW units)
$B!Z%Q%i%a!<%?![(B
W fd $B%U%!%$%k%G%#%9%/%j%W%?(B
W offset $B=q$-9~$_3+;O%P%$%H0LCV(B($B!](B1$B!e(B offset < $B%l%3!<%I%5%$%:(B)
-1$B!'%l%3!<%I$N:G8e$X$N=q$-9~$_(B($BDI2C(B)
B *buf $B=q$-9~$_%G!<%?$X$N%]%$%s%?(B
NULL $B=q$-9~$^$J$$(B
W size $B=q$-9~$_%G!<%?$N%P%$%H%5%$%:(B($B!f(B0)
W *r_size $B3+;O%P%$%H0LCV$+$i$N;D$j%P%$%H%5%$%:(B
($B=q$-9~$_8e$N%l%3!<%I%5%$%:(B $B!](B offset)$B$N3JG
$B!Z%j%?!<%sCM![(B
$B!a(B0 $B@5>o(B
$B!c(B0 $B%(%i!<(B($B%(%i!<%3!<%I(B)
$B!Z2r@b![(B
$B%*!<%W%s$7$?%U%!%$%k$N8=:_%l%3!<%I$K=q$-9~$`!#(B
$B%l%3!<%I%5%$%:(B < offset + size
$B$N$H$-$O!"(B
$B=q$-9~$_8e$K%l%3!<%I%5%$%:$OA}2C$9$k!#(B
units
$B$O%l%3!<%I%5%$%:$,A}2C$7$?$?$a$KI,MW$H$J$C$?DI2C%V%m%C%/$N3MF@$NC10L$r(BK$B%P%$%HC10L$G;XDj$9$k$b$N$G!"(Bunits
$B%5%$%:0J>e(B ( size
$B0J2<(B )
$B$NO"B3%V%m%C%/NN0h$r3d$jEv$F$k$3$H$r;XDj$9$k!#(B
units = 0
$B$O%V%m%C%/$N3d$jEv$FJ}K!$OG$0U$G$"$k$3$H$r0UL#$9$k!#(B
size = 0
$B!"$^$?$O(B buf = NULL
$B$N$H$-$O!"(B
$B%G!<%?$N=q$-9~$_$O9T$J$o$J$$$,(B
subtype $B!b(B NULL
$B$G$"$l$P%l%3!<%I%5%V%?%$%W$OJQ99$9$k!#(B
buf = NULL
$B$G(B $B%l%3!<%I%5%$%:(B < offset + size
$B$N$H$-$O!"%l%3!<%I%5%$%:$rA}2C$9$k$,A}2C$7$?ItJ,$N%G!<%?$OITDj$H$J$k!#(B
$B$3$l$O(B units
$B;XDj$HAH$_9g$o$;$F%l%3!<%I$NDI2C%V%m%C%/NN0h$r$"$i$+$8$a3NJ]$9$k$H$-$K;HMQ$9$k!#(B
offset = -1
$B$N$H$-$O!"(B
$B>o$K$=$N;~E@$N%l%3!<%I$N:G8e$K%G!<%?$r=q$-9~$_!"(B*r_size
$B$K$O(B size
$B$NCM$,3JG<$5$l$k!#(B
$BF10l%l%3!<%I$rJ#?t$N%W%m%;%9$,%*!<%W%s$7$FF1;~$K=q$-9~$`>l9g$G$b$3$N;XDj$K$h$jJL$N%W%m%;%9$,=q$-9~$s$@%G!<%?$r>e=q$-$7$J$$$3$H$,J]>Z$5$l$k!#(B
$B8=:_%l%3!<%I$,%j%s%/%l%3!<%I$N$H$-$O(B buf
$B$NFbMF$O(B LINK
$B9=B$BN$H$J$k$,!"B0@-%G!<%?ItJ,$N$_$,=q$-9~$^$l!"(B
$B;2>H$9$k%U%!%$%k<+BN$rJQ99$9$k$3$H$O$G$-$J$$!#(B
$B$3$N>l9g!"(Boffset = 0
$B!"(Bsize $B!f(B LINK $B9=B$BN$N%5%$%:(B
( $B$^$?$O(B size = 0
)$B$G$J$/$F$O$$$1$J$$!#(B
$B8=:_%l%3!<%I$,=*C<%l%3!<%I$N$H$-!"(B
$B$^$?$OB>%W%m%;%9$+$i%m%C%/$5$l$F$$$k$H$-$O%(%i!<$H$J$k!#(B
$B!Z%(%i!<%3!<%I![(B
ER_ADR : $B%"%I%l%9(B(buf,r_size,subtype)$B$N%"%/%;%9$O5v$5$l$F$$$J$$!#(B
ER_ENDR : $B8=:_%l%3!<%I$O=*C<%l%3!<%I$G$"$k!#(B
ER_FD : $B%U%!%$%k%G%#%9%/%j%W%?$OB8:_$7$F$$$J$$!"$^$?$O(B F_READ
$B%*!<%W%s$G$"$k!#(B
ER_IO : $BF~=PNO%(%i!<$,H/@8$7$?!#(B
ER_LOCK : $B8=:_%l%3!<%I$OB>$+$i%m%C%/$5$l$F$$$k!#(B
ER_NODSK : $B%G%#%9%/$NNN0h$,ITB-$7$?!"$^$?$O;XDj$5$l$?O"B3%V%m%C%/NN0h$,3MF@(B
$B$G$-$J$+$C$?!#(B
ER_PAR : $B%Q%i%a!<%?$,IT@5$G$"$k(B(size<0,offset$B$,IT@5(B,$B%j%s%/%l%3!<%I$G(B
offset,size$B$,IT@5(B)$B!#(B
ER_SZOVR : $B%U%!%$%k$N%5%$%:$,%7%9%F%`$N@)8B$r1[$($?!#(B
$B!Z7A<0![(B
ERR ins_rec(W fd, B *buf, W size, W type, UH subtype, UW units)
$B!Z%Q%i%a!<%?![(B
W fd $B%U%!%$%k%G%#%9%/%j%W%?(B
B *buf $BA^F~%l%3!<%I$N%G!<%?$X$N%]%$%s%?(B
NULL $B%G!<%?$O=q$-9~$^$J$$(B
W size $BA^F~%l%3!<%I$N%P%$%H%5%$%:(B($B!f(B0)
W type $BA^F~%l%3!<%I$N%l%3!<%I%?%$%W(B
UH subtype $BA^F~%l%3!<%I$N%l%3!<%I%5%V%?%$%W(B
UW units $B%V%m%C%/3MF@C10L(B(K$B%P%$%H(B)
0 $BG$0U(B
$B!Z%j%?!<%sCM![(B
$B!a(B0 $B@5>o(B
$B!c(B0 $B%(%i!<(B($B%(%i!<%3!<%I(B)
$B!Z2r@b![(B
$B%*!<%W%s$7$?%U%!%$%k$N8=:_%l%3!<%I$ND>A0$K?75,$N%l%3!<%I$rA^F~$9$k!#(B
units
$B$OA^F~$7$?%l%3!<%I$GI,MW$H$9$k%V%m%C%/$N3MF@$NC10L$r(B K
$B%P%$%HC10L$G;XDj$9$k$b$N$G!"(Bunits
$B%5%$%:0J>e(B ( size
$B0J2<(B )
$B$NO"B3%V%m%C%/NN0h$r3d$jEv$F$k$3$H$r;XDj$9$k!#(B
units = 0
$B$O%V%m%C%/$N3d$jEv$FJ}K!$OG$0U$G$"$k$3$H$r0UL#$9$k!#(B
buf = NULL
$B$N$H$-$O!"A^F~$7$?%l%3!<%I$N%5%$%:$O(B
size
$B$H$J$k$,!"$=$N%G!<%?$OITDj$H$J$k!#(B
$B$3$l$O(B units
$B;XDj$HAH$_9g$o$;$F!"(B
$B%l%3!<%I$N%V%m%C%/NN0h$r$"$i$+$8$a3NJ]$9$k$?$a$K;HMQ$9$k!#(B
$B8=:_%l%3!<%I$,%j%s%/%l%3!<%I$N$H$-$O(B buf
$B$NFbMF$O(B LINK
$B9=B$BN$H$J$k$,!"(B
$BB0@-%G!<%?ItJ,$N$_$,=q$-9~$^$l!";2>H$9$k%U%!%$%k<+BN$rJQ99$9$k$3$H$O$G$-$J$$!#(B
$B$3$N>l9g!"(Boffset = 0
$B!"(Bsize $B!f(BLINK $B9=B$BN$N%5%$%:(B
($B$^$?$O(B size = 0
) $B$G$J$/$F$O$$$1$J$$!#(B
type = 0
$B$N$H$-$O%j%s%/%l%3!<%I$NA^F~$G$"$j!"(B
buf
$B$NFbMF$O(B LINK
$B9=B$BN$H$J$k!#(B
$B%j%s%/%l%3!<%I$NA^F~$K$h$j!"$=$N%j%s%/$N<($9%U%!%$%k$N;2>H%+%&%s%H$O(B +1 $B$5$l$k!#(B
$B$3$N>l9g!"(Bbuf $B!b(B NULL
$B!"(Bsize = LINK $B9=B$BN$N%5%$%:(B
$B!"(B
$B$+$D%j%s%/$N<($9%U%!%$%k$OF10l%U%!%$%k%7%9%F%`>e$KB8:_$7$F$$$J$/$F$O$$$1$J$$!#(B
$B!Z%(%i!<%3!<%I![(B
ER_ADR : $B%"%I%l%9(B(buff)$B$N%"%/%;%9$O5v$5$l$F$$$J$$!#(B
ER_FD : $B%U%!%$%k%G%#%9%/%j%W%?$OB8:_$7$F$$$J$$!"(B
$B$^$?$O(B F_READ $B%*!<%W%s$G$"$k!#(B
ER_IO : $BF~=PNO%(%i!<$,H/@8$7$?!#(B
ER_LIMIT : $B%j%s%/$N;2>H@h$N%U%!%$%k$N;2>H%+%&%s%H$,%7%9%F%`$N@)8B(B(255)$B$r1[$($?!#(B
ER_NODSK : $B%G%#%9%/$NNN0h$,ITB-$7$?!"$^$?$O;XDj$5$l$?O"B3%V%m%C%/NN0h$,(B
$B3MF@$G$-$J$+$C$?!#(B
ER_NOEXS : $B%j%s%/$N;2>H@h$N%U%!%$%k$OB8:_$7$F$$$J$$!#(B
ER_PAR : $B%Q%i%a!<%?$,IT@5$G$"$k(B(type $B$,IT@5!"(Bsize<0$B!"(Bunits $B$,IT@5!"(B
type=0$B$N;~$N(B size,buff $B$,IT@5(B)$B!#(B
ER_REC : $B%j%s%/$OJL%U%!%$%k%7%9%F%`$r;2>H$7$F$$$k!#(B
ER_SZOVR : $B%U%!%$%k$N%5%$%:$,%7%9%F%`$N@)8B$r1[$($?!#(B
$B!Z7A<0![(B
ERR apd_rec(W fd, B *buf, W size, W type, UH subtype, UW units)
$B!Z%Q%i%a!<%?![(B
W fd $B%U%!%$%k%G%#%9%/%j%W%?(B
B *buf $BDI2C%l%3!<%I$N%G!<%?$X$N%]%$%s%?(B
NULL $B%G!<%?$O=q$-9~$^$J$$(B
W size $BDI2C%l%3!<%I$N%P%$%H%5%$%:(B($B!f(B0)
W type $BDI2C%l%3!<%I$N%l%3!<%I%?%$%W(B
U subtype $BDI2C%l%3!<%I$N%l%3!<%I%5%V%?%$%W(B
UW units $B%V%m%C%/3MF@C10L(B(K$B%P%$%H(B)
0 $BG$0U(B
$B!Z%j%?!<%sCM![(B
$B!a(B0 $B@5>o(B
$B!c(B0 $B%(%i!<(B($B%(%i!<%3!<%I(B)
$B!Z2r@b![(B
$B%*!<%W%s$7$?%U%!%$%k$N:G8e$K?75,$N%l%3!<%I$rA^F~$9$k!#(B
$BK\%7%9%F%`%3!<%k$O!"8=:_%l%3!<%I$N0LCV$N4X78$J$/>o$K:G8e$N%l%3!<%I(B
( $B=*C<%l%3!<%I$ND>A0(B ) $B$K%l%3!<%I$rA^F~$9$kE@$r=|$$$F(B ins_rec()
$B$HF10l$G$"$k!#(B
$B!Z%(%i!<%3!<%I![(B
ER_ADR : $B%"%I%l%9(B(buff)$B$N%"%/%;%9$O5v$5$l$F$$$J$$!#(B
ER_FD : $B%U%!%$%k%G%#%9%/%j%W%?$OB8:_$7$F$$$J$$!"$^$?$O(B F_READ
$B%*!<%W%s$G$"$k!#(B
ER_IO : $BF~=PNO%(%i!<$,H/@8$7$?!#(B
ER_LIMIT : $B%j%s%/$N;2>H@h$N%U%!%$%k$N;2>H%+%&%s%H$,%7%9%F%`$N@)8B(B
(255)$B$r1[$($?!#(B
ER_NODSK : $B%G%#%9%/$NNN0h$,ITB-$7$?!"$^$?$O;XDj$5$l$?O"B3%V%m%C%/NN0h(B
$B$,3MF@$G$-$J$+$C$?!#(B
ER_NOEXS : $B%j%s%/$N;2>H@h$N%U%!%$%k$OB8:_$7$F$$$J$$!#(B
ER_PAR : $B%Q%i%a!<%?$,IT@5$G$"$k(B(type $B$,IT@5!"(Bsize<0$B!"(Bunits $B$,IT@5!"(B
type =0$B$N;~$N(B size,buff $B$,IT@5(B)$B!#(B
ER_REC : $B%j%s%/$OJL%U%!%$%k%7%9%F%`$r;2>H$7$F$$$k!#(B
ER_SZOVR : $B%U%!%$%k$N%5%$%:$,%7%9%F%`$N@)8B$r1[$($?!#(B
$B!Z7A<0![(B
WERR del_rec(W fd)
$B!Z%Q%i%a!<%?![(B
W fd $B%U%!%$%k%G%#%9%/%j%W%?(B
$B!Z%j%?!<%sCM![(B
$B!a(B1 $B@5>o(B($B%j%s%/%l%3!<%I$r:o=|$7$?7k2L!";2>H%+%&%s%H(B=0$B$H$J$C$?(B)
$B!a(B0 $B@5>o(B($B>e5-0J30(B)
$B!c(B0 $B%(%i!<(B($B%(%i!<%3!<%I(B)
$B!Z2r@b![(B
$B%*!<%W%s$7$?%U%!%$%k$N8=:_%l%3!<%I$r:o=|$7!"(B
$B:o=|$7$?
$B:o=|$7$?%l%3!<%I$,%j%s%/%l%3!<%I$N$H$-$O!"(B
$B%j%s%/%l%3!<%I$,<($9%U%!%$%k$N;2>H%+%&%s%H$O(B -1 $B$5$l!"(B
$B$=$N7k2L;2>H%+%&%s%H$,(B0$B$H$J$C$?>l9g$O%j%?!<%sCM$O(B 1 $B$H$J$k!#(B
$B8=:_%l%3!<%I$,=*C<%l%3!<%I$N$H$-!"(B
$BB>%W%m%;%9$+$i%m%C%/$5$l$F$$$k$H$-!"(B
$B$^$?$OB>$N%*!<%W%s$G8=:_%l%3!<%I$H$J$C$F$$$k$H$-$O%(%i!<$H$J$k!#(B
$B!Z%(%i!<%3!<%I![(B
ER_BUSY : $BB>$N%*!<%W%s$G8=:_%l%3!<%I$H$7$F;HMQ$5$l$F$$$k!#(B
ER_ENDR : $B8=:_%l%3!<%I$O=*C<%l%3!<%I$G$"$k!#(B
ER_FD : $B%U%!%$%k%G%#%9%/%j%W%?$OB8:_$7$F$$$J$$!"(B
$B$^$?$O(B F_READ $B%*!<%W%s$G$"$k!#(B
ER_IO : $BF~=PNO%(%i!<$,H/@8$7$?!#(B
ER_LOCK : $B8=:_%l%3!<%I$OB>$+$i%m%C%/$5$l$F$$$k!#(B
ER_NOSPC : $B%7%9%F%`$N%a%b%jNN0h$,ITB-$7$?!#(B
trc_rec |
|
$B%l%3!<%I%5%$%:=L>.(B |
|
$B!Z7A<0![(B
ERR trc_rec(W fd, W size)
$B!Z%Q%i%a!<%?![(B
W fd $B%U%!%$%k%G%#%9%/%j%W%?(B
W size $B=L>.$9$k%l%3!<%I%P%$%H%5%$%:(B($B!f(B0)
$B!Z%j%?!<%sCM![(B
$B!a(B0 $B@5>o(B
$B!c(B0 $B%(%i!<(B($B%(%i!<%3!<%I(B)
$B!Z2r@b![(B
$B%*!<%W%s$7$?%U%!%$%k$N8=:_%l%3!<%I$N%l%3!<%I%5%$%:$r(B
size
$B%P%$%H$K=L>.$9$k!#(B
$B%l%3!<%I%5%$%:!e(B size
$B$N$H$-$O2?$b$7$J$$!#(B
$B8=:_%l%3!<%I$,=*C<%l%3!<%I$N$H$-!"(B
$B%j%s%/%l%3!<%I$N$H$-!"$^$?$OB>%W%m%;%9$+$i%m%C%/$5$l$F$$$k$H$-$O%(%i!<$H$J$k!#(B
$B!Z%(%i!<%3!<%I![(B
ER_ENDR : $B8=:_%l%3!<%I$O=*C<%l%3!<%I$G$"$k!#(B
ER_FD : $B%U%!%$%k%G%#%9%/%j%W%?$OB8:_$7$F$$$J$$!"(B
$B$^$?$O(B F_READ $B%*!<%W%s$G$"$k!#(B
ER_IO : $BF~=PNO%(%i!<$,H/@8$7$?!#(B
ER_LOCK : $B8=:_%l%3!<%I$OB>$+$i%m%C%/$5$l$F$$$k!#(B
ER_PAR : $B%Q%i%a!<%?$,IT@5$G$"$k(B(size<0)$B!#(B
ER_REC : $B8=:_%l%3!<%I$O%j%s%/%l%3!<%I$G$"$k!#(B
xch_fil |
|
$B%U%!%$%k$NFbMF8r49(B |
|
$B!Z7A<0![(B
ERR xch_fil(W fd_1, W fd_2)
$B!Z%Q%i%a!<%?![(B
W fd_1 $B%U%!%$%k%G%#%9%/%j%W%?(B 1
W fd_2 $B%U%!%$%k%G%#%9%/%j%W%?(B 2
$B!Z%j%?!<%sCM![(B
$B!a(B0 $B@5>o(B
$B!c(B0 $B%(%i!<(B($B%(%i!<%3!<%I(B)
$B!Z2r@b![(B
$B%*!<%W%s$7$?(B 2 $B$D$N%U%!%$%k$NFbMF$r8r49$9$k!#(B
$B8r49$9$k$N$O%U%!%$%k$N%G!<%?ItJ,$G$"$j!"(B
$B%U%!%$%k$N4IM}>pJs$O%"%/%;%9F|IU$H99?7F|IU$r=|$$$F85$N$^$^$H$J$k!#(B
$B8r49$9$k(B 2 $B$D$N%U%!%$%k$O!"F10l$N%U%!%$%k%7%9%F%`$KB8:_$7!"(B
$B$+$DGSB>%b!<%I$G99?7MQ%*!<%W%s$7$F$J$/$F$O$$$1$J$$!#(B
$B8r498e$N8=:_%l%3!<%I$O!"$=$l$>$l@hF,%l%3!<%I$H$J$k!#(B
$B!Z%(%i!<%3!<%I![(B
ER_FD : $B%U%!%$%k%G%#%9%/%j%W%?$OB8:_$7$F$$$J$$!"$^$?$O(B (F_UPDATE|F_EXCL)
$B$G$J$$(B $B%*!<%W%s$G$"$k!#(B
ER_IO : $BF~=PNO%(%i!<$,H/@8$7$?!#(B
ER_LOCK : $B8=:_%l%3!<%I$OB>$+$i%m%C%/$5$l$F$$$k(B
($B%l%3!<%I$K%m%C%/$,$+$+$C$F$$$k(B)$B!#(B
ER_NOSPC : $B%7%9%F%`$N%a%b%jNN0h$,ITB-$7$?!#(B
ER_PAR : $B%Q%i%a!<%?$,IT@5$G$"$k(B(fd_1$B$H(Bfd_2$B$OF10l%U%!%$%k(B)$B!#(B
ER_XFS : $B%U%!%$%k(B(fd_1,fd_2)$B$O0[$J$k%U%!%$%k%7%9%F%`$KB0$7$F$$$k!#(B
loc_rec |
|
$B%l%3!<%I%m%C%/(B |
|
$B!Z7A<0![(B
ERR loc_rec(W fd, W mode)
$B!Z%Q%i%a!<%?![(B
W fd $B%U%!%$%k%G%#%9%/%j%W%?(B
W mode $B%m%C%/%b!<%I(B
( F_UNLOCK $B!B(B F_LOCK $B!B(B F_TSLOCK $B!B(B F_CKLOCK )
F_LOCK $B%m%C%/@_Dj(B($BBT$A(B)
F_UNLOCK $B%m%C%/2r=|(B
F_TSLOCK $B%m%C%/@_Dj(B($BBT$A$J$7(B)
F_CKLOCK $B%m%C%/>uBV%A%'%C%/(B
$B!Z%j%?!<%sCM![(B
$B!a(B0 $B@5>o(B
$B!c(B0 $B%(%i!<(B($B%(%i!<%3!<%I(B)
$B!Z2r@b![(B
$B%*!<%W%s$7$?%U%!%$%k$N8=:_%l%3!<%I$KBP$9$k%m%C%/A`:n$r9T$J$&!#(B
- F_LOCK $B%m%C%/@_Dj(B($BBT$A(B)
- $BB>%W%m%;%9$+$i%m%C%/$5$l$F$$$?$H$-$O%m%C%/$,2r=|$5$l$k$^$GBT$D(B($BBT$A$O%W%m%;%9M%@hEY=g$GF10lM%@hEY$N>l9g$OBT$A$KF~$C$?=g(B)$B!#<+%W%m%;%9$NF10l%U%!%$%k%G%#%9%/%j%W%?$+$i%m%C%/$7$F$$$?>l9g$O2?$b$;$:$K@5>o=*N;!#<+%W%m%;%9$NB>%U%!%$%k%G%#%9%/%j%W%?$+$i%m%C%/$7$F$$$?>l9g$O%(%i!F_UNLOCK $B%m%C%/2r=|(B
- $B%l%3!<%I$,%m%C%/$5$l$F$$$J$$>l9g$O2?$b$;$:$K@5>o=*N;!#<+%W%m%;%9$NF10l%U%!%$%k%G%#%9%/%j%W%?$+$i%m%C%/$7$?>l9g$N$_2r=|2DG=$G!"$=$NB>$N>l9g$O%(%i!F_TSLOCK $B%m%C%/@_Dj(B($BBT$A$J$7(B)
- $BB>%W%m%;%9$^$?$OB>%U%!%$%k%G%#%9%/%j%W%?$+$i%m%C%/$5$l$F$$$?$H$-$O%(%i!F_CKLOCK $B%m%C%/>uBV%A%'%C%/(B
- $BB>%W%m%;%9$^$?$OB>%U%!%$%k%G%#%9%/%j%W%?$+$i%m%C%/$5$l$F$$$?$H$-$O%(%i!o=*N;!#(B
$B%m%C%/$7$?%l%3!<%I$O!"%m%C%/$7$?%U%!%$%k%G%#%9%/%j%W%?0J30$+$i$NFI$_9~$_!"=q$-9~$_!"%5%$%:JQ99!"$*$h$S:o=|$,6X;_$5$l$k!#(B
$B%U%!%$%k$r%/%m!<%:;~$K$O%*!<%W%s$7$?%W%m%;%9$G@_Dj$7$?%m%C%/$O2r=|$5$l$k!#(B
$B!Z%(%i!<%3!<%I![(B
ER_ENDR : $B8=:_%l%3!<%I$O=*C<%l%3!<%I$G$"$k!#(B
ER_FD : $B%U%!%$%k%G%#%9%/%j%W%?$OB8:_$7$F$$$J$$!#(B
ER_IO : $BF~=PNO%(%i!<$,H/@8$7$?!#(B
ER_LIMIT : $BF1;~$K%m%C%/2DG=$J%l%3!<%I$N:GBg?t$r1[$($?!#(B
ER_LOCK : $B8=:_%l%3!<%I$OB>$+$i%m%C%/$5$l$F$$$k8=:_%l%3!<%I$O4{$KB>$+$i%m%C(B
$B%/$5$l$F$$$k(B(F_TSLOCK$B!?(BF_CKLOCK$B;XDj;~(B)$B!#(B
: $B<+%W%m%;%9$NB>%U%!%$%k%G%#%9%/%j%W%?$+$i4{$K%m%C%/$5$l$F$$$k(B
(F_LOCK$B;XDj;~(B)$B!#(B
: $BB>%U%!%$%k%G%#%9%/%j%W%?$+$i$N%m%C%/$G$"$j2r=|$G$-$J$$(B
(F_UNLOCK$B;XDj;~(B)$B!#(B
ER_MINTR : $B%a%C%;!<%8%O%s%I%i$,5/F0$5$l$?$?$aBT$A=hM}$,CfCG$5$l$?(B(F_LOCK$B;XDj;~(B)$B!#(B
ER_NOSPC : $B%7%9%F%`$N%a%b%jNN0h$,ITB-$7$?!#(B
ER_PAR : $B%Q%i%a!<%?$,IT@5$G$"$k(B(mode$B$,IT@5(B)$B!#(B
chk_fil |
|
$B%U%!%$%k%"%/%;%98"%A%'%C%/(B |
|
$B!Z7A<0![(B
WERR chk_fil(LINK *lnk, W mode, TC *pwd)
$B!Z%Q%i%a!<%?![(B
LINK *lnk $BBP>]%U%!%$%k(B
W mode $B%A%'%C%/%b!<%I(B
( [ F_READ ] | [ F_WRITE ] | [ F_EXCUTE ] ) $B!B(B [ F_EXIST ]
F_READ $BFI$_9~$_(B(R)$B%"%/%;%98"%A%'%C%/(B
F_WRITE $B=q$-9~$_(B(W)$B%"%/%;%98"%A%'%C%/(B
F_EXCUTE $B
$B!Z%j%?!<%sCM![(B
$B!f(B0 $B@5>o(B($B%U%!%$%k$N%"%/%;%9>pJs!'(BF_EXIST $B;XDj;~(B)
$B!a(B0 $B@5>o(B(F_EXIST $B0J30;XDj;~(B)
$B!c(B0 $B%(%i!<(B($B%(%i!<%3!<%I(B)
$B!Z2r@b![(B
$B;XDj$7$?%U%!%$%k$N;XDj$7$?%"%/%;%9$,2DG=$+H]$+$N%A%'%C%/$r9T$J$&!#(B
F_READ$B!"(BF_WRITE$B!"(BF_EXCUTE $B$NAH$_9g$o$;$G;XDj$7$?%"%/%;%9$,IT2D$N$H$-$O%(%i!<$H$J$k!#%Q%9%o!<%I$O(B F_READ$B!"$^$?$O(B F_WRITE $B$r;XDj$7$?$H$-$N$_%A%'%C%/$5$l$k!#(B
F_EXIST $B;XDj$N$H$-$O!"%U%!%$%k$,B8:_$7$J$$>l9g$O%(%i!<$H$J$j!"B8:_$9$k>l9g$O0J2<$N%"%/%;%9>pJs$r%j%?!<%sCM$H$7$FLa$9!#(B
0.....0 BAPO SRWE
B: $B%"%W%j%1!<%7%g%sB0@-(B2 (1:ON$B!"(B0:OFF)
A: $B%"%W%j%1!<%7%g%sB0@-(B1 (1:ON$B!"(B0:OFF)
P: $B:o=|IT2DB0@-(B (1:ON$B!"(B0:OFF)
O: $B=q9~IT2DB0@-(B (1:ON$B!"(B0:OFF)
S: $B%Q%9%o!<%I$NM-L5(B (1:$BM-!"(B0:$BL5(B )
R: $BFI$_9~$_(B(R)$B%"%/%;%98"(B (1:$BM-!"(B0:$BL5(B )
W: $B=q$-9~$_(B(W)$B%"%/%;%98"(B (1:$BM-!"(B0:$BL5(B )
E: $B
$B!Z%(%i!<%3!<%I![(B
ER_ACCES : $B%U%!%$%k(B(lnk)$B$N%"%/%;%98"(B(F_EXIST$B0J30;XDj;~(B)$B$,$J$$!#(B
ER_ADR : $B%"%I%l%9(B(lnk)$B$N%"%/%;%9$O5v$5$l$F$$$J$$!#(B
ER_IO : $BF~=PNO%(%i!<$,H/@8$7$?!#(B
ER_NOEXS : $B%U%!%$%k(B(lnk)$B$OB8:_$7$F$$$J$$!#(B
ER_NOFS : $B%U%!%$%k(B(lnk)$B$NB0$9$k%U%!%$%k%7%9%F%`$O@\B3$5$l$F$$$J$$!#(B
ER_NOSPC : $B%7%9%F%`$N%a%b%jNN0h$,ITB-$7$?!#(B
ER_PAR : $B%Q%i%a!<%?$,IT@5$G$"$k(B(mode$B$,IT@5(B)$B!#(B
ER_PWD : $B%U%!%$%k(B(lnk)$B$N9g8@MU$,IT0lCW$G$"$k(B(F_READ/F_WRITE$B;XDj;~(B)$B!#(B
ER_RONLY : $B%U%!%$%k(B(F_WRITE$B;XDj;~(B)$B$N=q9~IT2DB0@-$,@_Dj$5$l$F$$$k!"(B
$B$^$?$OB0$9$k%U%!%$%k%7%9%F%`$O=q9~IT2D$G$"$k!#(B
chg_fmd |
|
$B%U%!%$%k%"%/%;%9%b!<%IJQ99(B |
|
$B!Z7A<0![(B
ERR chg_fmd(LINK *lnk, A_MODE *mode)
$B!Z%Q%i%a!<%?![(B
LINK *lnk $BBP>]%U%!%$%k(B
A_MODE *mode $BJQ99$9$k%"%/%;%9%b!<%I(B
$B!Z%j%?!<%sCM![(B
$B!a(B0 $B@5>o(B
$B!c(B0 $B%(%i!<(B($B%(%i!<%3!<%I(B)
$B!Z2r@b![(B
$B;XDj$7$?%U%!%$%k$N%"%/%;%9%b!<%I$rJQ99$9$k!#(B
$B%"%/%;%9%b!<%I$N0J2<$N$=$l$>$l$N%G!<%?$KBP$7$F(B F_NOCHG $B;XDj$r9T$&$H!"$=$N9`L\$OJQ99$7$J$$$3$H$r0UL#$9$k!#(B
- $B=jM-$B%0%k!<%W%"%/%;%9%l%Y%k(B(f_grpacc)
- $B0lHL%"%/%;%9%l%Y%k(B(f_pubacc)
- $B=jM-%0%k!<%WHV9f(B(f_grpno)
$B%"%/%;%9%b!<%I$NJQ99$O!"%U%!%$%k%7%9%F%`$N%"%/%;%9%l%Y%k$,(B 0 $B$N$H$-$OC/$G$bJQ992DG=$G$"$k$,!"%"%/%;%9%l%Y%k$,(B 0 $B$G$J$$$H$-$O%U%!%$%k$N=jM-
$B$9$G$K%*!<%W%s$5$l$F$$$k%U%!%$%k$N%"%/%;%9%b!<%I$rJQ99$7$?>l9g!"$=$NJQ99$O$9$G$K%*!<%W%s$5$l$F$$$k$b$N$K$O1F6A$rM?$($J$$!#(B
$B!Z%(%i!<%3!<%I![(B
ER_ACCES : $B%U%!%$%k(B(lnk)$B$N=jM-
chg_fat |
|
$B%U%!%$%k$N%"%/%;%9B0@-JQ99(B |
|
$B!Z7A<0![(B
ERR chg_fat(LINK *lnk, W attr)
$B!Z%Q%i%a!<%?![(B
LINK *lnk $BBP>]%U%!%$%k(B
W attr $BJQ99$9$k%"%/%;%9B0@-(B
( F_SETRONLY $B!B(B F_RSTRONLY $B!B(B F_SETPERM $B!B(B F_RSTPERM $B!B(B
F_SETA1 $B!B(B F_RSTA1 $B!B(B F_SETA2 $B!B(B F_RSTA2 )
F_SETRONLY $B=q$-9~$_IT2DB0@-$N%;%C%H(B
F_RSTRONLY $B=q$-9~$_IT2DB0@-$N%j%;%C%H(B
F_SETPERM $B:o=|IT2DB0@-$N%;%C%H(B
F_RSTPERM $B:o=|IT2DB0@-$N%j%;%C%H(B
F_SETA1 $B%"%W%j%1!<%7%g%sB0@-(B1$B$N%;%C%H(B
F_RSTA1 $B%"%W%j%1!<%7%g%sB0@-(B1$B$N%j%;%C%H(B
F_SETA2 $B%"%W%j%1!<%7%g%sB0@-(B2$B$N%;%C%H(B
F_RSTA2 $B%"%W%j%1!<%7%g%sB0@-(B2$B$N%j%;%C%H(B
$B!Z%j%?!<%sCM![(B
$B!a(B0 $B@5>o(B
$B!c(B0 $B%(%i!<(B($B%(%i!<%3!<%I(B)
$B!Z2r@b![(B
$B;XDj$7$?%U%!%$%k$N%"%/%;%9B0@-$rJQ99$9$k!#(B
$B%"%/%;%9%b!<%I$NJQ99$O!"%U%!%$%k%7%9%F%`$N%"%/%;%9%l%Y%k$,(B 0 $B$N$H$-$OC/$G$bJQ992DG=$G$"$k$,!"%"%/%;%9%l%Y%k$,(B 0 $B$G$J$$$H$-$O%U%!%$%k$N=jM-
$B$9$G$K%*!<%W%s$5$l$F$$$k%U%!%$%k$N%"%/%;%9%b!<%I$rJQ99$7$?>l9g!"$=$NJQ99$O$9$G$K%*!<%W%s$5$l$F$$$k$b$N$K$O1F6A$rM?$($J$$!#(B
$B!Z%(%i!<%3!<%I![(B
ER_ACCES : $B%U%!%$%k(B(lnk)$B$N=jM-
chg_fpw |
|
$B%U%!%$%k%Q%9%o!<%IJQ99(B |
|
$B!Z7A<0![(B
ERR chg_fpw(W fd, TC *pwd)
$B!Z%Q%i%a!<%?![(B
W fd $B%U%!%$%k%G%#%9%/%j%W%?(B
TC *pwd $B%Q%9%o!<%I(B(TNULL$B!"$^$?$O:GBg%Q%9%o!<%IJ8;z?t$^$GM-8z(B)
NULL $B%Q%9%o!<%I2r=|(B
$B!Z%j%?!<%sCM![(B
$B!a(B0 $B@5>o(B
$B!c(B0 $B%(%i!<(B($B%(%i!<%3!<%I(B)
$B!Z2r@b![(B
$B%*!<%W%s$7$?%U%!%$%k$N%Q%9%o!<%I$rJQ99$9$k!#(B
$B%Q%9%o!<%I$NJQ99$O!"%U%!%$%k%7%9%F%`$N%"%/%;%9%l%Y%k$,(B 0 $B$N$H$-$OC/$G$bJQ992DG=$G$"$k$,!"%"%/%;%9%l%Y%k$,(B 0 $B$G$J$$$H$-$O%U%!%$%k$N=jM-
$B$?$@$7!"%U%!%$%k$N=jM-l9g$O!"%f!<%6!<%l%Y%k(B 0 $B$N%W%m%;%9$+$i$bJQ992DG=$H$J$k!#(B
$B!Z%(%i!<%3!<%I![(B
ER_ACCES : $B%U%!%$%k$N=jM-
chg_fnm |
|
$B%U%!%$%kL>JQ99(B |
|
$B!Z7A<0![(B
ERR chg_fnm(LINK *lnk, TC *name)
$B!Z%Q%i%a!<%?![(B
LINK *lnk $BBP>]%U%!%$%k(B
TC *name $BJQ99$9$k%U%!%$%kL>(B(TNULL$B!"$^$?$O:GBg%U%!%$%kL>J8;z?t$^$GM-8z(B)
$B!Z%j%?!<%sCM![(B
$B!a(B0 $B@5>o(B
$B!c(B0 $B%(%i!<(B($B%(%i!<%3!<%I(B)
$B!Z2r@b![(B
$B;XDj$7$?%U%!%$%k$N%U%!%$%kL>$rJQ99$9$k!#(B
$B%U%!%$%kL>$NJQ99$O!"%U%!%$%k%7%9%F%`$N%"%/%;%9%l%Y%k$,(B 0 $B$N$H$-$OC/$G$bJQ992DG=$G$"$k$,!"%"%/%;%9%l%Y%k$,(B 0 $B$G$J$$$H$-$O%U%!%$%k$N=jM-
$B=q$-9~$_IT2DB0@-!"$^$?$O:o=|IT2DB0@-$N%;%C%H$5$l$F$$$k%U%!%$%k$N%U%!%$%kL>$NJQ99$O$G$-$J$$!#(B
$B;XDj$7$?%U%!%$%k$,%j%s%/%U%!%$%k$N$H$-$O!";2>H@h$N%U%!%$%kL>$*$h$S%j%s%/%U%!%$%kFb$KJ];}$5$l$F$$$k;2>H%U%!%$%kL>$NN>J}$,JQ99$5$l$k!#(B
$B!Z%(%i!<%3!<%I![(B
ER_ACCES : $B%U%!%$%k(B(lnk)$B$N=jM-(B(name)$B$O6u$^$?$OIT@5$G$"$k!#(B
ER_PERM : $B%U%!%$%k(B(lnk)$B$O:o=|IT2D$G$"$k(B($B:o=|IT2DB0@-$,%;%C%H$5$l$F$$$k(B)$B!#(B
ER_RONLY : $B%U%!%$%k(B(lnk)$B$O=q9~IT2D$G$"$k!"(B
$B$^$?$OB0$9$k%U%!%$%k%7%9%F%`$O=q9~IT2D$G$"$k!#(B
chg_ftm |
|
$B%U%!%$%kF|;~JQ99(B |
|
$B!Z7A<0![(B
ERR chg_ftm(LINK *lnk, F_TIME *times)
$B!Z%Q%i%a!<%?![(B
LINK *lnk $BBP>]%U%!%$%k(B
F_TIME *times $BJQ99$9$kF|;~(B
NULL $B8=:_F|;~$K@_Dj(B
$B!Z%j%?!<%sCM![(B
$B!a(B0 $B@5>o(B
$B!c(B0 $B%(%i!<(B($B%(%i!<%3!<%I(B)
$B!Z2r@b![(B
$B;XDj$7$?%U%!%$%k$NJ]B84|8B!":G?7%"%/%;%9F|;~!"$*$h$S:G?799?7F|;~$rJQ99$9$k!#(B
F_TIME $B$N$=$l$>$l$NCM$,(B $B!e(B0$B$N$H$-$O$=$N9`L\$OJQ99$7$J$$!#(B
$B%U%!%$%kF|;~$NJQ99$O!"%U%!%$%k%7%9%F%`$N%"%/%;%9%l%Y%k$,(B 0 $B$N$H$-$OC/$G$bJQ992DG=$G$"$k$,!"%"%/%;%9%l%Y%k$,(B 0 $B$G$J$$$H$-$O%U%!%$%k$N=jM-
$B!Z%(%i!<%3!<%I![(B
ER_ACCES : $B%U%!%$%k(B(lnk)$B$N=jM-
$B!Z7A<0![(B
WERR fil_sts(LINK *lnk, TC *name, F_STATE *stat, F_LOCATE *locat)
$B!Z%Q%i%a!<%?![(B
LINK *lnk $BBP>]%U%!%$%k(B
TC *name $B%U%!%$%kL>$N3JG!\(B1$BJ8;zJ,$NNN0h(B)
NULL $B3JG<$7$J$$(B
F_STATE *stat $B%U%!%$%k4IM}>pJs$N3JGpJs$N3JG
$B!Z%j%?!<%sCM![(B
$B!f(B0 $B@5>o(B($B%U%!%$%k$N;2>H%+%&%s%H(B)
$B!c(B0 $B%(%i!<(B($B%(%i!<%3!<%I(B)
$B!Z2r@b![(B
$B;XDj$7$?%U%!%$%k$N>pJs$r
$B!Z%(%i!<%3!<%I![(B
ER_ADR : $B%"%I%l%9(B(lnk,name,stat,locat)$B$N%"%/%;%9$O5v$5$l$F$$$J$$!#(B
ER_FD : $B%U%!%$%k%G%#%9%/%j%W%?$OB8:_$7$F$$$J$$(B(ofl_sts$B$N>l9g(B)$B!#(B
ER_IO : $BF~=PNO%(%i!<$,H/@8$7$?!#(B
ER_NOEXS : $B%U%!%$%k(B(lnk)$B$OB8:_$7$F$$$J$$(B(fil_sts$B$N>l9g(B)$B!#(B
ER_NOFS : $B%U%!%$%k(B(lnk)$B$NB0$9$k%U%!%$%k%7%9%F%`$O@\B3$5$l$F$$$J$$(B
(fil_sts$B$N>l9g(B)$B!#(B
ER_NOSPC : $B%7%9%F%`$N%a%b%jNN0h$,ITB-$7$?!#(B
$B!Z7A<0![(B
WERR ofl_sts(W fd, TC *name, F_STATE *stat, F_LOCATE *locat)
$B!Z%Q%i%a!<%?![(B
W fd $B%U%!%$%k%G%#%9%/%j%W%?(B
TC *name $B%U%!%$%kL>$N3JG!\(B1$BJ8;zJ,$NNN0h(B)
NULL $B3JG<$7$J$$(B
F_STATE *stat $B%U%!%$%k4IM}>pJs$N3JGpJs$N3JG
$B!Z%j%?!<%sCM![(B
$B!f(B0 $B@5>o(B($B%U%!%$%k$N;2>H%+%&%s%H(B)
$B!c(B0 $B%(%i!<(B($B%(%i!<%3!<%I(B)
$B!Z2r@b![(B
$B%*!<%W%s$7$?%U%!%$%k$N>pJs$r
$B!Z%(%i!<%3!<%I![(B
ER_ADR : $B%"%I%l%9(B(lnk,name,stat,locat)$B$N%"%/%;%9$O5v$5$l$F$$$J$$!#(B
ER_FD : $B%U%!%$%k%G%#%9%/%j%W%?$OB8:_$7$F$$$J$$(B(ofl_sts$B$N>l9g(B)$B!#(B
ER_IO : $BF~=PNO%(%i!<$,H/@8$7$?!#(B
ER_NOEXS : $B%U%!%$%k(B(lnk)$B$OB8:_$7$F$$$J$$(B(fil_sts$B$N>l9g(B)$B!#(B
ER_NOFS : $B%U%!%$%k(B(lnk)$B$NB0$9$k%U%!%$%k%7%9%F%`$O@\B3$5$l$F$$$J$$(B
(fil_sts$B$N>l9g(B)$B!#(B
ER_NOSPC : $B%7%9%F%`$N%a%b%jNN0h$,ITB-$7$?!#(B
lnk_sts |
|
$B%j%s%/%U%!%$%k>pJs$N |
|
$B!Z7A<0![(B
WERR lnk_sts(LINK *lnk, F_LINK *stat)
$B!Z%Q%i%a!<%?![(B
LINK *lnk $BBP>]%j%s%/%U%!%$%k(B
F_LINK *stat $B%j%s%/%U%!%$%k>pJs$N3JG
$B!Z%j%?!<%sCM![(B
$B!f(B0 $B@5>o(B($B%j%s%/%U%!%$%k$N;2>H%+%&%s%H(B)
$B!c(B0 $B%(%i!<(B($B%(%i!<%3!<%I(B)
$B!Z2r@b![(B
$B;XDj$7$?%j%s%/%U%!%$%k$N%j%s%/%U%!%$%k>pJs$r
$B;XDj$7$?%U%!%$%k$,%j%s%/%U%!%$%k$G$J$$$H$-$O%(%i!<$H$J$k!#(B
$B!Z%(%i!<%3!<%I![(B
ER_ADR : $B%"%I%l%9(B(lnk,stat)$B$N%"%/%;%9$O5v$5$l$F$$$J$$!#(B
ER_IO : $BF~=PNO%(%i!<$,H/@8$7$?!#(B
ER_NOEXS : $B%U%!%$%k(B(lnk)$B$OB8:_$7$F$$$J$$!#(B
ER_NOFS : $B%U%!%$%k(B(lnk)$B$NB0$9$k%U%!%$%k%7%9%F%`$O@\B3$5$l$F$$$J$$!#(B
ER_NOLNK : $B%j%s%/%U%!%$%k$G$O$J$$!#(B
ER_NOSPC : $B%7%9%F%`$N%a%b%jNN0h$,ITB-$7$?!#(B
syn_lnk |
|
$B%j%s%/%U%!%$%k$NF14|(B |
|
$B!Z7A<0![(B
WERR syn_lnk(LINK *lnk, W opt)
$B!Z%Q%i%a!<%?![(B
LINK *lnk $BBP>]%j%s%/%U%!%$%k(B
W opt $BF14|B0@-(B
$B!a(B0 $B%A%'%C%/$N$_(B
$B!b(B0 $B%A%'%C%/$*$h$S99?7(B
$B!Z%j%?!<%sCM![(B
$B!f(B0 $B@5>o(B($BF14|>uBV(B)
$B!c(B0 $B%(%i!<(B($B%(%i!<%3!<%I(B)
$B!Z2r@b![(B
$B;XDj$7$?%j%s%/%U%!%$%k$,J];}$7$F$$$k%U%!%$%kL>!"@[email protected]|;~$H!";2>H@h$N%U%!%$%k$N!"@[email protected]|;~$,0lCW$7$F$$$k$+$I$&$+$r%A%'%C%/$9$k!#(B
opt = 0 $B$N$H$-$O%A%'%C%/$N$_$r9T$J$$!"(Bopt $B!b(B 0 $B$N$H$-$O0[$J$C$F$$$?>l9g$O!";XDj$7$?%j%s%/%U%!%$%k$,J];}$7$F$$$k>pJs$r;2>H@h$N%U%!%$%k$N!"@[email protected]|;~$H0lCW$9$k$h$&$K99?7$9$k!#(B
$B%j%?!<%sCM$O0J2<$NF14|>uBV$H$J$k!#(B
F_SYNC $B0lCW$7$F$$$k!#(B
F_DNAME $B%U%!%$%kL>$,0[$J$C$F$$$?(B
F_DDATE $B@[email protected]|;~$,0[$J$C$F$$$?(B
F_DBOTH $B%U%!%$%kL>$H@[email protected]|;~$NN>J}$,6&$K0[$J$C$F$$$?(B
$B;XDj$7$?%U%!%$%k$,%j%s%/%U%!%$%k$G$J$$$H$-$O%(%i!<$H$J$k!#(B
$B!Z%(%i!<%3!<%I![(B
ER_ADR : $B%"%I%l%9(B((lnk))$B$N%"%/%;%9$O5v$5$l$F$$$J$$!#(B
ER_IO : $BF~=PNO%(%i!<$,H/@8$7$?!#(B
ER_NOEXS : $B%U%!%$%k(B(lnk)$B$OB8:_$7$F$$$J$$!#(B
ER_NOFS : $B%U%!%$%k(B(lnk)$B$^$?$O%U%!%$%k(B(lnk)$B$N;2>H@h$N%U%!%$%k$NB0$9$k(B
$B%U%!%$%k%7%9%F%`$O@\B3$5$l$F$$$J$$!#(B
ER_NOLNK : $B%j%s%/%U%!%$%k$G$O$J$$!#(B
ER_NOSPC : $B%7%9%F%`$N%a%b%jNN0h$,ITB-$7$?!#(B
ER_RONLY : $B%U%!%$%k(B(lnk)$B$O=q9~IT2D$G$"$k!"$^$?$OB0$9$k%U%!%$%k%7%9%F%`(B
$B$O=q9~IT2D$G$"$k!#(B
get_dfm |
|
$B%G%U%)!<%k%H%"%/%;%9%b!<%I$N |
|
$B!Z7A<0![(B
ERR get_dfm(DA_MODE *mode)
$B!Z%Q%i%a!<%?![(B
DA_MODE *mode $B%G%U%)!<%k%H%"%/%;%9%b!<%I$N3JG
typedef struct {
UH f_ownacc; /* $B=jM-
$B!Z%j%?!<%sCM![(B
$B!a(B0 $B@5>o(B
$B!c(B0 $B%(%i!<(B($B%(%i!<%3!<%I(B)
$B!Z2r@b![(B
$B<+%f!<%6$N%G%U%)!<%k%H%"%/%;%9%b!<%I$r
$B%G%U%)!<%k%H%"%/%;%9%b!<%I$O!"(B
$B%U%!%$%k$N@8@.;~$K%"%/%;%9%b!<%I$r;XDj$7$J$+$C$?$H$-$KE,MQ$5$l$k%G%U%)!<%k%H$N%"%/%;%9%b!<%I$G$"$j!"%f!<%6$4$H$KDj5A$5$l$k!#(B
f_gacc[4] $B$O!"%f!<%6$N=jB0$9$k%0%k!<%W$N$=$l$>$l$KBP$7$F@_Dj$5$l$F$$$k%0%k!<%W%"%/%;%9%l%Y%k$r<($9C1$J$k;2>HMQ$N%G!<%?$G$"$j!"(Bf_grpacc $B$,
$B!Z%(%i!<%3!<%I![(B
ER_ADR : $B%"%I%l%9(B(mode)$B$N%"%/%;%9$O5v$5$l$F$$$J$$!#(B
set_dfm |
|
$B%G%U%)!<%k%H%"%/%;%9%b!<%I$N@_Dj(B |
|
$B!Z7A<0![(B
ERR set_dfm(DA_MODE *mode)
$B!Z%Q%i%a!<%?![(B
DA_MODE *mode $B@_Dj$9$k%G%U%)!<%k%H%"%/%;%9%b!<%I(B
$B!Z%j%?!<%sCM![(B
$B!a(B0 $B@5>o(B
$B!c(B0 $B%(%i!<(B($B%(%i!<%3!<%I(B)
$B!Z2r@b![(B
$B<+%f!<%6$N%G%U%)!<%k%H%"%/%;%9%b!<%I$r@_Dj$9$k!#(B
$BJQ99$7$?%G%U%)!<%k%H%"%/%;%9%b!<%I$O!"F10l%f!<%6$NA4%W%m%;%9$KBP$7$FM-8z$H$J$k!#(B
$B!Z%(%i!<%3!<%I![(B
ER_ADR : $B%"%I%l%9(B(mode)$B$N%"%/%;%9$O5v$5$l$F$$$J$$!#(B
ER_PAR : $B%Q%i%a!<%?$,IT@5$G$"$k(B(mode $B$NFbMF$,IT@5(B)$B!#(B
att_fls |
|
$B%U%!%$%k%7%9%F%`$N@\B3(B |
|
$B!Z7A<0![(B
ERR att_fls(TC *dev, TC *name, LINK *lnk, UW mode)
$B!Z%Q%i%a!<%?![(B
TC *dev $B%G%P%$%9L>(B
TC *name $B@\B3L>(B(TNULL$B!"$^$?$O:GBg@\B3L>J8;z?t$^$GM-8z(B)
LINK *lnk $B@\B3$7$?%U%!%$%k%7%9%F%`$N%k!<%H%U%!%$%k$N%j%s%/$N3JG
- FS_SYNC $BF14|=q$-9~$_(B
- $B%U%!%$%k$X$N=q$-9~$_$O=q$-9~$_$N%7%9%F%`%3!<%k$rFS_ASYN $BHsF14|=q$-9~$_(B
- $B%U%!%$%k$X$N=q$-9~$_$O=q$-9~$_$N%7%9%F%`%3!<%k$rFS_RONLY $B=q$-9~$_6X;_(B
- $B%U%!%$%k$X$N=q$-9~$_$O$9$Y$F6X;_$5$l$k!#(B
$B!Z%j%?!<%sCM![(B
$B!a(B0 $B@5>o(B
$B!c(B0 $B%(%i!<(B($B%(%i!<%3!<%I(B)
$B!Z2r@b![(B
$B;XDj$7$?%G%P%$%9>e$KB8:_$9$k%U%!%$%k%7%9%F%`$r;XDj$7$?@\B3L>$G%7%9%F%`$K@\B3$9$k!#(B
$B@\B3L>$O!"@\B3$7$?%U%!%$%k%7%9%F%`$N%k!<%H%U%!%$%k$r@dBP%Q%9L>$K$h$j;XDj$9$k$?$a$K;HMQ$5$l!"$9$G$K@\B3:Q$_$N@\B3L>$HF1$8$G$"$C$F$O$$$1$J$$!#(B
$B$9$G$K@\B3:Q$_$N%U%!%$%k%7%9%F%`$r:FEY@\B3$7$h$&$H$7$?$H$-!"$^$?!"@\B3$7$h$&$H$7$?%U%!%$%k%7%9%F%`$N%U%!%$%k%7%9%F%`L>$HF10l$N%U%!%$%k%7%9%F%`L>$r;}$D%U%!%$%k%7%9%F%`$,$9$G$K@\B3$5$l$F$$$?$H$-%(%i!<$H$J$k!#(B
$B%U%!%$%k%7%9%F%`$r@\B3$9$k$K$O!"%G%P%$%9$KBP$9$k@\B3%"%/%;%98"$,I,MW$H$J$k!#(B
$B!Z%(%i!<%3!<%I![(B
ER_ACCES : $BO@M}%G%P%$%9(B(dev)$B$N%"%/%;%98"(B($B@\B3(B)$B$,$J$$!#(B
ER_ADR : $B%"%I%l%9(B(dev,name,lnk)$B$N%"%/%;%9$O5v$5$l$F$$$J$$!#(B
ER_BUSY : $BO@M}%G%P%$%9(B(dev)$B$O4{$K%*!<%W%s$5$l$F$$$k!"$^$?$O@\B3$5$l$F$$$k!#(B
ER_EXS : $B@\B3L>(B(name)$B$O4{$KB8:_$7$F$$$k$^$?$OF10l$N%U%!%$%k%7%9%F%`L>(B
$B$N%U%!%$%k%7%9%F%`$,4{$K@\B3$5$l$F$$$k!#(B
ER_FNAME : $B%U%!%$%kL>(B(name)$B$O6u$^$?$OIT@5$G$"$k!#(B
ER_IO : $BF~=PNO%(%i!<$,H/@8$7$?!#(B
ER_LIMIT : $BF1;~@\B32DG=$J:GBg%U%!%$%k%7%9%F%`?t$r1[$($?!#(B
ER_NODEV : $B%G%P%$%9(B(dev)$B$X$N%"%/%;%9$,$G$-$J$$!#(B
ER_NOEXS : $B%G%P%$%9(B(dev)$B$OEPO?$5$l$F$$$J$$!"$^$?$O%V%m%C%/7?%G%P%$%9$G$J$$!#(B
ER_NOMDA : $B%G%P%$%9(B(dev)$B$N%a%G%#%"$,B8:_$7$J$$!#(B
ER_NOSPC : $B%7%9%F%`$N%a%b%jNN0h$,ITB-$7$?!#(B
ER_TRON : TRON$B7A<0$N%U%!%$%k%7%9%F%`$G$O$J$$!#(B
det_fls |
|
$B%U%!%$%k%7%9%F%`$N@ZCG(B |
|
$B!Z7A<0![(B
ERR det_fls(TC *dev, W eject)
$B!Z%Q%i%a!<%?![(B
TC *dev $B%G%P%$%9L>(B
W eject $B%$%8%'%/%H;XDj(B
$B!a(B0 $B%$%8%'%/%H$7$J$$(B
$B!b(B0 $B%$%8%'%/%H$9$k(B($B%$%8%'%/%HIT2DG=$J%G%P%$%9$N;~$OL5;k(B)
$B!Z%j%?!<%sCM![(B
$B!a(B0 $B@5>o(B
$B!c(B0 $B%(%i!<(B($B%(%i!<%3!<%I(B)
$B!Z2r@b![(B
$B;XDj$7$?%G%P%$%9>e$N@\B3:Q$_$N%U%!%$%k%7%9%F%`$r%7%9%F%`$+$i@Z$jN%$9!#$3$N;~!"%a%b%j>e$K0l;~E*$KJ];}$5$l$F$$$kFbMFEy$,$"$l$P%U%!%$%k%7%9%F%`>e$K$9$Y$F=q$-=P$9!#(B
$B@ZCG$NBP>]$H$J$k%U%!%$%k%7%9%F%`Fb$N%U%!%$%k$,%*!<%W%s$5$l$F$$$k$H$-!"$^$?$O:n6H%U%!%$%k$H$7$F$$$k%W%m%;%9$,B8:_$7$F$$$k$H$-$O!"@ZCG$G$-$J$$!#(B
$B%U%!%$%k%7%9%F%`$r@ZCG$9$k$K$O!"%G%P%$%9$KBP$9$k@\B3%"%/%;%98"$,I,MW$H$J$k!#(B
$B!Z%(%i!<%3!<%I![(B
ER_ACCES : $BO@M}%G%P%$%9(B(dev)$B$N%"%/%;%98"(B($B@\B3(B)$B$,$J$$!#(B
ER_ADR : $B%"%I%l%9(B(dev)$B$N%"%/%;%9$O5v$5$l$F$$$J$$!#(B
ER_BUSY : $B%U%!%$%k%7%9%F%`$O;HMQCf$G$"$k!#(B
ER_IO : $BF~=PNO%(%i!<$,H/@8$7$?!#(B
ER_NOEXS : $B%G%P%$%9(B(dev)$B$OEPO?$5$l$F$$$J$$!"$^$?$O%V%m%C%/7?%G%P%$%9$G$J$$!#(B
ER_NOFS : $BO@M}%G%P%$%9(B(dev)$B>e$NB0$9$k%U%!%$%k%7%9%F%`$O@\B3$5$l$F$$$J$$!#(B
ER_NOMDA : $B%G%P%$%9$N%a%G%#%"$,B8:_$7$J$$!#(B
ER_NOSPC : $B%7%9%F%`$N%a%b%jNN0h$,ITB-$7$?!#(B
ER_RONLY : $B%U%!%$%k$O=q9~IT2D$G$"$k!"$^$?$OB0$9$k%U%!%$%k%7%9%F%`$O(B
$B=q9~IT2D$G$"$k!#(B
syn_fls |
|
$B%U%!%$%k%7%9%F%`$NF14|(B |
|
$B!Z7A<0![(B
ERR syn_fls(VOID)
$B!Z%Q%i%a!<%?![(B
$B$J$7(B
$B!Z%j%?!<%sCM![(B
$B!a(B0 $B@5>o(B
$B!c(B0 $B%(%i!<(B($B%(%i!<%3!<%I(B)
$B!Z2r@b![(B
$B%a%b%j>e$K0l;~E*$KJ];}$5$l$F$$$?FbMFEy$r%U%!%$%k%7%9%F%`>e$K$9$Y$F=q$-=P$7!"%U%!%$%k%7%9%F%`A4BN$rL7=b$J$$$h$&$K99?7$9$k!#(B
$B@\B3$5$l$F$$$k$9$Y$F$N%U%!%$%k%7%9%F%`$KBP$7$F9T$&!#(B
$B!Z%(%i!<%3!<%I![(B
ER_IO : $BF~=PNO%(%i!<$,H/@8$7$?!#(B
ER_NOMDA : $B%G%P%$%9$N%a%G%#%"$,B8:_$7$J$$!#(B
ER_NOSPC : $B%7%9%F%`$N%a%b%jNN0h$,ITB-$7$?!#(B
ER_RONLY : $B%U%!%$%k$O=q9~IT2D$G$"$k!"$^$?$OB0$9$k%U%!%$%k%7%9%F%`$O(B
$B=q9~IT2D$G$"$k!#(B
fls_sts |
|
$B%U%!%$%k%7%9%F%`4IM}>pJs$N |
|
$B!Z7A<0![(B
WERR fls_sts(TC *dev, FS_STATE *buff)
$B!Z%Q%i%a!<%?![(B
TC *dev $B%G%P%$%9L>(B
FS_STATE *buff $B%U%!%$%k%7%9%F%`4IM}>pJs$N3JG
$B!Z%j%?!<%sCM![(B
$B!f(B0 $B@5>o(B($B%U%!%$%k%7%9%F%`$N@\B3%b!<%I(B)
( 0:$B%U%!%$%k%7%9%F%`$O=q9~2D!"(B1:$B%U%!%$%k%7%9%F%`$O=q9~IT2D(B)
$B!c(B0 $B%(%i!<(B($B%(%i!<%3!<%I(B)
$B!Z2r@b![(B
$B;XDj$7$?%G%P%$%9>e$N@\B3:Q$_$N%U%!%$%k%7%9%F%`$N4IM}>pJs$r
$B%U%!%$%k%7%9%F%`$N4IM}>pJs$r
$B!Z%(%i!<%3!<%I![(B
ER_ACCES : $BO@M}%G%P%$%9(B(dev)$B$N%"%/%;%98"(B($B@\B3(B)$B$,$J$$!#(B
ER_ADR : $B%"%I%l%9(B(dev,buf)$B$N%"%/%;%9$O5v$5$l$F$$$J$$!#(B
ER_BUSY : $BO@M}%G%P%$%9$O4{$K%*!<%W%s$5$l$F$$$k(B
ER_IO : $BF~=PNO%(%i!<$,H/@8$7$?!#(B
ER_NODEV : $B%G%P%$%9(B(dev)$B$X$N%"%/%;%9$,$G$-$J$$!#(B
ER_NOEXS : $B%G%P%$%9(B(dev)$B$OEPO?$5$l$F$$$J$$!"$^$?$O%V%m%C%/7?%G%P%$%9$G$J$$!#(B
ER_NOMDA : $B%G%P%$%9(B(dev)$B$N%a%G%#%"$,B8:_$7$J$$!#(B
ER_NOSPC : $B%7%9%F%`$N%a%b%jNN0h$,ITB-$7$?!#(B
ER_TRON : TRON$B7A<0$N%U%!%$%k%7%9%F%`$G$O$J$$!#(B
chg_fls |
|
$B%U%!%$%k%7%9%F%`>pJs$NJQ99(B |
|
$B!Z7A<0![(B
ERR chg_fls(TC *dev, TC *fs_name, TC *fs_locate)
$B!Z%Q%i%a!<%?![(B
TC *dev $B%G%P%$%9L>(B
NULL $B$N>l9g%(%i!<$H$J$k(B
TC *fs_name $BJQ99$9$k%U%!%$%k%7%9%F%`L>(B
NULL $BJQ99$7$J$$(B
TC *fs_locate $BJQ99$9$k%G%P%$%9=j:_L>(B
NULL $BJQ99$7$J$$(B
$B!Z%j%?!<%sCM![(B
$B!a(B0 $B@5>o(B
$B!c(B0 $B%(%i!<(B($B%(%i!<%3!<%I(B)
$B!Z2r@b![(B
$B;XDj$7$?%G%P%$%9>e$N@\B3:Q$_$N%U%!%$%k%7%9%F%`$N%U%!%$%k%7%9%F%`L>$*$h$S%G%P%$%9=j:_L>$rJQ99$9$k!#(B
$B%U%!%$%k%7%9%F%`>pJs$rJQ99$9$k$K$O!"(B
$B%G%P%$%9$KBP$9$k@\B3%"%/%;%98"!"$*$h$S=q9~$_%"%/%;%98"$,I,MW$H$J$k!#(B
$B!Z%(%i!<%3!<%I![(B
ER_ACCES : $BO@M}%G%P%$%9(B(dev)$B$N%"%/%;%98"(B($B@\B3!"=q9~(B)$B$,$J$$!#(B
ER_ADR : $B%"%I%l%9(B(dev,fs_name,fs_locate)$B$N%"%/%;%9$O5v$5$l$F$$$J$$!#(B
ER_BUSY : $BO@M}%G%P%$%9$O4{$K%*!<%W%s$5$l$F$$$k(B
ER_EXS : $B;XDj$7$?%U%!%$%k%7%9%F%`L>$N%U%!%$%k%7%9%F%`$O4{$KB8:_$7$F$$$k(B
($B@\B3$5$l$F$$$k(B)$B!#(B
ER_FNAME : $B%U%!%$%k%7%9%F%`L>$O6u!"$^$?$OIT@5(B
ER_IO : $BF~=PNO%(%i!<$,H/@8$7$?!#(B
ER_NODEV : $B%G%P%$%9(B(dev)$B$X$N%"%/%;%9$,$G$-$J$$!#(B
ER_NOEXS : $B%G%P%$%9(B(dev)$B$OEPO?$5$l$F$$$J$$!"$^$?$O%V%m%C%/7?%G%P%$%9$G$J$$!#(B
ER_NOMDA : $B%G%P%$%9(B(dev)$B$N%a%G%#%"$,B8:_$7$J$$!#(B
ER_NOSPC : $B%7%9%F%`$N%a%b%jNN0h$,ITB-$7$?!#(B
ER_RONLY : $B%U%!%$%k$O=q9~IT2D$G$"$k!"$^$?$OB0$9$k%U%!%$%k%7%9%F%`$O(B
$B=q9~IT2D$G$"$k!#(B
ER_TRON : TRON$B7A<0$N%U%!%$%k%7%9%F%`$G$O$J$$!#(B
$B!Z7A<0![(B
WERR get_nlk(LINK *lnk)
$B!Z%Q%i%a!<%?![(B
LINK *lnk $B3+;O%U%!%$%k$N%j%s%/(B ($BF~NO(B)
$B
$B!Z%j%?!<%sCM![(B
$B!f(B0 $B@5>o(B($BH%+%&%s%H(B)
$B!c(B0 $B%(%i!<(B($B%(%i!<%3!<%I(B)
$B!Z2r@b![(B
$B;XDj$7$?3+;O%U%!%$%k$N%U%!%$%k(BID$B$h$jBg$-$J%U%!%$%k(BID$B$r;}$D%U%!%$%k$N$&$A:G>.$N%U%!%$%k(BID$B$r;}$D%U%!%$%k$X$N%j%s%/$r
$B3+;O%U%!%$%k$N%U%!%$%k(BID$B$O
$BK\%7%9%F%`%3!<%k$K$h$j!"%U%!%$%k%7%9%F%`>e$KB8:_$9$k$9$Y$F$N%U%!%$%k(B($B;2>H%+%&%s%H(B = 0 $B$N%U%!%$%k$b4^$`(B)$B$X$N%j%s%/$r
$B!Z%(%i!<%3!<%I![(B
ER_ADR : $B%"%I%l%9(B(lnk)$B$N%"%/%;%9$O5v$5$l$F$$$J$$!#(B
ER_IO : $BF~=PNO%(%i!<$,H/@8$7$?!#(B
ER_NOFS : $B%U%!%$%k(B(lnk)$B$NB0$9$k%U%!%$%k%7%9%F%`$O@\B3$5$l$F$$$J$$!#(B
ER_NOEXS : $B%U%!%$%k(B(lnk)$B$h$jBg$-$J%U%!%$%k(BID$B$r;}$D%U%!%$%k$OB8:_$7$F$$$J$$!#(B
ER_NOSPC : $B%7%9%F%`$N%a%b%jNN0h$,ITB-$7$?!#(B
lst_fls |
|
$B%U%!%$%k%7%9%F%`$N |
|
$B!Z7A<0![(B
WERR lst_fls(F_ATTACH *buff, W cnt)
$B!Z%Q%i%a!<%?![(B
F_ATTACH *buff $B%U%!%$%k%7%9%F%`@\B3>pJs$N3JG(B */
TC dev[L_DEVNM]; /* $BO@M}%G%P%$%9L>(B */
} F_ATTACH;
W cnt $B!d(B 0 $B@\B3$5$l$F$$$kA4$F$N%U%!%$%k%7%9%F%`$N@\B3>pJs$r(B
buff $B$K$KBP1~$9$k(B
$B%G%P%$%9L>$r(B buff->dev[] $B$K$KBP1~$9$k(B
$B@\B3L>$r(B buff->a_name[] $B$K
$B!Z%j%?!<%sCM![(B
$B!a(B1 $B@5>o(B(F_GETDEV, F_FETNAM $B;XDj;~(B)
$B!f(B0 $B@5>o(B($B@\B3:Q$_$N%U%!%$%k%7%9%F%`?t(B)
$B!c(B0 $B%(%i!<(B($B%(%i!<%3!<%I(B)
$B!Z2r@b![(B
$B@\B3:Q$_$N%U%!%$%k%7%9%F%`$N@\B3L>$H%G%P%$%9L>$H
$B@\B3$5$l$F$$$k%U%!%$%k%7%9%F%`$N?t$,;XDj$7$?MWAG?t(B(cnt)$B$h$jB?$$>l9g$O!":G=i$NMWAG?t(B(cnt)$B8D$N$_$r
$B!Z%(%i!<%3!<%I![(B
ER_ADR : $B%"%I%l%9(B(buff)$B$N%"%/%;%9$O5v$5$l$F$$$J$$!#(B
ER_NOFS : $B%U%!%$%k%7%9%F%`$O@\B3$5$l$F$$$J$$(B(cnt=$B!](B1,$B!](B2$B$N;~(B)$B!#(B
ER_PAR : $B%Q%i%a!<%?$,IT@5$G$"$k(B(cnt=0,<$B!](B2)$B!#(B
map_rec |
|
$B%l%3!<%I$N%^%C%W(B |
|
$B!Z7A<0![(B
WERR map_rec(W fd, W offset, B **addr, W size, W mode)
$B!Z%Q%i%a!<%?![(B
W fd $B%U%!%$%k%G%#%9%/%j%W%?(B
W offset $B%^%C%W3+;O%P%$%H%*%U%;%C%H(B
B **addr $B%^%C%W$5$l$?%a%b%j%"%I%l%9$N3JG
$B!Z%j%?!<%sCM![(B
$B!d(B0 $B@5>o(B($B%^%C%W(BID)
$B!c(B0 $B%(%i!<(B($B%(%i!<%3!<%I(B)
$B!Z2r@b![(B
$B%*!<%W%s$7$?%U%!%$%k$N8=:_%l%3!<%I$N(B offset $B$+$i(B size $B%P%$%H$r%a%b%j!<6u4V>e$K%^%C%W$9$k!#%^%C%W$5$l$?%l%3!<%I$NFbMF$O%a%b%j!<$H$7$F%"%/%;%9$9$k$3$H$,$G$-$k!#(B
F_COMMON $B$r;XDj$7$?>l9g$K$O!"6&M-%a%b%j!<6u4V>e$K%^%C%W$5$l$k!#$3$N>l9g!"$9$Y$F$N%W%m%;%9$+$i%"%/%;%92DG=$H$J$k!#(B
F_SYSTEM $B$r;XDj$7$?>l9g$K$O!"%7%9%F%`%a%b%j!<6u4V>e$K%^%C%W$5$l$k!#$3$N>l9g!"$9$Y$F$N%7%9%F%`%W%m%;%9$+$i%"%/%;%92DG=$H$J$k!#%^%C%W$7$?%W%m%;%9<+?H$G$"$C$F$b!"0lHL$N%"%W%j%1!<%7%g%s%W%m%;%9$+$i$O%"%/%;%9$G$-$J$$!#$7$?$,$C$F!"%"%W%j%1!<%7%g%s%W%m%;%9$+$i$O$3$N;XDj$r;HMQ$9$Y$-$G$O$J$$!#(B
F_COMMON,F_SYSTEM $B$N$$$:$l$b;XDj$7$J$1$l$P!"%^%C%W$7$?%W%m%;%9$N%m!<%+%k%a%b%j!<6u4V>e$K%^%C%W$5$l$k!#$3$N>l9g!"%^%C%W$7$?%W%m%;%90J30$+$i%"%/%;%9$9$k$3$H$O=PMh$J$$!#(B
$B%^%C%W$5$l$k%"%I%l%9$O%7%9%F%`$G7hDj$5$l!"%"%W%j%1!<%7%g%sB&$+$i;XDj$9$k$3$H$O$G$-$J$$!#(B
$B%^%C%W%b!<%I$N;XDj$O%*!<%W%s$7$?%b!<%I$KL7=b$7$F$O$$$1$J$$!#(B(ER_FD)
- F_READ $B%*!<%W%s$G$O!"(BF_WRITE $B$G%^%C%W$G$-$J$$!#(B
- F_WRITE $B%*!<%W%s$G$O!"(BF_READ $B$*$h$S(B F_EXCUTE $B$G%^%C%W$G$-$J$$!#(B
$B%j%s%/%l%3!<%I$O%^%C%W$G$-$J$$!#(B(ER_REC)
$B%^%C%WCf$O!"
- del_rec $B%^%C%W$7$F$$$k%l%3!<%I$rBP>]$H$9$k>l9g!#(B
- wri_rec $B%^%C%W$7$F$$$k%l%3!<%I$rBP>]$H$9$k>l9g!#(B
- trc_rec $B%^%C%W$7$F$$$k%l%3!<%I$rBP>]$H$9$k>l9g!#(B
- xch_fil $B%^%C%W$7$F$$$k%l%3!<%I$r4^$`%U%!%$%k$rBP>]$H$9$k>l9g!#(B
$B%$%s%W%j%a%s%H$K0MB8$7$F0J2<$N@)8B$,$D$1$i$l$k>l9g$,$"$k!#(B
- $B%^%C%W2DG=$J%U%!%$%k%7%9%F%`(B($B%G%P%$%9(B)
- $B%^%C%W%b!<%I$NAH$_9g$o$;(B
- offset$B!"$*$h$S(B size $B$NCM(B
$B!Z%(%i!<%3!<%I![(B
ER_FD : $B%U%!%$%k%G%#%9%/%j%W%?$OB8:_$7$F$$$J$$!#(B
: $B%^%C%W%b!<%I$H%*!<%W%s%b!<%I$,L7=b$7$F$$$k!#(B
ER_REC : $B8=:_%l%3!<%I$O%j%s%/%l%3!<%I$G$"$k!#(B
ER_ADR : $B%"%I%l%9(B(addr)$B$N%"%/%;%9$O5v$5$l$F$$$J$$!#(B
ER_ENDR : $B8=:_%l%3!<%I$O=*C<%l%3!<%I$G$"$k!#(B
ER_LOCK : $B8=:_%l%3!<%I$OB>$+$i%m%C%/$5$l$F$$$k!#(B
ER_IO : $BF~=PNO%(%i!<$,H/@8$7$?!#(B
ER_PAR : $B%Q%i%a!<%?$,IT@5$G$"$k!#(B
ER_NOSPT : $B%7%9%F%`$N@)8B$K$h$j%^%C%W$G$-$J$$!#(B
ump_rec |
|
$B%l%3!<%I$N%"%s%^%C%W(B |
|
$B!Z7A<0![(B
ERR ump_rec(W fd, W mapid)
$B!Z%Q%i%a!<%?![(B
W fd $B%U%!%$%k%G%#%9%/%j%W%?(B
W mapid $B%^%C%W(BID
$B!Z%j%?!<%sCM![(B
$B!a(B0 $B@5>o(B
$B!c(B0 $B%(%i!<(B($B%(%i!<%3!<%I(B)
$B!Z2r@b![(B
$B%*!<%W%s$7$F$$$k%U%!%$%k$N%^%C%W(BID$B$G;XDj$7$?%^%C%W$r2r=|$9$k!#(B
$B%U%!%$%k$N%/%m!<%:;~$K$O%*!<%W%s$7$?%W%m%;%9$G@_Dj$7$?%^%C%W$O2r=|$5$l$k!#(B
$B!Z%(%i!<%3!<%I![(B
ER_FD : $B%U%!%$%k%G%#%9%/%j%W%?$OB8:_$7$F$$$J$$!#(B
ER_NOEXS : $B%^%C%W(BID$B$OB8:_$7$F$$$J$$!#(B
ER_IO : $BF~=PNO%(%i!<$,H/@8$7$?!#(B
chg_fsm |
|
$B%U%!%$%k%7%9%F%`@\B3%b!<%I$NJQ99(B |
|
$B!Z7A<0![(B
WERR chg_fsm( TC *dev, UW mode )
$B!Z%Q%i%a!<%?![(B
TC *dev $BO@M}%G%P%$%9L>(B
UW mode $B@\B3%b!<%I(B (att_fls $B$N(B mode $B$HF1$8(B)
( FS_SYNC $B!B(B FS_ASYN $B!B(B FS_RONLY )
FS_SYNC $BF14|(B
FS_ASYN $BHsF14|(B
FS_RONLY $B=q$-9~$_6X;_(B
$B!Z%j%?!<%sCM![(B
$B!f(B0 $B@5>o(B($BJQ99A0$N@\B3%b!<%I(B)
$B!c(B0 $B%(%i!<(B($B%(%i!<%3!<%I(B)
$B!Z2r@b![(B
dev $B$N%G%P%$%9$N@\B3>uBV$r(B mode $B$G;XDj$7$?@\B3%b!<%I$KJQ99$9$k!#(B
dev $B$O$9$G$K@\B3$5$l$F$$$k%G%P%$%9$G$J$1$l$P$J$i$J$$!#(B
$B%j%?!<%sCM$KJQ99A0$N@\B3%b!<%I$rJV$9!#(B
$B@\B3%b!<%I$rJQ99$9$k$?$a$K$O!"(Bdev $B$KBP$9$k@\B3%"%/%;%98"$,I,MW$G$"$k!#(B
$B@\B3%b!<%IJQ99A0$,=q$-9~$_2D$G$"$C$?>l9g!"=q$-9~$_6X;_$KJQ99$7$F$bJQ99A0$K9T$o$l$?(B map_rec() $B$K$h$k=q$-9~$_%b!<%I$N%l%3!<%I%^%C%W$O$=$N$^$^M-8z$H$J$j!"=q$-9~$_$b9T$o$l$k!#(B
F_WRITE $B$^$?$O(B F_UPDATE $B$G%*!<%W%s$7$F$$$k%U%!%$%k$,$"$k$H$-!"@\B3%b!<%I$r=q$-9~$_6X;_$K$9$k$H!"$=$N%U%!%$%k$KBP$9$k(B wri_rec() $BEy$N=q$-9~$_$,(B ER_RONLY $B$H$J$k!#(B
$B!Z%(%i!<%3!<%I![(B
ER_ACCES : $BO@M}%G%P%$%9(B(dev)$B$K@\B3%"%/%;%98"$,$J$$!#(B
ER_ADR : $B%"%I%l%9(B(dev)$B$N%"%/%;%9$,5v$5$l$F$$$J$$!#(B
ER_IO : $BF~=PNO%(%i!<$,H/@8$7$?!#(B
ER_PAR : $B%Q%i%a!<%?$,IT@5$G$"$k!#(B
ER_NOFS : $BO@M}%G%P%$%9(B(dev)$B$O!"%U%!%$%k%7%9%F%`$H$7$F@\B3$5$l$F$$$J$$!#(B
$B$3$N>O$NL\
$BA0JG(B:1.5 $B%a%b%j4IM}$K$b$I$k(B
$B