技術とか戦略とか

証券レガシーシステムを8年間いじった普通のSEによるブログ。技術のみではなく趣味の戦略考察についても。PCから見た方が色々見やすいと思います。

情報処理技術者試験対策「回線速度の計算」

回線速度の計算については情報処理技術者試験(主に基本情報)でよく問われますし、私もちょうど実務で使う機会があったので、記事にして説明します。
 
回線には、bps(bit per second、1秒間に何ビット通信できるか)という単位で性能が定められています。
(計算上、単位がビットかつ秒であることに注意が必要です)
例えば、LAN端子の規格である「1000BASE-T」では、「最大1Gbps」という性能が定められています。
 
しかし、実際に通信を行う際は、規格で定められている性能が出るとは限りません。
実際にどの程度の性能が出るのかは「伝送効率」という言葉で示され、規格通りの性能が100%とした場合に実際にどの程度の性能なのかをパーセンテージで表します。
私の経験上は50~80%の範囲の値が用いられることが多いです。
 
回線の規格上の速度に伝送効率を掛け合わせたものが実際の性能です。
例えば、回線の規格上の速度が1Gbps、伝送効率が80%の場合、800Mbps(=0.8Gbps)が実際の性能となります。
バイト単位に直すと秒間100Mバイトになります。
10Gバイト(=10000Mバイト)のファイルであれば、100秒あれば通信できる計算になります。
 
実務では、手元に実機がなく性能検証を行えない場合に、伝送時間を机上で見積もる時にこの計算を行います。
試験対策云々を置いておいても、知っておいて損は無い知識です。
 
※コンピュータの世界では正確には1G=1024Mなのですが、ここでは1G=1000Mとして計算しています。
 
---------------------
目次

https://1drv.ms/b/s!AivF3bzWXOzuhG1Xk5hscKYqkLkM

サクラエディタ:JavaScriptでマクロ実装(サンプル:パスワード自動生成)

最近知ったのですが、サクラエディタのマクロはJavaScriptでも実装できるのですね。
 
サクラエディタ マクロを開発してみる

http://totech.hateblo.jp/entry/2014/03/11/125058
 
キーマクロでは実現できないことも、JavaScriptなら実現できるということもありそうです。
キーマクロでは実現できなさそうな例として、パスワードを自動生成するマクロを作成しました。
実行すると、自動生成されたパスワードの文字列がカーソルの位置に挿入されます。
 
なお、実行は、通常のキーマクロと同じように「キーマクロの読み込み」→「キーマクロの実行」でもできます。
 
【サンプル】
・password_generate.js
//文字列ランダム生成
function password_generate() {
  var len = 8; //文字列の長さ
  var arr = ["0","1","2","3","4","5","6","7","8","9","a","b","c","d","e","f","g","h","i","j","k","l","m","n","o","p","q","r","s","t","u","v","w","x","y","z","A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z"]; //文字種
  var arrLen = arr.length;
  var result = "";
 
  for (var i = 0; i < len; i++) {
    result += arr[Math.floor(Math.random() * arrLen)];
  }
 
return result;
}

//==========
// MAIN
//==========
//
Editor.InsText(password_generate());

サクラエディタをなるべく邪魔にならない場所に開く

こちらの記事のように、「サクラエディタを開く→何らかの処理をする→上書きする→ウインドウを閉じる」をバッチ等で自動的に行うと、新たに開かれたサクラエディタのウインドウが作業の邪魔になったりします。
バックグラウンドプロセスのような形でウインドウを開かずにマクロを実行できれば良かったのですが、DOSのstartコマンドやサクラエディタ実行時のオプションではできませんでした。
そのため、代替案として「1×1サイズのウインドウでモニターの一番左上に開く」というオプションを入れてサクラエディタを実行する方法を紹介します。
 
サクラエディタ起動時に、「 -SX=1 -SY=1 -WX=1 -WY=1」というオプションを入れることで、「1×1サイズのウインドウでモニターの一番左上に開く」を実現できます。
注意点として、サクラエディタはあらかじめ最大化を解除した状態で閉じる必要があります。
 
実際に試してみて、気にならないことはないですが、とりあえず作業の邪魔にはならなそうな感じでした。
ちゃんと測ってませんが、マクロの実行速度もオプションを入れない場合よりも速い気がします。
やってることがもはやテキストエディタではない
 
Windowsバッチの例】
rem バッチ実行前にサクラエディタを開き、最大化を解除してから閉じること
cd C:\tmp\work
for %%a in (*) do (call :method %%a)
pause
exit
:method
"C:\Program Files (x86)\sakura\sakura.exe"  %1 -M=C:\tmp\CRLF→LF.mac -SX=1 -SY=1 -WX=1 -WY=1
goto :eof

サクラエディタ:全角文字の検索方法(怒られ・半角カナ回避版)

サクラエディタ正規表現で下記の条件を指定することで、全角文字を指定することが可能です。
[^\x00\x00-\x7F\x00。-゚]
 
ネットには似たような指定方法が転がっていますが、正規表現に「dregonig.dll Ver.3.06 with Onigmo 5.15.0」を使用している場合は、これでないと「too short multibyte code string」(マルチバイトの定義になってないよ!)と怒られたり半角カナが引っかかったりします。
 
【説明】
・[^...]は否定です。[^a-c]と記述した場合、aとbとc以外の文字がヒットします。
・「\x00\x00-\x7F\x00」は、ASCIIコードで定義された半角文字を指定しています。
 「\x00-\x7F」だと怒られます。
・「。-゚」は半角カナを指定しています。
 「\xA1\x00-\xDF\x00」でも同じ意味になるはずなのですが、
 これだと何故か半角カナを回避できませんでした。
 (理由はわかりません…)

戦略提案:わくわく感への値付け

平日の限られた時間で更新できるネタがないので、Facebookの投稿からネタを引っ張り出してきました。
おもちゃ屋(例:トイザらス)がAmazonに対抗する手段として、おもちゃを手に取るわくわく感に値付けをすることが有効ではないのだろうか、という提案です。
 
【背景】
以下のことを考えながら投稿した記事です。
 
アメリカのトイザらスが経営破たんしたというニュースを見たりそれに対する反応を見たりして色々と考えた
・IT技術が進歩したとは言え、人間の勘や感性を重要視した戦略も重要ではないか、と常日頃から考えている
 
【投稿内容の抜粋】
情報技術が既存の業態を脅かしているように見えますが、既存の業態側が人間の勘や感性を重要視した企業戦略を取れば、情報技術に対抗できる、若しくは共存できると考えています。
例えば、トイザらスAmazonに駆逐されたと見られていますが、トイザらスが閉店したことでおもちゃを手に取るわくわく感が失われたことを惜しむ声があるのも事実です。
であれば、トイザらスはそのわくわく感に値付けするべきであったと考えています。
具体的には、トイザらスの店舗をおもちゃのテーマパーク化し入場料を取り、その代わりおもちゃの値段をAmazonに対抗できる価格にする、子供にはテーマパークでの感動を家に持ち帰る(おもちゃを購入する)という価値を提供する、という戦術を取るべきであったと思っています。
この戦術であれば、「トイザらスで確認してAmazonで購入する」という行動を取らせることもなく、十分にAmazonに対抗可能であったと考えます。
 
【この記事を書いていて思ったこと】
そういえば、近所で何年も続いている個人経営のおもちゃ屋さんは、店員が子供と一緒に遊んでいますね。
一緒に遊んで交流を図り、おもちゃを紹介し、よしみでおもちゃを買ってもらう、このような感性への訴えかけもAmazonに対する対抗策として有効だと思いました。
ただ、これはトイザらスのような大規模チェーン店には難しいかもしれませんね(店舗間のサービスの画一化が必要なため)。
個人経営の小さな店向けの戦略だと思います。

DOSでUNCは~と怒られた場合の対処法(ネットワークドライブ割り当て)

コマンドプロンプトやバッチファイルでリモートのサーバにアクセスしようとすると「CMD では UNC パスは現在のディレクトリとしてサポートされません。」や「上記の現在のディレクトリで CMD.EXE を開始しました。UNC はサポートされません。Windows ディレクトリを規定で使用します。」と言われて怒られることがあります。
 
これについては、ネットワークドライブの割り当てで解決できます。
ネットワークドライブの割り当ての方法については、下記ページ等を参照してください。
 
ネットワークドライブの割り当て方法(Windiws版 ※Windows 10対応)|情報システム課| 東京経済大学

https://www.tku.ac.jp/iss/guide/network/tool/networkdrive/windiwswindows-10.html
 
例えば、リモート上のディレクトリである「cd \\remote\hoge」にアクセスしようとすると怒られますが、Zドライブに「\\remote」を登録した後に「cd Z:\hoge」とすれば怒られずに済みます。
 
なお、ネットワークドライブの割り当てを net useコマンド で行う方法もあります。
その方法については、下記ページ等を参照してください。
 
コマンドプロンプト-ネットワークドライブの割り当て・切断をする方法・net use - Windowsと暮らす

https://win.just4fun.biz/?%E3%82%B3%E3%83%9E%E3%83%B3%E3%83%89%E3%83%97%E3%83%AD%E3%83%B3%E3%83%97%E3%83%88/%E3%83%8D%E3%83%83%E3%83%88%E3%83%AF%E3%83%BC%E3%82%AF%E3%83%89%E3%83%A9%E3%82%A4%E3%83%96%E3%81%AE%E5%89%B2%E3%82%8A%E5%BD%93%E3%81%A6%E3%83%BB%E5%88%87%E6%96%AD%E3%82%92%E3%81%99%E3%82%8B%E6%96%B9%E6%B3%95%E3%83%BBnet%20use

情報処理技術者試験対策「レスポンスタイム・ターンアラウンドタイム・スループット」

今回は、混同しやすい性能指標に関する3つの用語を説明します。
情報処理技術者試験の午前試験で問われることがありますし、実務でも混同すると意思疎通がうまくいかなくなる可能性があります。

 
【レスポンスタイムとターンアラウンドタイム】
・レスポンスタイム
 入力装置からの入力が完了してから、
 出力装置への出力が開始されるまでの時間。
 
・ターンアラウンドタイム
 入力装置からの入力が完了してから、
 出力装置への出力が終了するまでの時間。
 
Webシステムの例を挙げると、以下のようになります。

f:id:akira2kun:20181103212857j:plain

 
スループット
スループット」とは、単位時間当たりのジョブの処理件数のことです。
システム全体の処理性能を表す用語であり、CPU性能やプログラムロジックといったコンピュータ面の性能のみでなく、オペレータの作業といった運用面も考慮されます。
 
---------------------
目次

https://1drv.ms/b/s!AivF3bzWXOzuhG1Xk5hscKYqkLkM