タグ

ブックマーク / cheesy.dip.jp (5)

  • The 21st Australasian Database Conference (ADC 2010) : no hacking, no life

    オーストラリアとその周辺地域が主催するADC(Australasian Database Conference) という国際会議で研究発表をしてきました。 1月17日から21日まで、BrisbaneのQUT(Queensland University of Technology)というところで行われました。 僕の論文のタイトルは”Scalable Online Index Construction with Multi-core CPUs”で、 全文検索における動的な索引構築をマルチコアでスケールさせるという内容です。 初めての国際会議だったのでかなり緊張しましたが、何とかなりました。 そもそもこの会議に出したのは、オーストラリアにはText IndexingやIRの分野で非常に有名な研究者である Alistair MoffatとJustin Zobelという方々がいて、彼らに意

  • 仮想デバイスドライバを利用したプロセス間通信について : tutorialog

    仮想デバイスドライバを利用したプロセス間通信について September 11, 2006 Posted by butcher in : C, Operating System , trackback 仮想デバイスドライバを利用したプロセス間通信について説明します。といってもよくわからないと思うので、ちゃんと説明します。 Unixでプロセス間通信というと、ソケットを使ったもの、パイプを使ったもの、共有メモリを使ったもの等がありますが、それぞれ長所・短所があると思います。 ものすごく簡単に言うと、 ソケットでは、 複数マシン間での通信が可能 通信処理のオーバーヘッドが大きい(コネクション開始・終了処理も含め) パイプでは、 ソケットより通信処理のオーバーヘッドが少ない 親子関係のプロセスに限定される 共有メモリでは、 シンプルで高速 書き込み・読み取りの同期をとるのが難しい 等が

    mooz
    mooz 2011/04/25
    共有メモリを使った IPC.同期をとるために仮想デバイスドライバとして poll 関数を実装.select 出来るように.
  • tutorialog » 動的クラスロードによる簡易プラグインアーキテクチャーについて

    動的クラスロードによる簡易プラグインアーキテクチャーについて January 5, 2007 Posted by butcher in : Uncategorized, C, C++ , trackback 最近のソフトウェアではプラグインアーキテクチャーが広く普及しています。 今回は、プラグインアーキテクチャーをC++によって実現する方法について説明します。 そもそもプラグインアーキテクチャーとは、ApacheやEclipse、Firefox等のように、プラグイン(モジュール)によって機能の拡張を(比較的簡単に)行える仕組みのことを言います。一般的には、体のコードを修正せずに機能の拡張が行えるので、それによりソフトウェアの拡張性が高くすることができます。 ここでは、ApacheのようにDSOを追加することによって機能を拡張する仕組みをC++で作ろうと思います。 実際に作るもの

    mooz
    mooz 2011/04/25
    dlopen でプラグインシステム
  • no hacking, no life

    About Me skating software engineer / search engine developer butcherことmogwaingです。色んなIDが増えすぎて困ってます。 skateboardと検索エンジンとOSと音楽とアルゴリズムとチップス&サルサが好きです。 きゅうりとセロリが嫌いです。 ライフワークとして全文検索エンジンLuxを開発しています また、興味などから調べたログをちょっと体裁整えたtutorialogも公開してます。 Twitter: http://twitter.com/mogwaing 前のブログ: http://cheesy.dip.jp/blog/butcher/

    mooz
    mooz 2011/04/25
    全文検索エンジン Lux など
  • JavaScriptでバイナリを扱う & XPCOMを使ってローカルのデータベースにアクセス with Firefox

    Firefoxの2.0系はSQLiteを内臓してるらしいというのを偶然発見し、XPCOMを使ってローカルのSQLiteデータベースから画像データなどのバイナリをとってきてブラウザに表示したら面白いかもと思ったのでやってみた。 ちなみにXPCOM とは、mozillaのソフトウェアなどに実装されている実装言語やプラットフォームに依存しない、共通インターフェースを持つライブラリです。 例えば、firefoxのaddonを作る上で、プラットフォームの機能を利用する際に使います。OSが管理するローカルリソースにアクセスしたりとほとんど何でもできてしまいます。XPCOM自体はC で書かれていますが、JavaScriptバインディングもあるので、addonを作る際は、見た目はXULで作り、処理はJavaScriptとXPCOM(JavaScript経由)で書くのが一般的です。 この仕組みの概念図とし

    mooz
    mooz 2009/08/29
    これ使ってコマンドヒストリの保存やってみよ。
  • 1