2008年3月に調べた興味深い記事集

Powered by dKingyo AMD | Intel | C++ | スレッド | アルゴリズム

2008/03/07


コンピューター算術

より
Compare and Swap (CAS命令) アセンブリgoogle:cmpxchgl命令の事?IA-32アーキテクチャで使用できる?(要確認)
および
Load-Link/Store-Conditional PowerPCアーキテクチャで使用できる。
http://ja.wikipedia.org/wiki/Load-Link/Store-Conditional

これらは
Lock-free Queueについて - nyaxt
に発表されているような Lock Free Queueの実装に使われる。

この発表のまとめ、および発展は
http://d.hatena.ne.jp/tpro/20080301/1204326030
が詳しい。


 また、
プログラミング言語の比較

C++Javaの比較
http://ja.wikipedia.org/wiki/Java%E3%81%A8C%2B%2B%E3%81%AE%E6%AF%94%E8%BC%83
がとても興味深い。


2008/03/08
 昔は読みにくいと感じていたコードだったはずなのだが、今となってはC言語的に見ると理想的なソースコードだと感じる今日この頃・・・。
ftp://ftp.netbsd.org/pub/NetBSD/NetBSD-current/src/sys/sys/tree.h
ftp://g.oswego.edu/pub/misc/malloc.c
カーネル読書会/67のglibc mallocのお話ではとても読みにくいとのお話だったが、今のdlmallocのmalloc.cはC言語的に読みやすい部類に入ると思った。*1
 少し読んでみたらWindowsにも対応している。しかしInterlockedCompareExchangeを使っているためWindows98以降でないと使えない。Windows95でも動くようなmallocであればOS標準のmalloc使えと言うことだろうか・・・。yaneSDK3rdに倣ってWindows95でも確実に動くプログラムに憧れる私はこういう所をFIXせずにはいられない。


 Prologなどの論理型言語が興味深い。私が面倒で行いたく無い事を行ってくれるような気がしてならない。
WikipediaのPlannerの項から

数理論理学だけでは、非決定性を持つ並列システムや分散システムを記述できない。

と言う点を記憶にとどめておく。


2008/03/09
 Windows上で生のLinuxバイナリを動かすツールなのかな?Cygwinと相性が良い?
via http://www.netfort.gr.jp/~dancer/diary/200210.html.ja#2002-Oct-3
http://line.sourceforge.net/


2008/03/10
 独自のトランスレータのようなものを作る必要があるので(DKFSM計画)調べ物をしていた。様々なものを調べているうちにRuby2cから「ET 計算モデル」(要確認)にたどり着いた。via http://alohakun.blog7.fc2.com/blog-entry-448.html

*1:だが、中で何をしているかを理解するにはソースコードが長いので時間がかかるのは仕方ないのだが・・・