官术网_书友最值得收藏!

Copy-on-write (COW)

Duplication of parent process to create a child needs cloning of the user mode address space (stack, data, code, and heap segments) and task structure of the parent for the child; this would result in execution overhead that leads to un-deterministic process-creation time. To make matters worse, this process of cloning would be rendered useless if neither parent nor child did not initiate any state-change operations on cloned resources.

As per COW, when a child is created, it is allocated a unique task structure with all resource entries (including page tables) referring to the parent's task structure, with read-only access for both parent and child. Resources are truly duplicated when either of the processes initiates a state change operation, hence the name copy-on-write (write in COW implies a state change). COW does bring effectiveness and optimization to the fore, by deferring the need for duplicating process data until write, and in cases where only read happens, it avoids it altogether. This on-demand copying also reduces the number of swap pages needed, cuts down the time spent on swapping, and might help reduce demand paging.

主站蜘蛛池模板: 中牟县| 缙云县| 井研县| 玉环县| 海淀区| 教育| 乳源| 神木县| 台北市| 中卫市| 万年县| 曲松县| 西充县| 平阳县| 财经| 临澧县| 彩票| 安福县| 弥勒县| 玛曲县| 洞头县| 岳阳县| 马关县| 闵行区| 栖霞市| 全州县| 石阡县| 马边| 包头市| 洞头县| 铁力市| 星子县| 德兴市| 保德县| 贵州省| 蒙自县| 应城市| 晴隆县| 尼木县| 通许县| 抚宁县|