From owner-FreeBSD-users-jp@jp.FreeBSD.org Sat Jun 25 18:34:40 2005
Received: (from daemon@localhost)
	by castle.jp.FreeBSD.org (8.11.6p2+3.4W/8.11.3) id j5P9YeY61970;
	Sat, 25 Jun 2005 18:34:40 +0900 (JST)
	(envelope-from owner-FreeBSD-users-jp@jp.FreeBSD.org)
Received: from mo01.iij4u.or.jp (mo01.iij4u.or.jp [210.130.0.20])
	by castle.jp.FreeBSD.org (8.11.6p2+3.4W/8.11.3) with ESMTP/inet id j5P9Ydh61961
	for <FreeBSD-users-jp@jp.FreeBSD.org>; Sat, 25 Jun 2005 18:34:40 +0900 (JST)
	(envelope-from okuyamak@dd.iij4u.or.jp)
Received: MO(mo01) for <FreeBSD-users-jp@jp.FreeBSD.org> id j5P9YdnO007023; Sat, 25 Jun 2005 18:34:39 +0900 (JST)
Received: MDO(mdo00) id j5P9YdYe022934; Sat, 25 Jun 2005 18:34:39 +0900 (JST)
Received: from localhost (h217.p056.iij4u.or.jp [210.130.56.217])
	by mbox.iij4u.or.jp (4U-MR/mbox01) id j5P9YYcW004271
	for <FreeBSD-users-jp@jp.FreeBSD.org>; Sat, 25 Jun 2005 18:34:37 +0900 (JST)
Message-Id: <20050625.183429.01369390.okuyamak@dd.iij4u.or.jp>
To: FreeBSD-users-jp@jp.FreeBSD.org
From: Kenichi Okuyama <okuyamak@dd.iij4u.or.jp>
In-Reply-To: <200506250815.j5P8FCC11375@srapc342.sra.co.jp>
References: <200506241542.j5OFgYZ05349@srapc342.sra.co.jp>
	<20050625.153035.26501610.okuyamak@dd.iij4u.or.jp>
	<200506250815.j5P8FCC11375@srapc342.sra.co.jp>
X-Mailer: Mew version 4.0.65 on Emacs 21.4 / Mule 5.0 (SAKAKI)
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
Date: Sat, 25 Jun 2005 18:34:29 +0900
X-Sequence: FreeBSD-users-jp 85543
Subject: [FreeBSD-users-jp 85543] Re: Linux
 =?ISO-2022-JP?B?GyRCJEgkTjBjJCQhKSFKJUclIyU5JS85YklpMlkbKEI=?=
 =?ISO-2022-JP?B?GyRCIUsbKEI=?=
Sender: owner-FreeBSD-users-jp@jp.FreeBSD.org
X-Originator: okuyamak@dd.iij4u.or.jp
X-Distribute: distribute version 2.1 (Alpha) patchlevel 24e+050320

$BT|;3$G$9!#(B

>>>>> "SN" == SODA Noriyuki <soda@sra.co.jp> writes:
SN> raw $B%G%P%$%9%"%/%;%9$N>l9g!"J*M}%Z!<%8$rD>@\(B I/O $B$9$k$o$1$G$9$+$i!"(B
SN> $B$b$71|;3$5$s$N$*$C$7$c$kDL$j!"Nc$($P(B write(2) $B$N(B I/O $B$,40N;$9$k$N$r(B
SN> $BBT$?$:$K(B write(2) $B%7%9%F%`%3!<%k$+$i%f!<%6%"%W%j$K@)8f$,JV$C$F$-$F(B
SN> $B$7$^$&$H2>Dj$9$k$H!"(B

IO $B$H$$$&$N$K$O$$$m$$$m$J%l%Y%k$,$"$j$^$9!#(BHDD $B>e$K(B IO $B$r$+$1$k$P$"(B
$B$$!"%f!<%6!<%l%Y%k$+$i8+$?>l9g$r9M$($k$H!"$3$l$@$1$"$k!#(B

1) OS $B$N(B cache $B>e$K%G!<%?$,:\$C$F$$$k(B
   ($BBgDq$N>l9g(B async IO $B$J$i$3$l$G(B OK)
2) OS $B$,(B HDD $B$N(B write cache $B>e$K%G!<%?$rE>Aw$9$k$h$&;X<($9$k(B
   ($B$,!"$=$3$G=*$o$j(B)
3) OS $B$,(B HDD $B$N(B write cache $B>e$K%G!<%?$,E>Aw$5$l$?$N$r3NG'$7$?$i!"(B
   write cache $B$r(B flush $B$7$F(B platter $B>e$K=q$-=P$;!"$H$$$&L?Na$rEA$((B
   $B$k(B(FLUSH CACHE)
4) OS $B$,(B HDD $B$N(B write cache $B>e$K%G!<%?$,E>Aw$5$l$?$N$r3NG'$7$?$i!"(B
   write cache $B$r(B flush $B$7!"$=$NFbMF$r:FEYFI$_=P$7$F$A$c$s$H(B write
   cache $B$K$"$k%G!<%?$H;2>H!"9gCW$r3NG'$;$h$H$$$&L?Na$rEA$($k(B
   (write verify)


$BF14|=q$-9~$_$rMW5a$9$k$H(B($B$"$k$$$O(B raw $B=q$-9~$_$r$+$1$h$&$H$9$k$H(B)$B!"(B

* Linux $B$O%\%H%`%O!<%U$,Ie$C$F$$$k$?$a!"$?$^$K(B 1 $B$7$+$d$C$F$$$J$$$N(B
  $B$K!"=*$o$C$?5$$K$J$C$FJV$C$F$-$F$7$^$&(B($BBgDq$N>l9g!"$=$ND>A0$NF14|(B
  $B=q$-9~$_40N;L?Na$rFI$_Ht$P$7$F$$$k(B)$B!#(B

* Linux $B$O(B 1 $B$K$J$kNc30$r=|$-(B 2 $B$r$b$C$F40N;$H8F$V(B

* FreeBSD $B$O(B 3 $B$r;}$C$F40N;$H$7$F$$$k(B

* $B$3$3$7$P$i$/(B 4 $B$r<BAu$7$F$$$k(B OS $B$OB8:_$7$J$$$,!"(B
  $BK\Ev$r8@$&$H(B 4 $B$,40N;$7$J$$$H%G!<%?$OL5;v$H$O$$$($J$$!#(B


SN> ext2 $B$N(B async $B$N7o$O!"EE8;CGEy$N>c32$,@8$8$J$$8B$j%f!<%6$K$O%P%l(B
SN> $B$J$$$N$G!"%$%s%A%-$G$-$F$$$?$o$1$G$9$,!"(Braw $B%G%P%$%9$G$=$N$h$&$J(B
SN> $B%$%s%A%-$r$7$F$$$?$i!"$9$0$K%G!<%?GK2uEy$G%f!<%6$K%P%l$F$7$^$$$^$9!#(B
SN> $B$5$9$,$K!"$=$3$^$G$R$I$$$3$H$O!"$7$F$J$$$G$7$g$&!#(B

$B4E$$$J!#(B

$B>e5-$N<BAu$O(B1$B$D$@$1Nc30$,$"$k!#(B umount $B$N;~$@$1!"(BLinux $B$b(B 3 $B$G@)8f$7(B
$B$F$$$k!#$@$+$i!V@5>o%7!<%/%'%s%9$N>l9g$O!WBg>fIW!#$7$+$7!"$=$l0J30$O(B
$BA4It(B 2 $B!#$3$l$O(B lkml $B$G!V$=$&$G$"$k!W$H3NG'$5$l$F$k$0$i$$!"K\Ev!#(B


SN> linux $B$NCf?H$O$F$s$GJ,$+$C$F$J$$$s$G$9$,!"(B
SN> fs/direct-io.c:direct_io_worker() $B$+$i!"(Bdio_await_completion() $B$r(B
SN> $B8F$s$G$$$k$"$?$j$G!"(BI/O $B$N40N;$rBT$C$F$$$k$s$G$O$J$$$G$9$+!)(B

$BBT$C$F$$$^$9$1$I$M!#H/9T$7$F$$$k%j%/%(%9%H$,4V0c$C$F$^$9$+$i!"0UL#$O(B
$B$"$j$^$;$s!#(BSCSI/ATA $B%3%^%s%I$O!V@5$7$$!W$b$N$rA*$s$GH/9T$7$J$$$H!#(B
---- 
$B1|;3(B $B7r0l(B[$BGaGX2q(B:No.0x00000001]
#URL http://www.dd.iij4u.or.jp/~okuyamak/
#    http://slashdot.jp/journal.pl?op=display&uid=2487
#    http://developer.osdl.jp/projects/doubt/
#$B:#F|$N$*8@MU!X26$N!"26$N!"(BOS$B$NOC$r$-$1!A!A!A!Y(B:$B$5$FLdBj$O(B
#$B;D$j$NItJ,$r$I$&$9$k$+$G!D!#(B
