このページの本文へ

前へ 1 2 3 4 次へ

基礎から覚える 最新OSのアーキテクチャー 第13回

ARM版Windows 8実現の布石となったWindows 7の「MinWin」

2012年03月29日 12時00分更新

文● 塩田紳二

  • この記事をはてなブックマークに追加
  • 本文印刷

ARM版のWindowsを作るためには
MinWinが必要だった

 Windows 7でAPIが整理分類され、最低限必要なAPIセットが定義されてMinWinが作られたのは、Windows 8への準備でもあり、今後のWindowsの発展に必要だったからだ。MinWinは、起動してコンソールアプリケーションが動く程度の、最低限の要素からなるWindowsの根幹部分である。まず、最低限必要な部分を確定させることにより、ほかのCPUアーキテクチャー(そうARMだ)への移植作業が簡略化できる。

 すべてのAPIを分類整理したことで、新しいアーキテクチャーのプロセッサーへ移植すべきAPIを確定できた。過去との互換性のために残されるOSのプログラムコードの大部分は、APIに関連するものだ。古いアプリケーションが古いAPIを使っているから、それを処理するプログラムコードが必要になる。だがOSが新しいプロセッサーアーキテクチャーに対応する場合、そこには古いアプリケーションは存在しないため、互換性維持のためだけのコードは不要になる。

 Windowsではこれらを排除するためには、APIを分類整理したうえで、古いAPIと必要なAPIを実装しているDLL部分を、分離する必要があった。Windows 7はその準備を行なったわけだ。Virtual DLLにより、実際にAPIを提供するDLLをアプリケーションからは見えなくしたことで、APIとDLLの関係を自由に変更できるようになった。

 Windows 7と開発中のWindows 8の構成を見るに、マイクロソフトはWindowsのAPIセットを切り替えるというWindows Vista開発時の方向性は完全に放棄した。従来からのWin32 APIセットは整理しつつ継続する一方で、同時にMetro環境を導入し、複数のAPIセットと実行環境を維持するという方向に切り替えたようだ。

 実行環境が違い、ユーザーインターフェースも違うため、Metro StyleとWindowsデスクトップの両方で動作するアプリケーションというのはありえない。今後のWindows 8対応アプリケーションは、このどちらかひとつを対象に開発される。しかし、アプリケーション開発の基本技術としては「.NET Framework」があり、アプリケーションのロジック部分を共有することは可能だ。ユーザーインターフェースは異なっても、開発言語や開発環境は単一のもので開発できる、という理論なのだと考えられる。

前へ 1 2 3 4 次へ

カテゴリートップへ

この連載の記事

注目ニュース

ASCII倶楽部

プレミアムPC試用レポート

ピックアップ

ASCII.jp RSS2.0 配信中

ASCII.jpメール デジタルMac/iPodマガジン