September 2006

7月にLMSで発表したglibc mallocの解説を、ブラッシュアップしてYLUG・カーネル読書会でも発表してきた。

本人の知らない間にビデオ撮影をして、YouTubeにアップするとかいう話になっていたので、「ちょ・・業務用です・・・か??」とでも言わんばかり、かなり本格的ビデオカメラが会場に設置されていた。

もうダメである。
緊張しまくり、用意しておいた小ネタギャグは一切言えなかった。
熱いトークを期待したいた皆さん(いるのか?)ごめんなさい。

てゆーか、ネクタイに指す、アナウンサー向けっぽげなマイクが用意されているあたりがYLUGスゴス。と思った。


まあ、それはさて置き、当日の感想としてはhyoshiokさんのBlogあたりの感想がよくまとまっていていい感じなのではないかと思う。

結論: みんなRubyが好きなんだよ。
    kernel hackerもLL hackerも交流しようよ

とかとか、そんな雰囲気だったと思う。
やっぱり時代はエンタープライズRubyっすね < なにが?


結局ピザとビールだけでは会場の熱気さめやらず、みんなで二次会になだれ込む。
韓国の地酒、モッコリ(マッコリだったかも)がうまい。
やっぱり発表のあとは酒に限る。


P.S 資料をYLUGにアップしようとしてたんだけど、管理者権限がないとアップできない事が発覚。
だれかやって~~

P.S.2 当日の講演の模様はそのうちどこかに動画うpされるらしいので、詳細決まったら告知しますね~

P.S.3 当日の参加者でBlogつけてる人はトラックバックくださいなー


追記:
資料を以下のURLにアップしました。
glibc malloc 資料
masakaさん、手取り足取りのご支援本当にありがとうございました!!

追記2:
当日の模様は結局google videoで公開されたっぽい。
なんかはじめてのにきさんに褒めてもらっちゃった。てへ

以下のURLで見れるのでよかったら、見てね
http://video.google.com/videoplay?docid=2914803742593360351
このエントリーをはてなブックマークに追加

121 :おさかなくわえた名無しさん:04/11/12 14:05:14 ID:NDPYs8hu
父親が発売日にFCのDQ4を買ってきた。
私と弟とで順番にクリアしたあと、父親はなぜかずっと
4章のトルネコの序盤(店でひたすら武器とか売りまくる)を続け、
それだけで5万も6万もゴールドを貯めていた。
思えば父親は2でも全員のLVをMAXまで上げたり
単純作業が好きなのかなと思っていたが
もう、一度クリアしてしまったそれらのゲームで
また私や弟が遊ぶときにキャラが強かったりお金が多いと喜ぶだろうと
それだけのためにちょっとズレた愛情表現をしてくれていたってことがわかった。

私も弟も成人し、実家を離れて生活をしていた頃、父が入院した。
お土産に、なぜか私はGBAとGB版のDQ1&2、そして3を買って持って行った。
父は骨と皮だけになっていた。
私がお土産を渡すととても喜んで、ヒマな入院生活をそれと共に過ごしたらしい。
もう、子供のために単純作業続けなくてもいいんだよ、お父さん。
いっぱい冒険してね、お父さん。
父は普通の食事が喉を通らなくなり、DQ3のパーティにこんな名前を付けた。
勇者コロッケ 武闘家つくね 僧侶とんかつ 商人おでん
「はよ元気になってこれ食べたるねん」と笑う父。
ガリガリに痩せた父の姿を見たのはこれがさいごだった。



今では食べられなかったあのころのカタキをとるかのように
体重も激増!ムチムチ状態で「8まだ出えへんか!」と
電話してくる父です。退院おめでとう。


このエントリーをはてなブックマークに追加

携帯がちっとも見つからないので、意を決して新しい携帯を買ってしまった。
AUのポイントがずいぶんと溜まっていたので0円交換。W42Kです。
しかし京セラは安いなー。と思っていたら使ってみて大納得。
十字キー、めちゃくちゃ押しづらい。こりゃ、ほとんど欠陥品だよ。

ところで、なぜか充電器だけが別売りで、かつAUポイントも使えずにお金を払う羽目になったんだけど、これって何の意味があるのかね?
 
1.すくなくとも、お店のおねーちゃんは、計算トチって何回も再計算してたから、店の人には不評そうだ。
2.しょせん1000円以下の備品だと「付属品を別売りにして、本体を安く見せる戦略」としては極めて限定的な効果しか望めそうにない。
3.充電器を買わない人間がいるとは考えづらく、かつ1000円以下ではユーザーが大喜び、ということもなさそうだ
4.別売りという事は流通が複雑化するということで、コストアップ要因になるのではないか

とマイナス面ばかりが思いつくのだが。


ところで、お店のおねーちゃんがパソコンもってないというので、妹が買うときに半分だしてやったんだけど、最近安いで~、という話をしていたら、真顔で「私にも買ってください」と言われた。
どういう接客マニュアルなのだ??
なぜ??
よくわからんかった。



最低な一台です
本当に買って欲しいとは思えない! ランキング!!

このエントリーをはてなブックマークに追加

taskset 0x00000001 ls
taskset -p 0x00000003 12345



のように使う。
第一引数の0x00... というのがCPUマスク。
0x00000001 ならCPU#0のみ、
0x00000003 ならCPU#0とCPU#1.

-p オプションでpidが指定できる。
 
このエントリーをはてなブックマークに追加

強烈な記事である。
てゆーか、こんな道を通って蜀を滅ぼした、魏の国スゴス


三国志の蜀のアレ



ネタ元: http://www.hiroiro.com/entry/907.html
このエントリーをはてなブックマークに追加

 古人曰く「結婚は人生の墓場である。」


 新人曰く「夜は墓場で運動会。」




おいおい、鬼太郎の歌ってそういう意味かよ!! 



ネタ元: http://www.infosnow.ne.jp/~sevas/adu-index.html
このエントリーをはてなブックマークに追加

んだそうだ。

コマンドプロンプトで以下の操作をするだけ

regsvr32 /u zipfldr.dll
regsvr32 /u cabview.dll



ネタ元: http://hail2u.net/blog/software/turn-off-zip-folder.html
このエントリーをはてなブックマークに追加

prctl コマンドで、unalined accessの警告が/var/log/messagesに残らないように出来るらしい。

Linux on IA64 だと山ほどでるので、あとで試したい。
このエントリーをはてなブックマークに追加

higepon氏がBlog上でLinuxでargv[0]を書き換えたらpsコマンドに反映された。と書いていたのだが、まるでそんなアーキになっていない気がして仕方が無かったので、さっくり調査

実験マシンはRHEL4U2 on IA64.


ソースファイル:

main(int argc, char** argv){
argv[0] = "hoge";
while(1)
;
}


はずかしいバグを入れてしまった(コメント参照のこと)
↓こっちを見てね

#include 

main(int argc, char** argv){
strcpy(argv[0], "hoge");
while(1)
;
}


psコマンド出力結果:

$ ps
PID TTY TIME CMD
19260 pts/2 00:00:00 bash
19283 pts/2 00:00:01 a.out
19284 pts/2 00:00:00 ps


とゆーわけで、Linuxではargv0書き換えは意味がない。に一票。
おぼろげな記憶で書くと、もともとargv0書き換えってBSD系とSYSV系で
動作が違ってるから互換性ないよー
とか言われてなかったっけ?昔。

BSD系はPSコマンドがユーザプロセスの領域みてる(ような気がする)
から、BSD向けのコードなんじゃね?

Linuxではexec時にコマンドライン文字列をcurrent->commにstrcpyしちゃってるからargv[0]書き換えは意味無いと思うな。

Linuxでは、psの出力を誤魔化すような書き換えは出来ないんじゃねーかーとか思っておりまする。

だれか反論プリーズ


追記: よく見たら、すっげー古い記事だったので、いまさらコメントしても何の意味もなかったorz
ここはあろはさんが悪いということにしておこう。
このエントリーをはてなブックマークに追加

以前、買えなかった~と書いた西田本ですが、その後増版されていることを親切な人が教えてくださり、買えました。

Binary Hackの初心者向けの、ほぼ唯一といってもよい、すごくいい本なので、OSとかlibcとかの低レベル層に興味があるひとは、ぜひ買っていただきたい1冊と思います。


で、ここで読者さまの物欲刺激用と自分向け備忘録をかねて
この本を読んで初めて知ったTipsを1つ。

cpp に -dM オプションを付けると predefined macro 一覧が得られる。
アーキ依存処理を入れたい時に限ってCPU毎のdefine名(__ia64__ とか)が思い出せないのはよくあることなので、これは便利だ。

つーか、man嫁。自分。とか思った。


$ cpp -dM /dev/null
#define __DBL_MIN_EXP__ (-1021)
#define __FLT_MIN__ 1.17549435e-38F
#define __CHAR_BIT__ 8
#define __WCHAR_MAX__ 2147483647
#define __DBL_DENORM_MIN__ 4.9406564584124654e-324
#define __FLT_EVAL_METHOD__ 0
#define __ia64 1
#define __DBL_MIN_10_EXP__ (-307)
#define __FINITE_MATH_ONLY__ 0
#define __GNUC_PATCHLEVEL__ 3
#define __SHRT_MAX__ 32767
#define __LDBL_MAX__ 1.18973149535723176502e+4932L
#define __linux 1
#define __unix 1
#define __LDBL_MAX_EXP__ 16384
#define __linux__ 1
#define __SCHAR_MAX__ 127
#define __USER_LABEL_PREFIX__
#define __STDC_HOSTED__ 1
#define __LDBL_HAS_INFINITY__ 1
#define __DBL_DIG__ 15
#define __FLT_EPSILON__ 1.19209290e-7F
#define __LDBL_MIN__ 3.36210314311209350626e-4932L
#define __unix__ 1
#define __DECIMAL_DIG__ 21
#define __ia64__ 1
#define __gnu_linux__ 1
#define __LDBL_HAS_QUIET_NAN__ 1
#define __GNUC__ 3
#define __DBL_MAX__ 1.7976931348623157e+308
#define __DBL_HAS_INFINITY__ 1
#define __DBL_MAX_EXP__ 1024
#define __LONG_LONG_MAX__ 9223372036854775807LL
#define __GXX_ABI_VERSION 1002
#define __FLT_MIN_EXP__ (-125)
#define __DBL_MIN__ 2.2250738585072014e-308
#define __LP64__ 1
#define __DBL_HAS_QUIET_NAN__ 1
#define __REGISTER_PREFIX__
#define __NO_INLINE__ 1
#define __FLT_MANT_DIG__ 24
#define __VERSION__ "3.4.3 20041212 (Red Hat 3.4.3-9.EL4)"
#define unix 1
#define __SIZE_TYPE__ long unsigned int
#define __ELF__ 1
#define __FLT_RADIX__ 2
#define __LDBL_EPSILON__ 1.08420217248550443401e-19L
#define __GNUC_RH_RELEASE__ 9
#define __FLT_HAS_QUIET_NAN__ 1
#define __FLT_MAX_10_EXP__ 38
#define __LONG_MAX__ 9223372036854775807L
#define __FLT_HAS_INFINITY__ 1
#define linux 1
#define __LDBL_MANT_DIG__ 64
#define __itanium__ 1
#define _LONGLONG 1
#define __WCHAR_TYPE__ int
#define __FLT_DIG__ 6
#define __INT_MAX__ 2147483647
#define __FLT_MAX_EXP__ 128
#define __DBL_MANT_DIG__ 53
#define __WINT_TYPE__ unsigned int
#define __LDBL_MIN_EXP__ (-16381)
#define __LDBL_MAX_10_EXP__ 4932
#define __DBL_EPSILON__ 2.2204460492503131e-16
#define _LP64 1
#define __FLT_DENORM_MIN__ 1.40129846e-45F
#define __FLT_MAX__ 3.40282347e+38F
#define __FLT_MIN_10_EXP__ (-37)
#define __GNUC_MINOR__ 4
#define __DBL_MAX_10_EXP__ 308
#define __LDBL_DENORM_MIN__ 3.64519953188247460253e-4951L
#define __PTRDIFF_TYPE__ long int
#define __LDBL_MIN_10_EXP__ (-4931)
#define __LDBL_DIG__ 18



カンニングやります
システムの中身を覗きます! ランキング!

このエントリーをはてなブックマークに追加

↑このページのトップヘ