ITエンジニアが論理的に/ロジックでいろいろ考えてみるblog 進化途中なのでいわゆるβ版。

ハードのソフト化・ソフトのハード化の繰り返し。

2012.07.10

ハード・ソフトという単語はITの世界で主に使われますが、昨今では二項対立の比喩表現にもよく使われますね。タイトルはそのどちらも指しているのですが、まずはITの世界でのお話から。

 

ITといってもかなりハードウェアよりな話になりますが、筆者がこれまで勉強・経験してきた限りにおいてこの分野は「ハードウェアのソフトウェア化」と「ソフトウェアのハードウェア化」を繰り返しています。最初期の計算機というのは自在に回路を組み替えて別な計算をするというような作りにはなっていない「機械」でした。現在ではノイマン型と呼ばれるコンピュータ(計算機)がほぼすべてでソフトウェアによってハードウェアの動きを必要に応じて変えるというのは非常に当たり前になりました。まぁこの辺は何をもってコンピュータと定義するかという話もあるので、そもそも「機械」だったものに「ソフトウェア」という概念が生まれたところで「ハード」と「ソフト」という区別が生じたというふうにしておきます。それ以来、ソフトウェアの処理が遅くなるとそれを専用ハードにして速度を速める、そのハードの上で動くソフトを新たに書いてそのソフトが主になるというような繰り返しをしてきました。

より具体的に言えば、「仮想化」というキーワードが出てきたら「ハードのソフト化」です。仮想化という概念自体は数十年も前からあるので、計算機科学を学んだ人にとっては新しい概念ではないのですが、近年ホットな話題でもあります。最近の仮想化技術はコンピュータそのものを仮想化することを可能にしています。筆者は日々、仮想化されたサーバを相手にしているので仮想サーバ(仮想マシン)というのは非常に身近な存在なのですが、PC上でも仮想マシンを使っているユーザもちらほらいるようです。仮想マシンというのは、コンピュータ上でソフトウェアを使ってあたかもそこにコンピュータがもう一台(あるいは複数台)あるかのように仮想的にコンピュータを作り出します。仮想マシンだけを使っているとそれは今までと同じコンピュータですが、実際にはその動きはソフトウェアによって作り出されています。

初期の仮想マシンは純粋にソフトウェアによってその動きを作り出していましたが、そうするとどうしても処理に無駄(オーバーヘッド)が生じて仮想マシンの動作は遅くなります。そうすると、この業界では「ソフトのハード化」が起こります。事実、最近のCPUには仮想化処理に特化した機能が備わるようになりました。ほかにも、これまでソフトウェアで作り出していた動きを専用のハードに肩代わり(オフロード)させるという仕組みが生まれつつあります。

この10年ぐらいをみてもハードのソフト化・ソフトのハード化が起きていますが、実際はそれ以前にもハード→ソフト・ソフト→ハードという流れはコンピュータの内部では起きているので、案外これは繰り返されるのではないか、と筆者は考えています。


■ ITの力で個人の生産性を向上させる情報を 日刊でお送りするメルマガ登録はコチラ!

ご登録されたいE-mailアドレスを入力し、登録ボタンを押してください。

関連記事

feedly・RSSで最新情報を購読

follow us in feedly

メルマガ登録はコチラ!

■ITの力で個人の生産性を向上させる情報を
日刊でお送りするメルマガ登録はコチラ!

ご登録されたいE-mailアドレスを入力し、
登録ボタンを押してください。

2012年7月
« 6月   8月 »
1234567
891011121314
15161718192021
22232425262728
293031  

おすすめ記事

登録されている記事はございません。