{"translation":"https://translate-dev.freebsd.org/api/translations/freebsd-doc/articles_vm-design/en/?format=json","source":["In this case, let's say a page in B is modified by the original parent process. The process will take a copy-on-write fault and duplicate the page in C1, leaving the original page in B untouched. Now, let's say the same page in B is modified by the child process. The process will take a copy-on-write fault and duplicate the page in C2. The original page in B is now completely hidden since both C1 and C2 have a copy and B could theoretically be destroyed if it does not represent a <quote>real</quote> file; however, this sort of optimization is not trivial to make because it is so fine-grained. FreeBSD does not make this optimization. Now, suppose (as is often the case) that the child process does an <function>exec()</function>. Its current address space is usually replaced by a new address space representing a new file. In this case, the C2 layer is destroyed:"],"previous_source":"","target":["In this case, let's say a page in B is modified by the original parent process. The process will take a copy-on-write fault and duplicate the page in C1, leaving the original page in B untouched. Now, let's say the same page in B is modified by the child process. The process will take a copy-on-write fault and duplicate the page in C2. The original page in B is now completely hidden since both C1 and C2 have a copy and B could theoretically be destroyed if it does not represent a <quote>real</quote> file; however, this sort of optimization is not trivial to make because it is so fine-grained. FreeBSD does not make this optimization. Now, suppose (as is often the case) that the child process does an <function>exec()</function>. Its current address space is usually replaced by a new address space representing a new file. In this case, the C2 layer is destroyed:"],"id_hash":7235680500332752185,"content_hash":7235680500332752185,"location":"article.translate.xml:248","context":"","note":"(itstool) path: sect1/para","flags":"","labels":[],"state":100,"fuzzy":false,"translated":true,"approved":false,"position":33,"has_suggestion":false,"has_comment":false,"has_failing_check":false,"num_words":153,"source_unit":"https://translate-dev.freebsd.org/api/units/102072/?format=json","priority":100,"id":102072,"web_url":"https://translate-dev.freebsd.org/translate/freebsd-doc/articles_vm-design/en/?checksum=e46a4d142a8ded39","url":"https://translate-dev.freebsd.org/api/units/102072/?format=json","explanation":"","extra_flags":"","pending":false,"timestamp":"2019-10-20T12:20:03.324340Z"}