Mac業界の最新動向はもちろん、読者の皆様にいち早くお伝えしたい重要な情報、
日々の取材活動や編集作業を通して感じた雑感などを読みやすいスタイルで提供します。

Mac Fan メールマガジン

掲載日:

アップデートは必ずしなければならないの?

著者: 千種菊理

アップデートは必ずしなければならないの?

バグのないソフトウェアはない

昨今、人工知能の発展が著しく、チェスや碁、将棋などではすでに人間を凌駕しつつありますが、それでもコンピュータが自動的にプログラムを生成することはまだ実用的ではありません。そう、すべてのソフトウェアは人の手によって作られています。人が作るものである以上、どこかにミスが含まれたり、元々想定しない事態に直面、思わぬ挙動を示すことがあります。これを「バグ」といいます。

もちろん、ソフトウェアのリリース前にはバグがないように入念にテストが繰り返されます。こちらは自動化が進んでおり、簡単なテストは指示しておけばコンピュータが繰り返し実行してバグが含まれていないことをチェックしてくれます。とはいえ、複雑な操作は人手で行わなくてはならず、たくさんの標準ソフトが付属するmacOSのような巨大なソフトウェアの場合どうしても見落としは避けれません。つまり、ソフトウェアにバグは避けれない、バグがあることは前提、と考えるべきです。

そのため、多くのソフトウェアにはバージョンという版の数字が付けられ、大きくなるほど新しい、修正されたものであることを示します。かつてソフトウェアがフロッピーディスク1枚で提供されていた時代には、購入時期によって微妙にバージョンが違う、なんてこともありました。あとで買った人のほうがお得だったり、ゲームなんかだと逆に前のバージョンのほうがバグを利用したテクニック(裏技)が使えて便利だった、なんてこともありました。

買った時期で品質が違う、というのは不公平なので、やがて最新バージョンを提供するようになってきました。最初のうちは新品交換、古いディスクを送ると新しいバージョンのディスクを返送するという面倒な対応でしたが、CD−ROMが普及するにつれて雑誌付録CD−ROMを使って配布されるように。

しかし、これにソフトウェア全体を付けてしまうと、そのソフトを買っていない人も使えてしまいます。そこで、購入者だけが使えるよう、古い部分と新しい部分の変更点だけを抽出して、その変更点を書き込むことで、古いソフトウェアを新しいソフトウェアにしていくようにしました。

この変更点(差分)をパッチ(当て布)、パッチを使ってソフトウェアを書き換え、最新版にするという手法をパッチ当てともいいます。穴の空いた服に当て布を当てて使えるようにするのにたとえたわけです。パッチを当てることをアップデート、パッチとそれを当てるソフトウェアのセットをアップデータと呼びます。

アップデートのオンライン化

アップデートを楽にしたいという要望、そしてインターネットが普及してコンピュータがつながり合う時代になってきたことから、CD−ROMなどの物理メディアでアップデートを提供するのではなく、ソフトウェアがインターネットを通じて自分で適切なアップデータをダウンロードして実行、クリック1つ最新版にできるようになっていきました。iOSでは当初から「ソフトウェア・アップデート」というOSのアップデートが自動化されていますし、macOSも前身であるMac OSからソフトウェア・アップデートが導入されました。アップルはいちはやくインターネットに目をつけて、雑誌付録CD−ROMへのアップデータ提供をやめたメーカーの1つです。現在のmacOSでは、ソフトウェア・アップデートはMacアップストアが担うようになりました。これが、画面右上に出てくるアップデート通知です。

macOSのソフトウェア・アップデート

インターネットを通じてソフトウェア・アップデートが配信されると、この通知が現れ、インストールが促されます。[後で行う]をクリックすると1時間後や夜間、明日などに先送りできますが、最終的にはアップデートするべきです。

Mac App Storeでアップデート

10.8 Mountaion Lion以降はOSのソフトウェア・アップデートとMac App Storeが統合され、OSのアップデートもMac App Storeで入手したソフトのアップデートと同じUIで操作するようになりました。

自分の面倒がみんなのリスクへ

さて、このソフトウェア・アップデートはやらないとといけないものなのでしょうか? はい。できるだけ速やかに実施すべきものです。大きく3つの理由によります。

1つはここまで話してきたバグの修正です。とはいえ、冒頭にバグのないソフトウェアはないと書きましたが、昨今のソフトウェアの開発環境は洗練されており、開発中にバグの可能性のあるところを指摘してくれたり、先にも書いたようにテストを自動実行、バグを見つけてくれるようになっています。きちんと開発されたソフトウェアなら、普通に使う分でバグで困ることはそうそうありません。急いで修正しなくてもいいんじゃないかなと思う人も多いでしょう。

2つ目は、機能の改善です。開発者がデザインしたとおりに動いているけど、実際に使っているとちょっと不便だということはよくあります。アップデートによって操作性や機能、速度を改善してより使いやすくするというのはあります。これも人によっては前のほうが良かった、ということもあるでしょう。

3つ目は、セキュリティの問題です。バグの中には悪用できるもの、というのがあります。これを脆弱性といいます。この脆弱性を利用してソフトウェアを乗っ取り、たとえばあなたの個人情報を盗み出したり、乗っ取ったソフトウェアを起点にほかの人に攻撃をかけたりする、ということができてしまいます。アップデートを当てていないコンピュータは自身が危険なだけではなく、人に迷惑をかけることになります。

ましてや仕事で使うものならアップデートは当てて当然です。アップデートが来てから慌てるのではなく、業務の一環としてアップデートを当てたりデータの整理したりという、メンテナンスの時間を定期的に設けるべきです。仕事の道具の手入れは社会人として当然のことでしょう。もちろん趣味のパソコン、スマートフォンであっても、定期的にアップデートを確認するのは良い習慣だといえます。面倒に感じるならば「自動アップデート」機能(図版参照)を活用しましょう。

自動アップデートも可能

システム環境設定の[App Store]ではソフトウェア・アップデートに関する設定が行えます。[アップデートを自動的に確認]にチェックを入れれば、自動的にアップデートを行ってくれます。

Windows 10のソフトウェア・アップデート

Windows 10では、強制的なアップデートが批判されていますが、Windowsユーザは特にアップデートを嫌い、不具合を抱えたまま使い続けられてしまい、気づかないうちにユーザが不利益を被っていました。夜中に自動的にアップデートされ、朝になると最新版になっているのは悪いことではありません。

【 アップデートはいつまで出るの? 】

アップデートがいつまで提供されるかは、ベンダーによって異なります。Appleの場合、原則的に2つ前のバージョンのOSまではアップデートが用意されます。現在、High Sierraが最新のバージョンですが、SierraとOS X El Capitanまではアップデートが出ます。それ以前、たとえばMavericksはもし脆弱性があってもアップデートはまず出ません。macOSの場合、OSのバージョンアップも無償ですので、安全に使いたければ新しいバージョンにアップグレードすることになります。これまでの実績だと、1つのバージョンでだいたい40カ月ほどサポートされるようです。

Microsoftの場合、機能強化も脆弱性対応もされるのメインストリームアップデートと、セキュリティアップデートしか出ない延長サポートであわせて概ね10年のサポートでした。Windows 10からは定期的(半年に1回)に大幅な機能更新(バージョンアップ)が出るので、そのたびに期限が延び、一方で各バージョンのサポート期間は18カ月程度とかなり短くなります。安全性の確保のため、常に最新版にすることを強力に推し進める方針というわけです。

【 OSS界隈で広まる定期アップデート 】

オープンソースソフトウェア(OSS)であるUbuntu Linuxなどでは、年に2回(4月と10月)に必ず最新版をリリースし、通常版のサポートは9カ月となります。macOSのように新機能が整ったところやハードウェアに合わせるのではなく、定期的にリリースをしそのときに最新のバージョンのソフトウェアを搭載していく、という考え方です。Ubuntuの元になったDebianという古くからあるLinuxでは機能が整ったところでリリースしていたのですが、そのためリリース時期が良く遅延し特にビジネス用途では利用しにくいものとなってました。定期的にリリースすることで利用しやすくなるという効果があり、Ubuntu以外にも広まっています。

Windows 10の半期に一度の大幅な機能更新や、ここ数年のmacOSの年に一度のメジャーリリースはこうしたOSS的な考え方に影響を受けたものとも見えます。ただ、Ubuntuは「そのときにできたものを搭載する」のに対し、両OSとも定期的かつ新機能をきっちり搭載を捨てていないため、High Sierraでは信じがたい品質劣化、Windows 10ではリリース遅延と新機能の搭載見送りの遠因になっているのも事実です。

文●千種菊理

本職はエンタープライズ系技術職だが、一応アップル系開発者でもあり、二足の草鞋。もっとも、近年は若手の育成や技術支援、調整ごとに追い回されコードを書く暇もなく、一体何が本業やら…。