変奏現実

パソコンやMMORPGのことなどを思いつくまま・・・記載されている会社名・製品名・システム名などは、各社の商標、または登録商標です。

この画面は、簡易表示です

パソコン

XPからWin7/8へ乗り換えたくないと思う理由を考えた

  1. Vistaの大失敗以来、Windowsの製品サイクルが極端に短くなった。
    • 発売当初のディスカウントを除き、無理な開発が続いた影響か、価格は上昇傾向にある。
  2. 製品ごとにデスクトップのデザインが異なる
    • 自分なりに使いやすくしたデスクトップや便利なデスクトップのガシェットもWindowsのバージョンアップと共に放棄しなければならない。
  3. Windows8のスタート画面はUIとして最低だ。
    • スキル不足と云えばそれまでだが、Win8のスタート画面に並ぶアイコンはイミフで、アプリのシリーズや会社のアイコンが多く、同じアイコンがいくつも載っている。
    • このため、どうしてもアイコンと一緒にタイトルを載せる必要があるため、スマフォより大画面で横幅も圧倒的に広いのに、必死に横スクロールしなければならない。
    • 以上から、Win8のスタート画面でメーラーとテキスト・エディタしか使わないライターにはピッタリだが、なんでもパソコンに詰め込んでいる人には全く不向きなシロモノだ
      • 当然のことながら、彼らは他の用途のアプリはお気に入りのiPhoneに詰め込んであるので何も支障が無いのだ。
    • そう彼等を見習って、毎日使うアプリだけスタート画面に残すのがベストだ。
      • 後はデスクトップにアイコンを貼り付ければ良いのだから。
    • 今思えば、スタート画面ではなく、カスタマイズ可能なロック画面(あるいはスクリーンセイバー)とかにすればよかったのだ。
      • ロックするとあのスタート画面を表示
      • とりあえずキーを押すかパスワードを入力すると、
      • デスクトップへマウスで何かをクリックするとアプリが起動。※パスワードを入力するかもとか
  4. Vista以降の互換性の向上と称して、マイドキュメントやアプリが変更したファイルの居場所を転々と移動させた前科がある。
    • ユーザアカウントやアプリの特権の有無によって、どうなるかが決まるため、訳が判っていない人が操作すると、誰にも訳が判らない結果しか残らなかった。
      • 例:XP風にバックアップを取る場所を覚えていると、バックアップを取りそこなうのは確実。
      • 例:トラブったらアプリをこっそり管理者権限で起動し、その後は普通に起動する など
      • 例:トラブったアプリをXP互換モードに変えて起動する。再インストしてもその設定はダケは残っていると知っている人は少ないので、他のPCでまたトラブル など。
      • 例:無関係だがメーラーのメールのバックアップを正しく取れるユーザは皆無。
  5. 何かと.net Version3.x とかなんとかをダウンロードしないと何もできなくなっていたので、管理者権限がないと仕事ができなくなる場面もよく発生した。
  6. 何かとMFCをカスタマイズしたアプリが増え、なぜかインストの順番次第で動作しないことが当たり前になっている。
    • グラボのドライバーは新しいものが好まれPCが不調になると真っ先にアップデートされることが多いが、上のトラブルの主な原因でもある。
  7. サポートを止めると云っているMSが強気なので、嫌毛が走る。

 
逆に
XPが早く無くなって欲しい理由も考えてみた

  1. ゲームがDirextX11に対応しない理由が無くなる。※XPにはDirectX11がインストできないから
    • 早い話がFF-XIVにCore i7-4770KとかCPUを特盛りする必要が無くなる。
    • MoEやPSO2や完美世界やTeraなどのアカウントを今後どうするのかちゃんと決断しないといけなくなった。
      • 一気にグラフィックスをドライスティックにアップグレードし勝負に出てくるかもしれないから※Teraを除く
  2. インストーラを作成するときに、XP用のマージモジュールが不要になり、インストーラーの容量も軽減。
  3. ピュアなXPが動作するマシン(PCとかマザボ)を探さずに済む。※持ってるけどね。やっと捨てられる。
  4. やっと3.5インチのFDDから解放される。※多分ドコかにあるけどね。5インチのFDDって見たことある?
  5. VGA解像度(640×480)も忘れてよし。
  6. Win7のXPモードも無かったことにできる。


ECS製ミニPC「LIVA」

コンシュマー向けの格安で小型なPCのキット。
付属のケースはW 118 mm × D 70 mm × H 56 mm。
CPU:Bay Trail-M SoC
メモリ:2Gバイト(DDR3L)
SSD:32Gバイトか64GバイトのeMMC
LAN:ギガビットEthernet
無線:IEEE 802.11a/b/g/nとBluetooth 4.0
USB: 3.0 と 2.0ポートが1個づつ
画像出力:D-Sub とHDMI
電源:5V/3A
価格:18K円前後(予価
となっているから、後はUSB接続のDVDドライブとWindows8.1、USB3は外部ストレージ、USB2はLogicoolのUnifyingレシーバーでも付ければよいだろう。NUCならチップセットは既存のものなのでWindowsなら当然動くし、CentOS6.3でもすぐ使えた気がする。しかし、Linuxは、Bay Trail-MのSocのチップセット周辺のドライバー対応が終わるまではサクっとは動かないだろうけど、そこが面白い人には価格も安く丁度良いかもしれない。
残念だけど付属のケースはVESAマウンター未対応だが、何かのVESAマウントの金具が入手できれば、工夫次第で取り付けられそう。0スピンドル(ファンやモーター無し)なのでVESAマウント取付け用のテレビハンドルに紐でケースをぶら下げるダケの大雑把なやり方も、持ち運びにも便利そうだ。(笑
何分CPUが非力でGPU性能もショボイので、使い道はブログサーバー、無音のPCオーディオを楽しむ、youtubeのチョット観とか、用途は結構狭い気がする。
NUCが死んだら、コレ使おうかな。
 
しかし、安価なベアボーンの最大の弱点は安価それ自体にある。これにWindows8.1とMS-Officeを購入すると、あまり安さを感じられなくなってしまうし、もしカクカクしたり、処理が重いなぁ~などと感じたりしたら、もっとパワーがあるものにすればよかったとか思ってしまうことだ。



PHILIPS 234ES

フレームは薄いけど液晶面は上左右に1cm程度の非表示領域がある。
更にPCに繋ぐとその液晶面の端から上下1cmづつ、左右2cmづつ黒枠が出現し
その中にデスクトップが表示される!
そう云う訳で実質23インチなのだが、思ったより使えるのはかなり狭くなってしまう。
そこはOSCの画像のOverScanをOnにすることで黒枠は5mm程度に小さくなるものの
デスクトップのアイコンの文字が少しピンボケになるので文字を読むには向いていない。
DVIも付いていればよかったんだろうね。
予想に反してPS4との相性は良くPS4本体で液晶面全体で表示するようにすれば、ほぼ全面でプレイできてお得だ。(大笑
しかも、ゲームをすればAcerのAL2423Wよりずっと見やすい。
PS4に1980×1200のモニターを繋ぐと740×480でBD再生していたが、このモニターなら1080pでちゃんと再生してくれる。
PS4専用モニターとしてはいいほうだろう。
後ろにヘッドフォンもつなげられるが、DUAL SHOCKのイヤフォン端子の方が音が良い。
それに24インチの1900×1200に慣れてしまっているのでやっぱり画面が狭く感じる。
きっと慣れれば・・・と思い横に並べてみると、表示領域の高さが4cmぐらい違っていた。
と云う訳でPHILIPS 234ESとAcer AL2423Wを併用することになりそうだ。
それに横に並べてみるとかなり広くなった。(大笑
ps.
店頭のFFXIVのデモを見てみたら、自宅の同型のモニタより映りが良かったので店員に聴いてみたら
とりあえずRADEONのCCCの設定が変になっているんだろうということで確認してみると
PHL 234E5のスケーリング オプションがアンダースキャン(10%)になっていた。
そりゃ小さく映るよねってことで、0%にすると普通になった。
なぜアンダースキャン(10%)になっていたのかは謎。



エアステーション設定ツール

無線ルータ WHR-G301N を中継モードにすると
大元のルータからIPアドレスが割り当てて貰えず設定画面が開けない状態だった。
だから設定を変えるにはROUTERモードに変えなくてはいけないが、
IPアドレスのセグメントが変わってしまうので、ipconfig /RENEW とか色々面倒で、扱いにくくて仕方がなかった。
でも、このルータ専用のツール(エアステーション設定ツール(Ver.2) Ver.2.0.15を使うと、
中継モードのまま、ルータに勝手にIPアドレスを割り当てられる。
インストして起動。
「はじめに」の画面は 【次へ(N)】 を押す。
「2つ以上のネットワーク接続がつながっています・・・」と出た場合は【続行(C)】を押す。
「エアーステーション無線親機の選択」で、IPアドレスを割り当てたい親機を選択して【次へ(N)】を押す。
既にIPアドレスが割り当てられていれば「設定画面を開く」を押してブラウザで設定画面が開く。
「この無線機のIPアドレスを設定する」を選択、
DHCPサーバー(つまり回線の元のルータ)からIPアドレスを自動的に取得する。(かんたん)

次のIPアドレスを使う(上級者・管理者向け) で IPアドレスのネットワークマスクを入力して
を選択する。
 
ただ一度どちらかで設定してしまうと、

2度目以降の変更は「からなず失敗する」

但し、IPアドレスを忘れてしてまってもこのツールが設定済みのIPアドレスを探してくれるから、
ブラウザの管理画面のLAN設定から「LAN側IPアドレス」を設定しなおせばいいだろう。
しかし、一旦スタティックにIPアドレスを振った後に、DHCPで取得するようにしても、同じIPアドレスになったのは、何となく納得できない。大元のルータのDHCPの割り当てリストにもちゃんと載っているから大元のルータがIPアドレスを変えないように配慮した結果なのだろう。
それより、DHCPサーバのネットワークのセグメントを変えちゃった時にこのツールが重宝するんだろうね。



良いコピペと悪いコピペ

プログラムを作る時、
大抵はいくつかのパーツに分ける。
プロパティファイルを読み込むリーダーを作るなら
BinaryFileReader <- TextFileReader <- LineFileReader <- PropertyFileReader
な感じだろうか。
普通ならPropertyFileReaderに使うプロパティファイルをパラメータで指定し、
BinaryFileReader <- TextFileReader <- LineFileReader
の部分は何も変更が無く、大抵のファイルならそのまま流用ができる。
この場合の正統派なコピペは、
PropertyFileReader pfr1 = new PropertyFileReader(“xxxxxxx-1.property”);
PropertyFileReader pfr2 = new PropertyFileReader(“xxxxxxx-2.property”);
PropertyFileReader pfr3 = new PropertyFileReader(“xxxxxxx-3.property”);
となる。
ところが実際には・・・
String [] fileNameList = {
“xxxxxxx-1.property”
,”xxxxxxx-2.property”
,”xxxxxxx-3.property”
};
List <PropertyFileReader> pfrLst = new List <PropertyFileReader>();
for( propertyFileList in propertyFile) {
pfrLst.Add( new PropertyFileReader(“xxxxxxx-1.property”) );
}
の様に、やりたい事に比べて助長過ぎるソースが美しいとされるが、何もメリットは無いし、
static final int   PROPERTY_FILE_INDEX_1  =0;
static final int   PROPERTY_FILE_INDEX_2  =1;
static final int   PROPERTY_FILE_INDEX_3  =2;
pfrLst[PROPERTY_FILE_INDEX_1 ].get(PROPERTY_MEBMER_1);
pfrLst[PROPERTY_FILE_INDEX_2 ].get(PROPERTY_MEBMER_2);
pfrLst[PROPERTY_FILE_INDEX_3 ].get(PROPERTY_MEBMER_3);
のように面妖なConst 定数を使ってプロパティファイルにアクセスしなくてはならなくなり、また勢いソースの行は妙に長くなってしまう。
悪い例のレビュー前:  pfr1.get(“1”);
悪い例のレビュー後: pfrLst[PROPERTY_FILE_INDEX_1 ].get(PROPERTY_MEBMER_1);
つまり、やりたい事を理解せずにソースレビューだけするとたった3行のコピペが上の様な有様に至ってしまう。
更に、ファイル名をConstクラスに差し込んだり、あるいは・・・プロパティファイルに入れてみたりすると、もう終わってる感じがする。
これはWEBでよく見かける見栄えの良いコーディングとは

無駄の塊

でしかないことを意味する。
では、
PropertyFileReader pfr1 = new PropertyFileReader(“xxxxxxx-1.property”);
という1文は見栄えが悪いのかと云えば、そんなことは無い。
ただ、
PropertyFileReader pfr1 = new PropertyFileReader(“xxxxxxx-1.property”);
・・・(98行中略)・・・
PropertyFileReader pfr100 = new PropertyFileReader(“xxxxxxx-100.property”);
となれば何か方法は無いのか?と云いたくなるだけだ。
こうなると、先の無駄の塊がなんとなく見栄えが良く見えてくるから不思議である。
但し、100個もファイルを開いて何をするつもりなのか?という根本的な問題をまず考えるべきである。
その結果が、

100個ファイルを開いても大丈夫なことを確認したかっただけ

だったりすると、100行のコピペで十分な気がする。(大笑
ただ世の中には尋常ではないコピペが存在する。
JCLである。
古い話で恐縮だが、JCLに渡せるパラメータは1個のINT型だけだった古い時代。
Aファイルを読み、書式を変換し、Bファイルに書き出す。
のような単純なことでも
Aファイルが10個あれば
JCL00001
・・・
JCL00010
と違うプログラムを流さないといけなかった。
そう、この10個のプログラムで異なる部分は入力ファイル名と出力ファイル名だけである。
なせなら、C言語が出現する前にも文字列型変数はあったが、概ね固定長であった。
このためJCLのパラメータに文字列型変数を使える様にすると
main( char parameter[10] ) {
・・・
}
にするしかなく、とてもかっこが悪かった。
更に、文字列型のパラメータの数を増やしたりしたら
main( char parameters[5] [10] ) {
・・・
}
とかになっても、どうやって読めばいいのか直観的に判らないシロモノになってしまうからだ。
もっとも、JCLごとにパラメータの数が違うような仕組みは考えられなかったのだろう。
なんたって、1バイトのメモリは血の一滴。とても貴重だった時代なのだから・・・
 
もっとも、パラメータが1~10の場合にファイル名をIF文で振り分ければいいハズだが、ソースレベルデバッガどころがラインデバッガさえ使わせて貰えない時代。つまりVDTな画面とキーボードなんて高値の華だったころは、パ ンチカードな時代で、IF文を書くより、ファイル名の1行(カード1枚)を差し替える方が簡単で動作も確認しやすかったのだ。
ただ、その流れが現在も続いている(もちろん機能は色々拡張されている)のはかなりウザいなぁと思う次第だ。
※もちろん、MMORPGのマクロはJCL系ではある。
しかしJCLを使うのが金稼ぎに来たプログラマなのに対して、
マクロを使うのはお金を払ってくれるユーザであるため、
使いにくいとは云われつつも、JCLの数億倍もパラメータが使いやす。
JCLに似ているが全くの別物である。



SQLServerがキモい

インストしようとしたら
訳が判らない用語だらけ
アカウントの設定が1個ではセキュリティが危ないとばかり
いくつも登録しなくてはいけない。
こんなもん「次へ」のボタンを押しながらインストする様なものではないと思うのはボクだけか?
セットアップツールでも作って入力をチェックした内容をXMLにでも放り込んで、あとでインストーラが勝手に読めばいいんじゃないか?
と思ったが、どうやらそうもいかない。
DBの構成ツールなんかは後でインストするから、
セットアップツールを起動した時点ではチェックする対象もない。
そのチェックする対象をインストするには事前にいくつものアカウントやパスを設定・・・
のループになっていた。
 
 
うん、これはインストーラとして失格だな。
めんどくさくて間違えやすいのにインスト失敗したら何をどう戻すか?
見当も付かない。
中2病もここまで来ると、
動くだけマシだとしか思えない。
そうなれば面倒すぎて
セキュリティなんでザルになって当たり前なのに
そこをインストーラでチェックしてはじく様にしている。
 
やはりデータベースの構築は難しい様だ。
 
なぜって、
1.融通が利かない。
2.失敗は失敗の元、成功は偶然の成果。
3.



LogiLDA.dllが見つかりません・・・です

WS136277
VisualStudio 2013をアンスコしたら出る様になった。
レジストリを検索してみると
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run]
“Logitech Download Assistant”=
“C:\\Windows\\system32\\rundll32.exe C:\\Windows\\System32\\LogiLDA.dll,LogiFetch”
という設定があったので消した。
消すのが不安なら、タスクマネージャのスタートアップ・タグにある
LogiFetchを右クリックし「無効化」を選択して起動しないようにするだけでも良い。
こうなったのはLogiTechのキーボード、マウス、ゲームパッドを使っているからだろう。
ゲームパッドのソフトをインストし直した。
 
 



ゲーミングPCベアボーン ASRock M8

変わったデザインのASRock M8ベアボーン。
M8_web_spces_img1


中のマザボは、ASRock Z87-M8。
2スロットタイプのグラボも搭載可能で電源は450W。
ストレージは3.5インチサイズが2つと光学ドライブのスロットが1つ。
勿論、Wifi & BT 付。
サイズは、372mm (W) x 123mm (H) x 400mm (L)なので、10cm四方のnucに比べれば大きいがPCとしては小さい方の部類で、ゲーム用PCとしては最小サイズだろう。
なおTDPが200Wを越えるグラボは電源容量を考えて使う必要がある様だ。
価格は7万円くらい、ケース+マザボ+電源のセットなので、これにゲーム用にCPU+メモリ+HDD+グラボ+Win8.1を揃えれば、一式20万円は楽に越えるから、決して安いものでは無い。
Intel Core i7-4770K
CMSX16GX3M2A1600C10 DDR3 1200(1600) SO-DIMM 8GB ×2

SSD840EVO    120GB/250GB/500GB

ELSA GeForce GTX 760 S.A.C 4GB  TDP170W ※GTX-770ではTDP240~270

などと並べてみると、7万円なんて誤差の範囲内。
ただ普通のケースのゲーム用PCも似たような価格なので、どうせ買うならこっちの方がいいだろう。
それに、このサイズ(縦置きなら幅12cm)なら2台置ける人も多いんじゃないかな?
ただ、爆音セットなんだろうけどね。



/etc/cron.daily/freshclam: ERROR: Can't create temporary directory /var/lib/clamav/clamav-1d57d70fb1fb6cf5bb5c9c63f9db15e7.tmp

cat /var/log/clamav/freshclam.log
————————————–
ERROR: Can’t create temporary directory /var/lib/clamav/clamav-78d6f6b43e8af63cae49f94b2bd06ec8.tmp
Hint: The database directory must be writable for UID 498 or GID 499

> chown clamav:clamav /var/lib/clamav
> freshclam
ClamAV update process started at Thu Feb  6 21:23:25 2014
Downloading main.cvd [100%]
main.cvd updated (version: 55, sigs: 2424225, f-level: 60, builder: neo)
WARNING: getfile: Unknown response from remote server (IP: 219.94.128.99)
WARNING: Can't download daily.cvd from db.jp.clamav.net
Trying again in 5 secs...
ClamAV update process started at Thu Feb  6 21:24:04 2014
main.cvd is up to date (version: 55, sigs: 2424225, f-level: 60, builder: neo)
Trying host db.jp.clamav.net (203.178.137.175)...
Downloading daily.cvd [100%]
daily.cvd updated (version: 18444, sigs: 687644, f-level: 63, builder: neo)



top