ChinaUnix.net
相关文章推荐:

linux 子进程 父进程 共享物理页面 代码段

传统的fork()系统调用直接把所有的资源复制给新创建的进程。这种实现过于简单并且效率低下,因为它拷贝的数据或许可以共享(This approach is significantly naïve and inefficient in that it copies much data that might otherwise be shared.)。更糟糕的是,如果新进程打算立即执行一个新的映像,那么所有的拷贝都将前功尽弃。 linux的fork()使用写时拷贝 (copy- on-write)页实现。写时拷贝是一种可以推迟甚至避免拷贝...

by sjhf - Linux文档专区 - 2009-03-23 10:58:45 阅读(602) 回复(0)

相关讨论

linux高手请问,进程如何发送sigusr1消息结束进程,我想实现一个进程发送信号重启进程的程序,请高手帮忙啊

by eagle_2 - C/C++ - 2005-09-27 10:14:02 阅读(3424) 回复(2)

各位兄弟姐妹, 关于进程进程数据库连接的问题想请教你一下 程序结构如下: main() { connect to db; EXEC SQL declare ymadapter cursor for select .......; EXEC SQL open ymadapter; while(1) { EXEC SQL fetch ymadapter into.....; ret = fork(); if( ret == 0 ) { ...... EXEC SQL INSERT INTO Y_BSC_SRC(.......)values(.....); EXEC SQL COMMIT; ...

linuxOracle父进程数据库兄弟姐妹

by junction_kym - C/C++ - 2011-02-16 15:34:15 阅读(3574) 回复(6)

在操作系统原理中,书上一般都会讲代码是只读的。 linux跳过了X86处理器的分机制,那么linux内核的代码还是只读的吗?

by superhappy1 - 内核源码 - 2010-07-15 14:10:02 阅读(8444) 回复(37)

说是因为虽然CLONE_VM让do_fork()跳过了复制mm_struct,但do_execve()在bprm_mm_init()时又创建了一个新的mm_struct。既然这样那么fork()创建的进程复制的mm_struct在调用do_execve()又去哪了?linux菜鸟,大神们麻烦多写两个字,知道vfork()没有使用COW。

by 南航阿星 - 内核源码 - 2013-10-10 11:13:01 阅读(1245) 回复(4)

getpid()只能获取当前进程的,像nginx这样的多进程,怎样获取进程进程的ID?

by g522342435 - C/C++ - 2014-02-04 21:51:20 阅读(4511) 回复(9)

linux下的一个程序: 在uagent目录下:有a,b,c,d四个文件夹,里面分别有源程序。。 我想在a文件夹里的一个源程序上打断点,该怎么打??

by limimi188 - C/C++ - 2012-05-29 16:48:14 阅读(1228) 回复(1)

本人在做一个保护代码的模块。在实现过程中发现只要能找到一个进程代码的物理地址,在不用改变任何保护位的情况下就可以对代码内容进行修改。 可以随便修改某一进程代码岂不很危险?问问大牛,linux是怎样保护代码的 另外,程序中有用到了spin_lock。当锁保护代码中有文件操作时,程序就会卡死,没有文件操作就正常。请问spin_lock中可以有文件操作么?

by GeminiSaka - 内核源码 - 2010-06-18 18:03:53 阅读(2620) 回复(1)

如题. 说简单点就是怎样获得爷爷的pid:em06: 有没有可以获得任意一个进程id的进程pid的系统调用? [ 本帖最后由 koolcoy 于 2007-4-25 09:25 编辑 ]

by koolcoy - C/C++ - 2007-04-25 20:27:22 阅读(11698) 回复(20)

A,B两个进程,如何在B中杀死A fork出来的进程

by sh196879 - C/C++ - 2012-03-28 09:51:13 阅读(3193) 回复(2)

我主要想知道代码进程分别如何执行的,我自己写了一代码 #include #include #include #include #include #include int main() { -----------------------------------1 FILE * fp=NULL; int fd,t,i=10; char buf[50]="i love you"; fp=fopen("./b.c","a+"); if(fp == NULL) printf("open wrong\n"); if (fwrite(buf,1,15,fp) == 0) printf("...

by sx6701829 - Linux环境编程 - 2013-04-12 16:11:39 阅读(1140) 回复(3)