Cursed Compatibility
MS-DOSから順にアップグレードを繰り返して、Windows 11まで持っていくデモを誰かがやっていた。
3.1、95、98、ME、XP、Vista、7、8、10、11。途中でクラッシュすることもなく、数十年分のOSが一本の線で繋がっている。MEはひどいOSだった。それはさておき、Microsoftの下位互換へのこだわりは異常だ。呪われているかのようにすべてを引き継ぐ。Win32 APIが30年経っても動くのは、互換性を壊すことへの恐怖が企業文化に染みついているからだろう。
一方Appleはというと、互換性にはあまり興味がないらしい。PowerPCからIntel、IntelからApple Silicon。アーキテクチャごと切り捨てる。Mチップへの移行ではしごを外された諸兄も多いだろう。あの薄さに衝撃を受けた初代MacBook AirもIntelチップだったことを思うと、Appleにとってハードウェアの歴史は引き継ぐものではなく乗り換えるものらしい。過去を切り捨てる代わりに、未来に最適化する。どちらが正しいかは立場による。
ただ、互換性には暗い側面もある。
少し前に違法移動基地局がニュースになっていた。車に積んだ装置で2Gの回線規格を使い、差出人を偽装したSMSをばらまく。現代のスマートフォンが数十年前の2G規格にフォールバックできてしまうから成り立つ攻撃だ。古い規格との互換性が、そのまま脆弱性になっている。最近は届かなくなったので摘発されたのかもしれない。
互換性を保つのは美徳だ。でもそれは、過去の脆弱性もまとめて背負うということでもある。Microsoftがいちばんよく知っているはずだ。