05032009 OS自作入門
マルチタスク
- sleepとはタスクのリストからいなくなること
- JMPの飛び先がよいと性能向上につながることがある
この章も面白かった。
05032009 OS自作入門
マルチタスク
この章も面白かった。
04032009 work
ケンミレのCEOの著作。なるほどと思うところもある一方、自分語りがちょっとなと感じる部分も多かった。このネタは本にも書いてあったけど結構使い回してんのかな。
あと、本の全てのページの上部に「折」とか書いてあるうえに、全ての節のはじめにチェックのレ点を三つつけられるようになっているのにはかなりひいた。
04032009 work
予約した。
04032009 OS自作入門
順調に読み進めて、遂に14日目に。
画面を高解像度に変更する方法と、キー入力をちゃんとする。
高解像度はよいですな。

というわけでキャプチャ。
04032009 perl
ふと気になったので。
use Perl6::Say;
our $a = 10;
say "\*a(G):\t",\*a,"\t\$a=$a\t", \$a;
my $x = \$a;
my $y;
{
local $a = 20;
$y = \$a;
say "\*a(L):\t",\*a,"\t\$a=$a\t", \$a;
say "\*x:\t",\*x,"\t\$x=$$x\t", $x;
}
say "\*a(G):\t",\*a,"\t\$a=$a\t", \$a;
say "\*x:\t",\*x,"\t\$x=$$x\t", $x;
say "\*y:\t",\*y,"\t\$y=$$y\t", $y;
これを実行する
$ perl typet.pl
*a(G): GLOB(0x80f480) $a=10 SCALAR(0x80f4e0)
*a(L): GLOB(0x80f480) $a=20 SCALAR(0x8041c0)
*x: GLOB(0x832f50) $x=10 SCALAR(0x80f4e0)
*a(G): GLOB(0x80f480) $a=10 SCALAR(0x80f4e0)
*x: GLOB(0x832f50) $x=10 SCALAR(0x80f4e0)
*y: GLOB(0x8330b0) $y=20 SCALAR(0x8041c0)
型グロブはlocal宣言しても同じメモリ上の位置を見に行く(0x80f480)。そこから先、つまり$(*a)の結果が変わる。元の変数が待避されるってのはリファレンスがいじられるってことか。
ということは、値の入ってるメモリの位置さえ分かっていれば、localで宣言する前の値にアクセスできるし($x)、localで宣言した値をスコープの外へ持ち出すってことも可能($y)なのね。
タイマーについて
そうかそうかー
で、精度ってどれくらいなの?と疑問がわいてきたので調べたら、はてなのナオヤさんのエントリにヒット。
わかりやすい解説が素晴らしい。
Time::HiResの話も面白かったのでソースも読んでみる。
macbookにaudacity入れてUA3-FXつなげばレコードの取り込みできるのね。

早速設定していたら、娘がよってきたので、(今は亡き)シスコの段ボールをごそごそやりながら一緒にかけまくってやった。
Da Funkとかひさびさに聴いた。
ダブルズームキットを購入。今のところ全自動モードでしか使ってないがかなり楽しい。
左は今日、娘が買ってきて植えてた花。右は枯れかけのローズマリー。

Eye-Fiはとりあえず様子見している。
カードの出し入れがめんどくさくなったら多分買うけど。
イチゴを狩っている娘を狩ってきた(EOS Kiss X2で)

その足で三津シーパラダイスへ。

イルカとかアシカのショーは楽しくて拍手しまくってたのだけど、娘が感動したのは実はクラゲであった。まぁ、分かる気がするなぁと思うのは親子だからなのかなぁ。ちなみに僕はヒトデとか結構好きだったりする。