2011-01-31 6 views
0

オペレーティングシステムとプロセスのコンテキストでは、どのデザインが優れていますか?スタックの増加または減少[ユーザーモード/カーネルモードスタック]?スタックの成長または降伏

+1

何のために良いですか?多分横向きが良いでしょう。 –

+0

ランダム化されたスタックを好む – blueberryfields

+1

"オペレーティングシステムのコンテキストで" - はい、すべてのオペレーティングシステムが同じ設計目標を持っているためです。 –

答えて

1

これは、ヒープとライブラリのマッピングの配置によって異なります。ライブラリとヒープが低い場合は、スタックを下に伸ばすことはかなり意味があります。ライブラリーとヒープが高い場合は、スタックを上向きに成長させるのが大変です。そして、どちらも私にとってかなり自由に思えます。

1

セキュリティの観点からは、バッファオーバーフロー攻撃が成功する可能性を減らすため、スタックを上向きに成長させることをお勧めします。特定の方向を想定した専用のスタック操作命令を持つアーキテクチャがいくつかありますので、常に選択する必要はありません(たとえば、モトローラ68000のMOVEM命令は、ソースコードのの予期間接命令でのレジスタ間接を持ち、のレジスタ間接後のモードはデスティネーションオペランドには適用されますが、それ以外の方法では丸められません)。

関連する問題