見出し画像

BIOSとはなにか?

おはようございます。またはこんにちは。もしくはこんばんわ。マゲっちSCと申します。早いもので2月も7日になりました。節分と立春を過ぎもう暦の上では春ですが、まだまだ寒い日が続きますね。しかしフキノトウやつくしが出てきていたり、スギ花粉がすでに飛び始めていたりと春の足音はしっかりと聞こえています。私も含め花粉症の方には厳しい季節ともなりますが、元気にやって参りましょう。

さて、前回のブログではアルゴリズムについてお話しました。プログラムを組むためにはまず、どこでどのような処理を行うかを明確化する必要がありますが、それをはっきりさせるのがアルゴリズムです。プログラムを計算の指令書とするならばアルゴリズムはその計算手順の策定です。コンピュータは電子計算機ですから、当然ながら計算手順がしっかりしていないと間違った計算をして間違った答えを出してしまいます。コンピュータはそれ自体が間違っているかどうかは判断できないので、ユーザ側で計算手順や使用するデータが有っているのか間違っているのかを判断する必要があります。

BIOSとはなにか?

さて今回の本題になります。以前OSの必要性をお話させていただきましたが、少しだけそこでBIOSについて取り上げました。今回はもう少しBIOSに関してお話をしていきますが、今回は少し難しいお話になりますのであまり理解できなくても問題はありません。こういう感じになっているんだと思っていただければ幸いです。

最近はUEFI(Unified Extensible Firmware Interface)ともいわれるようになってきましたが、BIOSというのは実は略語です。Basic Input Output System。それぞれの頭文字を取ってBIOS(バイオス)と読んでいます。最近のマザーボードに入っているものは基本的にUEFIです。BIOSとの決定的な差は実はほとんどないため、昔ながらの自作PC愛好者はBIOSとよんでいる人も多いですね。強いて言えばBIOSはキーボードからの入力のみで、グラフィックも文字ベースですが、UEFIはマウスが使えグラフィックも絵やアイコンが使用されておりよりわかりやすくなっています。とはいえ、初めて触る方にとってはクセモノであることは変わりません。私のブログでは今回はBIOSという名前で取り上げます。

どういう意味でクセモノなのかということですが、メーカーによって画面表示のデザインが全然違います。複数台自作PCを組んだときにマザーボードのメーカーが違うとそのデザインの違いで最初は戸惑うこともあります。しかし要は慣れの問題ですのでいずれ時間が解決してくれるはずです。また、PCであればWindowsでもMacOSでも必ずこのBIOSがハードウェアを管理しています。家電量販店で売られているPCにも必ず搭載されています。家庭用ゲーム機でも最近のものはシステムソフトが入っていますが、それがいわゆるBIOSとなります。

BIOSは一体何を行っているのか?

では、BIOSが一体何をしているのか?というお話をさせていただきます。まずBIOSがどの部品に入っているのか?というお話になりますが、皆さんはどの部品だと思いますか?正解はマザーボードです。以前こちらで各部品ごとにお話をさせていただいたのですが、マザーボードはその名の通りすべての部品や入出力機器がつながります。私がこうして書いているブログですが、その記述時に使用するキーボードやトラックボール(マウス)はもちろん、ゲームをするときに使うゲームパッドにアーケードコントローラ、それらの経過や結果を出力するモニターとヘッドセット(スピーカー)、もすべてマザーボードにつながっています。USBメモリもUSB3.0の拡張カードを介していますが、拡張カードはマザーボードのPCIe3.0×1のスロットにささっているので、結果としてマザーボードにつながっています。モニターもグラフィックボードのインターフェイスにケーブルがささっていますが、これもマザーボードのPCIe3.0×16のスロットにささっています。また、SSDもSATA3というケーブルでマザーボードにささっていますし、電源ユニットから伸びる電源ケーブルもマザーボードや各種機器にささっています。簡易水冷のCPUクーラーもマザーボードにピンがささっていてマザーボードから電源をとってCPUを冷却しています。PCケースのファンも基本的にはマザーボードにピンをさして電源を融通してもらっていますPCケース前面にあるUSB2.0とUSB3.0のコネクタもマザーボードにささっているためUSB機器を接続するときちんと反応します

このようにすべての部品や機器はマザーボードにつながるようにできているため、BIOSはマザーボードのROMに記録されているわけですね。BIOSには実に様々な機能が入っていますが、やっていることは意外と単純な作業です。

BIOSができることとはなにか?

ではBIOSは何ができるのでしょうか?PCだとOSが立ち上がれば、応用ソフトや機材が揃っていれば何でもできます。ビジネス文書や売上の管理にグラフ作成、プレゼンテーションのデータ作成、インターネットへの接続にメールでの連絡やSNSへの投稿はもちろんのこと、それなりの処理能力は必要ですがゲームや動画編集に画像や写真の加工などが思いつくかと思います。それ以外にもプログラミングを行ってアプリを作ったりなども可能ですね。インストールされているソフトや機材が増えれば更にさまざまなことが可能になります。しかしBIOSでできることはこれらと比べると非常に限られています。しかし、とても重要なことばかりです。

ではBIOSが可能なことをPCが起動する順番のとおりに見ていきたいと思いますが、まずPCが起動するまでにどのような処理が行われているかを簡単にお話しておきます。皆さんがPCを起動させる場合まず電源ボタンを押すはずですね。するとPCケースの電源ケーブルからマザーボードにあるピンに電流が流れてショートを引き起こします。ショートというとあまり良くない印象ですが、PCの場合はマザーボードの電源を司っているプラス極とマイナス極のピンに直流電流が流れると電源が入る仕組みになっています。

マザーボードに電流が流れて電源が入るとマザーボードにつながっている部品やほとんどの入出力機器にも電源が供給され始めるので、キーボードやマウスはもちろん、ノートPCであればモニターも起動します。デスクトップ型の場合はモニターや一部のスピーカーは外部から電源をとっていますがオールインワンタイプのものはノートPCと同じく電源が入ります。次にBIOSがROMから読み込まれたのちに、問題がなければWindowsやMacOSなどのOSが起動します。これがPC起動時の簡単な流れになります。では各フェーズをもう少し細かく見てきましょう。

まず電源ボタンを押した直後ですが、ここでマザーボード側の電源を司るピンがショートしてマザーボードそのものやつながっている部品や機器に電源が投入されていきます。BIOSも当然このタイミングで起動していますが、その後しばらくマザーボードのメーカーロゴがモニターに表示されています(Windows10の場合)。一見何もしていないかのように見えますが、BIOS側は動いていてPOSTという処理を行っていますPOSTとはいわゆるハードウェアの状態チェックのことです。CPUやメモリ、マザーボードのチップセット、ストレージやグラフィックボード、キーボードやマウスの状態をチェックします。要するにPCとして最低限必要な機器の状態をチェックしているわけです。ここで何度か再起動することが場合によってはありますが、それはPOSTに引っかかっているということになり、どれかの部品が壊れていることになります。CPUやメモリが壊れていた場合は画面に何も出力されることなく延々と再起動を繰り返す場合もあります。

POSTを無事通過するとハードウェアは基本的に故障がないという証明になります。次に行うことはOSの読み込み(BOOT処理)です。PCは実に様々な場所からOSのデータを読み込むことができます。最初に思いつくのはほとんどの方がストレージからの読み込みかと思いますが、他にもUSBメモリであったり、DVDドライブやブルーレイドライブだったり、ネットワーク上にあるサーバからもデータを読み込んでPCを起動させることができます。OSのデータを補助記憶装置などの記憶媒体から読み込んでCPUに送ります。CPUはOSのデータを読み込んで計算した結果をメモリに記憶します。そして映像をグラフィックボードに送って画面に出力させます。こうしてPCが起動して皆さんが使用可能な状態になるわけです。

もちろんそれ以外にも、CPUを自動的にオーバークロック(一時的に電力を多く供給して処理速度を上げること)をしたり、そもそもどんなハードウェアがつながっているのかをユーザが目視で確認できたり、OSの読み込み先を変更したりマザーボードの機能の使用を許可したり、いらない機能をオフにしたりすることもできます。例えば、ノートPCにはタッチパッドがついていますが、そのタッチパッドをBIOS上で機能をオフにすることができるので、USB接続などのマウスがあるのであればタッチパッドを使用しない設定にできます。

もちろんOS上からも設定することはできますが、OS上でオフになっていてもハードウェアそのものは起動しているため、場合によってはタッチパッドが反応することもあります。しかし、BIOSはハードウェアそのものの機能をオフにしてくれるので確実に動作しないようにすることができるのです。また、先ほどお話したCPUのオーバークロックですがオーバークロックするためにはより電力が必要になります。しかし最近のPCは非常に優秀で特段オーバークロックしなくても問題ないレベルにあります。なのでBIOS上でCPUの処理速度(クロック周波数)の上限を設定することで自動オーバークロックを防ぐことができます。つまり余計な電気代を節約できるわけです。

BIOSの初期画面の出し方とは?

BIOSの基本画面の出し方ですが、だいたいどのメーカーでもF2キーかDELキー(デリートキー)のどちらかを電源投入後すぐに連打しているとOSが立ち上がる前にBIOS画面になります。BIOSの初期画面ではCPUやメモリ、SSDなどのストレージやすでに接続されているUSB機器などが表示されます。また、CPUクーラーがきちんと動作してるかも確認が可能です。実際に接続しているのにBIOS画面に出てきていない場合は故障しているか、接続がきちんとできていないというわけです。CPUやメモリ、グラフィックボードが壊れている場合はそもそも画面すら出てきません。POSTに引っかかっているからですね。SSDやHDDなどのストレージはBIOSの表示には直接関係はないため、POSTで故障が発見されてもBIOS画面は表示されます。しかし、BIOS上でストレージ情報を確認することができません。

また、これは自作PCの場合になりますが、最初はストレージにはOSのデータが入っていないため、何もしなくてもCPUやメモリ、グラフィックボードが正常であれば自動的にBIOS画面が画面に出力されます。OSのインストールデータのある記憶媒体を選んで読み込ませる順番を変更し、変更内容を記録したあとPCを再起動すると先ほど選んだ記憶媒体にアクセスしてOSのインストールデータを読み込みます。

BIOS画面での電源の切り方はどうするのか?

では、電源の切り方はどうすればいいのでしょうか?WindowsなどのOSが起動している状態では、シャットダウンコマンドを実行することで安全にPCの電源を切ることができます。仮にシャットダウンコマンドを入力せずに電源を切るとハードウェアの故障の原因になったり、データの不整合が起きて最悪PCが起動しなくなります。ではBIOSが表示されている場合はどうでしょうか?

冒頭でお話したとおり、BIOSは基本的な入出力システムの頭文字を取ったものになります。データはマザーボード上のROMに記録されていて、ROMからデータを読み込んでいます。OSが起動している場合だとメモリ上にあるデータをストレージに書き込んで、データの不整合がないかチェックしたあとで問題がないと判断された場合にPCの電源を切ります。しかしBIOSの場合はそもそもストレージ自体が機能しておらず、BIOSのプログラムやデータはすでに工場出荷時にすべて入っており、OS起動時と違って新たなデータが入ってくることは基本的にありません。すでにあるデータを操作して状態を更新したり、BIOSそのものの新バージョンを入れて更新することはできますが。そのためデータの不整合が起きることはまずないためデータ不整合が原因でPCが起動しなくなるというようなことはまず起きません(BIOS更新時を除く)。つまり、BIOS画面上では電源を切るタイミングはいつでもよく、電源ボタンを長押しして電源を切っても、コンセントから電源ケーブルを抜いてもかまいません。ただし、なにかBIOSの状態を更新した場合はデータを記録してから電源を切らなければ設定内容は反映されないのでお気をつけください。

まとめ

このようにBIOSはWindowsなどのOSが立ち上がる前の下準備を行っていたり、OSが起動してもOS上からハードウェアを認識させたりさせなかったり、OSそのものの読み込み先を変更したり、ハードウェアの動作速度を変更したりPCというデバイスそのものの状態を管理・制御することができます。しかし、マザーボードメーカーによって画面の表示デザインが全然違うのと、普段はBIOS画面を出すことはほぼないのでなかなか慣れることが難しく最初は戸惑うでしょう。また、BIOSも数ヶ月に1度くらいですが新しいバージョンがマザーボードメーカーのサイト上で発表されていることがあり、もともとのBIOSにあった不具合の修正がされていたり、新しいハードウェアに対応していたりします。基本的にBIOSは更新しないというのが過去、コンピュータの世界では一般的でしたが、最近はBIOS更新が非常に簡単になりました。また、BIOS更新時に仮に電源が切れてしまうと、データ不整合が起きる(BIOSそのものの書き換えをしている)ため、以前ではBIOSが起動しなくなった場合はマザーボードはただの金属の板になってしまい使用不可能になっていましたが、現在はROMの大容量化でBIOSが二重化されているため更新失敗時でもマザーボードが使用不可能になる事態は避けられるようになりました。今はインターネットが家庭で使用できることも当たり前の時代になったため、メーカー側も仮に不具合があっても後で修正プログラムを公開することで対応が可能になったため、よっぽどの不具合がなければそのままリリースするのが普通になり、ユーザ側でデータを入手・更新して不具合を修正するというのが常識となりつつあります。今後世界的にデジタルな社会になっていきますが、個人個人がもともとのプログラムやデータの更新を行えるスキルが求められるというわけですね。

では次回のブログですが、今回結構長くなってしまったため次回は今回の続きです。BIOSに関してはなんとなくですがご理解いただけたかと思います。しかし、実際のPC作業はOSが起動したあとで応用ソフト上で行いますよね。ワープロソフトもゲームソフトもOSが起動しなければ動作させることができません。そしてハードウェアとソフトウェアがきちんとかみ合って関わり合わなければそもそもPC自体動くことができません。キーボードのキーを押しても無反応だったり、マウスを動かしてもクリックしても何も起きないと意味がありませんよね。ハードウェアを操作したときやOS上の画面表示時にどのようなやり取りがなされているのか?ということを深堀りしていきます。次回は今回以上に難易度が上がりますが、いきなり全てを覚える必要はありません。むしろ普通に使うだけであれば覚える必要はありません。しかし、どのようなやり取りが行われているのかが理解できれば、なぜ作成したデータが希望するストレージや記憶装置に保存できるのか?とか、キーボードやマウスを操作したときにどういう事が起きているのかを理解できると、一気にコンピュータとの距離感が縮まりコンピュータに使われる生活から真の意味でコンピュータを使う生活に変化すると思います。ご興味がありましたらまたお立ち寄りください。それでは失礼いたします。

この記事が気に入ったらサポートをしてみませんか?