AX
<   2012年 05月 ( 3 )   > この月の画像一覧
【iPhone】わけがわからないよ。どうして空きメモリにそんなにこだわるんだい?
iPhoneのアプリでちょくちょくランキング上位に現れるステータスモニタ関連のアプリ。
CPUの使用状況を確認できるものだったり、メモリの使用状況を確認できるものだったり。

それらのアプリの中でメモリを解放してくれる機能も搭載している
アプリとかもあるのだが、少し疑問に思うことがある。

「メモリって自分で解放する必要あるの?」

iPhoneが不安定だったらメモリを解放するといいよ。
iPhoneの空きメモリが少なくなったらメモリを解放するといいよ。
iPhoneはメモリを使ってるとバッテリ消費が速くなるからメモリは解放するといいよ。

なんてことを言う人がいる。果たしてそれは本当なのか?
私はよほど変な使い方をしていない限り、メモリは意図的に解放しなくてよいと思っている。

そんなわけで(どんなわけで?)メモリの話をしましょう。
メモリとは。
今回の話は物理メモリの話です。RAM(RandomAccessMemory)とも呼ばれますね。
私の使っている iPhone 4S の場合は 512MB の物理メモリを搭載しています。
16GBあるドライブのメモリとはまた別です。こちらはフラッシュドライブと呼ばれているそうです。
ちなみにパソコンだとこの他に仮想メモリというものもありますが、
iPhoneは仮想メモリを扱わないので省略します。

iPhoneは(正確に言うとiOSは)物理メモリ(以下メモリ)を4つの種類に分けて管理をしています。
ステータスモニタのアプリを使ったことがある人なら見たことがある言葉だと思いますが、
以下の通りになってます。
  1. Wired(固定中)
  2. Active(現在使用中)
  3. Inactive(現在非使用中)
  4. Free(空き)

一体全体どんなメモリなのかよくわかりませんね。非使用中においては日本語が正しいのかすら怪しい。未使用なのか不使用なのか非使用なのか(^^;

調べてみるとこういうことらしい。
http://support.apple.com/kb/HT1342

Wired : 解放されることがほとんどない、もしくは解放できないメモリ。
Active : 現在起動中のアプリが使用しているメモリ。
Inactive : 終了しているアプリが起動中に使っていたメモリ。使われてはいないので事実上空きメモリ。
Free : 空きメモリ。使用可能なメモリ。

自分なりの解釈を入れて、つまりはどういうメモリを噛み砕いてみると、

Wiredは OS などが使うメモリでiPhoneや起動中のアプリそのものを動かすのに必要なメモリ。
Activeは 文字通り起動中のアプリが使っているメモリ。このメモリは起動中のアプリの
使用状況によって増えたり減ったりするはず。ゲームなんかはたくさんの画像、音楽を
使うことが多いのでメモリを多く必要とすると思います。
Inactiveは 現在使っていないけど、また使うかもしれない。でも使ってもいいメモリ。
非使用中という日本語も「あーなるほど」って感じです。
まだ少し分かりにくいので例をあげると、

空きメモリを200MBとする。
100MBのメモリを使用するゲームAのアプリを起動。
Free:100MB
Wired:今回は無視。実際は起動アプリによる。アプリのサイズ以上は取られることはないかと思う。
Active:100MB
Inactive:0MB

さらに80MBのメモリを使用するゲームBのアプリを起動。
Free:20MB
Wired:同じく無視。
Active:180MB
Inactive:0MB

続いてゲームAを終了する。
Free:20MB
Wired:同じく無視。
Active:80MB
Inactive:100MB(ゲームAが使っていたメモリ)

再びゲームAを起動する。
Free:20MB
Wired:同じく無視。
Active:180MB
Inactive:0MB(保存されていた非使用中のメモリが使用中になる)

実際は少し違うものだと思うが大体こんな感じになるかと思う。

で、最後に、

Free:説明するまでもなく空きメモリ。
ちなみに iPhone 4S には512MBのメモリを搭載していますが、
メモリの一部はGPU用のメモリとして確保される(8MB固定?)らしく、
ステータスモニタアプリでメモリのサイズを調べても512MBより小さく表示されます(504MB)。


ということで、メモリがどういうものか少しわかったところで、
今度はメモリ解放アプリがどのメモリを解放しているか考えてみる。

まず、Wired。OSが使用する分のメモリは解放することはできない。逆にそれ以外の
Wiredのメモリは解放できるはず。常駐アプリが使用しているメモリとか、たぶんそういうの。
続いてActive。基本解放できないはず。何故なら現在使用中だからである。
使用中のメモリを解放すると起動中のアプリが異常を起こし、終了してしまうだろう。
ただし、iOSには起動中のアプリにメモリを解放するように要求する仕組みがある。
その仕組みによってバックグラウンドで起動しているアプリなどを終了させて
空きメモリを作ることもできる。
で、最後にInactive。こちらは使っていないメモリなので解放できる。

ということで、メモリ解放アプリはWired, Active, Inactive全てのメモリを少しづつ
解放しているものと考えられる。

で、結局のところ メモリ解放は意味があるのか?

色々調べてみましたが、どうもメモリ解放アプリは
iPhoneを再起動するよりメモリが解放できるらしい。
つまり、メモリ解放アプリでメモリを解放する意味はあると言って良いと思う。
ただし、それはiPhoneを再起動してもメモリが足りないアプリを起動したい場合に限る。
その他の場合は、iOSが自動でメモリを解放・確保してくれるから敢えて手動で行う必要はない。
強いて言うなら、iOSが(手動でもそうだが)メモリを解放するのに処理が必要だから
リアルタイムな処理を要求するゲームなどの場合、メモリ解放時に処理落ちの様な現象が起こるのを抑制するために。またはアプリ実装者の怠慢やアプリ自体の不具合でメモリを正常に確保できない場合に。そういったところでは、メモリ解放を手動で行うのも良いと思う。
ただ、メモリ解放アプリを使うと再起動よりメモリが空くらしいので普通に考えて少し怖い。
何か解放しちゃ行けないメモリまで解放してしまっているのではないか?と。不安になる。
逆に不安定にならないか、と。

大したことではないが、一応メモリ解放によるデメリットを書いておく。
先に書いたが、解放されてしまうメモリには非使用中のメモリがある。
Inactiveのメモリがそうだが、Wiredで解放されるものも非使用状態と同じだと思う。
つまり次に使われるために待機しているメモリということです。
それらのメモリを解放することで アプリの起動が遅くなったり、アプリの処理が遅くなったりすることがある。
昔のOSとは違い、メモリはあれば使っている方が良いんです。なるべく100%に近い状態で
動かした方が効率良く動くようになっているのです。

ところで、メモリ解放アプリを使ってもマルチタスクバー
(ホームボタンを2回クリックすることで表示されるアレ)のアプリの一覧は消えません。
何故なら、マルチタスクバーに表示されているアプリの一覧はバックグラウンドで実行されているアプリではないからです。
よく勘違いしている人を見かけるが、あれは実行アプリの履歴みたいなもので、
実際にアプリが動いているかどうかは関係ない。
なので一生懸命全部消す必要などないのだ。
ただ、アプリの中にはバックグラウンドで実行されるアプリもあるので、
それらのアプリを終了したい場合は手動で消すと良いだろう。例えばSkypeとかがそう。

んで、マルチタスクバーのアプリを消す意味がないかというと、
あのアプリの一覧を作成するのにもやはりメモリは必要なので消せばほんのわずかだが
メモリは解放されると思う。ゆえに意味はある。
気になる人は消せば良いと思う。

最後に。
メモリやバッテリー、その他色々。快適に使いたいなら優良なアプリを探すことが一番です。
変なアプリを使うとろくなことがないです。

やたらメモリを使用するアプリ。
最悪の場合はメモリリークするアプリだったりするかも。

バッテリーをよく使うアプリ。
アプリの実装の仕方でバッテリーの消費が大きく変わります。

不良とまではいいませんが、広告付きのアプリには注意。
広告を表示するのにメモリを使いますし、バッテリーも使います。
メモリは気にするほどのものではないですが、バッテリーは結構影響すると思います。
理由を簡単に説明すると広告はネットワーク接続を必要としているからです。
アップル提供の開発ガイドにも明記されていますが、ネットワーク接続はバッテリを消費します。
広告の表示は定期的に更新を行うからなおさらバッテリーを使います。

有料アプリが優良アプリとは言いませんし、無料アプリが不良アプリとは言いませんが、
iPhoneで発生する問題を解決する一番簡単な方法は100円玉を使うことかもしれません。


[PR]
by manodeldio | 2012-05-28 23:30 | 携帯電話
【iPhone】iPhoneはスマートフォン。ガラケーもスマートフォン?
ちょっと気になる会話を電車の中で聞いた。

「今度ケータイ買い替えようと思ってるんだけど、iPhoneかスマホかどっちにしようか迷ってるの。」

???( ̄∇ ̄;)
iPhoneはスマートフォンだよ。この人は何を言っているのだろう。

おかしな会話だなぁとは思ったけど、ケータイに詳しくない人にとってはそんなものなのかもしれない。

■ ケータイに詳しくない人
iPhone → Apple社が出してるケータイ。
スマホ → スマートフォンのこと。多機能携帯電話の呼称。iPhone以外のなんか凄いケータイ。
(普通の)ケータイ → 携帯電話。いわゆるガラケー。

こんな感じなのだろうか。
iPhoneはスマートフォンである。
スマートフォンと呼ばれるものの中にiPhoneやGalaxy, Xperiaなどの機種が含まれる。
一般的には以下のような部類分けになっていると思います。

  • 携帯電話
    • スマートフォン
      • iPhone
        • iPhone 4
        • iPhone 4S
        • ...
      • Galaxy
        • Galaxy S
        • Galaxy S II
        • ...
      • Xperia
        • Xperia arc
        • Xperia arc S
        • ...
      • ...
    • フィーチャーフォン
      • 国産ケータイ(ガラパゴスケータイ)
      • 外国産ケータイ
    • (普通の)ケータイ(ベーシックフォン、シンプルフォン)
      • 国産ケータイ
      • 外国産ケータイ


それではスマートフォン(以下 スマホ)って何なのか?ガラパゴスケータイ(以下 ガラケー)と何が違うのか?

一般的にはスマホは「多機能携帯電話」というものになっていると思う。
「多機能携帯電話」と言ってしまうと、ガラケーだって「多機能」じゃないか。と私は思う。
スマホとガラケーは何が違うのか。
いろんな差はあると思うが、その一つは「OS(オーエス)」の差だと思う。

パソコンを使ったことある人なら聞いたことがあるでしょう。
スマホをそれなりに使いこなしている方も聞いたことがあるでしょう。

OSとはOperating Systemの略でコンピュータはこれがないと動かない。
Mac: Mac OSX Snow Leopard, Mac OSX Lionなど
Windows: Windows XP, Windows 7など
コンピュータと呼ばれる類のものはOSが入っている。ゲーム機や携帯電話にも もちろん入っているのだ。

それではスマホとガラケーのOSは何なのかというと以下のOSが使われている。
スマホ:iOS, Android OSなど
ガラケー:Symbian OSなど

でも、なんだかんだ言って、スマホとガラケーはあまり差はないと思う。
別にスマホじゃないとできないこと、ガラケーじゃないとできないことって正直無い。
あるとしたらそれはただ、対応していないだけ。やろうと思えばできる。


タッチパネルだからスマホなのか?
いいえ、日本でiPhoneが発売される前からタッチ方式のケータイはありました。(SoftBank 921SH)

パソコンのメールを受信できればスマホなのか?
いいえ、ガラケーでアプリを作りさえすれば可能です。(jigメーラー)

OSがAndroidならスマホなのか?
散々 上でいろいろ書いたあとで何ですが、ガラケー用のOSとしてメジャーだったSymbianもスマホと呼ばれている機種に搭載されています。(Nokia X7)

キャリアメールが使えればガラケーなのか?
スマートフォンの中にはキャリアメールを受信できる機種もあります。(iPhone)

デコメが使えればガラケーなのか?
スマホでもアプリさえ作ればデコメの送受信が可能です。(iPhone)

Felicaが使えればガラケーなのか?
Felicaチップさえあれば、スマホと呼ばれる機種でも使えます。(SoftBank 005SH)


自分の中の結論としては、
一般的には最初に書いた表の通りだと思うけど、ガラケーも(フィーチャーフォンも)スマホ。
多機能な携帯電話はスマートフォンであり、フィーチャンフォン、ガラパゴスケータイでもあるのだと私は思う。

iPhone vs.アンドロイド
[PR]
by manodeldio | 2012-05-20 00:36 | 携帯電話
【3DS】GW 何もしてねぇ・・・
せっかくの長期連休だったのに(´・ω・` )

4月30日くらいからなんか体調が悪く、5月1日は発熱。完全にダウン。
連休に入って早々、インフルエンザにかかってしまった。
5月6日の昨日、ようやく熱が下がり今日はなんか咳が止まらないがほぼ治ったと言えよう。
連休だったり、旅行だったり なんで俺はこういうタイミングで風邪や病気になってしまうんだろう(:_;)

発熱している最中は全然咳は出てなかったんだけどねぇ。鼻もほとんど出てなかったし、ほんと熱だけ。
その代わりに40度近くまで上がった。まぁ、インフルエンザだしね。
熱が酷いから身体痛いわ、頭痛はするわでほんと何もしなかった、いやできなかったわ。
一昨日くらいから少しづつ楽になってきたから、ベッドに潜り込みながらニンテンドー3DS三昧。
少し前に買った 新・光神話 パルテナの鏡 をやりこんでた(^^;

パルテナの鏡は元々 ファミコン ディスクシステムで発売されたゲーム。
1986年発売の古いゲームだけど、ニンテンドウオールスター! 大乱闘スマッシュブラザーズ で
パルテナの鏡のキャラクタがいくらか登場したことから今の子供でもどっかで見たことあるって子もいると思う。
3Dアクションシューティング 25章構成のストーリーで難易度も100段階の調節ができ、
ゲーム初心者から玄人まで誰でも楽しめるものになっています。

私が特に気に入っているのはオンライン対戦。
インターネットを通じて全国(全世界?)のプレイヤーと協力・対戦ができます。
GW中は子供が多いのか協力プレイ、対戦プレイした人がヘタな印象を受けました(笑)
(ちなみに平日夜中とか 明らかにオトナな方がやっている時間帯は上手な人が多いです。ボコボコにされマース(TT))

パルテナでオンライン対戦をやっているとサーバが人でいっぱいになって通信エラーになることが
たまにあるんですが、実際 街で「すれ違い通信」をしていてもパルテナプレイヤーはそこまで多くないんですよね。
自分の生活している領域がそうなのかな?それとも学生などの子供がメインプレイヤーなのかな?
自分の周りはおっさん・おばさんばっかだからな(==;
なんか、すれ違っている人はモンハンやっている人ばっかだわー。
「すれ違い通信」ではあまり子供とはすれ違わないな。まぁ、場所と時間を考えれば当然か。
新宿9時とかに遊んでる小学生とかいたら嫌だわー。(^^;

【送料無料】新・光神話 パルテナの鏡

 【b0426】【中古】GBAソフト 光神話パルテナの鏡ファミコンミニ24ディスクシステムセレクショ...

[PR]
by manodeldio | 2012-05-07 15:15 | ゲーム