[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[bfree-prj 163] Re: HD からboot する方法のマニュアル
- To: bfree-prj@iijnet.or.jp
- Subject: [bfree-prj 163] Re: HD からboot する方法のマニュアル
- From: Tomohide Naniwa <naniwa@mechgw.mech.yamaguchi-u.ac.jp>
- Date: Sat, 1 May 1999 12:59:20 +0900 (JST)
- In-Reply-To: Your message of "Thu, 29 Apr 1999 22:10:44 +0900".<37285A541A4.CF8CJNETWORK@smtp.network.or.jp>
- Reply-To: bfree-prj@iijnet.or.jp
- Sender: owner-bfree-prj@iijnet.or.jp
浪花です.
In "[bfree-prj 162] HD から boot する方法のマニュアル",
Thu, 29 Apr 1999 22:10:44 JST
jnetwork@network.or.jp writes:
> 少しの間さぼっていましたけど、また再開したいと思います。
この手のドキュメントの整備は重要ですので,よろしくお願いしたいと思
います.
> HD から boot する方法
...
> version 1.0
> 1997/11/18
> 内藤 隆一
まさあきさんによる改訂版であることを明示された方が良いだろうと思い
ます.
> 9.ファイルシステムの作成。
...
> 1.mkfs を実行します。
> 例 ./mkfs /def/hda4 604800 512 1000
>
> ここは300MB(かなり大きい)の例です。
I-node 数の少し厳密な計算方法を考えてみました.現在の B-Free で利
用されている sfs は,ディスク上に boot block と super block を各 1
block, ディスクの使用状況を調べる bitmap block (BB),i-node で利用
される block (4 block/i-node),ユーザーのファイルとディレクトリに
利用される block (UB) を持ちます.全ブロック数を TOTAL としたとき,
BB = TOTAL/512 + 1
で決まります.また,UB 8 ブロック(4KB)に一つの i-node を割り当てる
とすると,i-node の数(I-NODE)は
UB = 8 * I-NODE
となります.総ブロック数との関係を求めると
TOTAL = 2 + BB + 4*I-NODE + UB
= 3 + TOTAL/512 + 12*I-NODE
となります.I-NODE に関してまとめると,
I-NODE = (TOTAL - TOTAL/512 - 3)/12
で計算されることになります(/ は整数演算です).上記の例で計算すると
I-NODE = 50301
となり,コマンドとしては
./mkfs 604800 512 50301
となります.1.44 MB の FD で同様の計算を行なった結果は
./mkfs 2880 512 239
となります.
i-node の UB に対する割合ですが,IRIX, Sun Soralis, SunOS 4.1.x で
は 2KB (4 ブロック)に 1 つの割合で計算しているようです.sfs でこれ
をやってしまうとディスクの約 50% が i-node で消費されてしまうこと
になります (^^;).
そもそも i-node のサイズが大きすぎる気がしますので,Kernel ML でチュー
ンナップの提案を出してみます.
> 2.mkfs が成功したかを確認します。
> statfs を実行してファイルシステムの中を覗いてみます。
今ちょうど statfs をいじっている最中なんですが,0.0.40 の statfs
にはかなり bug がいました (^^;).一応 bug 修正後の挙動を示しておき
ますが,どうしましょうね (^^;;).
> ./statfs /dev/hda4 dir /
>
> 実行すると
>
> 2 20666 0000 0000 . 60byte
> 2 20666 0000 0000 .. 60byte
> 2 20666 0000 0000 lost+found 40byte
>
> lost+foundがあれば成功です。
3 20666 0000 0000 . 60 byte
3 20666 0000 0000 .. 60 byte
2 20666 0000 0000 lost+found 40 byte
> 10./systemディレクトリの制作
...
> statfs /dev/hda4 mkdir /system
...
> statfs /dev/hda4 dir /
>
> 6 20666 0000 0000 . 80byte
> 6 20666 0000 0000 .. 80byte
> 2 20666 0000 0000 lost+found 40byte
> 3 20666 0000 0000 system 60byte
4 20666 0000 0000 . 80 byte
4 20666 0000 0000 .. 80 byte
2 20666 0000 0000 lost+found 40 byte
2 20666 0000 0000 system 40 byte
> 11.B-Free OS をファイルシステムに入れます。
...
> cd kernel/BTRON/make
> statfs /dev/hda4 write /system/btron386 btron
...
> statfs /dev/hda4 dir /system を実行します。
>
> 3 20666 0000 0000 . 80byte
> 6 20666 0000 0000 .. 80byte
> 1 0666 0000 0000 lbtron386 323584byte
3 20666 0000 0000 . 60 byte
4 20666 0000 0000 .. 80 byte
1 00666 0000 0000 btron386 323584 byte
---
(putprop '浪花 智英
'affiliation '(山口大学大学院 理工学研究科 環境共生工学専攻)
'e-mail '(naniwa@mechgw.mech.yamaguchi-u.ac.jp))