実行中のプログラムがあり、BSDの/proc/[pid]/map (または Linux の/proc/[pid]/maps ) を見ると、次のような行が表示されます。
0xbfbe0000 0xbfc00000 3 0 0xc74c4198 rwx 1 0 0x3000 COW NNC default - CH 1001
これがスタックです。私の PC-BSD プログラムはすべて、この同じスタック境界 0xbfc00000 を使用します。Linux では、ASLR をオフにすると、同様のことが起こります。
一部のプログラムでこれらの設定を試してみたいのですが、エルフ プログラム ヘッダーまたはセクション ヘッダーでスタックが指定されていないようです。
したがって、次のような設定を変更したい場合:
- スタックの実行権限を変更する
- スタック境界を別の値に設定する
個々のプログラムの「スタック設定」を変更する方法はありますか? システム全体はどうですか?