xinit启动X Window System过程初探
到command prompt terminal的状态.
拥有帝国一切,皆有可能。欢迎访问phome.net
7)接下来,在xinitrc唤起X server后,xinit会启动xterm程序.呵呵,xterm就是X Window terminal的缩写吧.它对X server而言是一个X Clietn程序而已.要求X server建立一个视窗,会行告知X server在这个视窗中的鼠标和键盘的输入状态(Event),因而启动xterm时便会视窗执行一个shell,内定的就是bash.当指标被移至视窗之内时,xterm便准备接受输入.键盘输入会被关到xterm中的shell就如同真的终端机输入一般.而从shell本身或其副程序的输出则借着 xterm显示在视窗上,xterm也接受输入,便得你能设置不同的程序操作参数和进行文本的一些操作,比如copy或paste.对于这些操作,你可以通过在xterm中执行ps auxw命令来观察到系统执行这些命令的详细步骤. [2]以xdm/gdm来启动你的X. 上面说到了以startx来启动你的X,也可通过xdm/gdm来启动你的X来启动你的X,这正是其它一些发行版本的采用的方式.比如 Redhat是gdm,而Mandrake用kdm.一般的情况,如果你要用调整你系统的run-level.比如修改你的/etc/inittab,把 id:3:initdefault中的3改为5. 当系统以xdm/gdm来启动X Windows System.大约的步骤就是这些了: 1)执行/etc/X11/xdm/Xserver启动X出现console登录的界面(是执行/etc/X11/xdm/GiveConsole&TakeConsole所产生的) 2) 执行/etc/X11/xdm/Xsessions来启动xdm或者是gdm.如果启动的是xdm,则装入用户家目录上的配置文件,. xsession和.Xclients.如果是gdm,则装载入/etc/X11/gdm/Sesseion与.Xclients.到此为止,就会出现X 视窗的登录的界面选项. 3)gdm则会检查/etc/X11/gdm/Session目录的Session操作.比如 Fvwm,Wmaker,Default, Failsafe,Gnome,Kde与Default等.并将显示给用户选择进入那个那个X Window Manager.其实这些Sessions都是Shell Script file.如果你选择Kde,就进入KDE DeskTop environment,选择Gnome就会进入GNOME DeskTop environment了. 4)用户如果选择是的 Gnome,在输入用户名和password后,gdm GNOME Session就会找gnomerc script,$HOME/.gnomerc,如果没有这个文件,就会读会系统文件内定的GNOME resource file:/etc/X11/gdm/gnomerc,并且启动/usr/bin/gnome-session. 这就完成了一个 xdm/gdm的过程.但细心的人会发现,startx会读取$HOME/.xinitrc,而xdm/gdm为什么不会读取这个呢,它又是如何设置根视窗口背景及你的logo和X Window Manager的呢.其中的原因是xdm/gdm改用了/etc/X11/xdm/Setup_0来设置的,例如我的Mandrake90的内容大致如下: 拥有帝国一切,皆有可能。欢迎访问phome.net :0 local /usr/X11R6/bin/X -bpp 32 5) 对于使用何种X Window Manager与载入方式,并不属于Display Manager的范围.Display Manager只要负责启动各种Sessions即可.总这一句话,X Display Manager只管理sessins,想要实现更外层的工作,则可以让sessions自己去做哦. 6)如果你喜欢那种方式 Display Manager,你都可以选择嘛,修改成自己喜欢的东西.例如我的mandrake90中有/etc/X11/prefdm是目前系统内定使用的Disk Manager.你看到它是只是一个/usr/bin/gdm一个连接而已.你还可以在/etc/inittab文件中定义像下面的, 代码: #hehe,Run gdm in runlevel 5 #gdm is now for pk''''Mandrake separate server x:5:respawn:/etc/X11/prefdm -nodaemon 你自己做过你系统有的xdm/gdm的连接就可以了.(不过,我在Mandrake linux里面用的kdm,而没有装到其它的,,好像prefdmp这个文件并不连接的内容.) 这里也费话一下吧,如果你是以kdm来管理你的X的启动的,他只是sessions不同而已,我已经写了这样的一个帖子"配置kdm |
凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢! |