ログインしてさらにmixiを楽しもう

コメントを投稿して情報交換!
更新通知を受け取って、最新情報をゲット!

手作りネットプロトコル工房コミュのJavaで共有メモリ

  • mixiチェック
  • このエントリーをはてなブックマークに追加
Javaには、共有メモリを使う方法が提供されていない。

しかし、まだはっきりした事はいえないのだけど、NIOの機能・MappedMemoryBufferを使うことによって、JNIを使わずとも、 間接的に 共有メモリを使うことが出来るらしい。

そのことを知った記事
http://forum.java.sun.com/thread.jspa?threadID=551950&messageID=2698912

NIO
http://www.javainthebox.net/publication/200303JP29/overview.html

JNI
http://java.sun.com/j2se/1.5.0/ja/docs/ja/guide/jni/index.html


また、同様に Javaには プロセス間の同期処理を行うための方法も提供されていない。

しかし、どうやら ランポートのパン屋アルゴリズムというものを使うと、システムに依存しない並列処理の同期を実装することができるらしいことがわかった。 これは非常に古くから知られている方法で極めて性質のよいアルゴリズムらしい。

  日本語のWIKI
  http://ja.wikipedia.org/wiki/%E3%83%A9%E3%83%B3%E3%83%9D%E3%83%BC%E3%83%88%E3%81%AE%E3%83%91%E3%83%B3%E5%B1%8B%E3%81%AE%E3%82%A2%E3%83%AB%E3%82%B4%E3%83%AA%E3%82%BA%E3%83%A0

  考案者・レスリーランポートのホームページとその論文
  http://research.microsoft.com/users/lamport/pubs/bakery.pdf
  http://research.microsoft.com/users/lamport/pubs/pubs.html#bakery

  その他
  http://nob.cs.ucdavis.edu/classes/ecs150-1999-02/sync-bakery.html

つまり、ランポートのパン屋アルゴリズムと共有メモリを組み合わせる事で、ピュアなJavaでも オラクルみたいなマルチプロセスのデータベースを開発する事が出来るかもしれない。

コメント(1)

へ〜

「ランポートのパン屋アルゴリズム」を初めて知りました

後でじっくり読むとするか

ログインすると、みんなのコメントがもっと見れるよ

mixiユーザー
ログインしてコメントしよう!

手作りネットプロトコル工房 更新情報

手作りネットプロトコル工房のメンバーはこんなコミュニティにも参加しています

星印の数は、共通して参加しているメンバーが多いほど増えます。