OKWAVEのAI「あい」が美容・健康の悩みに最適な回答をご提案!
-PR-
解決
済み

システム起動時のブートファイルについて

  • 困ってます
  • 質問No.156755
  • 閲覧数78
  • ありがとう数3
  • 気になる数0
  • 回答数3
  • コメント数0

お礼率 88% (270/306)

Solarisのシステム立ち上げ時に読み取られるブートファイル等について、
詳しく教えて下さい。

特に、以下のプログラム(ファイル?)は、具体的にどのような動作を行うための
ものなのでしょうか?
 ・ブートブロック
 ・ufsbootファイル
 ・カーネル(Static Core)

よろしくお願いします。
 
通報する
  • 回答数3
  • 気になる
    質問をブックマークします。
    マイページでまとめて確認できます。

質問者が選んだベストアンサー

  • 回答No.3
レベル9

ベストアンサー率 54% (39/72)

typoですすいません。

spaec -> sparcです。

講習されるとのことなので次の質問に備えましょう :-)

"ブートローダおよびカーネルのロードされるメモリ上のアドレスはどうなってますか?かち合っていたらカーネルのロードができなくなりませんか?"
PCの場合BIOSでアクセスできるメモリ領域は限られているのでブートローダはBIOSからアクセスできる部分の一番後ろの方に展開され、実行されるのに対し、カーネルはメモリの先頭から展開されるのであとで展開されたカーネルのコードでブートローダが上書きされることはありません。

そのため、カーネルのサイズにも制限ができてしまいます。このメモリ制限を回避するためにバイナリ化されたドライバなどをモジュールとして後でカーネルに組み込むことでカーネルのサイズ制限を乗り越えることができます。

sparcの場合はどうなっているかしりませんが、PCのBIOS制限のようなものはないので純粋にメインメモリの後ろのほうに読み込まれて実行されると思います。
お礼コメント
tomo_t_21

お礼率 88% (270/306)

無事、講習を終えることができました。
丁寧なご回答、ありがとうございました。
投稿日時 - 2001-10-26 11:09:25
-PR-
-PR-

その他の回答 (全2件)

  • 回答No.1
レベル9

ベストアンサー率 54% (39/72)

intelとspaecで動作が微妙に違います。 どちらでしょうか? ...続きを読む
intelとspaecで動作が微妙に違います。
どちらでしょうか?
お礼コメント
tomo_t_21

お礼率 88% (270/306)

spaecって何ですか?

私のマシンには、UltraSPARC IIe プロセッサが搭載されてます。
この補足で合っているんでしょうか。
全くの素人なので、よくわからないのですが・・・。

実は、Solarisマシンの起動・停止の仕組みについての講習を行わなければ
ならなくなり、本を参考に資料を作っていたのですが、ブートプログラムと
カーネルの読み取りの動作が、今ひとつ理解できずに困っています。
投稿日時 - 2001-10-24 18:36:30


  • 回答No.2
レベル9

ベストアンサー率 54% (39/72)

sparcマシンの場合で説明します。 内蔵ROMのプログラム(PCの場合はBIOS)は設定されたディスク(起動ディスク)の特定の領域(設定不可)からプログラムを読み出し、メモリ上に展開して、制御をそのプログラムにわたします。 このとき、特定の領域という場所がブートブロックです。 このとき読み出されるプログラムがブートローダでsolaris(sparc)の場合はufsbootですし、lin ...続きを読む
sparcマシンの場合で説明します。

内蔵ROMのプログラム(PCの場合はBIOS)は設定されたディスク(起動ディスク)の特定の領域(設定不可)からプログラムを読み出し、メモリ上に展開して、制御をそのプログラムにわたします。

このとき、特定の領域という場所がブートブロックです。

このとき読み出されるプログラムがブートローダでsolaris(sparc)の場合はufsbootですし、linuxではliloが良く使われますし、Windows NT系ではNTローダというやつがこれにあたります。
ufsブートは事前に書き込まれているパーティションがUFSであり、カーネルが決まったパス名で存在すると思って読み出しにかかります。

読んだカーネルをメモリに展開していき、作業が終了するとカーネルの先頭にジャンプし、カーネルの実行が開始されます。

PCの場合はブートブロックにあたるMBRが512byteのためあまり複雑な作業はできません。

そのため、MBRのプログラムからさらにどこかのパーティション上のプログラムを読み出し、それからカーネルを読み出すというような多段構成になっている場合もあります。(例: intelソラリスやGNU grub, システムコマンダーなど)

カーネルが何をするものかはここでは説明しませんが、OSの一番えらい人です :-)

カーネルがどのようなものかを詳しく知りたければOSの教科書(大学等で使うもの)が一番わかりやすいかと思います。
このQ&Aのテーマ
このQ&Aで解決しましたか?
関連するQ&A
-PR-
-PR-
このQ&Aにこう思った!同じようなことあった!感想や体験を書こう
このQ&Aにはまだコメントがありません。
あなたの思ったこと、知っていることをここにコメントしてみましょう。

その他の関連するQ&A、テーマをキーワードで探す

キーワードでQ&A、テーマを検索する
-PR-
-PR-
-PR-

特集


いま みんなが気になるQ&A

関連するQ&A

-PR-

ピックアップ

-PR-
ページ先頭へ