BIOSはOSと見なされますか?[閉まっている]


11

この質問は、RAIDアレイを扱うときに思い浮かびますが、必ずしも対象に当てはまるわけではありません。

多くのOSが同じことを行うためにドライバーを必要とする場合、BIOSがOSを効果的にロードするためにハードドライブからどのように読み取ることができますか? BIOSには、WindowsやLinuxのようなメインストリームOSの1つからプルするドライバーのリストがありますか?


2
SU管理者は建設的ではありません
タンブラー

回答:


10

まず、BIOSは技術的にはオペレーティングシステムではなく、基本入出力システムです... RAIDのロードなどについては、ブート中にマシンがロードするBIOSがあるかどうかを尋ねるカードの追加を照会します。RAIDカードは「はい、最初にやることがあります」と叫ぶと、「BIOS」(この場合はOS)を起動し、いくつかの計算を行い、制御をメインBIOSに戻します(「ねえ、これで終わりです。知っておく必要があることを知るために必要なすべての情報があります。」

メインBIOSが再び制御を取得すると、「ああ、Mr RAIDにブート可能なボリュームがあるのがわかります。できればそれを循環させてから、他のトリックを試してください」と言うことができます。

したがって、「技術的に」BIOSはオペレーティングシステムではありませんが、実際のオペレーティングシステムを準備するための入出力システムです。


11
彼は自分の「BIOS」(この場合はOS)を起動します」-BIOSまたはBIOS拡張機能は単にOSではありません。 OSの顕著な目的はリソース管理です。BIOSは、スタンドアロンブートプログラムとして、リソース割り当て情報を維持するために煩わされません。BIOSが提供するハードウェアへのアクセスを制限するopen()またはclose()ルーチンはありません。実行中のコードはすべて、BIOSの読み取り/書き込み機能を利用できます。BIOSはOSの基本的な目的を達成できません。
おがくず

@sawdustオンボードデバイスの有効化または無効化についてはどうですか?これにより、ハードウェアへのアクセスが制限されます。
ボンガート

@BonGart-BIOSによる有効化/無効化は、単にデバイスを物理的にインストールまたは削除する代わりの設定ツールです。これはシステム全体のアクションであり、再構成またはデバイス障害が発生するまで有効です。プロセスやスレッドレベルで制御/制限できるmutexやセマフォなど、同期と除外のOSの概念を実際に参照していました。または、たとえば、印刷スプーラー。OSのスプールプログラムプリンターを所有し、そのプリンターの直接使用を許可しません。印刷ジョブをスプーラーに送信して、印刷要求をキューに入れる必要があります。
おがくず

10

BIOS文字通り「基本入力/出力システム」は、(通常に格納されたコンピュータのマザーボードにハードコードされた小さなプログラムの集合であるEEPROM)。これらのプログラムには、設定の変更、テキストの書き込み、基本的な I / Oデバイスからのユーザー入力(マザーボードは高度なVGAおよびUSBマウス/キーボードデバイス用にエミュレートする必要があります)が含まれます。攻撃を受けたストレージデバイスに存在するオペレーティングシステム。

BIOS自体、オペレーティングシステムではありません。BIOSは、実際にOSをロードする小さなプログラムです。一部のオペレーティングシステムではさまざまなBIOSサブシステムを呼び出すことができますが、これにはBIOSが仮想メモリサポート、タスクスイッチング(およびプログラムを実行する機能)を提供しないため、CPUがリアルモードに切り替える必要があります)、またはデバイスドライバーのサポート(したがって、直接マップアクセス可能範囲外のハードウェアに直接アクセスすることも、BIOS割り込み呼び出しでカバーされていないものにもアクセスできません)。

Linus Torvalds氏は言いました

BIOSが素晴らしいと主張したことはありませんが、少なくとも誰もがBIOSが単なるブートローダーであることを知っており、それ以外のものを作ろうとはしていません。

BIOSの絶対的な最大の利点は、それが非常に 不便で明らかに時代遅れであるということです。 「OSをロードして、そこから地獄に行く」だけです。

最後に、BIOSはUEFI(Unified Extensible Firmware Interface)とは大きく異なり、後者は基本的なオペレーティングシステムインターフェイスの提供(デバイスドライバーとアプリケーションサポートの提供)に非常に近いことに注意してください。UEFIさえもそれ自身で真のオペレーティングシステムと見なすことができるかどうかについては疑問がありますが、BIOSよりもOSと見なされることにかなり近いです。


2

寄せられた多くのコメントとポイントに対処するために、答えをもう一度編集しました。

BIOSはオペレーティングシステムですか?

オペレーティングシステムが、ユーザーが「コンピューター」のハードウェアと対話できるソフトウェアとして定義されている場合、そうです…技術的にも文字通りもオペレーティングシステムです。

タスクスイッチングは、オペレーティングシステムを構成するものを定義しますか?

MS-DOSは有効なオペレーティングシステムであり、バージョン5タスクスイッチングがサポートされなくなるまで、タスクスイッチングはソフトウェアがオペレーティングシステムであるかどうかに影響しません。

メモリの仮想化は、オペレーティングシステムの構成要素を定義しますか?

繰り返しますが、例としてMS-DOSを使用すると、ロードプロセス中にエクステンダーを実行することでメモリ仮想化のサポートを追加できますが、それらを使用する必要はありませんでした。したがって、メモリ仮想化は、オペレーティングシステムを構成するものの前提条件でもありません。

ファームウェアに保存されている場合、OSですか?

ルーターはオペレーティングシステムを使用しないと主張する人もいます。たとえば、DD-WRTがオペレーティングシステムと見なされるかどうかについては競合があるようです。ファームウェアにオペレーティングシステムを保存するデバイスはありますか?最新の携帯電話、iPod、その他には、ファームウェアでプログラムを追加できる複雑なオペレーティングシステムが格納されています。そのため、OSがファームウェアに読み込まれているからといって、問題のソフトウェアがオペレーティングシステムと見なされることから除外されるわけではありません。

プログラムを追加できない場合、それはオペレーティングシステムではありません。

最新のスマートフォンから離れてください。安価な使い捨て携帯電話を見てください。ファームウェアにオペレーティングシステムが保存されていますが、プログラムを追加することはできません。そのまま実行され、提供されている機能でのみ実行されます。他のOSと同じようにメニューをナビゲートし、やりたいこと(ゲームをプレイするなど)を選択します。数年前からかなりの数のメニューがあるため、追加のソフトウェアを追加することはできませんでした。

モダンでない場合、オペレーティングシステムではありませんか?

OSが作成および起動された履歴のポイントは、OSであるかどうかには関係ありません。

そのため、BIOSはきれいではなく、極端な機能を提供しない場合があります。ただし、それはまだオペレーティングシステムです。


3
ウィキペディア上のオペレーティングシステムの定義自体は疑わしいものです。(他にも聞いたことがあります)しかし、とにかくあなたが完全に見逃している[...]は、コンピュータープログラムに共通のサービスを提供します
バーン

1
OSよりもファームウェアに傾倒しています。BIOSはインテリジェンスを持たず、非常に低いレベルでハードウェアと通信し、その情報をOSに渡します。UEFIはゲームを変えています。
モアブ

1
ファームウェアとOSの間の細かい境界線であり、主観的なものです。
モアブ

1
OK、私はそれを与えます、そのbiOS、あなたは今私の頭を落とすことができます.. ;
モアブ

2
@BonGart a BIOSには仮想メモリのサポートとタスクスケジューリングがありません。したがって、プログラムを実行する機能がありません(つまり、他の何かと同時に実行することはできません)。私はそれが基本的なI / Oサポートを提供することに同意しますが、それは小さなプログラムであり、オペレーティングシステムではありません ...または、パスワードを受け取ってLEDをオンにする私のマイクロコントローラ上の小さなコードを分類しますか? / Oサポート)オペレーティングシステムも同様ですか?
ブレークスルー

2

「オペレーティングシステム」とは何であるかは判断の問題です。ほぼ間違いなく(そして1980年にこれを主張した)、元のPC / MS DOSは(名前にもかかわらず)「オペレーティングシステム」ではありませんでした。 。

OTOH、多くのBIOS実装には、かなり洗練された方法でシステムリソースを管理するある程度のハイパーバイザー機能が含まれています。

BIOSがドライバーなしでディスクなどからロードする管理方法については、慣例により/標準の「起動可能な」デバイスには、高度な管理インフラストラクチャをセットアップせずに使用できる操作のセットが含まれます。場合によっては、これは比較的固定された場所でいくつかのセクターを読み取る機能にすぎませんが、ほとんどの場合はそれで十分です。


したがって、コンピューターの電源を入れ、MS-DOSを読み込んでから、プログラムを実行できるようになります。あなたは、MS-DOSはOSではなかったと言います...その時、OSはどこにありましたか?MS-DOSは、技術的には1つとして(したがって1つとして)機能していても、実際のOSであると考えるものではないと言っているようです。
ボンGART

1
以前は、「オペレーティングシステム」がなく、「ランタイムエグゼクティブ」だけ、またはファイルサービスとコマンドアナライザーを提供するコンピューターが多数ありました。彼らは決してそれらを「オペレーティングシステム」と呼んだことはありません。
ダニエルRヒックス

2
@bonGart「そのときOSはどこにありましたか?」コンピューター上でプログラムを実行するために、OS、つまりリソー​​スアロケーター/マネージャーを用意する必要はありません。初期の(または単純な)コンピューター(CP / Mを実行するマイクロコンピューターを含む)には、単に常駐ローダープログラムがあり、ロードされたプログラムはすべてのコンピューターリソースに完全にアクセスできました。リソースの競合はなかったため、OSは不要です。
おがくず

@sawdust-正しい。「常駐プログラムローダー」から一歩進んだのは、常駐ランタイムライブラリ(紙テープ、ディスケット、キーボード/ディスプレイ機能-おそらくプリンター)と、「モニター」または「実行」、または1つのプログラムを検出するもの次のものをロードするために終了しました。DOSはこれらほど洗練されていませんでした。
ダニエルRヒックス
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.