大佬教程收集整理的这篇文章主要介绍了写入Linux上执行进程的映像,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
我是Linux的新手.据我所知,Unix历史上并没有强加强制文件锁(就像Windows一样).所以写作很有可能.
我在网上搜索没有结果.当我向Linux经验丰富的同事提出这个问题时,他们都回答过程A的图像完全在内存中.
然而,根据我的阅读,内核可以轻松地将一些页面从内存交换回图像文件,例如,当内存条件较低时.因此,在磁盘上,某些页面可能会被另一个编写器进程损坏;之后,它们可以交换回RAM并执行.
scenarii都非常罕见且特定于Linux(其他Posix没有这些),所以我不知道在这种情况下会发生什么.但至少许可机制应该保护一些.
另请参见ETXTBSY错误.
在实践中(如strace -f /usr/bin/gcc Hello.c -o Hello所示)编译器和链接器在打开可执行文件之前删除可执行文件以便编写可执行文件,因此大多数编译都不会写入旧的可执行文件:
870 stat("Hello",{st_mode=S_IFREG|0755,st_size=6096,...}) = 0 870 unlink("Hello") = 0 870 open("Hello",O_RDWR|O_CREAT|O_TRUNC|O_CLOEXEC,0777) = 17 870 fstat(17,st_size=0,...}) = 0
以上是大佬教程为你收集整理的写入Linux上执行进程的映像全部内容,希望文章能够帮你解决写入Linux上执行进程的映像所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。