12-LPIC「level1」

LPIC|level 1【システムアーキテクチャ(2)】

目標

  • インタフェースの種類について理解する
  • デバイスファイルについて理解する
  • ホットプラグについて理解する
  • 記憶装置について理解する

インターフェースの種類

PCI

PCI(Peripheral Component Interconnect)は、コンピュータの内部で周辺機器(デバイス)とCPU(中央処理装置)やメモリなどのコンポーネントを接続するためのバス規格です。PCIは、1990年代初頭にIntelによって開発され、コンピュータ内部での周辺機器接続の標準的な方法として広く使用されてきました。主に、拡張カード(ネットワークカード、グラフィックカード、サウンドカードなど)をマザーボードに接続するためのインターフェースとして使われます。

画像はWikipediaから:https://ja.wikipedia.org/wiki/Peripheral_Component_Interconnect

SCSI

SCSI(Small Computer System Interface)は、コンピュータと周辺機器(特にストレージデバイス)を接続するためのインターフェース規格の一つです。SCSIは、特にサーバやワークステーションで広く使用され、複数のデバイスを1つのバスで接続できる特徴を持っています。

SCSIは、特に多くの周辺機器を同時に接続できるため、サーバや高性能なワークステーションでの利用に適しています。また、SCSIは、以前は物理的にパラレル接続(並列通信)を用いていましたが、現在では高速なシリアル通信規格(iSCSIやSASなど)も登場しています。

画像はWikipediaから:
https://ja.wikipedia.org/wiki/Small_Computer_System_Interface

IDE

IDE(Integrated Drive Electronics)は、コンピュータのストレージデバイス(特にハードディスクドライブやCD/DVDドライブ)を接続するためのインターフェース規格の一つです。IDEは、1980年代後半から使用され、主にデスクトップPCやラップトップで広く利用されてきました。現在では、より高速なインターフェース規格であるSATA(Serial ATA)に取って代わられていますが、IDEはコンピュータのストレージ技術において重要な役割を果たしました。

画像はWikipediaから:
https://ja.wikipedia.org/wiki/Advanced_Technology_Attachment#IDE

デバイスファイル

デバイスファイルは、Unix系オペレーティングシステム(LinuxやmacOSなど)で、ハードウェアデバイス仮想デバイスを抽象化し、ユーザーやプログラムがそれらにアクセスできるようにするための特別なファイルです。デバイスファイルは通常、/devディレクトリ内に格納されています。

デバイスファイルを通じて、システムのハードウェアリソース(例えば、ディスクドライブ、ネットワークインターフェース、プリンタ、キーボードなど)や仮想リソースに対する読み書きが行えます。

デバイスファイルの種類

デバイスファイルは、大きく分けて2種類に分類できます。

  1. キャラクタデバイスファイル(Character Device Files)
  2. ブロックデバイスファイル(Block Device Files)

1. キャラクタデバイスファイル

  • キャラクタデバイスは、データを1バイトずつ逐次的に転送するデバイスです。
  • 代表例: シリアルポート(例えば、/dev/ttyS0)や端末(/dev/tty)など。
  • キャラクタデバイスは、通常、キーボードやマウス、シリアル通信などの入力デバイスや出力デバイスに関連しています。
  • キャラクタデバイスファイルは、データを順番に1バイトずつ読み書きします。

2. ブロックデバイスファイル

  • ブロックデバイスは、データを一定のブロック単位で読み書きするデバイスです。大きなデータの読み書きが効率的に行えます。
  • 代表例: ハードディスクドライブ(HDD)ソリッドステートドライブ(SSD)USBストレージデバイスCD/DVDドライブなど。
  • ブロックデバイスは、通常、ストレージデバイスに関連しており、データをブロック単位で管理します。
  • これに対し、キャラクタデバイスは逐次的にデータを扱いますが、ブロックデバイスはデータをランダムアクセスできるため、効率的に読み書きが行われます。

デバイスファイルの名前と構成

デバイスファイルは、通常/devディレクトリ内に格納されます。各デバイスファイルには、次のような特徴があります。

  • デバイスファイル名: デバイスファイルには、デバイスの種類や役割を表す名前が付けられます。例えば、/dev/sdaは最初のハードディスク、/dev/ttyS0はシリアルポートを指します。
  • 特殊ファイルの種類: デバイスファイルにはキャラクタデバイスファイルブロックデバイスファイルの2種類があり、それぞれが異なる形式でデータを処理します。

デバイスファイルの例

1. キャラクタデバイスファイル

  • /dev/tty – 端末デバイス(仮想端末、コンソール)
  • /dev/ttyS0 – シリアルポート(COMポート)
  • /dev/null – ブラックホールデバイス(すべての入力が破棄される)
  • /dev/random – 乱数生成器

2. ブロックデバイスファイル

  • /dev/sda – 最初のSATAハードディスク
  • /dev/sdb – 2番目のSATAハードディスク
  • /dev/sr0 – CD/DVDドライブ
  • /dev/hd0 – IDEハードディスク

デバイスファイルの確認方法は次を参考にしてください。

Virtual Box & Linux(Part.23)| Linux USBメモリ内でのパーティショ作成とファイルシステム作成 | 現役エンジニア&プログラミングスクール講師USBメモリ内でのパーティショ作成方法とファイルシステム作成方法について記事にしています。「mountコマンド」「umountコマンド」「fdiskコマンド」「mkfsコマンド」について扱っています。...

ホットプラグ

ホットプラグ(Hot Plug / Hot Swap)は、コンピュータやシステムの電源が入ったままでも、デバイスの接続・取り外しが安全に行える機能です。これは、ハードウェアとソフトウェアの両方で連携し、電気的・論理的な処理を安全に行う仕組みによって実現されています。

ホットプラグ対応のインターフェースとしては「USB」「SATA」「PCI(一部対応)」「Thunderbolt」「SCSI(RAID環境のもの)」があります。

Linuxのudevによるデバイス管理の流れ

ホットプラグでは次の流れでデバイス管理が行われます。

  1. カーネルは新しいデバイスを検出すると、netlinkソケットを通じてユーザー空間の udevd(udevデーモン)にイベントを通知します。
  2. udevd/etc/udev/rules.d//lib/udev/rules.d/ にある ルールファイルを参照し、デバイスに対して適切な処理(デバイスファイルの作成、シンボリックリンク付与、スクリプト実行など)を行います。
  3. ②の処理の中で必要に応じて /dev に動的にデバイスファイルが作成されます。

udevd 自身はカーネル内部の情報に直接アクセスすることはできませんが、カーネルが公開している /sys(sysfs)を通じてデバイスやドライバの情報を取得し、ルールに基づいた処理を行います。

GUI環境では dbus を通じて、アプリケーション(ファイルマネージャなど)にデバイス接続のイベントが通知され、ユーザーがすぐにデバイスを利用できるようになります。

ホットプラグに対してコールドプラグと呼ばれるものがあります。コールドプラグとは、コンピュータやシステムの電源を切った状態でしか接続・取り外しができないハードウェアのことを指します。電源が入ったまま抜き差しすると、ハードウェアの故障やデータの破損などのリスクがあります。

記憶装置

記憶装置はデータやプログラムを保存・読み出しするためのコンピュータの構成要素で大きく分けて「主記憶装置」と「補助記憶装置」があります。

主記憶装置

主記憶装置はCPUが直接読み書きするための一時的な記憶領域です。揮発性(電源を切るとデータが消える)で、RAM(Random Access Memory)、キャッシュメモリがあります。

主記憶装置の種類:

  • RAM(DRAM, SRAM): 一時的な作業領域です。処理速度は速いですが、電源オフで消えます。
  • ROM(Read Only Memory): 書き換え不可または限定的に書き換え可能な不揮発性メモリです。BIOSなどに使われています。

補助記憶装置

補助記憶装置は長期間データを保存するための装置です。非揮発性(電源を切ってもデータが保持される)で、HDD、SSD、USBメモリ、光学ディスク(CD/DVD)などがあります。

補助記憶装置の種類:

  • HDD(ハードディスクドライブ): 磁気ディスクでデータを保存します。安価で、大容量です。機械的な部品があるため遅いです。
  • SSD(ソリッドステートドライブ): フラッシュメモリで高速アクセスです。衝撃に強く、軽量・静音ですが、HDDよりも高価です。
  • USBメモリ:携帯性に優れ、簡単に抜き差しできる記憶装置です。小容量〜中容量。
  • SDカード:モバイルデバイスやカメラなどで多く利用されています。容量や速度は製品によります。
  • CD/DVD/BD(光学ディスク):読み取り・書き込みができ、バックアップや配布メディアに使用されることが多いです。

今回は以上になります。

「Linux」おすすめ書籍6選【初心者・脱初心者用】| 現役エンジニア&プログラミングスクール講師「Linux」初心者の方がLinuxの操作や仕組みを理解するためのお勧めの書籍について取り上げています。また中級者として更に進んだ学習ができる書籍についても1冊取り上げています。ページの下部には「おすすめのITスクール情報」「おすすめ求人サイト」について情報を掲載中。...

ブックマークのすすめ

「ほわほわぶろぐ」を常に検索するのが面倒だという方はブックマークをお勧めします。ブックマークの設定は別記事にて掲載しています。

「お気に入り」の登録・削除方法【Google Chrome / Microsoft Edge】「お気に入り」の登録・削除方法【Google Chrome / Microsoft Edge】について解説している記事です。削除方法も掲載しています。...
【パソコン選び】失敗しないための重要ポイント | 現役エンジニア&プログラミングスクール講師【パソコン選び】失敗しないための重要ポイントについての記事です。パソコンのタイプと購入時に検討すべき点・家電量販店で見かけるCPUの見方・購入者が必要とするメモリ容量・HDDとSSDについて・ディスプレイの種類・バッテリーの持ち時間や保証・Officeソフト・ウィルス対策ソフトについて書いています。...
RELATED POST
no image
12-LPIC「level1」

LPIC|level 1【パーティションとファイルシステム】

2025年6月1日
プログラミング学習 おすすめ書籍情報発信 パソコン初心者 エンジニア希望者 新人エンジニア IT業界への就職・転職希望者 サポートサイト Programming learning Recommended schools Recommended books Information dissemination Computer beginners Prospective engineers New engineers Prospective job seekers in the IT industry Support site