組み込みソフト開発のしきいを下げる"リアルタイムOS"のすべて

池崎 史生

tag: 組み込み

技術解説 2001年6月19日

●OSはハードウェアを仮想化,抽象化する

 実際には,1台しかない計算機システムを,あたかも複数台あるように使える方法として考えられたのが計算機の仮想化と呼ばれるものです(図4)

 例えば,UNIXはスーパーコンピュータからPC-AT互換機,Macintosh,果ては組み込み用のごくごく小さなシステムまで,種々のハードウェア上で動いています.

 ハードウェアの違いに関係なく,同じような管理システムを提供するのがOSなのです.その管理システムは文字だけの表示であったり,MacOS,Windows,X-WindowのようなGUI(graphical user interface)を持っているかもしれません.しかし,見かけの問題であって,メモリ管理のしかたやネットワークの接続のしかたなどは,機種によらず同じような使いかたができます.

 また,ハードウェアの使いかたを共通化することを,計算機科学の世界ではしばしば「ハードウェアの抽象化(あるいは仮想化)」といいます.どの計算機を使っても,同じOSを使うかぎり,一つの同じしくみの計算機ハードウェアであるかのように扱えるようにする役割をOSが担っているのです.

 この考えかたに,ハードウェアだけでなくソフトウェアのありかたをも抽象化することを含めて,「計算機資源の抽象化(仮想化)」ということもあります.扱うハードウェアやソフトウェアをモデル化・抽象化することは,効率の良いシステムを設計するうえで非常に重要です.つまり,機種に依存しない柔軟なOSを作ることができるからです.また,どの部分が機種依存するのかを切り分けるためにも,この考えかたはたいせつです.

f04-01.gif
[図4]仮想的な計算機
実際には1台しかない計算機システムを複数台あるように使うためには,1台しかない物理的な資源を時間で区切って使ったり,メモリを共有したりという機構が必要になる.

組み込みキャッチアップ

お知らせ 一覧を見る

電子書籍の最新刊! FPGAマガジン No.12『ARMコアFPGA×Linux初体験』好評発売中

FPGAマガジン No.11『性能UP! アルゴリズム×手仕上げHDL』好評発売中! PDF版もあります

PICK UP用語

EV(電気自動車)

関連記事

EnOcean

関連記事

Android

関連記事

ニュース 一覧を見る
Tech Villageブログ

渡辺のぼるのロボコン・プロモータ日記

2年ぶりのブログ更新w

2016年10月 9日

Hamana Project

Hamana-8最終打ち上げ報告(その2)

2012年6月26日