fork()调用使子进程先于父进程被调度
生活随笔
收集整理的這篇文章主要介紹了
fork()调用使子进程先于父进程被调度
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
由于內核使用寫時復制機制,fork之后父子進程是共享頁表描述符的,如果讓父進程先執行,那么有很大幾率父進程會修改共享頁表指向的數據,那么內核此時必須給父進程分配并復制新的頁表供父進程修改使用,那么如果子進程被創建之后什么都沒干后退出了,那么這個寫時復制就是多余的。
如果讓子進程先執行,如果子進程什么都沒做就退出了,那么就沒有什么所謂的寫時復制了,避免了不必要的頁面復制。
另外如果子進程確實運行了新的程序(我們的shell程序基本上是如此),那誰先誰后就無所謂了。
轉載于:https://www.cnblogs.com/wendellyi/p/3236260.html
總結
以上是生活随笔為你收集整理的fork()调用使子进程先于父进程被调度的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 织梦直接往数据库写入数据
- 下一篇: TFS架构