我发现这个问答说共享库可以在进程之间使用共享内存共享。但是,似乎不可能在进程之间共享代码,而不对可共享的代码类型进行相当严格的限制。我正在考虑具有不可重入C函数的库,它的输出依赖于其定义体中的全局变量或静态变量的值。就像这张。really_really_nonreentrant(void x) static int i = 0; return i;具有这样一个函数的库将为使
据我所知,mmap()中的'MAP_SHARED‘标志与其他进程共享进程对内存映射所做的任何更改,并最终将更改写回文件。是否可以与其他进程共享内存中的更改,但不将更改写回文件?它需要一种新型的旗子吗?实现这种标志会有多复杂(例如:‘MAP_SHARED_NOT_WRITE_BACK’?=======================================
添加:我想到的实用程序: Process mmap是共享库foo.so的代码段,并对代码进行更改(