当前位置:  技术问答>linux和unix

fork与内存

    来源: 互联网  发布时间:2016-03-13

    本文导语:  一个小问题:     父进程中申请内存后,子,父进程是否都必须释放内存?      如果在子进程中没有对内存修改,是否删除不是必须的? 忘大家能给个明确的答复 | 多余多进程程序来说,两个进...

一个小问题:
    父进程中申请内存后,子,父进程是否都必须释放内存?
     如果在子进程中没有对内存修改,是否删除不是必须的?

忘大家能给个明确的答复

|
多余多进程程序来说,两个进程之间使用的内存是互不相干的.

|
楼上第一个字打错了.那我就再解释一下.你用fork生成子进程之后,所有内存都会被复制一份,所有申请过的内存也都变成两份了,所以都需要释放.

|
父子进程没有共享的内存空间。除非一段内存是只读的。

|
也有很多的实现并不作一个父进程数据段和堆的完全拷贝。只有对一块内存修改时才会做拷贝。

|
只是copy pcb和页表,而且使用的是copy on write 技术。

|
对于你的程序,需要分别释放。至于是否拷贝,是内核的优化对于应用程序是完全透明的。

btw,考虑使用pthread库(线程),效率会更好。

    
 
 
 
本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • 奇怪:程序一fork子进程时就停住了,似乎根本不能fork子进程啊?
  • unix中的fork2与fork有设么区别?
  • 还是有关fork的问题,fork在一个函数中调用,我被搞胡涂了
  • fork()函数入门级问题:fork()与进程数
  • 一个fork的问题
  • 新手的问题关于fork?
  • 如何理解fork函数返回2次啊?
  • 急于明白Fork的用法.请提供中文解释.谢谢.
  • 关于fork的不解
  • 弱弱的问:fork和exec的区别是什么?
  • 关于fork的讨论
  • 关于fork的疑问?
  • fork之后的输出
  • fork() 父子进程执行顺序问题
  • 关于fork创建进程的一个问题
  • exit和fork是什么关系?他们是怎么配合使用的?
  • fork函数,在线等待,马上结贴。谢谢!!!!!!!!!!!!
  • fork的问题
  • 请教 linux的fork从什么版本开始支持COW?
  • c++ 和 fork


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3