玄箱Pro、直します。

超初心者が、玄箱PROでLinuxを勉強する無謀なブログです。

スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。
別窓 | スポンサー広告
∧top | under∨

7ヶ月目の日記

Linuxに触れて7ヶ月。
いや、さっぱりわかりません。
わからないことだけをグダグダ書きます。

・/dev/rootとは何か
/devディレクトリにもいませんけど、/にjffs2でマウントされています。
これがずーーーーっっっっっっっとわかりませんっ。
かれこれ7ヶ月。
/etc/fstabにも記述がない。
標準Linuxなら/dev/mtdblock2、開発用Linuxなら/dev/sda2を/に指定していますけど、これってひょっとして「マウントしろ」って意味とは違うのかな・・。
/etc/init.d/rcSに「mount -o rw,remount /dev/root /」とあるんですけど、remountは「デバイスとマウントポイントを変更しない」とのこと。
ということは、roでマウントされた/dev/rootを単にrwでremountしているだけなんでしょうか。
それならば、どの段階で/dev/rootなるものを/にマウントしたのかがわかりません・・。

・rootfs
これも/にマウントされています。rootfsというタイプで。
なんじゃこりゃー。
/dev/mtdblock2だの/dev/sda2だのがどこでどう絡むのかがわかりません。

・$THIS_SCRIPT
/usr/local/bin/kuro_lib内のlock_file()に出てくる変数ですが、これって何でしょうか・・?
環境変数でもなさそうなのに突然出てきてわかりません。
実行しているシェルスクリプト名を返すのかな・・。

今思いつくだけでこれだけ。
まだまだ調べれば調べるほど増えそうな感じですね。
スポンサーサイト
別窓 | 日記のようなもの | コメント:0 | トラックバック:0
∧top | under∨

起動手順の研究(2)

パート1(U-bootの起動とブートイメージの認識)

U-bootを起動して、カーネルイメージを見つけるまで。自分に接続されたあらゆる周辺機器を簡易に認識して表示しFound boot imageまでです。

まずはU-bootそのものを立ち上げ。
Orion1 CPU = Low

=== KURO U-Boot. ===
** LOADER **
** KUROBOX BOARD: KURO_BOX LE (CFG_ENV_ADDR=fffff000)


U-Boot 1.1.1 (Apr 10 2007 - 18:10:08) Marvell version: 1.12.1 - TINY

「KUROBOX BOARD: KURO_BOX LE (CFG_ENV_ADDR=fffff000)」てのがよくわからない(^_^;)
「fffff000」ってのは「255.255.240.0」??
CFG_ENV_ADDRってCFG環境アドレスってこと?CFGがわかんない。コンフィグ??
U-Boot環境変数の格納アドレスなのかな・・。

次にメモリの読み込み。
DRAM CS[0] base 0x00000000 size 128MB
DRAM Total size 128MB
[256kB@fffc0000] Flash: 256 kB
Addresses 20M - 0M are saved for the U-Boot usage.
Mem malloc Initialization (20M - 16M): Done
NAND: 256 MB

DRAMがDDR2メモリで128MB、[256kB@fffc0000] FlashとあるのがNOR、それとNAND256MBですかね。
NORにはU-boot本体と環境変数が格納されていて、NANDにはカーネルとルートファイルシステムが格納されているのかな。
Addresses 20M - 0M are saved for the U-Boot usage
ここがわかんないんですよ・・。
「U-Bootに使用するアドレス」ってのが「20M-0M」・・・?
アドレス?メモリのことかな?

続いてCPUの情報。
Soc: 88F5182 A2
CPU: ARM926 (Rev 0) running @ 500Mhz
Orion 1 streaming disabled
SysClock = 250Mhz , TClock = 166Mhz

SoCとは「System On a Chip」の略。
MPU周りのいろんな半導体が一つになったものらしいです。MPUとCPUって同義なのかな・・。
Socが「88F5182 A2」という名前。
よく目にする「Marvell 88F5182」というのはそんなSoCの名前らしい。
このSoCには「ARM926」というMPUが載ってますよ、という意味かな。
500Mhzとあるのは400Mhzの間違い。ただ玄箱開発者のブログとされている「玄箱公式頁(仮)」では、本当に500Mhzにしてしまおうというクロックアップの方法も紹介されている。
絶対にやりませんけど(笑)。
「Orion 1 streaming disabled」は不明。
「SysClock = 250Mhz , TClock = 166Mhz」は、システムクロック(周辺回路周波数)は250Mhz、TClockは166Mhzという意味だろうなぁ。
TClockがわかんない。

あとはSoCが制御する周辺装置の認識とブート方法の変更をたずねるカウントダウン。
USB 0: host mode
USB 1: host mode
PCI 0: PCI Express Root Complex Interface
PCI 1: Conventional PCI, speed = 33000000
Net: egiga0 [PRIME]
Using 88E1118 phy
Found boot image
hit any key to switch tftp boot.
Hit any key to stop autoboot: 0
<<system_bootend>>
Hit any key to stop autoboot: 0

「Using 88E1118 phy」とは、88E1118というマイコン(?)が物理層を担当する、という意味でしょうか・・。
別窓 | memo:起動処理 | コメント:1 | トラックバック:0
∧top | under∨

Montavistaとは

玄箱PROに標準で入っているディストリビューションがMontavista Linux。

ネットで調べているんですが、結構このMontavista、情報が少ないです・・。
組み込み(携帯電話なども)機器に採用されることが多いようなので、サイズが小さく、CPUアーキテクチャーをそれほど選り好みもしないってことが特長なんですかね。

私には、そもそもディストリビューションの定義そのものにも不安があるわけで(笑)。

たとえば「Debianというディストリビューションの特長を言ってみな」と言われたら「いろんなCPUに対応し、dpkgやaptといったコマンドで容易にパッケージ管理が可能」と答えるだろうなぁ。
あとはDebianそのもののインストールが誰でも出来る(CD-ROMやDVD-ROMなどで用意されているため)ってとこ。

そう考えると・・玄箱PROのMontavistaってディストリビューションと言えるんだろうか・・。
自分流LinuxというかLFSっていうか。

ARMに載せるってことでとりあえずMontavistaにしたんだろうか。
よくわかりませんぜ。
別窓 | memo:構造 | コメント:0 | トラックバック:0
∧top | under∨

まとめwiki

あけましておめでとうございます。

備忘録として始めたこのブログ。
更新したプロフィールにも書いたのですが、だんだん目的のコマンドやログを探し出すのが困難になってきました。
いや、てか私のまとめ方や整理の仕方が悪いんでしょうけど・・ブログって時系列のくくりだから項目別ってのはうまい方法ないですよねぇ・・。

そこで、ここに書いてきた内容を少しずつまとめていくwikiも始めました。
玄箱PROとかLinuxとか

編集のお手伝いをしてくださる方、間違いを正していただける方などいらっしゃいましたら、ぜひお力をお貸しください。
よろしくお願いいたします。
別窓 | 日記のようなもの | コメント:0 | トラックバック:1
∧top | under∨
| 玄箱Pro、直します。 |
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。