2010-05-01から1ヶ月間の記事一覧

psmの実装方針

とりあえず実装方針を@xharakenに相談して次のことを決定した。 psm_mmapの管理領域について まずmmapされたアドレスの一覧が必要。 プロセスのメモリ空間に取る。これを共有すると死ねる。 ちなみに後で子供がmmapできるようにするときにこの情報の更新もさ…

Ubuntuインストールした

Ubuntuインストールした VAIOのPCG-X 505/PにUbuntuをインストールしました、別に普通ですが相当苦労しました。通常インストール手段は次のようなものがあります。 CD/DVD USBメモリ ネットワーク とはいえこのパソコンには光学ドライブがついていない、とい…

PSMの複数mmapの実装

現状 現時点での実装はmmapが呼ばれたらftruncate(size)するだけなので1つの領域を確保することしかできない。この場合とても簡単で プログラマ側が確保サイズの同意をとれば、ライブラリは何も考えなくていい。 管理領域もまったく共有する必要はない。 目…

炊飯器

炊きすぎた。結論から言えば米を計り間違えてもそう慌てることはない。以前から俺はよく米の炊飯のトラブルに見舞われてきた。例えば、2合なのに3合の水で炊いてしまい、カレーをお粥で食べる羽目になったことがある。あと、3合のお米を2合の水で炊いてとて…

なんか役に立つもの

strace プログラム中で strace commandとかしてやれば、システムコールの呼び出しを拾ってくれる。 strace -f -F commandってしとかないとforkの子を拾ってくれない? コアダンプ ulimit -c unlimited commandでコアダンプがとれるので、gdbの--coreオプショ…

実装してみた

とりあえず実装した。 当然なんだけどshm_unlinkし忘れてたから次に起動したときにどんどん状態が積み重なってしまってやれやれだった。 なんかtako(64bitの鯖)で動かしたら子がSIGSEGVする。なにやら psm_mmap(); 以後に fprintf(stderr, "hoge", ...); …

PSMのmalloc実装ロードマップ

次のように実装していくべきかな 親だけがmallocを一回だけ呼ぶ。 つまりshmの識別子名は一意でおk。 メモリアドレスはプロセス間で違うかもしれない。 親だけがmallocを呼ぶ。複数でもいい。 shmの識別子をころころと変える。 誰かが割り当てられたメモリ…