タグ

ブックマーク / oraccha.hatenadiary.org (5)

  • 「Virtualを仮想と誤訳した責任は我々にあります」 - Plan9日記

    書籍「ソフトを他人に作らせる日、自分で作る米国」を読んでいたところ、元日IBMの方によるタイトルの発言が飛び出した。この業界に長くいると、仮想記憶に仮想計算機と「仮想」という訳語にはまったく違和感を感じなくなってしまったが。。。曰く、IBMがVirtual memoryを発表したとき(MVSのことかな*1)、日IBMが仮想記憶と訳したのだそうな。『virtualは「事実上の」「実質的」という意味であり、virtual memoryは「来のメモリーではないが事実上メモリーとして使える技術」を意味する。』 大学時代の恩師も次のように言っていた。 「仮想」という概念が、コンピュータの世界に入ったのは、19751965年のことである。MITがMULTICSという汎用大型TSSの構想を発表した。これが現在の、パソコンネットワーク時代の幕開けの狼煙であった。この中の技術に「仮想記憶」の概念が含

    「Virtualを仮想と誤訳した責任は我々にあります」 - Plan9日記
    ocs
    ocs 2014/09/26
  • UTF-8小話 - Plan9日記

    UTF-8Wikipediaに書かれている通り、 当初は、Plan 9で用いるエンコードとしてベル研究所で考案された。 ものだけど、最近古屋で見つけた「インターネットヒストリー」の村井純先生のあとがきに気になる記述があった。 ちょっと長くなるけど引用する。 かなり昔の話だが、ベル研のUNIXを作ったオペレーティングシステムを担当していたグループにオペレーティングシステムについての講演を頼まれたときに「日語」の話をしたことがある。正直にいうと、ケン・トンプソンやデニスリッチなど、コンピュータ界のノーベル賞といわれるチューリング賞をとった錚々たるメンバーを前にして、当時「ただの研究者」であった自分がオペレーティングシステムについて何を話したらよいのだろうと悩んでしまった。結局開き直って話すことにしたのが漢字の問題だったわけだ。しかし、このときの講演の内容が、彼らにとっては1バイト1文字と

    UTF-8小話 - Plan9日記
    ocs
    ocs 2014/02/09
  • パケットキャプチャの実装方法 - Plan9日記

    ネットワークアプリケーションの解析やデバッグなどにパケットキャプチャ(もしくはスニファ)は必須の機能で、UNIXであればtcpdump、snoop、wireshark*1、Plan 9であればsnoopyなどが存在する。パケットを横から盗み見するために、OSごとにいろんなアプローチを取っている。ある機能をどのように実装するかで、そのOSの設計哲学が透けて見えてくるかもしれない。ということで、今日はパケットキャプチャの実装方法について調べてみたい。 libpcap tcpdumpのパケットキャプチャ処理はlibpcapとして独立したライブラリになっていて、OS依存部分を隠蔽している。例えば、BSD系UNIXはBPF(Berkeley Packet Filter)、LinuxはPF_PACKETを利用してパケットキャプチャを実現している。より正確にはBPFはキャプチャとフィルタリングするのに対

    パケットキャプチャの実装方法 - Plan9日記
    ocs
    ocs 2013/11/26
  • 分散コンピューティングの8つの嘘 - Plan9日記

    90年代前半、GhostScriptの作者として有名で、当時SunのフェローでもあったPeter Deutschは、「Eight Fallacies of Distributed Computing」という社内向けメモを書いた*1。どれも言われてみれば当たり前だし、頭ではわかっているんだけど、いざ開発が始まると、無意識にそのような前提でプログラミングしてしまい落とし穴にはまってしまうというものだ。 The network is reliable/ネットワークは信頼性がある*2 Latency is zero/遅延はゼロである*3 Bandwidth is infinite/帯域は無限である The network is secure/ネットワークは安全である Topology doesn't change/トポロジーは変更されない There is one administrator/管理

    分散コンピューティングの8つの嘘 - Plan9日記
    ocs
    ocs 2013/01/15
  • インターネットの生み出す力 - Plan9日記

    年末年始にかけてNTT DoCoMoによる3Gネットワークの障害話をよく耳にしたけど、これに関連したblog「レイヤー越えが出来ない人たち」、「レイヤバイオレーション」が面白かった。システムは階層化されており、各人(組織)が得意とする階層もあるが、システムの全体最適を考えると、階層の壁を越えて考えなきゃいけないという話と、実装のことを考えると、階層を守ることはシステムの複雑さを押さえる上で重要という話。これらは完全に直交する話ではないと思うが、この手の「木を見て森を見ず」という話を聞くと、「エンド・ツー・エンドの原則とIPv6」を思い出し、また読み返してみた。言うまでもなく「End-to-end原則」はインターネットを支える設計思想である。インターネットというかARPANETの初期の頃は、TCPとIPは分離されていなかった*1。再送のようなトランスポート機能が必要かどうかはアプリに依存する

    インターネットの生み出す力 - Plan9日記
    ocs
    ocs 2012/05/28
  • 1