From owner-FreeBSD-users-jp@jp.freebsd.org  Wed Oct 31 11:29:44 2001
Received: (from daemon@localhost)
	by castle.jp.freebsd.org (8.9.3+3.2W/8.7.3) id LAA57236;
	Wed, 31 Oct 2001 11:29:44 +0900 (JST)
	(envelope-from owner-FreeBSD-users-jp@jp.FreeBSD.org)
Received: from mfo00.iij.ad.jp (mfo00.iij.ad.jp [202.232.2.117])
	by castle.jp.freebsd.org (8.9.3+3.2W/8.7.3) with ESMTP id LAA57231
	for <FreeBSD-users-jp@jp.freebsd.org>; Wed, 31 Oct 2001 11:29:44 +0900 (JST)
	(envelope-from okuyamak@dd.iij4u.or.jp)
Received: from dd.iij4u.or.jp (dd.iij4u.or.jp [210.130.0.14])
	by mfo00.iij.ad.jp (8.8.8/MFO1.3) with ESMTP id LAA06844
	for <FreeBSD-users-jp@jp.freebsd.org>; Wed, 31 Oct 2001 11:29:44 +0900 (JST)
Received: from localhost (arizona.yamato.ibm.com [203.141.89.176])
	by dd.iij4u.or.jp (8.8.8+2.2IIJ/4U1.1) with ESMTP id LAA04761
	for <FreeBSD-users-jp@jp.freebsd.org>; Wed, 31 Oct 2001 11:29:43 +0900 (JST)
Date: Wed, 31 Oct 2001 11:29:24 +0900 (JST)
Message-Id: <20011031.112924.74750058.okuyamak@dd.iij4u.or.jp>
To: FreeBSD-users-jp@jp.freebsd.org
From: Kenichi Okuyama <okuyamak@dd.iij4u.or.jp>
In-Reply-To: <vtrsnc15ac7.wl@castor.sakichan.org>
References: <vtr8zdu9pys.wl@castor.sakichan.org>
	<20011030.150219.126572030.okuyamak@dd.iij4u.or.jp>
	<vtrsnc15ac7.wl@castor.sakichan.org>
X-Mailer: Mew version 2.0 pre3 on Emacs 20.7 / Mule 4.0 (HANANOEN)
Mime-Version: 1.0
Content-Type: Text/Plain; charset=iso-2022-jp
Content-Transfer-Encoding: 7bit
Reply-To: FreeBSD-users-jp@jp.freebsd.org
Precedence: list
X-Distribute: distribute version 2.1 (Alpha) patchlevel 24e+010328
X-Sequence: FreeBSD-users-jp 65263
Subject: [FreeBSD-users-jp 65263] Re: pthread
 =?ISO-2022-JP?B?GyRCJSolVyU3JWclcyRyJEQkMSRrJEglUCU5JSgbKEI=?=
 =?ISO-2022-JP?B?GyRCJWkhPBsoQg==?= 
Errors-To: owner-FreeBSD-users-jp@jp.freebsd.org
Sender: owner-FreeBSD-users-jp@jp.freebsd.org
X-Originator: okuyamak@dd.iij4u.or.jp

$B1|;3(B@IBM$B$G$9!#(B

>>>>> "SN" == SAKIYAMA Nobuo <sakichan@sakichan.org> writes:
>> $B0lJ}(B A $B$O(B Mutex $B$r2rJ|$7$h$&$H$7$F(B Store Conditional $B$G<:GT$7$D$E$1(B
>> $B$k!D$H$$$&7A$rA[Dj$7$F$$$^$7$?!#(B
SN> Load Linked/Store Conditional $B$NAH9g$;$GC1=c$J(BMutex$B$r$D$/$k>l9g$O!"(B
SN> Mutex $B$r3MF@$7$K$$$/$H$-$K$N$_;H$$$^$9!#2rJ|$9$kB&$O!"!V%a%b%j$K2?$r=q(B
SN> $B$1$P$$$$$+!W$o$+$C$F$$$k$N$G!"C1$J$k(B store $B$G=q$-$^$9!#(B

$B!D$"!D$=$&$+!#$=$N8e$GI,MW$K$J$C$?$i(B isync $B$r$+$1$l$P$$$$$@$1$+!#(B

#$B2rJ|$bB.96$G%a%b%j$KH?1G$7$F$/$l$J$$$HB>$N(B CPU $B$,$8$j$8$jBT$?$J$/$F(B
#$B$O$$$1$J$$5$$b$9$k$,!D5$$K$7$J$/$F$$$$$N$+(B?


>> $B9M$($F$_$?$i!"(BLoad Linked $B$r9T$C$?CJ3,$G(B Mutex $B$,(B Lock $B$5$l$F$$$k$3(B
>> $B$H$OH=$k$N$G!"$3$N>l9g$O(B Store Conditional $B$O<B9T$9$kI,MW$,$J$$$s$G(B
>> $B$9$M!#(B
SN> $BC1$K$=$&=q$$$F$7$^$&$H!"(Blinked$B$N>uBV(B (PowerPC$BMQ8l$J$i(B reservation)$B$,30(B
SN> $B$5$l$J$/$F:$$j$^$9$M!#(B

$B!D$(!<$C$H(B linked $B>uBV$,$O$:$5$l$J$$$H2?$,:$$k$N$G$7$g$&!D!#(B
$B3N$+(B linked $B>uBV$O(B

1) $BB>$N(B CPU $B$,$=$3$r%"%/%;%9$9$k$3$H$rAK;_$7$J$$(B
2) $BF1$8!"$"$k$$$OJL$N!"(Blinked $B%"%I%l%9$r%"%/%;%9$9$l$P$=$3$,(B
   $B3NJ]$5$l$k(B

$B$@$1$G$9$h$M(B?$B$G$9$N$G!"C/$b:$$i$J$$5$$,$9$k$s$G$9$,!D!#(B
#$B$I$&$7$F$b$H$$$&$J$i!"%9%/%i%C%A%"%I%l%9$KBP$9$k(B store conditional 
#$B$r<B9T$9$l$P$$$$$h$&$K;W$($k$,!D!#(B

$B$@$$$?$$!"(Bload linked $B!X$@$1!Y(B($B$d%9%/%i%C%A%"%I%l%9$KBP$9$k(B store
conditional $B$D$-(B)$B$H$$$&$N$,$G$-$J$$$H!"(Btrylock $B$,:n$l$J$$5$$,$9$k$N(B
$B$G$9$,!D!#(B



>> $B$3$l$b$=$&$G$9$,!"$I$A$i$+$H$$$&$H(B($B2?$i$+$NM}M3$G(B) Load Linked $B$+$i(B 
>> Store Conditional $B$^$G$N;~4V$,D9$$J*$,0lJ}E*$KITMx$K$J$k;v$NJ}$,LdBj(B
>> $B$J5$$,!D!#$D$^$j!"$3$N%b%G%k$@$H40A4$KF1$8@-G=$N(B CPU $BF1;N$G$N(B SMP $B$7(B
>> $B$+!V%U%'%"!W$J%7%9%F%`$O:n$l$J$$!D!#(B
SN> load linked $B$H(B store conditional $B$N4V$OD9$/:n$C$A$c$$$1$J$$$N$@$7!"$=(B
SN> $B$b$=$b!V40A4$KF1$8@-G=$N(BCPU$B!W$G$J$+$C$?$i!"$=$l$O(BSMP$B$G$J$$$N$G$o!)(B(UMA 
SN> $B$G$O$"$k$+$b$7$l$J$$$1$I(B)$B!#$=$l$K!"@-G=$,F10l$G$b!"!V%U%'%"!W$+$b$7$l(B
SN> $B$J$$$3$H$G$O$J$/$F!V%U%'%"!W$G$"$k$3$H$rJ]>Z$9$k$H$$$&OC$K$J$l$P!"(B3$B%W(B
SN> $B%m%;%C%50J>e$G$O$A$c$s$H%9%1%8%e!<%j%s%0$G$-$k%"%k%4%j%:%`$G$J$$$H$$$1(B
SN> $B$J$$$o$1$G!"$=$NE@$G(Bload linked /store conditional $B$,(B read modify
SN> write $BL?Na$KBP$7$F3JJL$KNt$k$H$$$&OC$K$O$J$i$J$$$H;W$$$^$9!#(B

read modify write $B$O!":G=i$N(B read $B$N$?$a$N%P%93NJ]$N=j$G8xJ?@-$r3NJ](B
$B$9$l$P$=$l$G$$$$$o$1$G$9$h$M(B?$B$=$N0UL#$GF14|@lMQ@~$HF1$8;v$r$7$F$$$k(B
$B$o$1$G$9!#(B

load linked/store conditional $B$r;H$&$H$-$KF14|@lMQ$N@~$r0z$CD%$C$?$N(B
$B$G$O2?$r$d$C$F$$$k$N$+H=$i$J$/$J$C$F$7$^$$$^$9$7!"$@$+$i$H$$$C$F!"Bf(B
$B?t$,B?$/$J$l$P!X(Bload linked $B$N:G8e$G%P%9$r2rJ|$7$F$+$i!"(Bstore
conditional $B$N:G=i$G%P%9$r3NJ]$9$k$^$G!Y$N;~4V$,C;$$$b$N$,M%0L$K$J$j(B
$B$^$9!#2>$KF1@-G=$N(B CPU $B$,A4$/F1$8%3!<%I$r<B9T$7$F$$$?$H$7$F$b!"$3$l(B
$B$G$O%P%9%3%s%H%m!<%i!<$K6a$$B&$N(B CPU $B$,M-Mx$K$J$C$F$7$^$&$H$+!"F1$8(B
$B$O$:$N(B CPU $B$N%m%C%H:9$+$i$/$kHyL/$J;~4V:9!"$H$+$N!V%"%J%m%0$J!WLdBj(B
$B$KD>LL$7$F$7$^$&$H;W$&$s$G$9$,!D!#(B

$B$=$l$J$i(B Read/Modify/Write $B$NJ}$,4JC1$K$G$-$k5$$,$9$k!D!#(B


$B!D$D!<$+!"$3$&$$$&!V%W%j%_%F%#%V$J$s$@$1$I!"D>@\%f!<%6!<$K8x3+$9$k$H(B
$B4m81$G!"$G$b(B system call $B$K$7$F$?$iCY$/$F$d$C$F$i$s$J$$!WN`$$$N%$%s(B
$B%9%H%i%/%7%g%s$r3HD%<BAu$G$-$k!"%^%$%/%m%3!<%I3HD%5!G=IU$N(B CPU $B$,$"(B
$B$l$P$$$$$N$+!D!#(BCrusoe $B$J$s$+$G!"$G$-$J$$$+$J$!!D!#IaCJ$O(B VLIW $B%$%s(B
$B%9%H%i%/%7%g%s$,$=$N$^$^<B9T$5$l$k$s$@$1$I!"$$$/$D$+$"$k(B undefined
$B$J%3!<%I$KBP$7$F$3$&$$$&3HD%$,3d$j?6$l$k$h$&$K$J$C$F$kE[!D!#(B
---- 
$B1|;3(B $B7r0l(B@$BEl5~4pAC8&5f=j(B.$BF|K\(BIBM($B3t(B)[$BGaGX2q(B:No.0x00000001]
#URL http://www.dd.iij4u.or.jp/~okuyamak/
#$B:#F|$N$*8@MU!XS-$-$NN5!Y(B:1$B4,$H(B9$B4,$,<j$K$O$$$i$J$$$#!D!#(B
