こんにちは、わたあめです。今日、とあるナレッジを読んでいたら「マザーボードのUUIDが変更になった場合に~」という文章が出てきまして。今さらだけど、改めてUUIDって何?!という事を記事にしました。
UUIDって色々なものに付けられるIDですが、今回はマザーボードのUUIDに絞ってまとめようと思います!それでは、行ってみましょう!
前提知識
まず、単語単語を私なりにかみ砕いて簡単な言葉で書いていきたいと思います。
マザーボードとは?
パソコンの中の基盤です。"基盤"って何だ?と思うかと思うのですが、パソコンのCPUやメモリなどを挿すための基礎です。
レゴブロックに例えると、下の大きな土台ってありますよね?よく見るのは緑の基盤なのですが、それをイメージしてもらえばいいです。ブロック自体がCPUやメモリ、ハードディスクだと考えて、パーツ(=例だとブロック)を挿すための土台だと思ってください。
UUIDとは?
ざっくりは、一意に識別できる番号。直訳すると世界でユニークなIDです。(UUID自体の詳細な説明については、もうすでに情報が山のようにあるので、イメージだけ。)全世界で唯一の番号です。
UUIDの附番方法としては、時刻や位置情報などを利用して(その他の要素をゴネゴネして)他の番号と被らないような仕組みになっています。
マザーボードのUUIDについて
では、前提知識が頭に入ったところで、マザーボードのUUIDについて書いていきます。マザーボードに割り振られた一意な番号です。この番号は、工場出荷時にマザーボード本体に書き込まれるようです。
UUIDの確認方法
マザーボードのUUIDは、コマンドプロンプトを起動後、以下のコマンド実行で調べられます。
このコマンドを実行すると、以下の情報が得られます。
- Caption
- Description
- IdentifyingNumber(シリアル番号)
- Name
- SKUNumber
- UUID
- Vendor Version
こうしてみるとシリアル番号とUUIDは違うものみたいです。ちなみに、UUIDは「11111111-1111-1111-1111-111111111111」という形式で表示されています。128ビットで、16進数の値で表現されています。
UUIDが変更になるタイミング
パソコンのUUIDが変更になるタイミングは、マザーボードを交換した時に変わります。
具体例としては、筐体(外側の箱みたいなケース)は同じだけど、修理に出して基盤(マザーボード)が変更になったとき。また、自作パソコンなどの場合は、筐体そのまま再利用して中身入れ替えるというときなどですかね。
物理のものに紐づく番号ですので、OSをバージョンアップ・入れ替えた時にはUUID変更にはならないです。
マザーボードのUUIDの使用用途
マザーボードのUUIDはネットワーク上のパソコン端末の識別に利用するという使われ方が多いのではないかな、と思います。資産管理でハードウェア一覧を作る時などですかね。
とはいえ、基本はMACアドレスで識別で良いと思います。が、端末にネットワークカードが付いていない場合は、アドレスが存在しないので、こういう場合にUUIDの出番になりそうです。
その他UUIDの使用用途
マザーボードのUUID以外にUUIDの使用用途ってどんなのがあるか、夫のもちおに聞いてみました。
例えば、ツイッターみたな世界中からの書き込みが同じタイミングで行われるというようなシステムを想像してください。
データベースにつぶやきデータを格納する際に、一意に識別するコードを使いますよね。小規模なシステムであれば日時(YYYYMMDDHHMM)などで一意のコードが作成できるかと思います。ですが、利用する人が多いとその採番アルゴリズムではコード被る可能性があり、コードが一意でなくなります。日時だけでコードを作成してる場合は、同じ時間に複数人が書き込むとアウトな訳です。そのような時、同じ時間ピッタリに書き込んでも、UUIDであれば世界で一つの値になるので、主キーに出来ます。
また、システムが分散している場合、番号を被らないように管理するのは至難の業だと思います。番号が被ってないかお互いに問い合わせたり、上位で管理する仕組みが必要になってきますよね。そういった時にも、UUIDは便利な採番アルゴリズムになります。UUIDを使えば、生成した時点で唯一無二の値となっているので、主キーに出来ます。
複雑な環境で主キー(一意コード)が必要となるので、そういう時に活躍しそうです。
さいごに
さいごまでお読みいただきありがとうございます。UUIDのイメージ何となく伝わったでしょうか?1mmでも理解が進んだのであれば、幸いです。今日もありがとうございました。それでは、また!