タグ

ブックマーク / karasuyamatengu.hatenadiary.org (3)

  • Python: popenでnonblocking IOをしなくちゃいけなくなった件 - karasuyamatenguの日記

    subprocessでよくコマンドと対話することがある。Pythonのプログラムから外部プログラムの標準入力に書き込み、返答を標準出力から読み込む。いつものようにそういうことしていたら今日はデッドロックになった。 $ cat x.files | python cpio_wrapper.py naive | cpio -t # 何時迄まって待てど終らず… ^CTraceback (most recent call last): File "cpio_wrapper.py", line 100, in f() File "cpio_wrapper.py", line 56, in naive pip.stdin.write(line) KeyboardInterrupt コマンドの標準入力に書き込むところで刺さっている。入力を減らしてやると上手くいく。 $ cat x.files | head

    Python: popenでnonblocking IOをしなくちゃいけなくなった件 - karasuyamatenguの日記
    riywo
    riywo 2013/09/29
  • glibcの歴史 - karasuyamatenguの日記

    普段あまり意識しないしないlibcだが、カーネルの門番とも言える重要なコンポーネントだ。Linuxで標準のlibcはGNU libc、略してglibc。最近このglibcのsteering committeeが解散した。これをうけてlwn.netのJonathan Corbetがglibcの歴史をふりかえる。 http://lwn.net/SubscriberLink/488847/cb91a5cc3d179f3c/ とても良く書けている記事なので原文を読むことをすすめる。以下、面白いなと思ったところをいくつか紹介。 フォーク FSFプロジェクト管理に嫌気がさしたLinux開発者が90年代前半にlibcをフォークしていたとは知らなかった。当時のディストロたちは「Linux libc」と呼ばれるバージョンを使っていたそうな。 90年代半ばからUlrich Drepperがこつこつ開発する。

    glibcの歴史 - karasuyamatenguの日記
    riywo
    riywo 2012/04/04
  • Tim Bray: 「URLに#!入れるな」 - karasuyamatenguの日記

    Tim Bray(GoogleAndroid応援団長)が「#!」の入ったajax用URLを使用を批判している。 http://www.tbray.org/ongoing/When/201x/2011/02/09/Hash-Blecch new: さらならる「#!」URL批判 例にtwittertwitter.com/#!/timbrayを挙げている。 #!の働き サーバ側は#!の前までしか見えない。上の例だとサーバはtwitter.com/のリクエストを受ける #!以降はブラウザの中のジャバスクリプトが解釈する 何故#!を使うのか ajaxのアプリは古いブラウザでは基的にURLを変更することができない… ただし#(フラグメント)以降はブラウザ内のJavaScriptからでも変更可能 なので、ajaxアプリケーションが自分の状態をURLバーに表示するために使われるようになった。 つまり

    Tim Bray: 「URLに#!入れるな」 - karasuyamatenguの日記
    riywo
    riywo 2011/02/14
  • 1