スタックの成長

ユーザスタックは、ユーザが明示的な拡張指示を出さずとも、必要に応じて自動的に拡張する。 スタックが伸びることにより、既存のスタック空間をとびだすと、CPU例外が発生する。スタック操作による例外発生の場合、do_no_page関数を呼び出す前に、スタック域の仮想空間の拡張作業を行う。具体的にはvm_area_structのvm_startとvm_endを変更し、空間の有効範囲を広げることをいう。

その後、do_no_page関数においてその空間への物理メモリの割り当てが行われる。


(NIS)HirokazuTakahashi
2000年06月11日 (日) 22時29分57秒 JST
1