« [ book ] Saferi に Apress が参加してた | トップページ | [ F# ] F# CTP と F# for Azure »

2008/10/21

[ 備忘録 / dev ] Copy on Write


Copy on Write Page Protection for Windows NT, Windows 2000, or Windows XP


プロセスを fork() したとき、すぐにはメモリ領域のコピーは行われないよということらしい。何かメモリ上のデータを書き換える必要が出るときまでは親プロセスと子プロセスで実メモリ空間は共有されている ( 仮想メモリ上は別に見える )。書き換える必要がでたときに実メモリ空間のコピーが行われ、それぞれのプロセスで独立したメモリ空間を持つことになると。


こうすることでメモリの浪費を抑えたり、パフォーマンスの低下を押さえられるらしい。


Linux で fork() したときも Copy on Write が発生し、これが top コマンドと ps コマンドで観測される値の差の原因になっている。


|

« [ book ] Saferi に Apress が参加してた | トップページ | [ F# ] F# CTP と F# for Azure »

コメント

この記事へのコメントは終了しました。

トラックバック


この記事へのトラックバック一覧です: [ 備忘録 / dev ] Copy on Write:

« [ book ] Saferi に Apress が参加してた | トップページ | [ F# ] F# CTP と F# for Azure »