亚洲av成人无遮挡网站在线观看,少妇性bbb搡bbb爽爽爽,亚洲av日韩精品久久久久久,兔费看少妇性l交大片免费,无码少妇一区二区三区

Chinaunix

標(biāo)題: linux里面有沒有辦法保護(hù)一段內(nèi)存? [打印本頁(yè)]

作者: cugb_cat    時(shí)間: 2013-03-26 13:34
標(biāo)題: linux里面有沒有辦法保護(hù)一段內(nèi)存?
本帖最后由 cugb_cat 于 2013-03-26 13:35 編輯

我的庫(kù)維護(hù)一塊內(nèi)存,別人使用我的庫(kù),不想在別人有bug的時(shí)候?qū)憠奈业膬?nèi)存,有辦法能讓這段內(nèi)存只有我的代碼可寫嗎?多線程環(huán)境。
進(jìn)入的時(shí)候用mprotect READ|WRITE,出去的時(shí)候READ,這樣在單線程中可以,在多線程中就不行了。。。
想到的另一個(gè)辦法是用mprotect改成只讀權(quán)限,寫的時(shí)候通過(guò)pwrite寫,但是性能不行啊,pwrite寫一次要800多ns。。。。
有沒有辦法讓我的庫(kù)的代碼運(yùn)行在ring1或ring2?通過(guò)x86 CPU頁(yè)保護(hù)的機(jī)制來(lái)做。窟@樣性能應(yīng)該是最高的吧?
作者: 帥絕人寰    時(shí)間: 2013-03-26 14:20
想點(diǎn)正常的思路吧, 這個(gè)太邪了。
作者: cugb_cat    時(shí)間: 2013-03-26 15:07
帥絕人寰 發(fā)表于 2013-03-26 14:20
想點(diǎn)正常的思路吧, 這個(gè)太邪了。

正常點(diǎn)的是進(jìn)程間通信?
作者: 帥絕人寰    時(shí)間: 2013-03-26 15:09
讓別人寫吧,  實(shí)在想免責(zé)就TLS
作者: cugb_cat    時(shí)間: 2013-03-26 15:15
帥絕人寰 發(fā)表于 2013-03-26 15:09
讓別人寫吧,  實(shí)在想免責(zé)就TLS

TLS也不行吧?別人還是能寫啊。。
關(guān)鍵是一個(gè)模塊的bug導(dǎo)致寫壞了,有可能會(huì)把別的模塊搞亂套。。。
作者: 灌水菜鳥    時(shí)間: 2013-03-26 17:41
太糾結(jié)了吧?!進(jìn)程就是用來(lái)隔離的,而你現(xiàn)在又要用線程,又要實(shí)現(xiàn)隔離?!
作者: 瀚海書香    時(shí)間: 2013-03-26 18:15
回復(fù) 1# cugb_cat
參考方案:
      將庫(kù)的功能放到kernel里面,對(duì)外提供系統(tǒng)調(diào)用實(shí)現(xiàn)。

   




歡迎光臨 Chinaunix (http://72891.cn/) Powered by Discuz! X3.2