2013年12月1日日曜日

WindowsVista: タスクマネージャ 物理メモリ表示の謎を解く

 Windows ME に続く失敗作と言われる Windows Vista だが,そのタスクマネージャも出来が悪い.特にメモリの使用状況表示が極めて理解しづらい.そのため Windows7/8では,このタスクマネージャの表示が変更となった経緯がある.
 

 例えば,上の Windows Vista のタスクマネージャを見ていただきたい.上の画像ではメモリの使用状況は次のようになっている.
  • 物理メモリ使用量:2.06GB
  • 物理メモリ合計:3.069GB
  • キャッシュ済み:1.512GB
  • 空きメモリ:42MB
  まず物理メモリ使用量が2GBであるから,残りは1GBが空きのように思えるが,空きメモリは42MBしかない.では「キャッシュ済み」をスワップアウトにより,物理メモリ不足時に利用できるメモリと考え,空きメモリの一部として扱っているとすると,3GBー1.5GBー42MB=1.5GBとなり,残り1GBとはならず,やはり計算が合わない.この状態で一体,どれだけの物理メモリが利用可能なのか?

ちなみに空きメモリが極端に少ないのは,Windows Vista ではよく見られる現象の一つ.高速化機能の一つである SuperFetch と呼ばれるプリフェチ技術が,空きメモリのぎりぎりまでを使用して,ファイルを予めキャッシュするためだ.

 話を元に戻そう.どうすれば,これらの表示の辻褄が合うのだろうか?そして真の利用可能メモリ量はどのぐらいなのだろう?

 その答えのヒントは,Windows7/8 の改良されたリソースマネージャにあった.Windows7のリソースマネージャのメモリ表示には,Windows Vista ユーザーには聞き慣れない「スタンバイ(stand-by)」と「変更済み(modified)」という2つのメモリエリア分類がある.これが今回のWindows Vista タスクマネージャメモリ表示の謎を解く鍵である.

 実は Windows Vista 以降のキャッシュエリアは2種類に分けられる.1つ目は「スタンバイ」エリア.このエリアは,その時点でキャッシュデータを保持しているものの,キャッシュ破棄もしくはスワップアウトによって,他の目的にすぐに利用することができるキャッシュエリアだ.

 2つ目は「変更済み」エリア.このエリアは,キャッシュデータに対して書き込みがなされているものの,まだディスクにフラッシュしていないため,キャシュ破棄やスワップアウトができない状態(dirty)となっている.言い換えれば,他の目的に転用不可能なキャッシュエリアである.タスクマネージャの「キャッシュ済み」に表示されている値は,この2つのエリアの合計値となっている.

 さらに Windows7 のタスクマネージャには,Windows Vista のタスクマネージャにはなかったある一つの表示項目が追加された.それは 「利用可能(available)」メモリ量だ.これは,すぐに空きメモリに変化することのできるキャッシュ(スタンバイ)エリアと,空きメモリエリアの合計値である.つまり事実上その時点で,他の作業のために使用可能なメモリのことだ.Windows Vista ユーザーが求めていたのは,まさにこの値であった.そしてその値は,「物理メモリ合計ー物理メモリ使用量」にぴったりと一致していた.

 これらの事実さえ知っていれば,謎解きは簡単だ.この例から逆算すると,以下のようになる(太字が逆算値)
  • 物理メモリ使用量:2.06GB
  • 物理メモリ合計:3.069GB
  • キャッシュ済み:1.512GB
    スタンバイ:1GB(キャッシュ済みー変更済み)
    ■変更済み:0.5GB(キャッシュ済みー使用可能)
  • 空きメモリ:42MB
  •  利用可能:1GB(物理メモリ合計ー物理メモリ使用量)
これですべての謎が解けた.下記の公式にまとめておく.
  • 物理メモリ使用量=物理メモリ合計ー利用可能
  • 利用可能=空きメモリ+スタンバイ
  • キャッシュ済み=スタンバイ+変更済み
ちなみに Windows7 においても,「スタンバイ」「変更済み」はタスクマネージャに表示されないが,リソースモニタには表示される.またWindows Vistaではグラフが表示されているのは「物理メモリ使用量」だが,Windows XP では「ページファイル使用量」,すなわちコミットチャージ(略称「コミット」,物理メモリと仮想メモリの合計)を示しているので,勘違いしないように注意したい.

 Windows8では,大幅にタスクマネージャの表示は変更され,全く新しいものとなった.ハンドル・スレッド・プロセス数・起動時間のような,メモリ表示に直接関係ないものは表示されなくなり,すっきりした形となった.特に誤解を招く表現だった「空きメモリ」が表示されなくなったことは大きいと思う.

 Windows Vista においては通常ならば,Super Fetch により,「空きメモリ」は常に0近くを示すようになっていた.これを見た一般ユーザがメモリ不足を心配し,メモリを増設したケースも案外多かったのではないだろうか?しかしそのような行動をとった Windows Vista の32bit のユーザーは,メモリを最大の3GBまで増設したのにもかかわらず,空きメモリ表示が相変わらず 0 近くであることに唖然としたことだろう.

 変動がほとんど無く,常に値が0近辺となる「空きメモリ」は表示し,常に変動し,実質の「空きメモリ量」とも言える「利用可能」は数値として表示しなかったWindows Vista のタスクマネージャ(注:逆算すればわかる).その1世代前のOS Windows XP のタスクマネージャ,さらにはその1世代前の Windows2000のタスクマネージャには,「利用可能」表示があったのに…
注と補足:
Windows XPの「利用可能」メモリ量表示の解説として「プログラムやOSカーネル、システム・キャッシュなどに利用されていない、空き物理メモリのサイズ」というものがある.もしこれが正しいとすると,この値は,Windows Vista タスクマネジャーの「空きメモリ」に当たることになる.しかしWindows XP は,SuperFetchは搭載していなかったため,大量のキャッシングを行っていない.そのため「空きメモリ」量は,「利用可能」量にほぼ等しいと考えられる.Windows Vista タスクマネジャーにおいて「空きメモリ」表示が導入されたのは,「空きメモリ」と「利用可能」が,SuperFetch導入により,一致しなくなったからであろうが,ではなぜWindows Vistaでは「利用可能」を表示する代わりに,「空きメモリ」を表示したのか?
穿った見方をすれば,メーカーサイド(いわゆるWintel)が確信犯的に,ユーザをメモリ不足の不安へ誘導するための工作ではなかったのかと疑いたくもなる.そんなことはないと思いたいが,Windows Vista が初登場した時,要求するハードウェアスペックが非常に高いという印象が強く残ったのを記憶している.今思えば,「Windows Vista 搭載PC=高性能で高価なPC」というイメージが,様々な媒体を通じて,自分の中に刷り込まれていたような気もする.

 今はMSを去ったバルマーが当時採用した Windows Vista PC 販売戦略とはいかなるものだったのだろう?MSにおける彼の最大の後悔は,そのものズバリの Windows Vista であったと彼自身の口から語られている.Windows Vista に何やらスキャンダラスなにおいを感じるのは気のせいだろうか?

 さてリリースされたばかりの最新OS Windows8/8.1 のタスクマネージャの簡素さは,技術者にしてみれば,物足りなく感じるかもしれない.技術者ならば,メモリーリークなどをチェックするために,アップタイムやスレッド数などはモニタしておきたいところだろうが,たしかにこれらは一般ユーザーには不要な紛らわしい情報であったと今は思う.この改善によって少なくとも今後,一般ユーザーがタスクマネージャの不可解な表示や,謎めいたジャーゴンに悩まされることはなくなりそうだ.このことは素直に歓迎したい.

2013年10月30日水曜日

見えない「第三者サイト通信」に光を当てる「Lightbeam」(on twitter @rahumj)

 
Webブラウザ FireFox の無償アドオン Lightbeam は,あるサイトのページを表示したときに,どのような他のサイトと通信しているかを,Cookieの使用を含めてグラフィック表示する mozilla.org 謹製アドオンだ.

 最近のWebページは,マッシュアップ,ウィジェット,SNS・ブログ連動,アクセス解析等のために,そのWebページのサイト以外の,他のサイトとの通信が常態化している.それらの「目に見えない」サイトの中には,ユーザのネット上の挙動をモニタリングし,記録しているものもある.

 Lightbeam は,我々が知らず知らず表示している,その得体の知れない「目に見えない」サイトに対して,光を当てて,その素性を明らかにするためのフラッシュライトだ.Lightbeam は今までに表示したサイトと,その「目に見えないサイト」をグラフィック表示するだけではない.その「目に見えないサイト」の国籍や最初と最後のアクセス日時なども表示してくれる.現在はセキュリティ面から見た危険度などは,残念ながら表示されない.

 Lightbeam がすばらしいのは,その機能だけではなく,そのグラフィック表示そのものだ.ソーシャルグラフ に似た,サイト関係のネットワーク表示は,納豆をかき混ぜるのにも似て(?),操作するだけでも楽しい.

 Lightbeam は当然のことながら,HTML5 , JavaScript , CSS3 で作られている.ただどのような JavaScriptライブラリ を用いているのかに興味を持ち,中をのぞいてみると,D3.jsPicoModal が使用されていた.

 今までに D3.js を使用するような案件はなかったため,名前ぐらいしか知らなかったが,まさかこれほどまでの表現力を,HTMLページに与えることができるとは思わなかった.しかも D3.js のデータ駆動型アプローチは,今まで扱ったことが無いので,大変興味深い.今後は D3.js を用いるページが多くなるのか?ちょっと勉強する価値はあるかもしれない.

 もう一方の PicoModal の方は,「A small, self-contained JavaScript modal library」ということで,他のライブラリに依存しない超小型サイズ(1.6kb)のモーダル表示ライブラリだが,日本語のドキュメントは見当たらない.PicoModal は単機能だが,CSSも不要で,サイズも小さく,依存性もないことから,モーダル機能を持たない JavaScriptライブラリ と組み合わせるのには適しているかもしれない.

2013年9月21日土曜日

王国の誕生,あるいは,新たな「自由からの逃走」(on twitter @rahumj)

 ネットの無料サービスは無料ではない.そのサービスにおける会員の挙動は,すべてモニタリングされている.そこで得られたデータは,ユーザ全体動向統計のデータとなるだけではない.挙動パターンのみからその個人を特定できるほどの,個人プロファイル生成にも使用される.

 莫大な人数の個人に関する詳細なプライベート情報を保有し,それをマクロ・ミクロに渡って分析する能力を持つ者が,市場や世界を牛耳る.情報を持たない者は,情報を持つ者に支配される.脳に情報が集まっており,身体が脳に支配されているように.

 我々は,利便性や自己の欲求を満足させるために,目に見えない形で,ネットサービスに,自己を売り渡しているのだろうか?

 ネットサービスによるコミュニケーションの支配が進めば,それを通じて行われる言論はコントロールされるだろう.例えばサービス側に不利益をもたらすメッセージを誰かに送信しようとすると,「内部サーバエラー」を返して,送信をブロックするようなシステムを導入する.

 サービス内の法律は,そのサービス提供会社が作っている.ユーザーはその法律,すなわち約款を吟味し,そのサービスと契約するかどうかを判断する.しかし契約後,そのサービス内の法が守られているかどうかを判断することはできない.そのために外部機関による監査が必要となるだろうが,そのようなものは実際には存在しない.したがって現在のところ,サービス会社側が意図的に「内部サーバエラー」を起こしていたとしても,誰もそれが本物のエラーなのか,意図的に起こされたエラーなのかは判断できない.

 これらのコントロールは,サービスの一極集中によって可能となっ ている.一つのサービスが,個人のあらゆるニーズに応えていくのであれば,個人情報もあらゆる角度から収集され,その個人のプロファイル像は,多次元空間 の中で明確な位置を持つ.つまりおぼろげだった個人プロファイル像は,ついに焦点を結ぶ.ネットワークアクティビティ情報のみからの個人特定が可能となるだけでなく,彼の情報的資産はすべて,サービス会社の手中にある.

 インターネットの基本精神は民主主義であり,負荷や通信の分散,様々なデバイスによる多様性,そしてそれをまとめるルールであった.そこには,王はいなかった.しかしいつの間にか,この分散レイヤーの上に,いくつかの仮想的中央集中型システムが構築された.王国の誕生だ.

 もし我々が,一極集中型のサービスによってのみ,情報の出し入れや活動ができなくなっているとしたら,それは極めて危険であることは言うまでも無い.それは「依存」であるのだから.

 多様なたくさんのノードから構成されているのがネットワーク(網).それは多様なたくさんの存在が,それぞれの存在を認め合い,少しずつ互いの生存を支え合っているのが本来の姿であろう.私はその「小さき者の群れ」を愛して止まない.

 我々は歴史から,かつて一極集中のもたらした悲劇を,学びなおす必要があるのかもしれない.

2013年9月8日日曜日

家庭用パーソナルサーバを考える2:Raspberry Pi とプラグコンピュータ

 前回の「家庭用パーソナルサーバを考える」では,家庭用パーソナルサーバのハードウェアの条件をいくつか挙げてみた.その条件とは以下のものであった(いくつか追加,太字).
  • 低コスト
  • 低消費電力
  • 低発熱
  • 低騒音(ファンレスで無音が望ましい)
  • Webアプリに対応できる処理能力
  • 超小型筐体(省スペース)
  • 高耐久性(モーターレス,メカニカルな駆動部の無いこと)
  • 拡張可能な巨大ストレージ
  • メンテナンスフリー(モーターレス,メカニカルな駆動部の無いこと)
  • 高速ネットワーク接続
  • わかりやすいリモート操作UI
  • 自由なサービス選択(サービスインストール)
  • 柔軟なカスタマイズ性(プログラマブル)
  • (オプション)UPSバッテリー
  • (オプション)RAID
  • (オプション)オートバックアップ
  前回はこのハードウェアの候補として,NUCを例としてあげた.しかし現在,NUCは,ファンレスではないため,上記の条件のいくつかを満たすことができない.また価格も家庭用として安いとは言えない.

 コスト以外のほとんどの条件を満たすハードウェアの一つは,ピノー「サバ太郎」だが,これは価格が廉価版でも4万6千円と家庭用としては高額だ.もう一つの選択肢は,超小型サーバとして有名なぷらっとホーム「OpenBlocks」となるが,やはり価格に難がある.

 一般消費者向け製品として最も有力な候補は,Globalscale Technologies「GuruPlug」だ参考リンク.これは「玄柴」として玄人志向から発売されて話題となったACプラグ型コンピュータ「SheevaPlug」の改良版だ.1.2GHzのARMのCPU,無線LAN・Bluetooth・ギガビットイーサネット内蔵,Debian6.0プリインストール済みで,価格も1万9千円とお手頃.この製品のユニークさ・おもしろさについては,このリンクを参照のこと.この GuruPlug の問題点はストレージだ. 内蔵FLASHが512Mしかなく,内部にSSDなどを追加できるスロットやSDカードスロットもない.したがって基本的にはUSBで接続できるストレージ機器で,容量を増やすしかない.

 それでもこの GuruPlug は,現時点において,安価な家庭用パーソナルサーバのハードウェアとして,最も有力候補であることは間違いない.現在日本では扱っていないようだが,このGuruPlugの改良型である「DreamPlug」も存在する.さらに,いわゆるプラグ型ではないが,ACアダプタ電源供給による超小型のボックス型サーバ「MiraBox」は,USB3.0にも対応した Globalscale Technologies の新製品である.いずれも価格は2万円以下だ.このように Globalscale Technologies社を筆頭として,超小型サーバ(やPCボックス)は,着実に進化してきているように思う.

 もし一般消費者向け製品でなくても良いのであれば,ラズベリーパイ財団「Raspberry Pi(ラズベリーパイ) Model B」も候補に挙がるだろう.Raspberry Piは,コンピュータ教育用に開発された安価なPC基板だ.ストレージとして別売のSDカードを使用するところがユニーク.基板価格は 4,400円程度で大変安価であるが,別途SDカードを準備する必要がある.この基板を用いてサーバを作成・構築すれば,安価なパーソナルサーバが完成する.Raspberry Piについては,たくさんの書籍も販売されているため,資料には事欠かない.つい先日には,このPC基板と書籍のセット販売すらされていた.

 Raspberry Piは基板で販売されているため,製品というよりパーツといった方が良いのかもしれないが,これを利用したパーソナルサーバが出てきても不思議ではない.家庭用製品としては,ソフトウェア面での簡便さは是非とも必要となってくるが,基板は4,400円程度なのでこの基板を元にして,サーバとソフトウェアとストレージを合わせたソリューションを開発し,価格を2万円台ぐらいで消費者向けプライベートサーバのエントリーモデルを販売することもできそうな気もしないでもない.調べてみると,実際に Raspberry Pi でサーバを構築して公開しておられる方も存在する.

  Raspberry Piの問題点は,ストレージの貧弱さとCPU処理能力(700 MHz)の弱さだ.前述のRaspberry Piをサーバとして運用している方の弁によると,CGI等の負荷がかかると,ページ表示には数秒かかってしまい,実用ぎりぎりのラインと言うことだった.ストレージはUSBで拡張するとしても,CPUの弱さはどうしようもない.今後CPU処理能力の強化されたバージョンが登場するのを待つばかりだ.

 このようにしてみると,ハードウェア的には家庭用プライベートサーバには,それなりに選択肢が出てきたように思う.しかし一般消費者でも使えるようになるためには,ソフトウェア面でのユーザーフレンドリー性やわかりやすいUIが必須となる.それはタブレット端末側のアプリによるリモート制御で実現することになると思われるが,現状では,そのようなソリューションはまだ出てきていない.ただこのように展開されてきた超小型サーバのラインナップを見てみると,少なくとも今後,低コストで家庭用プライベートサーバのソリューションが出てくる下地はできてきたと言えるのではないだろうか.
未評価
GuruPlug
http://www.miniserver.jp/linenap...
このWebサイトは未評価です。評価を表示できません。
Webサイト安全性評価

2013年9月3日火曜日

家庭用パーソナルサーバを考える

 Nexus7を多用するようになってから,PCを使用して得られるエクスペリエンスに対し,PC自体がなんだか大変大げさなもののように思えてきた.PC,特にデスクトップPCは,立ち上がりやシャットダウンに時間がかかり,また大量の電気を消費し,また設置スペースを取る.力のあるPCならばファンの騒音もかなりうるさいく,部屋に熱を排出する.背面は配線でごちゃごちゃしやすく,簡単には移動させられない.また椅子に座っていなければ,基本的に使用できない.しかもトータルなコストもNexus7に比べて大きい等々.

 Nexus7等のタブレットは,完全にPCの代わりになることはできないが,コンシュマーの求めるエクスペリエンスの,ほとんどをまかなうことができるように思う.やはりPCは,仕事用の事務機,あるいはデータ加工工具のような位置づけになっていくのだろう.

 消費者が次に求めるのはおそらく,自分のタブレットやスマホで使用するパーソナルサーバ,つまりプライベートクラウドだろう.特に極めてプライベートな情報を安心して,自己管理の下に置いておくためには,究極的には自分でサーバ管理するしかない .そして格納されたプライベートデータは,タブレットやスマホやPCやスマートTV等の様々なデバイスでアクセス可能であること.すなわちデバイスインディペンデントでアクセス可能でなくてはならない.だとすると,今後ありえる需要はパーソナルサーバということになるが,そのサーバには通常のサーバとは異なるいくつかの条件があるように思う.例えば
  • パーソナルサーバマシンを自己管理可能な場所に設置する
  • パーソナルサーバをインターネット上に公開する
  • パーソナルサーバに固定IPアドレスとドメイン名を持たせる
  • パーソナルサーバに使用したいサービスをインストールし,設定する
  • パーソナルサーバに使用するデータを保管する
  • クライアント端末にサービス用クライアントアプリをインストールする
  • パーソナルサーバは定期的に自動バックアップされる
  • パーソナルサーバにUPSを接続する
  • ストレージはRAID構成
という要求を満たすデバイスが,個人や家庭に必要になるように思う.おそらくそれは,今までのPCの役割を兼務させたサーバマシンということになりそうだ.つまりPCの未来は,Windows8のようにタブレット側に近づくことではなく,サーバ側に近づくことにあったのではないだろうか?

 基本的にサーバマシンは24時間稼働となるので,家庭において24時間稼働するマシンとしては,低消費電力・低発熱・低騒音・超小型筐体・高耐久性・巨大ストレージ・メンテナンスフリー(モーターレス,メカニカルな駆動部の無いこと)・わかりやすい操作UIという特徴が求められる.

 そうなるとNUCのような,手のひらサイズのPCが候補に挙がってくる.ストレージ をSSDにすれば,駆動部はほぼ駆逐できる.問題はODD(光学ドライブ)だが,USB接続と言うことになるだろう.

 理想的なパーソナルサーバのイメージとしては,NUCぐらいの大きさに合わせたUPS内蔵の超小型サーバラックに,NUCぐらいの大きさのサーバ(PC本体)・同形状のODD・同形状のSSD(複数台可能)をマウントする.ラックは電源供給と各モジュールの接続(USB3.0?)をサポートするため,背面の配線の取り回しは不要.このラックに電源ケーブルとLANケーブル(無線LANによりネット接続するのであればこれも不要)を刺せば,パーソナルサーバとなるというわけだ.拡張はラックにモジュールを差し込むことによって行う.

 サーバ操作や管理はタブレットのアプリから行うことができれば,サーバ初心者にとっても管理はかなり楽になるだろう.それにサーバとしてのみ使用するのであれば,ヘッドレス,すなわちモニタもマウスもキーボードも不要となる.またサーバをPCとしても使いたい場合は,モニタ・マウス・キーボードを接続することになるが,マウス・キーボードはできたら,Bluetoothで無線接続させたい.



 ただ実際のNUCには,だいたいCPUファンが存在する.ファン不要のCPUが,タブレットを実現可能にしたように,できたらパーソナルサーバもファンレスのCPUを採用したいところである.ファンレスのサーバ用CPUの開発は,できないものなのだろうか?

 ということで,現実的には現存するNUCが最も理想の家庭用パーソナルサーバマシンに近いと言えるだろう.ハード面は確かにそうなのだが,ソフト面ではどうだろうか?現在はパーソナルサーバ用WindowsOSなど存在しない.NUCにノーマルなWindows8がインストールされているのであれば,WindowsOSのPCをクラウドサーバ化するアプリを探し出して,インストールするということになるだろう.しかし通常のサーバ構築のような作業は,一般の人には大変だろうから,サーバ構築作業が自動的に行われるようなインストーラを含む簡易的パッケージのようなものが必要になるだろう.

 現在のところ,これらの用件を完全に満たしているソリューションは,見当たらない.現在のところは,ほとんどのユーザーがクラウドとして,Google等の大手のサービスを利用していると思われる.それらのサービスを信用して,そこに極めて機密度の高い情報を保管するのも一つのポリシーだと思う.しかしそのサービスが永遠に続くものとは言い切れない.サービス会社の都合により,サービスの内容は変わっていく場合もあるし,採算が合わなければ廃止される可能性もある.例えばつい最近では,Google Readerサービスが終了したことが記憶に新しい.この時そのサービスの多くのユーザは,別のサービスへの引っ越しを余儀なくされたのである.

 世の中には大切な自分の情報を他人に任せず,自己管理したい人もいるだろう.その人達は,多少不便であってもパーソナルサーバが欲しくなるはずである.今後そのようなニーズに応えた製品やソリューションが出てくることを期待したい.

2013年9月2日月曜日

Nexus7(2013)購入 Qi充電の問題

 新Nexus7(2013)を日本のAmazonで購入した。届いたのは、8月23日。それからずっと設定やら、アプリのインストール等を行っている。このブログもNexus7にインストールしたBloggerアプリで投稿した。

 キーボードはソフトキーボード(Google日本語入力)であるため、本体を机の上に置いて、打っているのだが、下を見続けるため、恐ろしく首が疲れる。やはり長文を打つためには、Bluetoothのキーボードが必要になりそうだ。ちなみにタブレットスタンドを100均で購入した.このスタンドに本体を立てかけて、入力すると首がかなり楽になることがわかった.しかしそれでも長文作成はつらい.モバイル環境において長文を入力する場合は、はやりの本体カバーとスタンドを兼ねた、Bluetoothのモバイルキーボードがベストだと思う。家の中では,OTGケーブルを93円でAMAZONで購入し,PCのUSBキーボードを接続する予定.

 自分は今まで、2台のAndroid2.2中華タブレットを使用してきた。10インチと7インチのタブレットである。両方とも感圧式パネルであったため、タップを爪で行う等の工夫が必要であったが、7インチに関しては完全に実用レベルだった。そのためその7インチは、おもちゃとしてではなく仕事道具として、PCが仕えない場合に愛用していた。この7インチタブレットは,OTGに対応していたため,PCのUSBキーボードを接続して、小さなPCとして使用したが,PCと比較して,少なくとも文章作成に関しては、それほど不便は感じることはなかった。

 現在のところ新Nexus7については、バッテリーの持続時間も含めて、大満足している。先程「中華タブレットの7インチは実用レベルだった」と書いたが、致命的ではないもののスリープからの復帰に失敗する等のいくつか不具合もあり、不便を感じることがないわけではなかった。その点、新Nexus7は、今のところ不具合らしきものがほとんどみられない。初期ロットということで、ある程度の不具合を覚悟してはいたのだが、拍子抜けした感じで、パーフェクトに近い完成度を感じさせられた。

 ただ気になる点が一つある. それはQiによる無線充電だ.今回自分は,Nexus7とともにQi充電器「Panasonic 無接点充電パッド ChargePadチャージパッド ブラック QE-TM101-K」を2,982円でAMAZONから購入した.この充電パッドの上に,Nexus7を置けば,自動的に充電が開始される.Qi充電は,有線充電よりもかなりゆっくりなので,パッドの上に置いたまま数時間放置となる.問題は,その充電が終わらないと言うことだ.

 充電が終了すると充電器のLEDが消灯するはずなのだが,充電が終了しているにもかかわらず,LEDが点灯したままとなっている.この時本体に裏面に触ってみると,かなり熱を持っている.こうなってくると熱劣化が心配になる.この問題は現在のNexus7の2chスレにおいても報告されているため,固体の問題ではないようだ.今後の更新により改善されることを期待したいが,とりあえずはだいたいの充電完了時間を予想して,充電が完了していたら,充電台から下ろすという方法で対処してみたい.

2013年8月16日金曜日

phpMyAdmin「mcrypt 拡張をロードできません」のメッセージに対処

 自分の利用しているレンタルサーバ ServersMan@VPS.非常に安くて高機能であるのが気に入っているのだが,先日OSをCentOS6.4にアップグレードした.その結果,サーバは完全に初期化された.つまり,最初からサーバ構築を行わなければならなくなったのだ.その長い道のりを考えると気が重くなったものの,「新しいブドウ酒は,新しい革袋」と気を取り直し,作業を開始した.

 その過程で,phpMyAdmin をインストールした.今回は,yum からインストールできるようになったので,楽にクリアできるかと思っていたのだが,甘くはなかった.

 まず Apache のドキュメントルートに,phpMyAdmin がインストールされたとばかり思っていたのだが,そこには影も形もなかった.探し回り,/usr/share/phpMyAdmin/ にインストールされていることがわかり一安心.ドキュメントルート内に,そのディレクトリへのリンクを置いて対処した.

 さて phpMyAdmin のセットアップページを表示して,セットアップを開始しようと思ったのだが,それが表示できない.以前(phpMyAdmin2系,今回はphpMyAdmin3系)にはこのようなことはなかったと思う.それであれこれ調べてみると,phpMyAdminのディレクトリに,Apcheのアクセス制限がかかっているのに気づいた.納得してアクセス制限を解除して,セットアップページを表示することに成功した.

 しかし表示されたセットアップページは,全く見たことのないもので,手探り状態で設定を行う事になった. なんとかセットアップを完了し,config.inc.php をphpMyAdminのディレクトリにコピーしようとした.ところがここでまた,トラブルに見舞われた.

 セットアップページで生成したはずの config.inc.php を,phpMyAdminのディレクトリにコピーしても,phpMyAdminのトップページからログインができないのだ.これはどうしたものかと,途方に暮れつつ,あれこれ調べてみた.念のために,コピーした config.inc.php の中身を確認すると,セットアップの内容が反映されていなかった.どうやらコピー元とした config.inc.php が,セットアップページで生成された config.inc.php ではなかったようだった.するとセットアップで生成された config.inc.php は何処に?

 FINDしてみると,いくつかのディレクトリに config.inc.php が見つかった.その中からセットアップの内容を反映している config.inc.php を探してみると,それは,/var/lib/phpMyAdmin/config/ に存在した.

 中身を確認したので,今度は問題ないだろうと思い,phpMyAdmin のディレクトリにコピーし,再びログイン.しかしまたしてもログイン不能.壁にぶち当たってしまった.雰囲気としては,やはり phpMyAdmin が config.inc.php を読み込んでいない感じだった.

 そこで考える.ということは,もしや設定ファイルである config.inc.php を格納する場所が違うのではないか?それでとりあえず config.inc.php の存在するすべてのディレクトリをチェック.その結果,候補としてが上がってきた. config.inc.phpを /etc/phpMyAdmin/ にコピーし,再びログインにチャレンジ.

 今度はログインをクリアし,ようやく phpMyAdmin のトップページを表示することができた.しかしまたしても怪しげな表示が…

 トップページの下方に, 「mcrypt 拡張をロードできません」との表示が,いかにもこれはやばいぞ!という感じで,赤く燃え上がっていたのだ!

 確かに以前 phpMyAdmin を yum ではなかく,ダウンロードしてインストールしていた頃は,mcrypt も同時にインストールしていた.しかし今回は yum が依存関係を管理しており,phpMyAdmin をインストールした際に,同時にインストールされたと記憶していた.実際,確認してみると,それは既にインストール済みだった.

 となると,警告メッセージの続きにあったように,「PHP の設定を確認してください」ということになる.しかしどこを設定すれば良いのか,すぐにはわからなかったので,ググってみた.すると下記のブログ記事を発見した.

さくらVPSとデジタルモノ好きの備忘録:
CentOS6.4(64bit)「mcrypt 拡張をロードできません。PHP の設定を確認してください」で七転八倒
この記事のおかげで,この警告メッセージの謎が解けた.インストールされた mcrypt の設定ファイル(PHP拡張設定ファイル)である mcrypt.ini の記述が間違っていたのだ.この記事にあるように訂正すると,あの不吉な赤いメッセージは消え去っていた.

 今思えば,Apache のエラーログに下記のメッセージが出力されていることには気づいていた.
PHP Warning: PHP Startup: Unable to load dynamic library '/usr/lib64/php/modules/module.so' - /usr/lib64/php/modules/module.so: cannot open shared object file: No such file or directory in Unknown on line 0
ただ警告メッセージであり,別段運用上支障は無かったので,警告は知っていたのだが,放置していたのだった.エラーの Apache モジュール名が,module.so というあまりにも抽象的な名称だったので,まさかこれが mcrypt の設定に関係していたとは,考えてもみなかったのだ.

 ということで,phpMyAdmin3系 のインストールと設定は,何とかクリアできた.お疲れ様でした<(_ _)>

2013年8月15日木曜日

無償版もある!MySQL開発支援ツール「MySQL Workbench 6.0」 リリース


SourceForge.JP Magazine
MySQL向けのデータベース開発支援ツール「MySQL Workbench 6.0」リリース

 自分は今までMySQLを使って,Webアプリの開発などをしてきたのだが,このツールのことは知らなかった.オープンソース版(GPL)のCommunity Editionがあるということなので,ちょっと試用してみるのも良いかもしれない.

 MySQLが,Oracleに移ってしまってから ,オープンソースの別のデータベースに鞍替えした人も多いと思う.MySQLの有料化や開発放棄(飼い殺し)など,いろいろなシナリオが考えられたからだ.しかしこのようなツールをOracleが出していると言うことは,PHPと同様に,MySQL本体は無料にして,開発ツールや高速化オプションなどのMySQLの周辺で,商売をしていくつもりなのかもしれない.

 だとすれば,今後もMySQLを使用し続けても良いかなとも思う.ただOracleの経営者は,かなりのやり手だと聞いているので,MySQLがOracleに収益をもたらさないと判断した場合は,それなりの手段を執るであろう事は間違いない気がする.それなら別のオープンソースデータベースに移行するのが正解のような気もしてくる.みなさんはどう思います?