▲最新の戯言に戻る

〜過去の戯言(2015年:1〜12月)〜

新幹線の表定速度と最高速度の比較 11月15日(日) 22:01
 ふと気になったので調べてみた。
北から順に、それぞれ新幹線の最速列車の表定速度(※平均速度ではなく)と、路線としての最高速度の比較。

  • 東北新幹線(〜新青森):644kmを155分なので、249km/h - 最高320km/h
  • 上越新幹線(〜新潟) :270kmを 74分なので、219km/h - 最高260km/h
  • 北陸新幹線(〜金沢) :423kmを124分なので、204km/h - 最高260km/h
  • 東海道新幹線(東京〜新大阪) :515kmを141分なので、217km/h - 最高285km/h
  • 山陽新幹線(新大阪〜博多) :553kmを149分なので、222km/h - 最高300km/h
  • 九州新幹線(博多〜鹿児島中央):257kmを 77分なので、200km/h - 最高260km/h
 最初の3路線は「大宮〜」で計算。最高速度が110 km/h である大宮以南を「新幹線」とは認めません。なので省いた。あれは「上位グリーン車路線」です。乗り心地は大変良いが、速度は在来線と同じだ。

 なお、東北新幹線は仙台までに限った場合は295kmを67分なので265km/h になる。 さすがは、ここ10年で高速化の印象が非常に強い区間さん〜♪。平均速度で整備新幹線の最高速度である260km/h を超えるとはやるな! 大宮→仙台はノンストップなので、ここは表定速度ではなく平均速度で正しい(表定速度も同値)。

 その先、仙台〜盛岡は171kmを39分なので263km/h、、、え、大宮〜盛岡は107分(停車は仙台で1分)になって表定速度で261km/h 達成ってマジすかw
その先の先、盛岡〜新青森(最高260km/h区間)は178kmを47分なので227km/h。この2つの区間もノンストップなのでイコール平均速度。

 大宮→仙台は、10年位前は120分かかっていた気がするので、平均速度は147km/h(当時の最高速度は240km/h)。それから10年で180%まで平均速度を上がったことになるねぇ。びっくりだ。最高速度は240km/h→320km/hで、130%の上昇。ってことは最高速度の向上以上に、高速運転区間が伸びてるってことだねぇ。吃驚だ。



最後に最高速度に対する表定速度の比率を比較してみる。

表定速度最高速度 速度比
東北新幹線 (〜新青森) 249km/h 320km/h 78%
(〜盛岡) 261km/h 320km/h 81%
上越新幹線 219km/h 260km/h 84%
北陸新幹線 204km/h 260km/h 78%
東海道新幹線 217km/h 285km/h 76%
山陽新幹線 222km/h 300km/h 74%
九州新幹線 200km/h 260km/h 77%

 おぉ、上越新幹線が飛びぬけて優秀だねぇ。路線の線形の良さの勝利か。
東北新幹線も盛岡までなら80%を超える。
それ以外は、おおむね最高速度の76〜78%が表定速度と。
山陽新幹線が74%で最下位なのは、区間内の停車駅数が4つで最多だからかな。





電源プランを一時的な変更 11月13日(金) 23:41
 ノートPCの「電源プラン」って、通常モードと省エネモードとあると思うんだけど、 これを半自動的に切り替える方法を見つけた。 「通常モード(CPU元気!)にした後、一定時間後に勝手に省エネモードに戻ってほしい」 って要求を満たす方法。
  1. コマンドプロンプトから「powercfg -LIST」って打つ。
    → そのPCに設定されている「電源プラン」一覧が出るので、
      「通常プラン」と「省エネプラン」のGUID (スキームGUIDって呼ぶ) をメモる。
  2. 「powercfg -S 【変更したい電源プランのスキームGUID】」で、変更する。
  3. 一定時間の待機は「timeout 30 > NUL」。
  4. 続いて戻すには powercfg -S 【元の電源プランのスキームGUID】」でOK。
以上、これらをバッチファイルに登録しておけばクリック一発制御♪


なお、現在の電源プランを知るには「powercfg -GETACTIVESCHEME」で。
詳細は「powercfg /?」しましょう。
@echo off
echo 30秒間だけ、電源プランを「☆☆☆ → ◆◆◆」へ変更します。
powercfg -S 【変更したい電源プランのスキームGUID】
powercfg -GETACTIVESCHEME
echo 何かキーを押すと、即座に元の電源プランに戻ります。
timeout 30 >NUL
powercfg -S 【元の電源プランのスキームGUID】
				



CPUの定性的な分類について 11月02日(月) 12:22
 ちょっとCPUについて自己整理。5年くらい?前はコア数とCPUで楽に定性的に性能を判断できたのに、 昨今はワケワケメになって、ベンチマークの数値見ないと判断できなくなってしまった。 でも、定性的な面での把握もしたいので、まとめてみる。

結論から言うと、性能の大小は「Core i7 > i5 > i3 ≧ Pentium > Celeron ≧ Atom」と覚えておけばOK。 ※2013年〜2015年前提での話。2012年以前になると、ブランド(Core i等)の定義付けが異なるので、この限りではない。


CPU性能の定性的な差分に着目して比較すると、下記の表のようになる。
- Turbo Boost Hyper-Threading L3キャッシュ
サイズ
備考
Core i7
(8MB)
一番性能が良い
Core i5 ×
(6MB)
それなりにパワーが欲しい人向け
Core i3 ×
(4MB)
一般的なユーザ向け
Pentium × ×
(3MB)
値段安くしたい人向け
Celeron × × ×
(2MB)
もっと値段安くしたい人向け
Atom
※Burst
× ×
(2MB)
低価格モバイル向け(※1)

 Core i7は、フルフル装備のハイスペックCPU。

 Core i5は、Core i7 に対してHyper-Threading (wikipedia) を削ったヤツで、CPUの空き時間はそのまま空き時間(=フル稼働しないのでPower食わない)なので、省エネ性能に優れている。

 Core i3は、Core i7に対してTurbo Boost (wikipedia) を削ったヤツで、且つL3キャッシュもCore i5より少ない。経験上、Hyper-ThreadingよりTurbo Boostの方が実効性能の向上に効く。 理由としてはたぶん、Hyper-Threadingはマルチスレッドが有効活用されてないと意味が無いし、あくまでもCPUの空き時間を使っての擬似的なマルチスレッドなので恩恵が少なく感じる(向上率は体感で120%程度)。 一方のTurbo Boostはシングルスレッドでのみ効果と言えど、そのクロック上昇分が直に効くから、かな。

 PentiumとCeleronは、Core i7に対して Hyper-ThreadingとTurbo Boostの双方を削ったヤツで、またL3キャッシュもCore i3より少ない。低価格だけど、性能は値段相応。

 Atomは、上記5つとはアーキテクチャが異なるので単純比較は出来ないが、おおよそ Celeron 相当。でもグッと省電力(Celeronに対して1/3くらい?)。 Celeronとは異なり、Turbo BoostのAtom版とでも言うべきBurst (PC watch) が有効なので、CPU性能だけ見るとCeleronよりも良いかもしれない。でも代わりに接続可能なメモリ上限が低いので注意(2GBとかも多数)。 あとストレージがeMMC限定(※2:SATA接続のHDDやSSD利用不可)なので書込速度が遅い(なので、Windows Update時とかはやたらと時間食う・・・)
※2:いわゆるHDD/SSDは接続不可、、、のはずなのだが、搭載している機種があるのが不思議。 USB接続でも経由してるだろうか? →してるっぽい。「増設Disk」の位置付けの様子。


 ザッと、こんなところかな。
なお、モバイルノートPC/タブレット向けになると、上記のブランドの性能の順序は変わらないものの、定性的な区別は崩れる様子なのであしからず。 Core i5 でも「TB○、HT ○」があったり、Celeronブランドを冠しながら実態はAtomアーキテクチャだったり。そっちの方がよう分らんわー。定性的な区別はあきらめた。。。

なおなお、性能比較したかったのでAtomを上記の表に入れたけど、「※1」に記載のとおり、Atomはモバイル(タブレット)向けのブランド。 なので、Core i7〜Celeronとは土俵が異なるので、単純に「最低ランクのCPU」ではないので注意(それが証拠に、CPU性能だけならCeleronより高い気配)。 なによりも省電力にフォーカスしたのがAtomなので、比較対象はモバイル用Core i7/i5(超低電圧版)、Core Mになってくる(が先に記載のとおり、やつらの定性的な区別はさじ投げた)
性能より省電力が重要なWindowsタブレットに限定すれば、Atomの独壇場だねぇ。(・_・)
以上ー。



【参考Webサイト】
Haswell Refresh デスクトップ版CPUスペックまとめと比較 http://pssection9.com/archives/haswell-refresh-cpu.html
Intel Core i7とi5とi3のCPUの違いは? http://kaworu.jpn.org/pc/Intel Core i7とi5とi3のCPUの違いは?




IME変換中の背景色を変更する方法 9月28日(月) 23:50
 プログラミングのネタです。

 今回の両手たぶメモの最新版(Ver.2.35)では、IME変換中(=漢字変換中)の背景色の変更にも対応しました。これまでは背景色をデフォルトの白から変更した場合でも、IME変換中の背景色はデフォルト(=白)のままでした。これを、背景色に合わせる仕様としました。
 
漢字変換中のダーク色に対応

 ・・・とか言いつつ、黒背景(正確には輝度0.4未満)の時にダーク色になるだけで、 その他の色ではデフォルトのままというダーク優先仕様ですがw
まー、私が黒背景でのダーク色を使いたくなったから、そこ優先で対応♪


 閑話休題。
さて、通常のEditbox(エディットボックス)において漢字変換中(IME変換中)の背景色の変更方法をメモ。 対応するなかでいまいちサンプルが見つからなくて手間取ったので、ね。 RichEditBox(リッチエディットボックス)でのIME変換時の背景色変更は見つかるんだど、標準のエディットボックスだと無い。 ようやく見つけても
WM_IME_COMPOSITIONをとっ捉まえる(必要ならサブクラス化) →「自前で描画してあげればOK♪」
で終わっているのが多い。それ以上の具体的な情報がなかなか出てこなくて困ったのですよ。┐(−ε−)┌
(あれか?態々書くまでもなく分るだろう、と?)

というわけで、
WM_IME_COMPOSITIONを掴まえた後の具体的な処理について記載。
IME変換中の背景色を変更するには以下のように処理すればよい

  1. WM_IME_COMPOSITIONを掴まえる。

  2. そのlParamを見て「変換中」のフラグが入っていたら、「これからIME変寒中の文字列を表示」を意味するので、自前で描画する。 このとき、TextOut()する際の文字色と背景色を任意に設定できるので、これを以って「変換中の背景色の変更」を実現する。
    通常の「文字色と背景色の変更」で WM_CTLCOLOREDIT を捉まえて 文字色と背景色ブラシを設定すると同じ流れですね。 違うのは、続く「文字の描画」も自前でやる点。

  3. 自前で描画したら、ウィンドウプロシージャを抜ける(デフォルトへまわさない)。それ以外の時は、デフォルトプロシージャへ回せばOK。

    • ここで、「自前で描画する」ってのは、WM_IME_COMPOSITIONが流れてきた時点で 「デバイスコンテキスト取得して任意に描画する」って意味。その後にプロシージャをreturn 0;で抜ければ、 描画したとおりに表示される。抜けずにデフォルトプロシージャへ流すと通常のIME表示(背景色はデフォルトの白色)になるので注意。

    • WM_IME_COMPOSITIONを捉まえたら、そのlParamを見て 「変換確定(GCS_RESULTSTR)」と 「未確定(GCS_COMPSTR)」のいずれかであれば (=これが「変換中」のフラグに等しい)、IME変換中の背景色描画が絡むので、この2つを自前処理する(デフォルトプロシージャへは流さない)。 それ以外はデフォルトプロシージャへ流してデフォルト処理を任せる。

    • ここで「変換確定」も処理するのは、「変換確定」と同時に次ぎの入力に対する「未確定」が存在しえるため。 これを処理しておかないと、背景色描画が元に戻る場面が出てしまう。

    • 自前処理するとき、デバイスコンテキストが取得できるので、ペンとブラシを指定してあげれば文字色や背景色を変更できる。 TextOut()で描画するべき「表示されようとしている表示中の文字列」は、 ImmGetCompositionString() で取得できる。

処理の説明は以上ー。
参考にさせていただいたサイト様は以下。分りやすく詳細が書いてあって助かりましたー。感謝。
C++ - IMEの操作 | DIGI-CON 技術部


 ちな、ActiveBasic4向けになるけど、 具体的なコードはこちら。
クラスにまとめてあるので、このまま呼び出せば簡単に実装できるはず♪




両手たぶノートからEvernote連携 9月23日(水) 23:00
 先日にアップした両手たぶメモの最新版では、
選択テキストからEvernoteへ新規ノートへ作成する機能を追加しました(プラグイン)ので、その紹介ー。
(※本機能の動作には、別途Windows版Evernoteクライアントが必要です)

「本家のクライアントの公式機能ホットキーで出来るじゃん!」
とか言うの、禁止―。私がソレをさっきまで忘れてたから禁止ー。


【両手たぶノートからEvernote連携、の使い方】
※利用時は、 アンチウイルスの設定 に注意してください。
  1. 「テキスト・サイド・メニュー」(メニューから「ツール」選択、もしくはCtrl+Mキー押下)から「プラグイン」(もしくは、Ctrl+Pキー押下)を選択し、 「外部App連携」を選択すると出るポップアップメニューから「Evernoteへノートを追加」を選択します。 Evernoteへクリップ1

  2. 下記のようなダイアログが出るので、タイトルや内容を任意に編集してください。
    その後に右上の「レ」ボタンをクリックします。
    →指定のタイトルと内容のノートが、Evernoteに追加されます。
    Evernoteへクリップ1

    ※上記の画面で「i」ボタンを押すと、以下のようにパネルが開き、タイトルの他に
      追加先のノートブックやタグも編集できます。
    ※Ver2015.09.09の場合は、タグが追加できないバグがあります。
      後述の手順に従って、最新版Ver2015.09.18以降へ更新してください。
    Evernoteへクリップ1



【両手たぶメモのプラグインの最新化方法】
  1. メニューから「ツール>公式ユーティリティ>更新確認Onlineユーティリティを開く」を実行します。
  2. サブノートペインが下部に開くので、「公式プラグインのかんたん取得」をクリックします。
  3. 「外部App連携」のリンクを、上部のテキスト表示画面へドロップします。
    →更新プログラムの実行確認ダイアログが表示されるので「はい」を押して実行してください。

  4. ※「公式プラグインのかんたん取得」を利用する際は、
      以下の機能を一時的に無効にしてください。
    • トレンドマイクロ ウイルスバスターの全機能
    • シマンテック Nortonの一部の機能(詳細はこちら
    ※「公式プラグインのかんたん取得」が利用できない場合は、
      メニューから「ツール>公式ユーティリティ>クイックリンク
      >公式プラグイン掲載ページを開く」を実行し、手動で更新してください。
以上ー。





シマンテックNortonさんの誤判定が増えてた・・・ 9月21日(月) 13:16
 両手たぶメモの最新版に合わせて、プラグイン側の更新プログラムの評価してて
発覚。 →プラグインの自動アップデート時に、対象モジュールが隔離されて動作不全。。。orz

先日まで何ともなかったのにー、また機能の改悪か?と不満に思いつつ「Notorn>最近の履歴の表示」で詳細を確認したところ、動作不全の原因は下記の2つみたい。
  • スマートファイアウォール
  • ダウンロードインテリジェンス
とりあえず、上記の2つを一時的に切ることで、正常動作することを確認した。
まぁ、、、自動アップデート機能は「プログラム内から本サイトにアクセスして最新ファイルをDLしてくる」ってものだから、 「監視すべき動作」であることは確か。ただ、、、監視した結果「見たことないファイル&まだ利用者少ないから怪しいw隔離ー!」って するテケトーな動作ってどうよ?(不満)。
ついで、「常に」じゃなくて、時折思い出したよう「散発的に」隔離ってどうよ?

(・・・そうは言っても、ちゃんとユーザーに「××ファイルを隔離したよ」って通知出すし、履歴からたどって「解除」できる仕組みを 提供しているNortonさんは、だいぶマシですが。えぇ、なーんもユーザーへ通知出さずに勝手に隔離して 知らん顔しているシマンテックのウイルス○スター辺りに比べると、だいぶマシ。


 閑話休題。
両手たぶメモの「プラグインかんたん取得」利用時のNortone設定は、下記のようにしてください。
  1. 「Norton Internet Security>設定」を開く。
    ※もし右上の「サイレントモード」が「×(=ON)」になっている場合は、チェックを外してください(下図のように)。 誤動作時の通知も無視される可能性があり、動作不全への対応が困難となります。
    Norton設定

  2. 「ウイルス対策」を開いてい「自動保護>リアルタイム保護>SONAR保護」をOFFにする。
    このSONAR保護については「永続的に無効化」しておくと誤動作に悩まされずに済み、個人的にはお勧め〜。
    SONAR保護をOFFに

  3. 「ファイアウォール」を開いて「一般設定>スマートファイアウォール」をOFFにする。
    スマートファイアウォールをOFFにNorton設定

  4. 続いて「侵入防止とブラウザの保護>ダウンロードインテリジェンス」をOFFにする。
    ダウンロードインテリジェンスをOFFに

  5. 「適用」ボタンを押す。
    (※適用時間は一時的に「15分」程度でOKだと思います。)
以上ー。





OSバージョンの判別方法(WinAPI32) 8月16日(日) 22:50
 久しぶりに(1年ぶり!?)ActiveBasicでプログラミングしたなど。
まぁ、もう盛大に下火だろうけど、メモ→ Windows 10の判別方法。
GetVersionEx() でdwMinorVersionメンバに10が入っていれば、Windows 10らしい。

ただし、このGetVersionEx()を用いる方法は、Windows 10からは非推奨とのこと。
まぁ、、、「とりあえずの対応」で使う程度かな。 参考サイト→ Win10 : OSバージョン


 なお、私自身はActiveBasic用に関数化してるので、参考までに置いときますね。
Windows Millennium Edition, 2000, XP, Vista, 7, 8, 10 で動作確認済み。
≫ActiveBasicのソースコードはこちら。





Blutoothキーボード(Libra LBR-BTK1)with Nexus7 のレビュー 1月18日(日) 18:50
 あけまして おめでとう ございます
 今年も本サイト「Fluorite」をよろしくお願いいたします。 m(_ _)m


 さて。
年明けに、タブレット用にBluetoothキーボード(LBR-BTK1)を衝動買い。
某所で1400円と激安だったので♪
⇒ 両手打ちで入力出来るこの★快☆感♪ うん、買って正解だったー。(^^)v

さて、1週間ほどNexus7での利用してみた雑感。
 ↓
単4エネループ×2で動作OK。Nexus7(2012)で試して接続一発OK。打ち心地は快適。
思ったようにキーが反応してくれて、思ったように入力される。良いわー♪

当初『日本語と英語入力切替え方法』が分からず困ったが、
Nexus7+OpenWnnの場合は「Shift+Spaceキー」で出来た♪
(他の端末+入力方法では「Command+Spaceキー」や「Alt+Spaceキー」のケースもあったと報告あり)。

それから、記号は普通に「きごう」って打って変換して右端の「↑」を『画面をタップ』して
変換候補の欄を拡大後に、下段の最後に出てくる『⇒』を画面タップすると出る。
やっと見つけたー♪(コロンブスの卵)


接続の反応は基本的に良いけれど、以下の順序が一番良いみたい。
逆順にすると、日本語の入力が出来ないケースがあった。。。
  1. あらかじめNexus7側のBluetoothをオン
  2. 利用したいアプリ(ツイッターなんなり)を立ち上げる
  3. 最期にキーボード側の電源をオン(Bluetooth接続ON)



 タブレット用のbluetoothキーボードはずっと探していた。
でも「Nexus7用にお勧め!」って出てくるヤツは、大きさがNexus7と同程度で、
実機も触ってみた結果→「キーが小さすぎて打ちにくい」という結論に達して見送り。
今回のキーボードは、大きいけれど打ちやすいので満足♪