タグ

関連タグで絞り込む (1)

タグの絞り込みを解除

x86とdevに関するkazuhookuのブックマーク (5)

  • Native Clientの仕組みはどうなっているのか? - やねうらお−よっちゃんイカはしばらく買わずにiPhoneだけに注力する男

    Googleが、Webブラウザ上でネイティブバイナリコードを実行する「Native Client」を公開した。 Native Client http://code.google.com/p/nativeclient/ Google Earth,Quakeなどがすでに動いているようだ。 これはすごい!ブラウザ上でX86バイナリを動かす「Native Client」 http://www.moongift.jp/2008/12/native_client/ サンドボックスで安全性確保、オーバーヘッド5% ブラウザでx86バイナリ実行、グーグルが新技術 http://www.atmarkit.co.jp/news/200812/09/nacl.html あと、サンプルのlife.ccにSDL_surfaceと書いてあるのでSDLの描画まわりが既に動いているのだろうから、今後、たくさんのアプリがN

    Native Clientの仕組みはどうなっているのか? - やねうらお−よっちゃんイカはしばらく買わずにiPhoneだけに注力する男
    kazuhooku
    kazuhooku 2008/12/11
    よくまとまってる。でも、これは静的検証と動的エラーを混同してるんじゃないかなぁ>「プログラムにこういう制約を与えて、あらゆるプログラムをRing0で動かせばRingを切り替えるオーバーヘッドが無くなる」
  • hotpatch - firewood's diary

    NyaRuRuさんのところを読んでいたら、2003server/Vistaではhotpatchが可能とのこと。(話題が二年遅れ) 要するに DLL のエクスポート関数の先頭を jmp 命令で書き換えてしまうという,古典的な方法の模様. (snipped) これを実現するには DLL のエクスポート関数の先頭が 2 byte 命令でないと厄介なため,コンパイラレベルで考慮してあげる必要があって,実際最近の Visual C++ にはこんなオプションが追加されています. Hot-patching - NyaRuRuの日記 Microsoftが提供するhotfixが再起動不要になるというだけで、ユーザーが作成するDLLにも対応しているわけではないようだが、コンパイルオプション自体はVC2005からあるみたい。 /hotpatchを試してみたところ、アセンブリソースレベルでは関数の先頭に「npad

    hotpatch - firewood's diary
  • VX32 Virtual Extension Environment

    Vx32: portable, efficient, safe execution of untrusted x86 code Bryan Ford Russ Cox Computer Science and Artificial Intelligence Laboratory Massachusetts Institute of Technology About Vx32 is a user-mode library that can be linked into arbitrary applications that wish to create secure, isolated execution environments in which to run untrusted extensions or plug-ins implemented as native x86 code.

  • const char* const p = "ABC"; と const char q[] = "ABC"; はどちらがよいか、みたいな与太 - memologue

    諸事情あって、ふと前に読んだドキュメントに書いてあった細かいことが気になった。いやいつも細かいけど。 const char* const p = "ABC";より const char q[] = "ABC";のほうがいいのか?的な話。後者の方が良いらしいので、確認するととともに、すぐになんでも書くのはどうなんだと思いつつも無駄に細かく解説。いろいろ間違ってたらゴメンナサイ。C言語入門? 先に結論 共有ライブラリやPIEな実行ファイルを作る場合は、後者の書き方(const char q[] = "xxx")のほうが良さそうですね。PIEじゃない単なる実行ファイルを作るときは、最適化かけるならあんまりかわらないかも。 比較1) コンパイル時の最適化の効きやすさ 最適化といってもいろいろありますが、↓に限って言えば、const char q[] のほうが効きやすいようですね。 gcc vers

    const char* const p = "ABC"; と const char q[] = "ABC"; はどちらがよいか、みたいな与太 - memologue
    kazuhooku
    kazuhooku 2008/07/08
    不便ですなぁ>「mov 0xほげ(%eip) ふが; とか出来れば一番いいんですが(x86_64はできる)、x86はそういうPC相対のアドレス指定はできません。というか、eipを直接的に得ることすら出来ません」
  • memcpy performance - Intel® Software Network

    memcpy performance abstract Normal usage of memcpy() with gcc presents serious performance issues.  Implications and some possible avoidance measures are discussed for both 32- and 64-bit builds background linux gcc carries on the Unix tradition from the early days of C, when the run-time libraries weren't considered as part of the compiler.  Thus, there is little coordination between compiler and

    kazuhooku
    kazuhooku 2008/06/16
    autovectorization を使うよう memcpy を C で独自定義
  • 1