ヘンな名前のファイルが削除出来なくて困ったら。

 超絶今更っちゃ今更ネタなのだが、ちょっとドツボってる場面を見かけたので。

 WindowsのFileSystemAPIはまぁ実に実装がテキトーというか何というかなので、普通にエクスプローラやコマンドプロンプトからは扱えないファイル名のファイルも簡単に作れてしまう。
 まぁそれ自体は兎も角として、世間にはアンインストールしてもそういうファイルを残していくとか、挙げ句テンポラリファイルとしてそういうNGファイル名を使ってる為に、何かの拍子でテンポラリファイルが残ってしまうとアンインストールがエラーになるというヘボ実装のアプリが存在するのであり。

 で、そんなファイルを削除する方法。意外と知られていないらしいので、メモ代わりに書いておく。

 DOS窓を開いて「del ”¥¥?¥ドライブレター:¥フルパス¥ファイル名”」

 ※勿論「¥」は半角で。blogで半角にすると「\」に文字が化けてしまうので。

 ポイントは「¥¥?¥」の部分。
 これはWindowsが持つ特殊パスの一つで、通常使われるpath名展開・正規化エンジンをバイパスするもの。
 なので、通常は正規化されてしまい手が出せなくなるヘンなファイル名やフォルダ名も指定出来るようになる。

 逆に言うと、カレントパスを示す「.¥」等の特殊表記、パス記述での区切り記号(¥)の重複や代替区切り文字の使用(/)等は全てこの正規化エンジンが展開しているので、この指定方法を使うと全てNGになる。

 #なので、スクリプト等で厳密にパス名を検査したい場合に使ったり。

 ちなみに当方が見かけたのはCygwinをテキトーに入れてテキトーに削除しようとしてドツボってた場面。
 「REAME.」(←このファイル名の最後の「.」が問題)なるファイルが残ってしまい、エクスプローラから削除出来なくなる模様。

Share

マルチブートでドライブレターがズレて困ったら。

 さて、今回はパーティションコピーとかマルチブートとかそういう話。
 なのだが、ネタがネタなのでまずはコレを。

 注意:
 手法としては便利なパーティションコピーやマルチブートだが、ソフトウェアのライセンスに留意。
 製品によっては1台のPCでの使用でも複数ライセンスが必要なものがある。

 上記しっかり御理解いただいた上で、それでは続けましょうか。

 ◇

 さて、既存のシステムパーティションをコピーしてマルチブート化したりする時、Windowsでありがちなのが

 コピー先のパーティションから起動するとブートドライブがC:にならない

 というドツボ。
 当たり前といえば当たり前で、既存パーティションがC:であるという情報を持っているので新規パーティションはC:以外になるんですな。

 で、一般的な「HDD引っ越しソフト」では、この問題を避ける為に「旧HDDから新HDDにコピーした後、旧HDDを取り外して新HDDから起動して下さい」ということになっている。
 新HDDだけから起動すれば、既存パーティションが存在しないのでWindowsがドライブレターを再設定することもなく問題無い、と。

 ところが、単一HDDのパーティションを切り直してマルチブート化するという時は、この手法は使えない。何故って旧パーティションを取り外すことが出来ないから。
 で、昔からこのテのパーティション操作ソフトでよくやられていたのが、一時的にパーティションテーブル上のフラグを書き換えて旧パーティションをWindowsから見えない形に偽装してしまうこと。
 理屈からいえば正しいが、Windows自体にもブートマネージャが付いているご時世、このテのソフトにおカネを払うのも何だかなぁと(←発想がケチ臭い)。

 ◇

 それではこういう時どうすればいいかというと。
 Windowsはレジストリにドライブレターとボリュームシリアルとの対比表を持っているので、これを書き換えれば良いんですな。
 この対比表は起動時にWindowsに読み込まれるので、システムドライブのドライブレターもこの設定で決まるのです。

 その対比表だが、具体的にはレジストリのこんなところにあるんですよ。

 HKEY_LOCAL_MACHINE¥SYSTEM¥MountedDevices

 ここの「¥DosDevices¥C:」とかいうキーがそれ。
 つまりここの名前を変えると、ドライブレターが付け替えられるワケですよ。

 具体的には、こんな感じ。

 1. C:のコピーパーティションを作成する。この時ドライブレターは振らない。

 2. BCDeditでコピー先パーティションから起動出来るように設定する。

 3. コピー先パーティションから起動する。
  環境によってはぼちぼちエラーが出るが取り敢えず管理者権限でRegEditが起動出来ればセーフ。

 4. RegEditで自分が起動しているパーティションを(例えばD:から)C:へ交換する。
  この時旧パーティションがC:となっているので、現在起動しているドライブレターをC:にする。
  逆に旧パーティションは現在起動しているドライブレターが付くようにする。

 5. 再起動してコピー先パーティションから起動する。ドライブレターがC:になっていればOK。

 6. 念のため旧パーティションはドライブレターを外しておくのが吉。

 とまぁこの流れで、「マルチブートだがどれで起動してもC:」という環境が作れる。

 ◇

 ちなみにこの手法、Windows10を試してみたいが既存Windows環境が吹っ飛ぶのも困る、という時にも「技術的には」利用可能。
 パーティション自体をリサイズしたりコピーしたりするツールは個人利用に関してはタダ、といったものが色々あるので(どれもPartitionナントカとかいう名前)、そういうモノを使ってシステムパーティションのコピーを取り、BCDEditで起動設定をした後に前述の方法でドライブレターを修正すればOK。

 但し繰り返すが、ソフトウェアのライセンスには注意すること。
 まぁ正直マルチブート程度で複数ライセンスが必要になるってのはさすがにどうなんだという気がするが、そんなコトは作った方が決めることで、それが気に入らないならそのソフトは使わなければいいだけの話。

 では、今回はこんなところで。

Share

Microsoftの「One Windows」とは要するに、全てを「パソコン」にしてしまうということ。

 さて、日本ではGWで交通機関が大混雑していたりする間、海の向こうではMSのイベントであるbuildが開かれていましたよ。で、今回はまぁネタ的に色々出てきたワケなのだが、今更ながら自分が思った事をつらつらと書いてみようかと。

 ♯某PC情報サイトには相変わらずMicrosoft信者の著者によるMSの発表に心酔盲従な記事が出ていたりするが、そういうのは置いといて。

 ◇

 取り敢えず、自分の感想を一言でまとめてみる。

 「One Windows」とは「ALL DEVICES are PC」という意味である

 タイトルの繰り返しではあるが、要するにMicrosoftが目指す所はコレなんだな、ということをしみじみと感じてしまった。
 そしてこれは、「Tablet」や「Smartphone」という定義を掲げるAppleやGoogleに対抗する戦略であると。

 結局、Microsoftは「スマホ」とか「タブレット」というフォームファクタにて現在分断されている(そしてMSが全くシェアを取れていない)世界を、フォームファクタに関係なく全て「パソコン」で統一したいんですな。そしてソレはWindowsが動くモノである、と。
 そして全てが同じ「パソコン」である以上、同じアプリが動いてくれないと困るので、その為にUWPという仕組みを用意したと。

 一方で、今まで「スマホ」とか「タブレット」とかいうフォームファクタに慣れ親しんで来たユーザーを「パソコン」に移行させる為に、Androidアプリを動かすレイヤを載せたりまぁ何でもやります、というのが今回の発表のキモなんでしょう。少なくとも自分はそう理解したんですよ。

 ◇

 で、ここまでの話を聞くと、確かにMicrosoftの戦略としてこれは正しいと思われる。Appleもこの方向を目指しているという噂もあるし、GoogleがChromeBookやChromeBoxで目指しているのも方向性としては一緒ではないかと。

 とはいえ、個人的にはこの戦略がどこまで成功するかは非常に微妙ではないかと思うワケです。
 その根本的な理由は、デバイスの処理能力に幅があり過ぎることなんですよ。

 まず、「従来スタイル」の「パソコン」のスタイルでは、システムリソースをひたすら喰うことで何でも力技でブン回してしまうんですな。現在のWindowsがやっていることそのもの。
 仮にここで「ソフトが重い」となったら「ハードウェアを買い替えろ」となり、悪いのは処理能力の低い「パソコン」を使ってるユーザーとされるのです。
 更にOS側からも処理能力の低い「パソコン」を定期的に捨てさせることで全体の処理能力を引き上げていく。実際コレでMSとIntelは蜜月の関係になって「うぃんてる」と言われていました、と。

 ところがこの世界に、現在のPCでは信じられない程リソースプアなデバイスが大量に乗り込んでくるとなると、今までの「パソコン」の常識が通用しなくなるのではないか、と思うワケです。そしてそれはWindowsに対して良い影響は及ぼさない可能性も低くないだろうと。

 例えば、現在のPC用の大半が当てはまる(と自分は思っている)、プアなデバイスではまともに動かないヘビーなソフトウェアがどう評価されるのか。
 或はそういうヘビーなソフトウェアをうっかりプアなデバイスで触ってしまうというユーザー体験(←これホント気持ち悪い表現なのだが他に同等の言葉を知らないのですよ)をしてしまったユーザーが、以降Windowsに対してどういう印象を持つか。

 かといってそういうプアなデバイスで使える軽量なソフトウェアが広がればそれで良いかというと、それはまた違うでしょう、と。

 まず、軽量なアプリではどうしても出来ることは限られるし、既にiOSでもAndroidでもそんなアプリは星の数ほど存在する。
 その環境に満足している人達に、わざわざOSを乗り換えるというコスト高の作業をさせるだけのメリットをMSが提示したり訴求出来るとは思えない。
 そもそも、所詮Windowsが機能豊富な分AndroidやiOSより軽量に出来るワケが無い以上、どうしても同等の体感速度を出そうとするとハードウェア価格が割高になってしまうので、同じことしか出来ないアプリを使うならOSを乗り換えるメリットは全く無いワケで。

 更に、今までのWindowsのエコシステムというのは、ヘビーなソフトウェアを快適に使いたいという欲求が「パソコン」のリソース増強を招き、それに伴って更にヘビーな機能が追加されていくという、ユーザーの財布以外は全員幸せなサイクルで推進されてきたワケですよ。
 ここにきてもし万が一軽量ソフトウェアの台頭ということが起こってしまった場合、このエコシステムが破壊される=Windowsエコシステムそのものが破壊される=Microsoftが完全に市場での立ち位置を失う、ということになる気がするのですよ、自分はね。

 ◇

 更にこのデバイスによる能力差は、もう一つの問題を産み出すのではないかと。

 それは、開発者への負担の増大。

 そんなこと現在でも一緒だろ、とか言われそうだが、そこは違うと当方は主張したい。
 例えば現在、エンタープライズで活用されるTabletやSmartphoneはiPadやiPhoneが殆どで、より廉価でデバイス選択肢が多いAndroidが何故選ばれないのか。
 理由は簡単、開発する方からしてみればデバイス選択肢なんて狭ければ狭いほどラクなので。

 同じことは今回のユニバーサルアプリ(UWPA)でも言えるのではないかと。

 まず、UI一つ取っても、いくらUI作成APIの補助があるとはいえ、「スマホ」から「パソコン」までをカバーする複数パターンのUIをデザインし、アプリに作りこむのにどれだけの手間がかかるか。
 更に、デバイスのケイパビリティ(=対応能力。例えば画面の解像度とか、Wi-Fiやプリンタが繋がっているかとか)に応じてUIもアプリの挙動も変えるなどと言い出した日には・・・。

 関連して更に、MSが期待をかけているAndroidやiOSからのアプリの移植についても、果たしてそこまで活発に行われるのか疑問も残っているんですよ。

 Android環境を考えると現在でも環境バラバラで環境依存のトラブルは少なくない以上、更に輪をかけてトラブル多発しそう、しかもエミュレータだかトランスコーダだか挟む以上オーバーヘッドは少なくないと思われる環境に打って出る業者がどれだけ居るのか。

 iOS環境からの移植なんてのは更に敬遠されるだろうし・・・そもそも多機種展開したいベンダは現時点でAndroidとiOSは最低おさえているだろうから、Androidからの変換で十分だし、そもそもiOS用しか展開していないベンダは多機種展開に興味無いのではないかと。

 まぁ勿論、カネの論理でインストールベースである端末が世間に溢れればどんどん移植されるだろうが、現状では、ねぇ。

 ◇

 ・・・やや取り留めもなくなってしまったが、要するに。

 多数デバイスを環境統一しようとした時に必ず問題になる部分への配慮が全く足りない

 ように見えるんですよ、自分にはね。

 まぁ実際にはどうなるかは多分あと5年とか経たないと分からないが、取り敢えず現在のMSトップのナデラ氏はいい仕事をしているな、とは思う。

 ♯つかMSが全力を発揮すればこれだけの短期間でこれだけのダイナミックな動きが出来るってことが現在進行形で証明されているのだが、振り返って前職のバルマーってのは(以下略。

 以上、つらつらと書きたいことを書いてみましたとさ。

Share

BitLockerってWriteが結構重いのね…

 さて、とある事情でデータ暗号化が必須という事態が発生したので、色々なソリューション(←IT業界が大好きな表現)をチェックしていたのだが。
 Windows Serverなら追加ライセンス等不要で使えてOS統合なので(統合管理が不要なら)お手軽、というBitLockerをチェックしていた時に、何だか引っかかるモノがあったので真面目にチェックしてみたのだが・・・。

 BitLockerってReadは兎も角Writeが重てぇ

 ということに今更気づいてしまったのであり。
 具体的には、仮想マシンを使った検証環境の(巨大)ファイルコピーで、以下のようなCPU負荷率の数字が。

 暗号化なし → 暗号化なし  8%
 暗号化なし → 暗号化済み  19% (暗号化のみ:+11%)  
 暗号化済み → 暗号化なし  13% (復号のみ:+5%)  
 暗号化済し → 暗号化済み  25% (復号+暗号化:+17%)  

 ♯一応仮想4コア・4GBメモリ・Windows Server 2012R2・Hyper-V。

 以上のように、暗号化の方が復号より2倍近く重い、という実験結果が。
 上記環境で転送速度は大体100~120MB/Sなので、本番環境で要求される数字と比べても控えめなのだが、それでこの数字かぁ・・・と。

 まぁコレを「復号を頑張って軽くした」と評価するのか「暗号化が重過ぎる」と評価するのかは判断の世界だと思うが、一般的なクライアント環境では読込の方が圧倒的に多いので、それに向けてチューンしたという手法自体はまぁ悪くないかと。

 ・・・というか、BitLockerってやっぱりクライアント向け実装でないのかね。
 サーバ用途だと(今回想定のように)ガンガン書き込むのが前提なんて特別珍しくもないワケで。
 ん~やっぱりハードウェア暗号化を考えた方がいいかねぇ・・・。

 あ、最後に。
 MicrosoftはHyper-V環境で仮想マシンからBitLockerを使うことをサポートしていません、念のため。暗号化したければホスト側VHDや外部ストレージ側で暗号化しろとのこと。
 とはいえ実際には動いてしまうしちょっと触っている範囲では不具合や制約にも遭遇したことは無いのだが、あくまで検証ですから、ということで。

Share

2014年のPC業界を個人的に振り返る。

 さて、年末恒例と・・・なっていない?
 今年も年初予想のチェックをしつつ、今年一年を振り返ってみましょうか。

 まずは年初の予想の答え合わせから。

 ハズレ:1◇CPUもついに命名規則がグチャグチャに。
 ハズレ:2◇Haswell Refresh、Corei 5000シリーズ登場。
 ハズレ:3◇Low Power向けとXeon E3-1200 v4向けにBroadwell登場、一部はデスクトップへ。

 →IntelCPU関連についてはもうボロボロもいいところ。
  理由は簡単、AMDがショボいんでパフォーマンス向けにBroadwell焦って出す必要が無いからですな、これ。
  その分のリソースをAtomというかCore Mというか(つかこのブランドも懐かしいよねぇ)の辺りに集中投入したのが今年。
  とはいえこの辺りは完全にARM系とのチキンレースなので、Intelの利幅も相当削られて・・・まぁこの辺りは別のエントリででも。

 やや当たり:4◇Haswell-E(Core i7 5900&Xeon E5-1600 v3)登場、Haswell-EN/EP(Xeon E5-2400/2600 v3)発表。

 →Haswell-EとHaswell-EPは予定通り出たのだが、結局2400シリーズは消滅へ。
  Intelもさすがラインナップを広げ過ぎて各々の位置づけが中途半端になっていたことに気付いてしまっていたようで、Xeonについては全面的にラインナップ大整理の真っ最中。

 当たり:5◇KaveriそしてBerlinが発売されるも、APUのポジションは現在と変わらず。
 当たり:6◇DDR3メモリは高速品の流量が増加するも容量単価は大して下がらず、DIMM容量も増えることもなく。
 当たり:7◇DDR4-2133メモリモジュール登場、でもかなり厳しい船出に。

 →正直嬉しくない項目は揃って正解。メモリに関しては国内では為替の影響でむしろ値上がりしたという。

 当たり?:8◇nVIDIAからMaxwellが発表されるも量産は年半ば以降に、そしてAMDは値下げで対抗するいつものパターンに突入。
 
 →GPU関連で最大のトピックはタイトル「だけ」見るとハズレていないが、コメントで書いた一言は見事にハズレ。
  結局Maxwellは28nmで登場し、このNVIDIAの判断は大正解、AMDのシェアががっつり削られる結果に。

 ハズレ:9◇1.33TBプラッタ3枚の4TB HDDと、4枚の5TB HDD登場。そして容量単価最安値がいよいよ4TBへ移行。

 →プラッタ4枚の5TBは登場したものの、1.33プラッタ3枚は結局登場せず、容量単価最安値も3TBに留まったまま。
  個人的には1.33TBプラッタが出てこなかったこと自体、現在のHDDとHDD業界をいろんな意味で象徴していると思われ。気が向いたらこの辺りはぼちぼち書きます。

 ハズレ:10◇SSDはM2が一通り出揃い、SATA-Expressもアーリーアダプタ向製品が登場、一方で容量あたり単価は大して下がらず。

 →M2はまぁ出てきたという感じだが、SATA-Expressはコネクタこそ付き始めたものの対応SSDはさっぱり。
  容量単価については一時期のような急降下は無くなったものの、下降傾向は続いているという感じですか。

 ◇◇

 以上、甘い判定を駆使しても正解率半分、5/10という酷い結果に。

 ここからは自由記述コーナー。今年は自作限定トピックは正直面白いモノが少な過ぎるので、もう少し広げて「PC関係」レベルで。

 ◇Microsoftの方針大転換で、ソフトの価格概念の変化の始まり。

 のっけからソレかよとか言われそうだが、個人的にこの1年のPC回りの最大のトピックはこれしか思いつきませんがな。

 Office365 Personalの国内導入、Windowsのタダでのばら撒きをはじめとして、兎に角「稼ぎ方」のスタンスを変えてきたMicrosoftが全力で暴れ始めたのが今年かと。

 まぁこれは個人ベースでも影響は少なくないが、エンタープライズでいうと正に激震。Cloud Computing回りは今までMSが軽視していた分野だからこそベンチャーが沢山育ったという面は大きいが、そこにMSが全力投球宣言したのだから、業界勢力図の書き換えは必至。
 更に来年は今年以上に色々と起こるでしょう、と。 

 ◇SMR記録HDDがついに登場、注意書きも特になく。

 ハードウェア絡みの個人的一番トピックはこれ、SMR HDDの登場。
 にしても、いくらDrive-Managedだからって何の注記もなくいきなりブツを出すのはさすがにやり過ぎだろ>Seagate。
 早速ベンチ結果なんかも出ていますが、まぁ実にキモチワルイというか怪しいというかそんな感じで。

 ♯Seagateの場合は結局キャッシュ領域(みたいなもの)をHDD上に確保してWriteのパフォーマンスを稼ぐという方法でDrive-Managedを実装してきたが、これってはっきり言ってSSDの挙動に瓜二つ。そいやSeagateって自社内にSSD開発チームあったよね・・・とか。

 とはいえ暫くはSMR以外に容量拡大の手法も無く、Seagateは来年早々に8TBモデルを投入予定、来年内に10TBモデルもアナウンス予定というのだから、SMR HDDはその価格を武器に一定の勢力を占めるようになると思うんですな。

 しかしこうなると、他社はどう出ますかね。
 HGSTのヘリウムはSMRに癖がある以上多少はプレミア取れるだろうが、いくら癖ありとはいえSMR大容量品が低価格で出回れば「多少」の値幅が問題になることは目に見えている。
 WDはSMRについてここまでSeagateがアグレッシヴに攻めてくると予想していたようには見えないが、価格というある意味今までWDが一番強かった部分を武器にして攻めてくる相手にどう戦うのか。
 東芝は・・・そもそも6TB品ですらまだ出荷していないんだし、最近の容量拡大競争には単純に後れを取っているように見える。

 まぁこんな感じで、HDD回りは来年が久しぶりに面白い年になりそう。・・・てかなってくれ。
 4K放送がどーのとか、エントリーデジカメでも20Mpxとかいう時代に、兎に角タイ洪水から続く「失われた4年」はそろそろ終わりにしてくれ、と。

 ◇微細化に悶え苦しむファウンダリ、各方面に影響出まくり。

 ハードウェア系列では今年かよと言われると返事に困る、このところの毎年恒例ネタは今年もということで。

 ある意味、このところのハードウェア近辺をつまらなくしている張本人がコレ。
 現在の状況はIntel以外総倒れと言ってもいい、正直言って酷い状況。

 ファウンダリ各社は当初は20nmプロセスに熱心だったが、ハイパフォーマンス向け20nmは結局ダメ(=実質的には開発失敗)ということで、現在は16nmの開発に全力投球中。この成果が早ければ来年には出てくるので、そういう意味では一つ見どころではある。

 ♯というかこれがコケたら14nmで先行するIntelにいよいよ「永遠に追いつけない」位置まで引き離されてしまうので、本気で上手くいって欲しいところなのだ、が。

 ◇激安Windowsタブが多数登場。

 今年のトピック、最後にはコレを。
 何とか動いていますレベルとはいえ、動いていることには間違いない低価格なWindowsタブレットが多数登場。

 ここら辺の製品については、市場を一定賑わす効果こそあるものの、当分ニッチを超えない、というのが自分の感想。
 理由はというと、商品としては中途半端過ぎて、個人で買うのはヲタクだけ、エンタープライズでもまずハマらないと思うので。

 世間ではiPadですら出荷数に急ブレーキがかかっているようだし、一方で激安Androidタブは激安Windowsタブの半額以下だし。Windowsが動くということだけで激安Androidを狙うユーザにこの価格差を納得させるのは厳しいでしょ、という考え方。

 え、Officeのフル版付けても正直無理だと思いますよ。
 Officeの機能限定版はAndroidでもタダで使える(ようになる)し、そもそも最初っからOfficeをがっつり使いたい人はこの価格帯のタブレットにはまず手を出さないでしょ。

 一方エンタープライズはというと、ADでポリシー制御が効くPro版でないと実質的に使い物にならんという場面も少なくないだろうし、それじゃAD不要ですとなった途端に「それってAndroidとかiPadじゃダメ?」という質問に耐えられる場面がどれだけあるかどうか。

 ♯逆にPro版に低価格でアップグレード出来るなら結構ハマる場面はありそう。
  もしかして当方が知らないだけで、実はAnytime Updateの仕組みを活かして・・・なんて話あったりするとか?

 まぁ、個人的にはヲタクのおもちゃが増えるのは大歓迎なので、無くなって欲しいとは思いませんが、所詮その程度の位置づけだろうと。

 ◇◇◇

 以上、いつもの調子のこんな記事で今年のblog更新は終了です。
 それでは皆様、よいお年を。

Share