PR

 昨年のPDCのレポートでもお伝えしたのですが、Windows 7には各種のセンサーやGPSを扱う機構が搭載されています。基本的な仕組みはWindows 7に入っているのですが、個々のデバイスのドライバーが必要です。これはWindows 7には含まれておらず、デバイスメーカーから入手する必要があります。なので、現在配布中のRTM版にGPSデバイスを接続しても何も起こりません。いままでのVistaと同じ状態です。

 Windows 7には、新しく「Sensor and Location API」というAPI(プログラムからオペレーティングシステム側の機能を使うためのインタフェース)が用意されました。これまでのVistaやXPでも、GPSやセンサーを扱うことは可能でした。しかし、デバイスを直接操作する専用アプリケーションを使うしか方法がなかったため、いくつかの問題がありました。

 例えば、1つのアプリケーションがGPSを使っている間は、ほかのアプリケーションがGPSを使うことができませんでした。また、センサーやGPSのデバイスドライバーの標準的な作り方が決まっていなかったため、メーカーごとに仕様が違っていました。唯一の例外は、Bluetooth(またはシリアル)接続のGPSです。NMEA(NMEA-0183:National Marine Electronic Associationという米国の船舶向け電子機器の業界団体が決めたプロトコル)という標準的なプロトコルがあるため、これに準拠したものであれば任意のデバイスとアプリケーションを組み合わせられました。ですが、この場合でも、GPSは同時に1つのアプリケーションからしか使うことができません。

 Windows 7では、センサーやGPSに対するドライバーの作り方が定められていて、それに準拠したドライバーであれば、Sensor and Location APIから扱えるようになります。また、このAPIは、同時に複数のアプリケーションから呼び出すことが可能なので、例えば、地図アプリケーションで現在位置を表示している間に、別のアプリケーションで位置情報を得ることも可能になります。