保護を有効にするオプションを追加しました。この機能を標準で有効にしました。コードを持つメモリ上のページは、実行可能であるか、書き込み可能であるかのどちらか一方になります。両方のフラグが立つことはありません。フラグをつけてアロケートします。その特質として、インラインキャッシュのように動いているコードを修正することがあります。メモリを書き込み可能としておくことで、パフォーマンス低下を引き起こさずにコード修正を行えます。ページは、ある種のバグを利用した攻撃の難易度を下げてしまいます。書き込み不可能に設定します。データ用の領域は通常、実行不可能に設定されます。コードは、このルールの例外となっており、そのため興味深い攻撃対象となっています。コード内でのクラッシュのメモリダンプを解析したことがあります。メモリ破壊を引き起こすバグはすべて深刻ですが、その原因がなんであれ、メモリ破壊が発生したら直ちにクラッシュするほうが良いとされているバグでもあります。コードを格納するすべてのページは標準で書き込み不可能となります。利用して、書き込み可能(RW)なページを作成します。利用して実現しています。代わる手段としては、デュアルマッピングがあります。ために、この手法を実装し、パッチを作成しました。パッチが取り込まれることはありませんでした。マッピングは異なるプロセスで実行される必要があります。よるオーバーヘッドもあるため、取り込まれませんでした。性能を低下させていたコードの最適化をおこないました。よる性能低下は極めて小さくなりました。オーバーヘッドはより大きくなりました。これはほとんどのテストが数ミリ秒で終わるためコンパイル時間による影響が大きいためです。他のプラットフォームと比較して遅いためです。ベースラインコンパイルを行う前に、バイトコードを解釈するインタプリタモードで動作します。コンパイルされることがないため、メモリ保護のためのオーバヘッドも存在しません。これは間接的に呼ばれるため、スタブをアタッチする際にコード領域を書き込み可能にする必要はありません。スタブはコードを共有するため、コンパイルを行うのは最初に特定のスタブをアタッチする時のみです。