<?xml version="1.0" encoding="utf-8" ?>
<rss version="2.0">
<channel>
	<title>とんずら雑記R</title>
	<link>http://ujiya-denshi.com/adiary.cgi</link>
	<language>ja</language>
	<description></description>
	<copyright>Copyright 2012</copyright>
	<pubDate>Wed, 04 Jan 2012 17:25:20 GMT</pubDate>
	<lastBuildDate>Wed, 22 Feb 2012 11:13:30 GMT</lastBuildDate>
	<generator>http://adiary.abk.nu/#2.21</generator>
	<docs>http://blogs.law.harvard.edu/tech/rss</docs> 
	<item>
		<title>IPv6関係で役立ちそうなところ</title>
		<link>http://ujiya-denshi.com/adiary.cgi/IPv6#tm1325697890</link>
		<guid>http://ujiya-denshi.com/adiary.cgi/IPv6</guid>
		<category>memo</category>
		<pubDate>Wed, 04 Jan 2012 17:24:18 GMT</pubDate>
		<author>ぉゅぅ</author>
		<description><![CDATA[<div>
<h3><a href="http://ujiya-denshi.com/IPv6#k258p1"><span>■</span></a>IPv6関係で役立ちそうなメモ</h3>
コンテンツ的に, Linux依りになりそうだけど, まぁ一時待避用という位置づけで...<br>
<h4><a href="http://ujiya-denshi.com/IPv6#k258p1.1"><span></span>相手のIPを知りたい</a></h4>
<ul>
	<li><a href="http://mo.kerosoft.com/0189">2011/12/21(Wed) 同一セグメントの対向IPv6ホストアドレスを知るライフハック</a><br>要約する(?)と、<strong>"ff02::1"というglobal IPにたいしてpingを打つ</strong>といいらしい。<br>IPv4もデフォルト設定ではWin7マシンがping応答返してくれない模様。ウチのマシンは返しているけど、何かハズしたんだろう. defenderかfirewallかな..? ウイルスバスタ使っていて、ICMP応答は返すにチェックしてあるからだろうなぁ.</li></ul>

</div>

<hr>
<h4><a href="/adiary.cgi/IPv6#c">■コメント（0件）</a></h4>
<div style="margin-left: 1em;">
</div>
<h4><a href="/adiary.cgi/IPv6#tb">■トラックバック（0件）</a></h4>
<div style="margin-left: 1em;">
</div>
]]></description>
	</item>
	<item>
		<title>git入門とか</title>
		<link>http://ujiya-denshi.com/adiary.cgi/%5bgit%5d#tm1325697920</link>
		<guid>http://ujiya-denshi.com/adiary.cgi/%5bgit%5d</guid>
		<category>memo</category>
		<pubDate>Wed, 04 Jan 2012 07:27:08 GMT</pubDate>
		<author>ぉゅぅ</author>
		<description><![CDATA[<div>
<h3><a href="http://ujiya-denshi.com/%5bgit%5d#k257p1"><span>■</span></a>git入門記事</h3>
<ul>
	<li><a href="http://blog.katty.in/758">三度の飯とエレクトロン, 非エンジニア向けGitの使い方</a><br>基本コマンドの列挙、といった感じだけど、とりあえず。</li></ul>

</div>

<hr>
<h4><a href="/adiary.cgi/%5bgit%5d#c">■コメント（0件）</a></h4>
<div style="margin-left: 1em;">
</div>
<h4><a href="/adiary.cgi/%5bgit%5d#tb">■トラックバック（0件）</a></h4>
<div style="margin-left: 1em;">
</div>
]]></description>
	</item>
	<item>
		<title>URL_memo</title>
		<link>http://ujiya-denshi.com/adiary.cgi/URL_memo#tm1325661859</link>
		<guid>http://ujiya-denshi.com/adiary.cgi/URL_memo</guid>
		<category>memo</category>
		<pubDate>Wed, 04 Jan 2012 07:24:03 GMT</pubDate>
		<author>ぉゅぅ</author>
		<description><![CDATA[<div>
<h3><a href="http://ujiya-denshi.com/URL_memo#k256p1"><span>■</span></a>個人的備忘録</h3>
WEBを探したり見たときのメモ<br>

</div>

<hr>
<h4><a href="/adiary.cgi/URL_memo#c">■コメント（0件）</a></h4>
<div style="margin-left: 1em;">
</div>
<h4><a href="/adiary.cgi/URL_memo#tb">■トラックバック（0件）</a></h4>
<div style="margin-left: 1em;">
</div>
]]></description>
	</item>
	<item>
		<title>2012年</title>
		<link>http://ujiya-denshi.com/adiary.cgi/0255#tm1325491003</link>
		<guid>http://ujiya-denshi.com/adiary.cgi/0255</guid>
		<category>雑談</category>
		<pubDate>Mon, 02 Jan 2012 07:56:43 GMT</pubDate>
		<author>ぉゅぅ</author>
		<description><![CDATA[<div>
<h3><a href="http://ujiya-denshi.com/0255#k255p1"><span>■</span></a>年明け</h3>
仕事・私事が忙しくなり、更新サボりまくってますが、サイト更新。<br>
サーバマシンをショボくして、省エネ・静音化を図りまんた。<br>
<br>
とりあえずこれで戦線に復帰できる・・・かな。<br>
更新したいネタは増えつつあるので、メモ代わりでアレですが、更新していきたいと思います。<br>
細々と。<br>
<br>
更新しないサイトに存在意義はないと考えていた時期もありました。<br>
備忘録になるかなぁとも思いましたが、それほど有用なネタを記録しているわけでもなく、<br>
今になると無駄が多いなぁと思う次第。老兵は去るのみ、かな～？<br>

</div>

<hr>
<h4><a href="/adiary.cgi/0255#c">■コメント（0件）</a></h4>
<div style="margin-left: 1em;">
</div>
<h4><a href="/adiary.cgi/0255#tb">■トラックバック（0件）</a></h4>
<div style="margin-left: 1em;">
</div>
]]></description>
	</item>
	<item>
		<title>[Perl] 覚書</title>
		<link>http://ujiya-denshi.com/adiary.cgi/0251#tm1325425663</link>
		<guid>http://ujiya-denshi.com/adiary.cgi/0251</guid>
		<category>Perl::基礎</category>
		<pubDate>Thu, 17 Feb 2011 17:52:01 GMT</pubDate>
		<author>ぉゅぅ</author>
		<description><![CDATA[<div>
<h3><a href="http://ujiya-denshi.com/adiary.cgi/0251#k251p1"><span>■</span></a>ちょこっとメモ</h3>
<p>記事として伸ばすかどうか判らないけれど、自分用メモ。</p>
<h4><a href="http://ujiya-denshi.com/adiary.cgi/0251#k251p1.1"><span></span>XML fileを扱う</a></h4>
<p>use XML::Simpleとか使うと便利。HASH, ARRAYの接続に注意。Dumperで眺めてみるとわかりよい。</p>
<br>
</div>

<div>
<h3><a href="http://ujiya-denshi.com/adiary.cgi/0251#k251p2"><span>■</span></a>実行時型判定</h3>
<p>refを使う。<strong>ref(変数)</strong>として、文字列が得られる。（'ARRAY','HASH','REF','SCALAR'など。）</p>
<h4><a href="http://ujiya-denshi.com/adiary.cgi/0251#k251p2.1"><span></span>HASHの中身が入っているか確認する</a></h4>
<pre>
if (!%hash_var) {
  print "cleared hash\n";
}
else {
  print keys %hash_var ;
}
</pre>
</div>

<div>
<h3><a href="http://ujiya-denshi.com/adiary.cgi/0251#k251p3"><span>■</span></a>参考</h3>
<p><a href="http://www.ibm.com/developerworks/jp/xml/library/x-xmlperl1.html">Perl 開発者のための XML: 第 1 回 XML と Perl -- 魔法の組み合わせ</a></p>

</div>

<hr>
<h4><a href="/adiary.cgi/0251#c">■コメント（0件）</a></h4>
<div style="margin-left: 1em;">
</div>
<h4><a href="/adiary.cgi/0251#tb">■トラックバック（0件）</a></h4>
<div style="margin-left: 1em;">
</div>
]]></description>
	</item>
	<item>
		<title>シリコンハウス共立移転予定</title>
		<link>http://ujiya-denshi.com/adiary.cgi/0250#tm1325425663</link>
		<guid>http://ujiya-denshi.com/adiary.cgi/0250</guid>
		<category>雑談</category>
		<pubDate>Wed, 21 Apr 2010 14:02:44 GMT</pubDate>
		<author>ぉゅぅ</author>
		<description><![CDATA[<div>
<h3><a href="http://ujiya-denshi.com/adiary.cgi/0250#k250p1"><span>■</span></a>店舗移転</h3>
<p>７月上旬頃を予定されているとのこと。twitterで得られたので便利というかなんというか。</p>
<p>デジットは独自の進化(?)を遂げるべきですねッ。得体の知れないジャンクにｗｋｔｋする日々・・・。液晶とかなんとかをごっそりと拾ってきていただけるとうれしげですね～。</p>
<br>
<br>
<p>情報ソース</p>
<ul>
	<li><a href="http://keic.jp/renew/">シリコンハウスWEB</a>にて正式発表。</li>	<li><a href="http://shop.nippon-bashi.biz/news/20100421_kyohritsu.html">http://shop.nippon-bashi.biz/news/20100421_kyohritsu.html</a></li>	<li>twitter公式アカウント: http://twitter.com/kyohritsu</li>
</ul>

</div>

<hr>
<h4><a href="/adiary.cgi/0250#c">■コメント（0件）</a></h4>
<div style="margin-left: 1em;">
</div>
<h4><a href="/adiary.cgi/0250#tb">■トラックバック（0件）</a></h4>
<div style="margin-left: 1em;">
</div>
]]></description>
	</item>
	<item>
		<title>[gcc][AVR] attributeによるバイト数装飾</title>
		<link>http://ujiya-denshi.com/adiary.cgi/0249#tm1325425663</link>
		<guid>http://ujiya-denshi.com/adiary.cgi/0249</guid>
		<category>開発環境::gcc</category>
		<pubDate>Thu, 11 Mar 2010 16:28:18 GMT</pubDate>
		<author>ぉゅぅ</author>
		<description><![CDATA[<div>
<h3><a href="http://ujiya-denshi.com/adiary.cgi/0249#k249p1"><span>■</span></a>変数のビットサイズ～gcc方言の巻</h3>
<h4><a href="http://ujiya-denshi.com/adiary.cgi/0249#k249p1.1"><span></span>avr-gccのstdint.hを見る</a></h4>
<p>VMにWinXP32bitを放り込んで、WinAVR 20100110をインスコ。uint32_tが8bitになっとる、という話をmixiのコミュで見かけたので検証してみました。とりあえずコードレベルで追いかけるとして、ヘッダファイルを探索。</p>
<pre>
typedef unsigned int uint32_t __attribute__ ((__mode__ (__SI__))); 
</pre>
<p><span><span style="color:#FF0000;"><strong>・・・・なんぞこれ。</strong></span></span></p>
<p><strong>__attribute__</strong>ってあたりは、まぁ、なんぞローカル定義の装飾しているなぁとは思うわけですが、<strong>__SI__</strong>ってなによ...</p>
<br>
</div>

<div>
<h3><a href="http://ujiya-denshi.com/adiary.cgi/0249#k249p2"><span>■</span></a>変数サイズ指定</h3>
<p><a href="http://gcc.gnu.org/ml/gcc/2005-11/msg01038.html">Anton-sanがいいこといった！</a><strong>S</strong>ingle <strong>I</strong>ntegerだそうだ。</p>
<p>・・・ナニソレ？</p>
<br>
<pre>
* Title: Gcc help pages about __mode__ keyword
* From: Anton Soppelsa &lt;soppelsa at igi dot cnr dot it&gt;
* To: gcc at gnu dot org
* Date: Tue, 22 Nov 2005 15:48:45 +0100
* Subject: Gcc help pages about __mode__ keyword

Dear GCC help pages maintainers,
I recently encountered a statement like this one


__attribute__((__mode__(__DI__)))

in a micro kernel source file.

As I'm not so skilled with this kind of C/C++ syntax I tried to read the manual about the keywords involved in that expression.
Despite I found information about "__attribute__" and "__mode__"
I wasn't able to find information about "__DI__" (on the gcc manual pages).
Of course I found in Internet partial explanation of the meaning of "__DI__" keyword and also found out that there are many of the same type like "__SI__", "__HI__", and "__QI__".
 By the way, do they mean Double-, Single-, Half-, Quarter-, -Integer?

The point is that it seem to me those identifiers are actually keywords of the compiler.
So they really have be mentioned (at least) in the compiler manual. Better would be if they are explained.
I guess that part of the manual is not so well maintained because I found only reference to the keywords "__byte__" or "__word__" or "__pointer__".


This message is just to inform u about something if u have the time to work about has to be done (in my opinion) .
Best regards,
</pre>
<p>※本文にメールアドレスがありましたが、削除しています。改行も入れました..</p>
</div>

<div>
<h3><a href="http://ujiya-denshi.com/adiary.cgi/0249#k249p3"><span>■</span></a>__SI__の謎</h3>
<p><a href="http://hal.cs.berkeley.edu/cil/cil016.html">George-sanないす</a>だ！<a href="http://sourceforge.net/projects/cil/">CIL (C Intermediate Language)</a>ということで、Ｃコンパイル時の中間言語の領域に到達した。やはりこのあたりから学ばないと、コンパイラの理解は終わらないようだな…。</p>
<br>
<pre>
GCC allows you to use the __mode__ attribute to specify the size of the integer instead of the standard char, short and so on:

int __attribute__ ((__mode__ (  __QI__ ))) i8;
int __attribute__ ((__mode__ (  __HI__ ))) i16;
int __attribute__ ((__mode__ (  __SI__ ))) i32;
int __attribute__ ((__mode__ (  __DI__ ))) i64;
</pre>
<br>
<p>ちょっとわかりづらい。CLI特有というわけでもないぽいなぁ...</p>
<br>
</div>

<div>
<h3><a href="http://ujiya-denshi.com/adiary.cgi/0249#k249p4"><span>■</span></a>答えは身近に―</h3>
<p><a href="http://www.picfun.com/c30/c3004.html">後閑師</a>のところで、C30の説明があり、ここで紹介されてました。ナンテコッタイｗ</p>
<h4><a href="http://ujiya-denshi.com/adiary.cgi/0249#k249p4.1"><span></span>以下、引用</a></h4>
<pre>
typedef int __attribute__((__mode__(SI))) int32 ; // int32を32ビット幅の整数型と定義
</pre>
<p>modeで指定したビット幅の型を定義する<br>byteは１バイト整数型、wordは１ワード整数、pointerはポインタ型を定義する<br>modeには下記記号が使用できる<br>QI ： 8ビット(char)<br>HI ： 16ビット(int)<br>SI ： 32ビット(long)<br>DI ： 64ビット(long long)<br>SF ： 32ビット(float)<br>DF ： 64ビット(long double)<br>ちょっぴり、アンダースコアの量が違いますが、まぁ、もともとも思想は同じと思って良いでしょう。処理系依存が多いでしょうし、迷ったときはアセンブラコードをはかせてみる。sizeof()でバイト数をチェックする、といった習慣をつけたほうが良いですね。特にマイコン屋さんは。仕事でも趣味でも。ね。。</p>
</div>

<div>
<h3><a href="http://ujiya-denshi.com/adiary.cgi/0249#k249p5"><span>■</span></a>注意</h3>
<p>斜め読みどころか、英語弱いのにかじりながら見た部分が多いですので、鵜呑みにせずリンク先の情報を消化して納得してください。<br>WEBの情報がすべて正しいとは限りませんし、何事も本家までさかのぼるよう習慣付けましょう…。<span>頼むよほんと(ぉ</span></p>

</div>

<hr>
<h4><a href="/adiary.cgi/0249#c">■コメント（0件）</a></h4>
<div style="margin-left: 1em;">
</div>
<h4><a href="/adiary.cgi/0249#tb">■トラックバック（0件）</a></h4>
<div style="margin-left: 1em;">
</div>
]]></description>
	</item>
	<item>
		<title>[perl] forkで子供がたくさん</title>
		<link>http://ujiya-denshi.com/adiary.cgi/0248#tm1325425663</link>
		<guid>http://ujiya-denshi.com/adiary.cgi/0248</guid>
		<category>Perl</category>
		<pubDate>Wed, 17 Feb 2010 16:35:34 GMT</pubDate>
		<author>ぉゅぅ</author>
		<description><![CDATA[<div>
<h3><a href="http://ujiya-denshi.com/adiary.cgi/0248#k248p1"><span>■</span></a>子プロセスを作って並列処理</h3>
<p>表題のとおり。自動計測系の構築などで、監視する側と実行する側とに分離したいとき、forkを使うのが易いようです。</p>
<p>Windowsなら、Active Perlのperlforkを見ると、いろいろと例が載っています。</p>
<p>TrackBack先の<a href="http://www.magicvox.net/archive/2010/02161550/">Magic Vox</a>で見かけたので、記事を書いてみます。</p>
<p>自分で確認した記録でもありますが...なお、Windows7 Ultimatex64 + Active Perl v5.10.0で試しました.</p>
<h4><a href="http://ujiya-denshi.com/adiary.cgi/0248#k248p1.1"><span></span>コーディング例</a></h4>
<pre>
use POSIX ":sys_wait_h";

$| = 1;
my ($pid, $n) ;
	$n = 4 ;

	do {
		$pid = fork ;
		if (!defined $pid) {
			die "fork fairule...\n" ;
		}
		elsif ($pid==0) {	# child
			print "I'm a child $n/pid=$pid \n";
			sleep 10 - $n ;
			exit $n ;
		} else {
			print "create process $pid\n";
		}
		--$n;
	} while ($n&gt;0) ;

my $killid ;
	sleep 1;
	do {
#		$killid = wait();
		$killid = waitpid(-1, WNOHANG);

		print "child $killid  is dead and said $?\n" unless $killid==0;
	} while ($killid!=-1) ;
	print "Terminate test PGM.\n" ;
exit ;
</pre>
<p>親としては、子が消えるまで待ったり、よそからの要求で殺したりするわけですね。とりあえずは、forkで分岐するところをテンプレート的にお試ししました、というだけで。</p>
<h4><a href="http://ujiya-denshi.com/adiary.cgi/0248#k248p1.2"><span></span>実行例</a></h4>
<pre>
&gt;perl tst_fork01.pl
create process -4900
I'm a child 4/pid=0
create process -888
I'm a child 3/pid=0
create process -2364
I'm a child 2/pid=0
create process -2004
I'm a child 1/pid=0
child -4900  is dead and said 1024
child -888  is dead and said 768
child -2364  is dead and said 512
child -2004  is dead and said 256
child -1  is dead and said -1
Terminate test PGM.
</pre>
<p>ただし、<a href="http://labs.cybozu.co.jp/blog/kazuho/archives/2007/10/perl_mp.php">Perl で複数個のワーカープロセスを動かして処理を行う場合のコード</a>として例が挙がっているように、まじめにやる場合はこちらを参照したほうがよさそうです。SIGトラップして云々・・・。まだまだ勉強不足のようで('A`</p>

</div>

<hr>
<h4><a href="/adiary.cgi/0248#c">■コメント（0件）</a></h4>
<div style="margin-left: 1em;">
</div>
<h4><a href="/adiary.cgi/0248#tb">■トラックバック（0件）</a></h4>
<div style="margin-left: 1em;">
</div>
]]></description>
	</item>
	<item>
		<title>[Perl] 快適デバッグ環境</title>
		<link>http://ujiya-denshi.com/adiary.cgi/0247#tm1325425663</link>
		<guid>http://ujiya-denshi.com/adiary.cgi/0247</guid>
		<category>Perl</category>
		<pubDate>Tue, 09 Feb 2010 16:48:58 GMT</pubDate>
		<author>ぉゅぅ</author>
		<description><![CDATA[<div>
<h3><a href="http://ujiya-denshi.com/adiary.cgi/0247#k247p1"><span>■</span></a>Perl環境</h3>
<p><a href="http://www.activestate.com/">Active State</a>から、Active Perlを拾ってきてインストール。</p>
<p>後のEclipseでデバッグする際に必要となるので、<a href="http://www.google.co.jp/search?lr=lang_ja&amp;ie=utf-8&amp;oe=utf-8&amp;q=PadWalker" title="Google検索 ">PadWalker</a>を拾ってくる。コマンドラインからppmでインスコできるので便利ね。</p>
<p><em>実行例：</em></p>
<pre>
C:\&gt;ppm install PadWalker
Downloading PadWalker-1.9...done
Unpacking PadWalker-1.9...done
Generating HTML for PadWalker-1.9...done
Updating files in site area...done
   6 files installed
</pre>
<br>
</div>

<div>
<h3><a href="http://ujiya-denshi.com/adiary.cgi/0247#k247p2"><span>■</span></a>Eclipse</h3>
</div>

<div>
<h3><a href="http://ujiya-denshi.com/adiary.cgi/0247#k247p3"><span>■</span></a>本体</h3>
<p><a href="http://www.eclipse.org/">Eclipse.org</a>から、パッケージを拾ってくる。現在GALILEOが新しい模様。いろんなぱケージがあるけれど、java開発しないならCDTでも十分。足りなくなったらパッケージを入れていけばいいでしょう。<span><a title="個人的にjava触らないので、CDT,EPICあればシアワセ" href="http://ujiya-denshi.com/adiary.cgi/0247#fk247n1">*1</a></span></p>
<p>インストーラが嫌いな人はzip版がいい感じ。eclipseディレクトリを作って、その下に展開して言ってくれるので、どこかのルートにでも展開するといいでしょう。</p>
<h4><a href="http://ujiya-denshi.com/adiary.cgi/0247#k247p3.1"><span></span>プラグイン</a></h4>
<p>Eclipseのメジャーなプラグインは、多くはUpdate Siteを持っているようで、Eclipse側でUpdate siteを登録して拾ってこさせることができます。また、更新チェックもしてくれるので便利です。基本的にサイト側で親切に書かれているので、そちらを参照ください・・・。ここではポインタを示すだけで、あまり細かいところまでは記載しないようにしておきます。<span><a title="Version upで操作が変わったりもしますからねぇ..." href="http://ujiya-denshi.com/adiary.cgi/0247#fk247n2">*2</a></span></p>
<br>
<h5>EPIC</h5>
<p><a href="http://www.epic-ide.org/">EPICのサイト</a>から、Perl開発用のプラグインを拾ってくる。参考サイトの@ITが詳しいので、ここでの説明は省略する。余力があれば自前でSnapShotをとっておくかネ。</p>
<h5>BABEL</h5>
<p><a href="http://babel.eclipse.org/babel/">Babel Project</a>のページにインストール方法が記載されています。やっぱり日本語のほうがサクサクと判断が進みます。</p>
<p>Babel projectの方々に感謝を。</p>
<br>
</div>
<div>
	<p><a href="http://ujiya-denshi.com/adiary.cgi/0247#k247n1">*1</a> : 個人的にjava触らないので、CDT,EPICあればシアワセ</p>
	<p><a href="http://ujiya-denshi.com/adiary.cgi/0247#k247n2">*2</a> : Version upで操作が変わったりもしますからねぇ...</p>
</div>

<div>
<h3><a href="http://ujiya-denshi.com/adiary.cgi/0247#k247p4"><span>■</span></a>参考</h3>
<p><a href="http://www.atmarkit.co.jp/fjava/rensai3/eclipseplgn10/eclipseplgn10_1.html">スクリプト言語をサポートするEclipseプラグイン</a></p>
<p><div style="text-align: center;"><img src="http://kwout.com/cutout/m/d5/uq/s2u_bor_rou_sha.jpg" alt="http://www.atmarkit.co.jp/fjava/rensai3/eclipseplgn10/eclipseplgn10_1.html" title="スクリプト言語をサポートするEclipseプラグイン - @IT" width="395" height="262" style="border: none;" /><p style="margin-top: 10px; text-align: center;"><a href="http://www.atmarkit.co.jp/fjava/rensai3/eclipseplgn10/eclipseplgn10_1.html">スクリプト言語をサポートするEclipseプラグイン - @IT</a> via <a href="http://itmedia.kwout.com/quote/md5uqs2u">kwout</a></p></div></p>

</div>

<hr>
<h4><a href="/adiary.cgi/0247#c">■コメント（0件）</a></h4>
<div style="margin-left: 1em;">
</div>
<h4><a href="/adiary.cgi/0247#tb">■トラックバック（0件）</a></h4>
<div style="margin-left: 1em;">
</div>
]]></description>
	</item>
	<item>
		<title>[Perl] 変数の型を調べる</title>
		<link>http://ujiya-denshi.com/adiary.cgi/0246#tm1325425663</link>
		<guid>http://ujiya-denshi.com/adiary.cgi/0246</guid>
		<category>Perl::基礎</category>
		<pubDate>Thu, 04 Feb 2010 17:08:39 GMT</pubDate>
		<author>ぉゅぅ</author>
		<description><![CDATA[<div>
<h3><a href="http://ujiya-denshi.com/adiary.cgi/0246#k246p1"><span>■</span></a>変数の型を調べたい</h3>
<p><em>ref</em>演算子が使える模様。リファレンスならその型を返してくれる模様。リファレンスじゃなかったらnullぽ...</p>
<p>blessされているときは、クラス名が返ってくるらすぃ。い万ところ使わないから参考程度にメモ。</p>
<h4><a href="http://ujiya-denshi.com/adiary.cgi/0246#k246p1.1"><span></span>ソース</a></h4>
<pre>
use strict ;

my $test ;
my $ref_1 = [1, 2] ;
my $ref_2 = \$test ;
my $ref_3 = $ref_1 ;
my $ref_4 = {1 =&gt;'t'} ;
my %hash_1 = {1 =&gt;'t', [2,3]} ;

	&amp;chk_type($test) ;
	&amp;chk_type($ref_1) ;
	&amp;chk_type($ref_2) ;
	&amp;chk_type($ref_3) ;
	&amp;chk_type($ref_4) ;
	&amp;chk_type(%hash_1) ;
	&amp;chk_type(\%hash_1) ;

exit ;

sub chk_type($)
{
my $v = shift @_ ;
my $a = ref $v;
  print "$a へのリファレンス\n" if ($a) ;
  print "scaler\n" unless ($a) ;

}
</pre>
<br>
<h4><a href="http://ujiya-denshi.com/adiary.cgi/0246#k246p1.2"><span></span>実行結果</a></h4>
<pre>
scaler
ARRAY へのリファレンス
SCALAR へのリファレンス
ARRAY へのリファレンス
HASH へのリファレンス
scaler
HASH へのリファレンス
</pre>
<p>配列やハッシュの要素として、任意の型をガンガン放り込めるので、それを調べて処理したいという欲求があったのですよ...</p>
<p>Ｃで書くなら、voidポインタをキャストして使っていたかなぁ。</p>
<p>C++やC#なら実行時型とか使って、同じような処理ができると思う。が、まぁ、今回はPerlだけ。ワンタイムの使い捨てになりかねないので..(^^;</p>

</div>

<hr>
<h4><a href="/adiary.cgi/0246#c">■コメント（0件）</a></h4>
<div style="margin-left: 1em;">
</div>
<h4><a href="/adiary.cgi/0246#tb">■トラックバック（0件）</a></h4>
<div style="margin-left: 1em;">
</div>
]]></description>
	</item>
	<item>
		<title>ニコ技動画～アイデア発想ヒント講座～</title>
		<link>http://ujiya-denshi.com/adiary.cgi/0245#tm1325425663</link>
		<guid>http://ujiya-denshi.com/adiary.cgi/0245</guid>
		<category>工作::ネタ</category>
		<pubDate>Tue, 02 Feb 2010 16:06:25 GMT</pubDate>
		<author>ぉゅぅ</author>
		<description><![CDATA[<div>
<h3><a href="http://ujiya-denshi.com/adiary.cgi/0245#k245p1"><span>■</span></a>おちゃをにごす</h3>
<p>ということで、とりあえずTLに流れていたので御紹介。発想力は必要ですね。上下左右、どこにでも人はいるので、突出して目立つには難しいものです。特に真似しやすいものは、改良・改善・変形で過去のものになって逝きます。常に新しいコトを探し、発信しつづける必要があるわけですね。</p>
<p><a href="http://www.nicovideo.jp/watch/sm9578968">【ニコニコ動画】【初心者向け】ニコ技的アイデア発想ヒント講座</a></p>
<br>
<p>まぁ、無理せず、必要に応じて得られたアウトプットを少し紹介する程度にしておくのが無難なのでしょうなぁ。無理し続けて継続しないほうがショックはでかいｗ</p>

</div>

<hr>
<h4><a href="/adiary.cgi/0245#c">■コメント（0件）</a></h4>
<div style="margin-left: 1em;">
</div>
<h4><a href="/adiary.cgi/0245#tb">■トラックバック（0件）</a></h4>
<div style="margin-left: 1em;">
</div>
]]></description>
	</item>
	<item>
		<title>Windows7再インストール</title>
		<link>http://ujiya-denshi.com/adiary.cgi/0244#tm1325425663</link>
		<guid>http://ujiya-denshi.com/adiary.cgi/0244</guid>
		<category>review::PC</category>
		<pubDate>Mon, 01 Feb 2010 17:23:28 GMT</pubDate>
		<author>ぉゅぅ</author>
		<description><![CDATA[<div>
<p>更新が停止しており申し訳ございません。実業務多忙につき、ネタが創造できない状況が続いております。</p>
</div>

<div>
<h3><a href="http://ujiya-denshi.com/adiary.cgi/0244#k244p1"><span>■</span></a>WD20EARSお買い上げ</h3>
<p>少し谷間ができたので、プチフリーズが生じている現環境を打開すべく、ＨＤＤ更新(ぇ</p>
<p>表題の2TBytesのものをお買い上げ。物理セクタサイズが4Kbytesになっており、Windows VISTA,7以降で動作保証がされているものです。詳しくはWesternDigitalのsiteにて。。。</p>
<br>
</div>

<div>
<h3><a href="http://ujiya-denshi.com/adiary.cgi/0244#k244p2"><span>■</span></a>導入前確認</h3>
<p>まずはメーカのツールを拾ってきましょう。初期不良で泣くことも多いので、この手のチェックは是非実施しておくべきです。メモリは良くやりますけどね、一晩くらい。。。</p>
<p>Data Lifeguard Diagnostic<a href="http://support.wdc.com/product/download.asp?groupid=608&amp;sid=3&amp;lang=jp">title</a></p>
<p>私はWindows7で実行しましたが、<strong>"管理者として実行"</strong>する必要があります。S.M.A.R.T.情報を吸い上げたりするようで、一般ユーザ権限だと、それが読み出せないようです。少し引っかかったので記しておきます...<span><a title="恥さらしとも云うｗ" href="http://ujiya-denshi.com/adiary.cgi/0244#fk244n1">*1</a></span></p>
<pre>
Test Option: EXTENDED TEST
Model Number: WDC WD20EARS-00S8B1
Unit Serial Number: WD-WCAVY*******
Firmware Number: 80.00A80
Capacity: 2000.40 GB
SMART Status: PASS
Test Result: PASS
Test Time: 19:30:12, January 31, 2010

Test Option: WRITE ZEROS
Model Number: WDC WD20EARS-00S8B1
Unit Serial Number: WD-WCAVY*******
Firmware Number: 80.00A80
Capacity: 2000.40 GB
SMART Status: PASS
Test Result: COMPLETE
Test Time: 14:38:09, February 01, 2010
</pre>
<br>
</div>
<div>
	<p><a href="http://ujiya-denshi.com/adiary.cgi/0244#k244n1">*1</a> : 恥さらしとも云うｗ</p>
</div>

<div>
<h3><a href="http://ujiya-denshi.com/adiary.cgi/0244#k244p3"><span>■</span></a>移行準備</h3>
<p>今回は同一マシンの再インストールになるので、マシン移行より慎重にしないといけない。できるだけ環境を持っていく。</p>
<h4><a href="http://ujiya-denshi.com/adiary.cgi/0244#k244p3.1"><span></span>Mozilla系バックアップ</a></h4>
<p><a href="http://mozbackup.jasnapaka.com/">MozBackup</a>でメール、ブラウザのブックマークとサイトごとのアカウント・パスワード情報を保存させておく。復元すると、ほぼバックアップした状態まで回復してくれる。あまりカスタム指定内政もあるけれど(^^;</p>
<h4><a href="http://ujiya-denshi.com/adiary.cgi/0244#k244p3.2"><span></span>自作素材系バックアップ</a></h4>
<p>うちはMyDocumentを使わないタイプなので、<em>/home</em>あたりを丸ごともっていけばおｋ。日エレデフォルトの<em>/workspace</em>なんかも忘れずに。</p>
<p>あと、可能な限りinstallerを使わずに使えるソフトは<em>/fsw</em>においてあるので、これを丸ごとコピー。コピー処理は、<a href="http://www.k3.dion.ne.jp/~kitt/pc/sw/ffc/">firefile copy</a>を愛用させていただいております。コピー後にハッシュ比較でVerifyさせることができるので、安心です。一度、移行時に死んだことがあるので、今回はバッチリVerifyかけます。おかげですごく時間がかかりましたが・・・。</p>
<br>
<h4><a href="http://ujiya-denshi.com/adiary.cgi/0244#k244p3.3"><span></span>ドライバ類ダウンロード</a></h4>
<p>あらかじめ、各社から拾っておく。ｇｇｒｋｓ</p>
<br>
</div>

<div>
<h3><a href="http://ujiya-denshi.com/adiary.cgi/0244#k244p4"><span>■</span></a>インストール</h3>
<h4><a href="http://ujiya-denshi.com/adiary.cgi/0244#k244p4.1"><span></span>区画整理</a></h4>
<p>クリーンインストール実施。DVDからブートさせていくわけだが、パーティションの作成から始めると、100MBのブート領域を食われる。<span><a title="Win7の秘匿系の機能に使う？用わからんが気持ち悪いので捨てた（ぉ" href="http://ujiya-denshi.com/adiary.cgi/0244#fk244n2">*2</a></span>これがいやな場合、一度パーティションを切ってから、インストールをキャンセルし、区画だけ好きなようにきりなおして再起動するとよい（ディスク２台環境で確認。１台でできたか失念）。再起動すれば区画がきられた状態を覚えているので、所望のパーティションへインストール。</p>
<h4><a href="http://ujiya-denshi.com/adiary.cgi/0244#k244p4.2"><span></span>ドライブ番号のなぞ</a></h4>
<p>SATAポートが１～６まであるわけだが、どういうわけかポート１のディスクIDが１となり、ポート２のディスクIDが０となる＠Windows7。BIOSではポート１、２の順に０，１という番号がついている。認識している順番とは異なる番号を振っているのかなぁ。気持ち悪いけれど、なおらなかったのであきらめる。<span><a title="このために３回いれなおしたぜ・・・" href="http://ujiya-denshi.com/adiary.cgi/0244#fk244n3">*3</a></span></p>
<p>SATAのポートを入れ替えても、BIOSで起動設定してやればしっかりとbootはしてくれた。ポートがずれても致命的にはならない...のかな.</p>
<br>
</div>
<div>
	<p><a href="http://ujiya-denshi.com/adiary.cgi/0244#k244n2">*2</a> : Win7の秘匿系の機能に使う？用わからんが気持ち悪いので捨てた（ぉ</p>
	<p><a href="http://ujiya-denshi.com/adiary.cgi/0244#k244n3">*3</a> : このために３回いれなおしたぜ・・・</p>
</div>

<div>
<h3><a href="http://ujiya-denshi.com/adiary.cgi/0244#k244p5"><span>■</span></a>バックアップ</h3>
<p><a href="http://support.wdc.com/product/downloaddetail.asp?swid=119&amp;type=download&amp;wdc_lang=jp">Acronis True Image WD Edition</a>なるソフトが使えます。WDのHDDを買ってあるので、使っても大丈夫そう。</p>
<p>基本ソフトを入れて、アップデートを入れて、区切りのいいところで当該ソフトでブートパーティションを吸い上げてイメージ作成。付加を見ると８コア全部使って圧縮してくれている模様。これは快適だなぁ。</p>
<br>
</div>

<div>
<h3><a href="http://ujiya-denshi.com/adiary.cgi/0244#k244p6"><span>■</span></a>備忘録(2010/2/2更新)</h3>
<ul>
	<li>各種開発環境のインストール<br>QuartusII 9.1インスコ完了、active Perl5.10.0インスコ</li>
	<li>２本目のフルDLGTEST<br>３時間ちょっとで完了。Why.... oTL</li>
	<li>JMicronのATAドライバ導入検討。入れないほうが安定しそうなら、ドライブだけサルベージしてNW越しにデータ吸い上げ。<br>現状はBIOSでperipheral機能を殺している。</li>
</ul>
<p>とりあえずこんなもんで。ウィルスバスター2010がWin7x64にも対応していたので、Avast!から乗り換え。ライセンス数の調整を実施。</p>

</div>

<hr>
<h4><a href="/adiary.cgi/0244#c">■コメント（0件）</a></h4>
<div style="margin-left: 1em;">
</div>
<h4><a href="/adiary.cgi/0244#tb">■トラックバック（0件）</a></h4>
<div style="margin-left: 1em;">
</div>
]]></description>
	</item>
</channel>
</rss>

