有关 GDM 和 startx 的差异在 linuxsir 中有好一篇很好的文章,虽说老了点但还是很有用的。地址如下: http://www.debsir.org/main/?q=node/57 。作者是 faint
TO Li Daobing 我绝对没有讽刺别人的意思。很多高手都是像你这样听别人乱说一句就走人了。我以前也被人这么说过,郁闷了好久的。刚看到 Linuxsir 上说 Fcitx 的开发停了,Yuking 就是因为类似的原因不干了,可惜了……我本人一直用 Fcitx 的。 在07-7-16,Ming Hua <[EMAIL PROTECTED]> 写道:
On Sat, Jul 14, 2007 at 04:39:33PM +0800, LI Daobing wrote: > On 7/14/07, Nickel Cobalt <[EMAIL PROTECTED]> wrote: > >在07-7-14,Ming Hua <[EMAIL PROTECTED]> 写道: > >> On Fri, Jul 13, 2007 at 03:16:38PM +0800, LI Daobing wrote: > >> > >> > 1. 解决方案 > >> > 在 $HOME/.xinitrc 中写入 > >> > xterm& > >> > exec /usr/bin/sawfish > > > >> 如果先运行 /usr/bin/sawfish &,再 exec > >> /usr/bin/xterm,有什么不妥吗? > > > >从我的实际经验来看,这么做好像跟上面没什么太大的差异。结果是一样的, > >就是多了个 xterm 而已。其他懂的朋友能不能说一下呢? > > > 进程关系不同而已, > > 第一种情况,先运行xterm,再exec sawfish,进程关系如下(-> > 标识父子关系) > bash -> startx -> xterm 变成 bash -> sawfish -> xterm > > 第二种情况 > bash-> startx -> sawfish 变成 bash -> xterm -> sawfish > 这时候你关闭xterm,bash认为startx结束了,sawfish老爸死了,投靠init进程, > 进程树(pstree)样子略有不同而已。 多谢解释。我又读了一下 "help exec" 和 exec(3) 手册页里的文档,应该是明白 这些进程之间的关系了。 但是还有一个小的地方不明白:我用 GDM,所以启动以后 x-session-manager (就 是 gnome-session) 是 gdm 的子进程,同时 Xorg 是和 x-session-manager 平行 的,也是 gdm 的子进程。如果在 tty 用 startx 启动的话,Xorg 是谁的子进程 呢? Ming 2007.07.16 -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]