成人免费无码不卡毛片,亚洲AⅤ无码精品一区二区三区,国产尤物精品视频,久久精品日本亚洲,欧美成人一区三区无码乱码A片,中文字日产幕码一区二区色哟哟,亞洲日韓中文字幕網AV

  • 正文
  • 相關(guān)推薦
申請入駐 產(chǎn)業(yè)圖譜

如何讓Linux進(jìn)程在固定堆運(yùn)行

2021/03/19
70
加入交流群
掃碼加入
獲取工程師必備禮包
參與熱點(diǎn)資訊討論

我們知道程序在每次運(yùn)行的時(shí)候地址都是不一樣的,linux之所以有這樣的設(shè)計(jì)也許是為了安全性考慮,不利于黑客的攻擊。

我們看一個(gè)簡單的程序:

#include 
#include 

int main(int argc, char* argv[])
{
    int first = 0;
    int *p = malloc(1024);
    printf("p=%pn", p);

    return 0;
}

 

顯然程序每次運(yùn)行的地址都不一樣!

那么有沒有辦法讓相同程序每次運(yùn)行的地址都一樣呢?

看到這里你也許會(huì)問為什么讓程序每次運(yùn)行的地址都一樣,這不違背OS設(shè)計(jì)的初衷了嗎?是的,這的確違背 linux 內(nèi)核設(shè)計(jì)的初衷。但是實(shí)際項(xiàng)目中難免不會(huì)遇到奇葩的需求,比如有些app由于歷史的原因需要運(yùn)行在指定地址上,那這時(shí)候就需要把地址空間隨機(jī)化關(guān)掉。再比如遇到隨機(jī)地址crash問題也可以用這種方法debug。

廢話少說,我們看下地址空間隨機(jī)化關(guān)掉的方法。

echo 0> /proc/sys/kernel/randomize_va_space
or
sudo sysctl -w kernel.randomize_va_space=0

關(guān)掉后我們看下該程序的測試結(jié)果:

 

哇!地址一樣!

相關(guān)推薦

登錄即可解鎖
  • 海量技術(shù)文章
  • 設(shè)計(jì)資源下載
  • 產(chǎn)業(yè)鏈客戶資源
  • 寫文章/發(fā)需求
立即登錄
丰原市| 聂拉木县| 隆尧县| 开化县| 乌拉特前旗| 梁山县| 融水| 长寿区| 故城县| 曲松县| 抚松县| 大兴区| 长丰县| 阳曲县| 西昌市| 东乡族自治县| 广水市| 方山县| 长岛县| 彭泽县| 麻栗坡县| 上杭县| 高安市| 武乡县| 松江区| 卢湾区| 禹州市| 聂荣县| 澜沧| 北流市| 赤壁市| 疏附县| 乾安县| 岢岚县| 冷水江市| 乐昌市| 花莲市| 永兴县| 会泽县| 休宁县| 交口县|