IBM ThinkPad X41
1.8インチHDD(左)と2.5インチSSD(右)
1.8インチIDE変換アダプタ(左)にmSATA SSD(右)を取り付けると1.8インチSSDになる
バッテリーとHDDを外し、キーボードを外した後、上カバーを外す
mSATA SSDを装着した1.8インチIDE変換アダプタをHDDのコネクタに差し込む
X41にインストールしたLinux Mint 18.1のスクリーンショット

ThinkPad X41の再生

  今を去ること14年前の2005年製のThinkPad X41(2525-19I)のHDDをSSDに換装し再生した。OSはライセンスの関係でLinuxをインストールした。 私のX41はモデル番号2525-19I、インテル(R) Pentium M プロセッサ 低電圧版 758、1.5GB RAM, 60GB HDD、 12.1V型TFT液晶 (1,024x768ドット、1,677万色)、 この時代のPCの画面はアスペクト比4:3で、ワイド画面が主流になるのは数年後のこと。Pentium M 713または738のX40(2004年発表)も同様。
  ThinkPadはIBMの製品だったが、2004年にレノボによってIBMのPC部門が買収され現在はレノボの製品になっている。2005年当時のThinkPadは、まだIBMのロゴのままだった。ThinkPadのキーボードは打ちやすいという定評があった。X41は、B5ファイルサイズのコンパクトかつ軽量で操作性が優れていた。X41の唯一の欠点は、ハードディスクドライブ(以下HDD)が遅いことだが、2005年当時のOSはWindows XPで、RAMは1.5GBで十分だった。その後Windows 7にマイグレーションし、しばらくビデオ会議の検証やパケットキャプチャ用に使っていたが、無料アップグレードでWindows 10にしたら、さすがに遅さが目立ってきた。1.5GBのRAMでは、Windows 10だとHDDにページングする頻度が増えるため、どうしてもスループットが落ちてしまう。
  そしてこのHDDは、標準的な2.5インチではなく、1.8インチの特殊な形状であったため、速度の速い新型のHDDに交換するのが難しかった。IDEの転送レートの限界を改善するためにSATA(Serial ATA) Revision 1.0aの規格がリリースされたのが2003年だが、2005年当時のX41は、まだIDE(Parallel ATA)のHDDだった。その後、市場のHDDの主流が、SATAになり、ますますX41のHDDを交換することが難しくなっていた。
  しかし2013年ごろからmSATA(mini ATA) SSDが出回るようになり、mSATAをIDEに変換するインターフェースカードも登場し、これらを組み合わせることによってX40、X41の1.8インチのHDDをSSDに換装できるようになった。その頃は掛け持ちでやっていた仕事が忙しく、時間ができたときのためにパーツだけ購入しておいた。今年になって時間のゆとりが出来たのでいよいよX41の再生作業となったのである。
2.5インチのSATA HDDからSATA SSDへの換装は何度かやったが、クローンを作って入れ替えるだけなので、他の仕事をやりながら片手間で簡単にやることができた。しかし1.8インチのIDEからmSATA SSDへの換装は、初めてで、BIOSのアップデートが必要だったりとなかなか面白かった。

[IDE変換アダプタの準備]
  最初に1.8インチIDE変換アダプタにmSATA SSDを装着する。これをIDE USB変換コネクタに差し込み外部ハードディスクとして、X41に接続し内部に搭載されているHDDのクローンを作ろうとした。しかし、USB変換コネクタとIDE変換アダプタの相性が悪いのか外部ハードディスクとして認識されなかった。クローン作製を断念し、本体内部に装着し、OSをインストールすることにした。

[X41の分解]
  IBM製品の良い点はドキュメントがしっかりしていることだ。X41のメンテナンスマニュアルをダウンロードするとネジの位置、分解の手順が図入りで詳細に書かれいるので、それに従っていけばよい。
X41に装着しているHDDは、ネジを一本外すと簡単に取り外すことができる。1.8インチHDDなら交換が簡単にできる優れた設計だ。しかしIDE変換アダプタは、1.8インチHDDよりも小さいので上カバー(Upper case)を外さないと取り付けることができない。
まずバッテリーパックを取り外し、6本のネジを外してキーボードを取り除く。以前、日本語キーボードを英語キーボードに交換したことがあったのでここまでは経験済みだ。キーボードケーブルとキーボードを外した後、上カバーを固定している6本のネジを外す。マニュアルにはネジの締め付けトルクまで丁寧に書かれている。
スイッチケーブル、指紋認証ケーブルを外し、カバーを前方のラッチを解放し、上に持ち上げると外れることになっていめが、これがなかなかきつかった。
頑張って上カバーを外ずし、いよいよ1.8インチIDE変換アダプタの取り付けとなる。これは単にコネクタに差し込むだけ。

[BIOSの更新]
  ThinkPad X41のBIOS内にリストされた認定HDD(例えばTravelstar)以外をシステムディスクにすると、BIOSを起動のたびにビープ音を発し、Error2010の警告を表示する。 このエラーが出ても、無視して起動を継続するようにBIOSを設定するとOSを正常に立ち上げることができる。しかし、信頼性が低下するか遅くなる可能性があるとのこと。ThinkPad X41のHDDをSSDに換装したら、このError 2010に遭遇した。電源を投入後BIOSが起動する都度けたたましいビープ音とエラーメッセ―ジの表示が待ち時間になり煩わしい。この現象は、X41の他にX41 Tablet、T43、T43p、R52で発生するらしい。これらのシステムはSATAディスクコントローラを持っていて、PATA(IDE)ドライブを使えるようにSATA-to-PATAブリッジを搭載している。噂によるとこのブリッジはドライブファームウェアの変更を必要とし、BIOSはこの適応されたファームウェアをチェックするらしい。
  IBMはBIOSの更新を行っていないが、適切なIBM / Lenovoファームウェアを持っていない非承認HDDでマシンを起動したときにPOSTから2010 ERRORを回避する非公式の修正BIOSがリリースされている。 その一つ、X41-74UJ15US_SLIC2.1_no_1802_no_2010_by_TTAV134_v2.zipを入手し、HDDをSSDに換装後、一旦Windows 7をインストールして、解凍フォルダの中のwinphlash.exeを実行してBIOSを書き換えた。(最終的にLinuxを入れる予定なのだが、修正BIOSはWindiwsのアプリなので手元にあったWindows 7のDVDを使った。)
  ここでまたトラブルが出た。\winphlash.exeを右クリックで管理者として実行するのだが、 Cannot load driver C:\....\PHLASHINT.SYS. Please check your accounts, if you have no administrator privilege, please login again! The driver has been blocked from loading Error code: 1275と出て進めない。管理者アカウントではないので実行できないというわけだが、海外のサイトにこのエラーについての記述があった。This error could be linked to DEP. Open the system properties control panel, click the 'advanced' tab, and click the settings button for performance, the click the DEP tab. Once here, add winplash.exe to the list by browsing to its path.ということで、DEP(データ実行防止)にwinplash.exeのパスを設定して回避できた。

[OSのインストール]
  クローンを作れるならWindows 10 Professionalで行くのだが、それが出来ないし、他に使えるWindowsのライセンスが無いので、Linuxを入れることにした。昔、RedHat上でC++のアプリケーションを作っていた関係で、その後のCentOSが最も馴染みがあるのだが、今回は軽いLinux Mint 18.1 Sarah MATEを入れてみた。インストールは非常に簡単で、X41のWi-FiやAudioドライバも自動的に入れてくれる。

  これでTFT液晶の寿命が尽きるまで、現役機としてまだまだ活躍できる。14年経っても画面が綺麗なのには感心する。1.8インチIDE変換アダプタの需要があるということは、X40、X41のユーザがいるということで、なかなか頼もしい。

  以下、fioで測定したアクセス速度を示す。なかなかいい結果と思う。ブートに2分位かかっていたのが、20秒になった。Windows 10とLinux Mintの重量差もあるが。。。

Evaluation IOPS Throughput(MB/S) Latency(μSec)
Seq-Read 95 100.0 10433.83
Seq-Write 61 63.0 16368.58
Rand-Read-512K 181 94.0 5502.19
Rand-Write-512K 121 63.9 8190.97
Rand-Read-4K 3007 12.3 322.35
Rand-Write-4K 4609 18.9 207.92
Rand-Read-4K-QD32 3807 15.6 8394.97
Rand-Write-4K-QD32 6468 26.5 4935.65
(2019/06/08)