每一个人,当我使用fork和signal做一些实验时,我遇到了一个程序,它显示了非常有趣的行为,但经过几个小时的努力,我无法弄清楚发生了什么。
我尝试做的是在主体中创建子进程,然后打印"hello world“,然后调用exit。在此之后,完全可以理解,它的信号处理程序将被调用,被等待系统调用阻塞的父进程也将被调用。现在,我在信号处理程序中创建了另一个进程,但从那时起,输出将变为无穷大。
输出是这样的: Hello world to Linux to UNIX ...
还有为什么Linux一次又一次地打印出来。
另外,当fork被调用时,请告诉我,我知道重复的地址空间是由父对象构成的,
-DQUOTE=yes在下面的代码中是如何工作的?
我希望第二行是ifelse(yes,yes,Learn Linux today!)
其他部分对我来说是有意义的。
来自Linux袖珍指南-丹尼尔·巴雷特著
$ cat myfile
My name is NAME and I am AGE years old.
ifelse(QUOTE,yes,Learn Linux today!)
$ m4 -DNAME=Sandy -DAGE=25 -DQUOTE=yes myfile
My name is Sandy and I am 25 years old.
Learn Linux today
错误消息是
Fatal error: Cannot redeclare class Zbcommon in /Users/apple/Sites/maemvl.com/application/libraries/Zbcommon.php on line 3
但是不存在其他重复的类。而且这条消息只在mac下显示。在linux服务器下,一切工作正常。mac和linux的代码是一样的,我不知道问题出在哪里。