Linuxのwaitが返すstatus値というものがあります。この値を専用のマクロに通すと、子プロセスがどうなったか(止まった、シグナルを受けたなど)を判断できます。
今日このマクロの内 1つが、変わった動きをすることがわかりました。
MSB |<-16->| exitstatus(8)| core(1)| termsig(7)| LSB exitstatus: 終了ステータス(多義) core: コアダンプしたかどうか termsig: プロセスを終了させたシグナル 0x00: 正常終了 0x7f: 終了ではなくプロセスが停止した other: プロセスが終了した (bits/waitstatus.h) #define __WIFSTOPPED(status) (((status) & 0xff) == 0x7f)
現時点でstatusはこのような構造になっています。
termsigが0x7f(127番) なら「プロセスが停止した」ことになると思ったら、ちょっと違うようです。「プロセスが停止した」という判断を行うのはWIFSTOPPEDマクロですが、termsig以外にもコアダンプフラグが倒れているかまで調べているようです。
つまりtermsigが127でも、コアダンプビットをセットすると「シグナルによって停止した」ことにならずに、「シグナルによって終了した」ことになります。
ただ停止するだけのはずが、コアダンプ(つまりプロセスが死んだ?)された、という特殊状況までカバーできるスゴいマクロを目指したのか、単にミスっただけなのか、謎ですね。まあ、シグナル127なんて生成できないですから、杞憂に過ぎませんが…。
今日は暑かった。ドコモミーティングのために秋葉原まで出かけると、帰りは周り真っ暗が普通でしたが、今日はずいぶん明るい。日も長くなったもんだ。
mixi日記と内容をマージして、mixi日記からこちらに切り替え、までは良かったけど、このページにはコメント機能が有りません。ま、ええか。
明日のミーティングのために実験をいくつかやっていたら、今日になっていきなりプログラムが動かなくなった。動かなくなるポイントは固定っぽいのでバグでしょうけど、何でこのクソ忙しい今日に限って露出するんだ?もー最悪…。
おかげで全然論文が進みませんよ、こんちくしょう。
榮樂氏が車を買った記念に、車屋からそのまま出発しました。6号を北上しガストで飯食ったあと、氏が通っていた自動車学校を見てきました。
つくばに戻って、学園線沿いに出来たグランステージ山新でふらふらしたあと解散しました。
その後、榮樂氏の車庫入れを見に行きました。駐車場の目の前が一般道ですが、他車なんてむしろ待たせるくらいの気持ちで落ち着くことと、道路に前進で出る(往来する車との事故防止)ためと、あとエアロが当たりそう?などの事情から、バック駐車をお勧めしました。
氏の車はMTなので坂も敵ですね。ま、とにかく落ち着いてやればいいのさ、パニックは敵ですよ。
大下さんからプリンを貰いました。おお、これはうまいぞ〜。このクオリティのプリンができるってなら、蒸し器買っちゃおうかなあ。
昨日書いた話ですがinkscapeは最新版だと落ちないらしいです。しかし私はDebianのstable(sarge) なので、最新版は自分でビルドしなければなりません。それより今は論文書きたいので、また今度にします。
Visio for Enterprise Architectsを使ってみると、どうやらepsの出力機能がないようです。代わりにwmfで出力してwmf2epsで変換したら、日本語が綺麗さっぱり消滅しました。なんとも使えない奴だ。
そんなこんなで、最終的には石川氏ご推薦のOpenOffice.org Drawを使っております。オープンソースのソフトウェアって外人が作ってることが多いから、日本語(だけじゃなくてCJK全般?)は激しく冷遇されている…。
TeX dvi -(dvi2ps)-> ps -(ps2pdf)-> pdfと変換すると、全部ゴシックになる話を先日(2006年6月3日参照)しました。私のところだとghostscriptの設定が良くないようなので、いっそgsは通さずdvipdfmxを使うようにしたところ綺麗に変換できました。初めからこうすべきだったよ。
dvipdfmxは何も設定しないと、変換時にエラーが出るのはFAQらしい(なら直せよと言いたい)ですが、一応ご紹介しておきます。
$ dvipdfmx hoge.dvi hoge.dvi -> hoge.pdf [1 ** ERROR ** Could not find encoding file "H". Output file removed. # su # cd /etc/texmf/texmf.d # ls 05TeXMF.cnf 45TeXinputs.cnf 65BibTeX.cnf 85Misc.cnf 15Plain.cnf 50dvipdfmx.cnf 70dvipsj.cnf 90TeXDoc.cnf 30ptex.cnf 55Fonts.cnf 75DviPS.cnf 95NonPath.cnf # cat 50dvipdfmx.cnf %% READ /usr/share/doc/dvipdfmx/README.Debian for details: % CMAPINPUTS = .;/usr/share/fonts/cmap/adobe-gb1//; /usr/share/fonts/cmap/adobe-cns1//; /usr/share/fonts/cmap/gs-cjk-resource// # vi 50dvipdfmx.cnf (下記のように編集する) # cat 50dvipdfmx.cnf %% READ /usr/share/doc/dvipdfmx/README.Debian for details: CMAPINPUTS = .;/usr/share/fonts/cmap/adobe-japan1//; /usr/share/fonts/cmap/adobe-japan2//; /usr/share/fonts/cmap/adobe-gb1//; /usr/share/fonts/cmap/adobe-cns1//; /usr/share/fonts/cmap/gs-cjk-resource// # update-texmf Replacing config file /etc/texmf/texmf.cnf with new version # exit $ dvipdfmx hoge.dvi hoge.dvi -> hoge.pdf [1][2][3] 58000 bytes written
/etc/texmf/texmf.d/50dvipdfmx.cnfの2行目(CMAPINPUTS以降)は実際には一行ですので改行を入れないようにお気をつけください。
当方の環境はDebian GNU/Linux Sargeです。人によっては50dvipdfmx.cnfという名前ではないかもしれません。ま、色々探してみてくださいな。
今日はあまりにも眠くてセミナーの時間、半分くらい寝てしまいました…。今日のは結構楽しそうな発表だっただけに、くー、くやしいわ。
論文に差し込む図をinkscapeで描こうと思ったら、日本語を入力するたびに落ちて使い物になりません。もうめんどくせーから、研究室のVisioで書こう。
そういえば昨日のゼミの前に、研究室で岡さんのPCが異常発熱していてちょっとあせりました。バッテリーが50度くらい?(触れるけど、ずっとは触ってられない)になっていて、もしあのまま気づかずに放置されていたら、サム○ンのリコールバッテリーみたいに爆発したのだろうか?とか思ってぞっとしました。
Windows XPタスクマネージャの情報更新間隔は1秒に1回がデフォルトですが、一度変更するとその設定に戻せなくなります。これはいただけないよ。
何とかなるはずとレジストリを調べたら、更新間隔はミリ秒単位の数値を書くだけだとわかりました。どこを書き換えるのかなどは Wikiにメモりましたので、興味あればどうぞ。
榮樂氏の日記で触れられていた件、Shift JISの0x21〜0x7eはISO 646(ASCII) かJIS X 0201ローマ字か?について少し調べてみました。
以下がWindows流のマッピングです。メモ帳でUnicodeを指定して保存し、確かめました。
もしJIS X 0201ローマ字なら以下のようなマッピングのはずです。
またASCIIだとすると、以下のようなマッピングになるはずです。
素直にJIS Xローマ字のマッピングを行うと、プログラム言語などの \ (0x5c) がエスケープ処理用の記号(バックスラッシュ)が円記号にマッピングされおかしくなります。
MSはこのような事態を考慮してShift JISのプログラムをUnicodeに持って行っても、エスケープ処理が保存されるようなマッピングにしたのでしょう。規格を無視している点はイマイチだけど、これはこれで筋が通っていると思います。
Windowsの賛否はさておき、どうマッピングしても困る場合が存在します。
例えばこんな一文printf("値段は \\100です。"); を考えます。
最初の \ はエスケープ記号ですが、二つめの \ は円記号として使っているために、単純にマッピングするとどちらかの意味が変わるのです。この使い方はトラブルの元なので、できれば
reverse solidus and yen sign
0xffe5(FULLWIDTH YEN SIGN) の利用が適切だと思います。
池嶋氏がLivedoorのRSSリーダーでウチのページのRSSを読めるかどうか試したら、見事におかしくなりました。見たところ「~」付近が化けて変になっているようなので、%7eにエスケープするように修正しました。ただ榮樂氏のとこのRSSにも「~」があるのに、正常に処理されているのは納得できない。
Javaをもっとちゃんとやろうと思って、今回はアプレットにチャレンジしています。Eclipseのお陰でサクサクと作れて楽しいです。
んで途中、作りかけのアプレットをブラウザに試しに読ませたら、いつまでも古いままの .classファイルが読まれるようになってしまいました。ブラウザのキャッシュクリアしても、Javaプラグインのキャッシュクリアしても全然消えないよ。最悪です…。
今日、妹のミクシを見ていたら「辛いものダメ」コミュニティというものがあることを知った。
面白い、入っちゃろと思ったんですが、もっと的確な(わさびとからしはOKで唐辛子NG)のないかと検索したら「唐辛子系の辛味がダメ」があった。ストレートでいいね。
mixiって似たようなコミュニティを作るなって警告する割に、類似コミュニティを減らす努力が見受けられないように思います。
特に、なぜできないのか?って思うのは、コミュニティ同士の合併(※)だね。
合併の障壁を下げないと、同じようなコミュニティが乱立してまとまらないんじゃないかと思った。余計な心配かな…。
※適当に孤独コミュニティ作って確かめた限り、参加者を全員別のコミュニティに移すという機能はなかった。
今度の学会発表に向けてせかせかと論文書き。今週前半でなんとか仕上げて、阿部さんか先生にチェックしてもらわないと、スケジュールがやばそうです。
大下さんが使ってる腕時計をはめてみたらピッタリでした。大下さん所有なので、当然、女性向けの時計で女性向けのサイズです。わたしゃこんなに腕細かったのか?骨太ならぬ、骨細だな。
VistaのIE7に触ったついでにIE7 on Windows Vistaのユーザエージェントに対応させました。見た目は単にIE7としてカウントされるだけですので、履歴を見てもわからないかもしれません。
ついでにFirefoxも調べましたが、Windows NT 5.1の部分が6.0になっていただけで特に面白い差はありませんでした。
<link rel="alternate" ...> を書くの忘れていました。直しましたので自動検出使っている人も安心ネー。
榮樂氏のマシン環境を見ていたら、製造元に律儀にリンクが張ってありました。後で性能調べるときに便利だから見習おうと思ったら、ページ内にいくつかリンク切れを発見しました。この分だと後々、リンク切れの復活が面倒くさくなるなあと思って、結局やめました。
ワタクシはずぼらなため、手間が軽減する見込みの無い単純作業(※)はやらないポリシーであります。逆に何らかの単純作業において、手間が軽減できるような方法があるならその実現についての努力は惜しみません。
簡単に言うと「これからずっと楽する為に、今だけは頑張る」んだ。
※今回の件でいえば、リンク切れまでは検出できるがリンク先の発見は自動でできない。そのためリンク先を発見する作業が永遠に発生する(と思う)。
MSゴシック12ptで「陛」という字を表示すると、阜偏(こざとへん)の下部が途切れることに気づきました。拡大すると(下図参照)良くわかります。
陛(へい)の拡大図
ビットマップフォントの場合、見易さのためにわざと崩す場合もあって、一概に言えないのですが、同じ阜偏の「陸」「隠」「限」「陶」を見ると阜偏の下部は繋がっているみたいです。やはりミスでしょうか?
修正されてWindows Updateで対応なんてしてくれると面白いんですけどね。
研究室のサーバからウチにscpでDVDイメージ(3GBくらい)を転送しようとしたら、なぜか途中でストールしてしまいます。ストールする位置もまちまちで、早い時は数十MB転送しただけでストールしました。ううーん、原因がわからない。
少し前にIIJが帯域制限(24時間 で15GB以内)をしたニュースが流れていました。P2Pソフトを用いたり自宅サーバを運営する人は気になると思いますが、計算してみると 1日中1.4Mbpsで延々アップロードを続けて初めて突破するデータ量です。人気の日記で画像メインでもない限り、個人で細々やっているサーバには全く無縁だなあ。
秋葉原までCRESTシンポジウムを聞きに行きました。タイムキーパーを仰せつかったものの、発表者の先生方は時間無視しまくって、休憩時間がかなり削れました。2日に分けても良い発表数だったのでは…。
シンポジウムからの帰りにツクモに寄って、キーボード(メンブレン式)とHDDを買いました。旧メインマシンを実験用マシンにしようかなーなんて思ったのです。160GB SATA接続だと7,000円後半くらいなんですね、安くなったものだ。
「なんで先輩のページにはRSSないんですか?」と池嶋氏に言われ、そのときは榮樂氏とともに「使わないからいらんよ。」なんて言ってたものの、便利だと思う人がいるならと思って作ってみた。トップに index.rdf という名前で置いています。スクリプトによる自動生成ですが、自動的に更新していないのでイマイチかも。
一応InfoseekのRSSリーダなるもので読めましたが、私はRSSを全然見ないのでおかしくなっていても全然気づかないことが予想されます。逆に言うとその程度の品質維持が限界です、ということでどうかよろしく。
Pentium 4/2.8GHzよりも、Pentium M/1.6GHzの方がconfigureが速いのはなぜー?なぜー?Northwoodユーザ(Pen4ではなくCeleronユーザだけど)としては非常に悲しい結果だった…。Pentium Mの底力を知ってしまうと、次回作マシンのCPU候補はダントツでPentium Mになります。性能と省電力を両立できるなんて最高です。
それとコンパクトPCの悩みの種であるHDD増設も、USBではやや帯域不足です。インタフェースカードを増設して帯域を倍にするのが正攻法かと思いますが、USBは結構CPU使うみたいで、より負荷の少ない方法があればそちらを選びたいのが本音です。
USBの代わりとしては、今のところeSATA(※)が第一候補かなあ?SATAとバスの性能は同等ですし、外付けのケーブルが何本もあると邪魔という人もPort Multiplier対応(ハブみたいな機能)カードを利用すればケーブル一本で済むようですし。まだ普及しているとは言い難いものの、次期に主流になる規格だと思います。
大下さんと松宮さんに就職祝いにお菓子をいただきました。ありがとうございます。来年どこに行くのかなどは、今月末の懇談会で詳しく聞くつもりです。たぶん関西だと思うのですが…。
※外付けデバイス用に向けて設計されたSATAで、ケーブル長が2mまでと比較的長い。またホットプラグ対応、SATAと形が異なるコネクタにより誤挿入を防止することなどの特徴がある。
ケーズデンキにクロス(リバース)シリアルケーブルを探しに行きました。USBやIEEE1394ケーブルが並ぶ中、寂しく一個だけ置いてありました。値段も1,600円とそこそこ。買った足でそのまま研究室に向かい、あっさり問題解決。めでたし!
研究室でMSDN Academic Allianceを契約したそうで、Windows Vista Ultimate Betaが使えるようになりました。早速ポンコツ(バッテリー入れると急に電源断)のX31にインストール。ところがVistaの唯一の売りであろう新GUI Windows Aeroが有効になっていない。どして?
その後、何時間か触ってたのにAeroを有効にする方法すらわからんのです。Vistaはコントロールパネルがより改悪されております。これで5万円はちょっとねえな。製品版に期待したいけど、何も起こらなさそう…。
< | 2006 | > | ||||
<< | < | 06 | > | >> | ||
日 | 月 | 火 | 水 | 木 | 金 | 土 |
- | - | - | - | 1 | 2 | 3 |
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | - |
合計:
本日: