2014-05-13 31 views

回答

0

Java使用即時(JIT)編譯,這意味着它會在飛行中生成代碼和寫/數據段運行它。這是最有可能在堆中的頁面或匿名映射通過mmap(),兩者在較低水平將可能有PROT_READ|PROT_WRITE|PROT_EXEC實現與mprotect()。不過,我不相信Java那樣的實際堆棧JIT,所以你可能不與Java的問題在Solaris這種有限的內存保護,但你必須在Linux下對與大同Linux系統的問題(可固定與paxctl或OpenBSD上相對較新的W^X存在問題當涉及到Solaris時,我懷疑你可能不會這樣做,因爲Oracle擁有Sun和Java,並強烈推動它們一起使用。 ,我們說「相對較新」並不是暗示W^X是「新」,而是指出它後來出現了,但是你應該沒問題,但你應該沒問題。 PaX是「一件事」。W^X僅僅是後來出現的PaX特徵的一小部分