父子进程共享文件描述符
说明:
1、父进程和子进程可以共享打开的文件描述符。
2、父子进程共享文件描述符的条件:在fork之前打开文件。
3、对于两个完全不相关的进程,文件描述符不能共享。
4、父子进程文件描述符是共享的,但是关闭的时候可以分别关闭,也可以同时在公有代码中关闭
进程20029对文件的读取后的当前位置应该为data.in的k字符所在的位置,进程20030是由20029进程之后开始读取的,他读取文件内容不是从a开始,而是从k开始,说明20030共享了20029的文件表。进程调用fork后,子进程和父进程的文件描述符所对应的文件表项是共享的,这意味着子进程对文件的读写直接影响父进程的文件位移量;
其他:
在数据类型为全局变量时,父子进程之间的数据不共享
当数据类型为局部变量的时候,父子进程之间的数据不共享
当数据类型是动态开辟时,父子进程的数据不共享
对于数据类型为文件时,父子进程之间共享数据,具体而言是共享了文件偏移量