インフラエンジニア入門!BIOSとカーネルって?

エンジニアのみなさん、お疲れ様です。kouです。
今回も前回と同様に、パソコンとして動くために必須のものの中でBIOS(バイオス)とカーネルに関して紹介していきます。

前回は、パソコンを構成するパーツをハードウェア観点で少し紹介しました。今回は、ソフトウェア側です。
では、よろしくお願いします。

スポンサーリンク

〇BIOSって?

BIOS(バイオス)ってものについてです。BIOS(Basic Input Output System)は、基本的なハードウェアを制御するためのファームウェアです。ファームウェアとは、ハードウェアを制御するためのプログラムのことです。

このBIOSは、マザーボードに載っている小さなチップ(黒い小さな四角のものに細かい足が付いているもの)に書き込まれています。BIOSのすべてではないですが、マウスやキーボード、ハードディスクなどを認識、制御してくれます。普通にPCを使っていると、見ることもないでしょうが、PCの電源ボタンを押すとパソコンのメーカのロゴや、マザーボードのメーカのロゴが画面に表示されたあたりで、F2やF12などを押すことでBIOS設定画面に遷移することができます。

よーく見ると、PCの電源を入れると画面下などに、「Press F2 ・・・」など書いてあると思いますので、そのタイミングでそのキーを押します。
ここでは、細かいことは書きませんが、このBIOS画面では、さまざまなハードウェアの設定ができます。マザーボードなどのメーカによって、BIOS画面の表示や機能はさまざまで、BIOS設定画面でRAID(レイドと読みます。あとあと紹介すると思います。)を組んだり、本当にいろいろできます!(適当ですみません...笑)

実は、現在はUEFI(Unified Extensible Firmware Interface)というファームウェアが主流で、UEFI BIOSとか、単にUEFIと呼ばれています。僕も細かくは知らないのですが、有名な違いで言うとBIOSだとハードディスクが2TBまでしか認識せず、UEFIだとそれ以上が使用できます。また、OSもBIOSだと32ビットOSしか使用できませんが、UEFIだと32ビットOSはもちろんのこと、64ビットOSにも対応しています。

だから、基本的に今のBIOSは、UEFIで間違いないです。ただ、会社の古いパソコンやサーバの中にはBIOSもまだまだ現役だと思います。

BIOS画面を見たこと無いという人はぜひ自分のPCなどで確認してみてください。

BIOSにもバージョンがあって、古いバージョンだと、新しく開発されたデバイスなどが認識しなかったりします。そんなときは、BIOSのバージョンアップをしたりだとかの作業が発生します。

〇カーネルって?

次は、カーネルについてです。簡単に言うと、OSの中核部分を担うものです。中核部分っちゃなんじゃ?という言う人もいるかと思いますが、まあ文字通りOSの核となるものなのです。

メモリの管理とか、ハードウェアとソフトウェアの仲立ちをしたりだとか、カーネルが無いとなにもできません。いろんなソフトウェアが動くときもメモリの一部を占領して、CPUがせかせかと仕事をしたり、どこどこのファイルをコピーしたり、移動したりといった作業をするときにカーネルが指示します。

どこかで管理する人がいないと、メモリがすべて占領されていても気付かなかったり、もう使っていないメモリの領域があるのに、気付かなかったりっていうのもカーネルが管理してくれます。

これはWindows OSでもLinux OSでもOSなら必ず存在します。OSの基本的な動きは知っておいた方が良いと思います!という僕も絶賛勉強中なのですが。。(笑)

カーネルだけの本もたくさん出ています。いろんなことを勉強しないといけないので、僕はまだ一冊しか読んでいないのですが、いろいろ興味深い本があります。
いくつか紹介しておきます。

こういう↑のようなムック系の本は基本的ところからわかりやすく説明されていてかなりおすすめです!安くはないですけどね。。。
これでも初めての人にはわかりづらい内容もあると思いますが、一旦さらっと流して読んでも良いと思います。教科書的な感じで、何かあるたびにわからないところをもう一度読む、みたいにすればいいかなーと思います。

もっと、知りたくなれば↓のような本もチャレンジしても良いと思います。あ、僕は読んでいませんが、僕が読みたいなぁと思っているものを紹介しています(笑)

ただただ、やっぱり高いですねー!!(笑)でもでも、欲しいっっ!!いずれは僕も買おうと思っています。

カーネルって、OSの中核部分だけあって、カーネルを勉強するにあたってメモリのことも知ることができるし、プロセスっていうものについても勉強することになります。このあたりを少しでも知っておくことで、PCやサーバで何か障害が発生したときに、障害の要因となる要素などにあたりを付けられたり、など調査にかなり役立ちます。中古などの古い本でもカーネルの基本的なことは今でも変わらないはずですので、十分勉強できると思います。

Linux OSのカーネルはカーネルのソースコードが公開されています。これって、本当にすごいことですよね!本当に勉強したければカーネルの論理構造がいつでも見てみてください。僕も今後は。。と思っています(笑)

今回は、以上とします。僕もまだまだ理解が浅いので内容も浅いかもしれませんが、僕のようなインフラエンジニア初心者にとって、少しでも勉強のきっかけや役に立てればと思っています。

ここまで読んでくださった方、ありがとうございました。ぜひ、次回もよろしくお願いします!

スポンサーリンク

シェアする

  • このエントリーをはてなブックマークに追加

フォローする