µ±Ç°Î»ÖãºLinux½Ì³Ì - Linux - ÉèÖúÍÐÞ¸Ä X Window µÄÏÔʾģʽ

ÉèÖúÍÐÞ¸Ä X Window µÄÏÔʾģʽ

±¾ÎĵµµÄÖ÷ҪĿµÄÔÚÓÚ½éÉÜÊÖ¶¯ÅäÖÃLinuxÏÂXF86µÄÅäÖ÷½·¨, Ö÷ÒªÊǹØÓÚÈçºÎͨ¹ýÐÞ¸ÄXF86ConfigÎļþµ÷ÕûÏÔʾÆ÷ÔÚͼÐÎģʽϵÄÏÔʾ·Ö±æÂʺÍÑÕÉ«Éî¶È, ÒÔ¼°ÈçºÎͨ¹ý½¨Á¢·ûºÅÁ¬½ÓÐÞ¸Ä X Server£®ÁíÍâÌᵽһЩ¸úͼÐνçÃæÓйصÄÍøÓѳ£ÎÊÎÊÌ⣮ÎÄÖжÔÓÚÈçºÎʹÓÃÈí¼þ¹¤¾ß×öÏàÓ¦µÄûÓйý¶àÌá¼°, Ï£Íû»áÔÚÒÔºóµÄ°æ±¾ÖмÓÈëºÍÈí¼þÐ޸ķ½·¨Ö®¼äµÄÁªÏµºÍ²î±ð£®

Ò». X Window ¹¤×÷·½Ê½ÂÔ̸

¡¡¡¡(Èç¹ûÄãÖ»¹ØÐÄÈçºÎ¶Ô X Widow ½øÐÐÉèÖÃ, ¿ÉÒÔÌø¹ýÕâÒ»½Ú. Ö»ÊÇÀí½âÕâÒ»½ÚËù½²µÄ֪ʶ¶ÔÓÚÀí½âÏÂÃæµÄ¸÷ÉèÖò½ÖèÓÐÒ»¶¨°ïÖú)

¡¡¡¡X Window µÄ¹¤×÷·½Ê½¸ú Microsoft Windows ÓÐ×ű¾ÖʵIJ»Í¬£®MS Windows µÄͼÐÎÓû§½çÃæ (GUI) ÊǸúϵͳ½ôÃÜÏàÁªµÄ. ¶ø X Window Ôò²»ÊÇ, Ëüʵ¼ÊÉÏÊÇÔÚϵͳºËÐÄ (kernel) µÄÉÏÃæÔËÐеÄÒ»¸öÓ¦ÓóÌÐò£®

¡¡¡¡X Window µÄÔËÐзÖΪËIJã. ×îµ×²ãµÄÊÇ X Server(·þÎñÆ÷), ÌṩͼÐνçÃæ µÄÇý¶¯, Ϊ X Window Ìṩ·þÎñ£®ÉÏÃæµÄÒ»²ãÊÇÓÃÓÚÍøÉÏͨÐŵÄÍøÂçЭÒé -- X ÍøÂçЭÒ飬Õⲿ·ÖʹԶ³ÌÔËÐÐ X Window ³ÉΪ¿ÉÄÜ£®Ö»ÐèÒªÔÚ·þÎñÆ÷ÉÏÔËÐÐÒ»¸ö X Server, ¶ø¿Í»§»ú (Client) ÉÏÔËÐиüÉÏÒ»²ãµÄ³ÌÐò, Ôò¿ÉÒÔʵÏÖ X Widow µÄ Ô¶³ÌÔËÐУ®ÔÙÍùÉϵÄÒ»²ãÊdzÆ×÷ Xlib µÄµÍ²ãº¯Êý½Ó¿Ú, ½éÓÚÍøÂçºÍºÍ»ù´¡ÏµÍ³Óڽϸ߲ãµÄ³ÌÐòÖ®¼ä£®Ó¦ÓóÌÐòµÄʵÏÖÊÇͨ¹ýµ÷ÓÃÕâÒ»²ãµÄº¯ÊýʵÏֵģ®×²ã ¾ÍÊǹÜÀí´°¿ÚµÄ´°¿Ú¹ÜÀíÆ÷ÁË, Ò²¾ÍÊÇÒ»°ãËù˵µÄ WM (Window Manager)£®ÔÚÕâÒ»²ãµÄÈí¼þÊÇÓû§¶¼±È½Ï³£½Ó´¥µÄ, ±ÈÈç fvwm, AfterStep, Enlightment ÒÔ¼°WindowMaker µÈµÈ£®

¡¡¡¡´ÓÉÏÃæµÄ½éÉÜÀ´¿´, X Window µÄÔËÐÐÊÇÒ»ÖÖ¿Í»§»ú/·þÎñÆ÷(Client/Server)µÄģʽ, ·þÎñÆ÷ÓÃÓÚÏÔʾ¿ÍÔ˵ÄÓ¦ÓóÌÐò, ÓÖ±»³ÆΪÏÔʾ·þÎñÆ÷(Display Server)£®ÏÔʾ·þÎñÆ÷λÓÚÓ²¼þºÍ¿Í»§»úÖ®¼ä, Ëü¸ú×ÙËùÓÐÀ´×ÔÊäÈëÉ豸±ÈÈç¼üÅÌ¡¢Êó±êµÄ ÊäÈ붯×÷, ¾­¹ý´¦Àíºó½«ÆäËͻؿͻ§»ú£®ÕâÑù, ʹÓû§ÉõÖÁ¿ÉÒÔÔÚ MSWindows µÄ»úÆ÷ÉÏÔËÐÐ X Client, ½ØÈ¡²¢´«ËÍÓû§µÄÊäÈë, Ö»Êǽ« X Window µÄÆÁÄ»Êä³öÏÔʾÔÚÓû§µÄÆÁÄ»ÉÏ£®¿Í»§»úµÄÊäÈëºÍÊä³öϵͳ¸ú X ·þÎñÆ÷Ö®¼äµÄͨÐŶ¼ÊÇ×ñÊØ X ЭÒéµÄ£®

¡¡¡¡ÓÉÓÚ±¾ÎĵµµÄÖ÷ҪĿµÄÔÚÓÚ½éÉÜÈçºÎÉèÖÃ, Òò´Ë¶Ô X Window ²»ÔÙ×÷½øÒ»²½µÄ½éÉÜ£®¸üÏêϸµÄ×ÊÁÏ¿ÉÒԲο¼ÓÐ¹ØµÄ HOWTO, man Ò³µÈµÈ£®

¶þ. ¹ØÓÚ X Window µÄÉèÖÃ

¡¡¡¡1. X Server

¡¡¡¡ÔÚ Linux ÏÂ, ÕâЩ·þÎñÆ÷µÄ³ÌÐòÊÇ´æ·ÅÔÚ /usr/X11R6/bin/ ÏÂÃæ, ²¢ÇÒ¶¼ÓÉ XF86_ ´òÍ·, Ò»°ãÀ´Ëµ, »áÌṩµ¥ÏÔ Mono, ±ê×¼ VGA ºÍ SVGA µÄÇý¶¯, ·Ö±ðÃüÃûΪ: XF86_Mono, XF86_VGA16 ºÍ XF86_SVGA, ÁíÍâ¿ÉÄÜ»¹»áÓÐ S3 ºÍÆäËûÒ» Щ´øÓÐͼÐμÓËÙ¹¦ÄܵÄÏÔ¿¨µÄÇý¶¯£®ÏÂÃæÊÇ×÷Õß±¾ÈË»úÆ÷ÉÏÔËÐÐµÄ RedHat Linux 6.1 ÖÐËù´øÓÐµÄ X Server Çý¶¯:

¡¡¡¡XF86_3DLabs ¡¡¡¡¡¡XF86_Mono ¡¡¡¡¡¡XF86_I128 ¡¡¡¡¡¡XF86_VGA16

¡¡¡¡XF86_P9000¡¡¡¡¡¡¡¡XF86_8514 ¡¡¡¡¡¡XF86_Mach32 ¡¡¡¡XF86_S3

¡¡¡¡XF86_W32¡¡¡¡¡¡¡¡¡¡XF86_AGX¡¡¡¡¡¡¡¡XF86_Mach64 ¡¡¡¡XF86_S3V XF86_

¡¡¡¡FBDev¡¡¡¡¡¡¡¡ ¡¡¡¡XF86_Mach8¡¡¡¡¡¡XF86_SVGA

¡¡¡¡Èç¹ûÄãµÄ /usr/X11R6/bin ÏÂÃæûÓÐÉÏÃæij¸öÎļþ»òÕ߶àÁËij¸öÎļþ, ²»±ØÔÚ Òâ, ÕâÖ÷Òª¾ö¶¨ÓÚÄãµÄ»úÆ÷µÄÓ²¼þ£®Æäʵһ°ãÖ»ÐèÒª¸ú×Ô¼ºÓ²¼þÏàÅäÌ×µÄÇý¶¯¼´¿É£¬±ÈÈç×÷ÕßÕýÔÚʹÓõĻúÆ÷ÉÏʹÓõÄÊÇ 3D Lab Permedia II µÄоƬµÄÏÔʾ¿¨, Òò´ËÖ»ÓÐ XF86_3DLabs ÊÇÓÐ×÷Óõģ®

¡¡¡¡Èç´ËÖ®¶àÖÖÀàµÄÏÔʾÊÊÅäÆ÷Çý¶¯³ÌÐò, ϵͳµ±È»ÐèÒªÒ»¸ö¹Ì¶¨ºÍͳһµÄ·½·¨È¥·ÃÎÊËü, Ò»°ã˵À´, ϵͳÊÇʹÓÃÒ»¸öÃûΪ X µÄ·ûºÅÁ¬½ÓÈ¥·ÃÎʾßÌåµÄ X Server µÄ£®Õâ¸ö X ҲͬÑùÊÇ´æÔÚÓÚ /usr/X11R6/bin/ Ŀ¼ÖÐ, ¿ÉÒÔʹÓÃÈçÏÂÃüÁî´òÓ¡ËûµÄ¾ßÌåÖ¸Ïò:

¡¡¡¡ls -l /usr/X11R6/bin/X

¡¡¡¡µÃµ½µÄ½á¹ûÈç:

¡¡¡¡lrwxrwxrwx¡¡¡¡ 1 root ¡¡root ¡¡¡¡8 Dec 14 03:40 /usr/X11R6/bin/X -> XF86_3DLab

¡¡¡¡Ç°ÃæµÄÊôÐÔ ""lrwxrwxrwx"" ÖеÚÒ»¸ö×Öĸ l ±íʾËüÊÇÒ»¸öÁ¬½Ó, ÔÚ×îºóÓɼýÍ·Ö¸³öËüËùÖ¸ÏòµÄ¾ßÌåÄ¿±ê£®

Ã÷°×ÁËÕâ¸ö, ÔÚÒÔºóÐèÒª¸ü»» X Server µÄʱºò¾Í¿ÉÒÔͨ¹ý¸Ä±äÕâ¸öÁªÏµÀ´ÊµÏÖÁË, ¾ßÌåÃüÁîÈçÏÂ:

¡¡¡¡ln -sf /usr/X11R6/bin/X??????? /usr/X11R6/bin/X

¡¡¡¡ÆäÖÐÎʺŴú±íµÄ×Öĸ¸ù¾Ý¾ßÌåÇé¿ö¾ö¶¨£®ÓÐЩʱºò, ÓÉÓÚÕâ¸öÁ¬½Ó²»ÕýÈ·, µ¼ÖÂÎÞ·¨ÔËÐÐ X Window, Õâʱ¿ÉÒÔʹËüÖ¸Ïò XF86_VGA16, ʹÓà 16 É«µÄ VGA ģʽ½øÈë X Window, ×¢ÒâÈç¹ûÐèÒªÔËÐÐ XF86Setup ³ÌÐò (ÊǸöͼÐνçÃæµÄ X Window ÅäÖù¤¾ß³ÌÐò), ÄÇôÕâ¸ö XF86_VGA16 Çý¶¯Ò»¶¨Òª´æÔÚ, ÕâÊÇÓÉÓÚ¸ÃÇý¶¯ËùÌṩµÄÏÔʾģʽÊÇÒ»°ãÏÔʾ¿¨ºÍÏÔʾÆ÷¶¼Ö§³ÖµÄ, ¹Ê¸ÃÅäÖóÌÐòʹÓÃ´Ë X Server ΪÇý¶¯£®µ±Óû§µÄÏÔ¿¨ÊDZȽÏÌØÊâµÄÐͺÅʱ, ÐèҪװÌض¨µÄÇý¶¯³ÌÐò, Ò²ÐèÒª×÷´Ë¹¤×÷£®

¡¡¡¡Çý¶¯³ÌÐòµÄ»ñµÃÓжàÖÖ;¾¶, Ò»°ãµÄ Linux ·¢Ðа汾¶¼ÌṩÁ˷ḻµÄÇý¶¯³ÌÐò, ¿ÉÒÔÂú×ã´ó²¿·ÖÒªÇó, ±È½ÏÌØÊâµÄÇý¶¯³ÌÐò, ¿ÉÒÔÔÚÍøÉÏ»ñµÃ£®µ±È»ÏÖÔÚ Linux ¶ÔÓ²¼þµÄÖ§³Ö»¹²»ÊǺÜÍêÉÆ, µ«ÕâÒѾ­³¬³öÁ˱¾ÎĵµµÄ·ÃÎÊ, ²»ÔÚ×÷¸ü¶àµÄ±íÊö£®

¡¡¡¡2. ÏÔʾģʽ

¡¡¡¡ÏÔʾģʽ°üÀ¨·Ö±æÂÊ, ɨÃèƵÂÊ, É«ÉîµÈµÈ£®ÕâÒ²ÊÇÍøÓÑÔÚÏÔʾ·½ÃæÌáÎÊ×î¶àµÄÒ»¸öÎÊÌ⣮¶ÔÓÚÏÖÔÚµÄÏÔʾ¿¨ºÍÏÔʾÆ÷, Ò»°ã¶¼¿ÉÒÔʹÓà 1024 x 768 x 16 bit É«µÄÏÔʾģʽ. µ±È»±£ÏÕÆð¼û, ÔÚʹÓÃÏÂÃæËùÐðÊöµÄ·½·¨ÉèÖÃÄúËùʹÓõÄÏÔʾģʽµÄʱºò, ÇëÈ·¶¨ÄúµÄÏÔʾ¿¨ºÍÏÔʾÆ÷Äܹ»´ïµ½¸ÃģʽµÄÒªÇó, ·ñÔò¿ÉÄÜ»áÓÐËð»µÓ²¼þµÄΣÏÕ£®

¡¡¡¡ÔÚ¸÷·¢Ðа汾ÖÐ, ¶¼»áÌṩһЩÉèÖà X Window µÄ¹¤¾ßÈí¼þ, Èç Xconfigurator, XF86Setup, XF86Config µÈµÈ, ÕâЩ³ÌÐòÎÞÒ»ÀýÍâµÄÊÇÌṩÁËÒ»¸öÐÞ¸Ä X Window µÄ ÅäÖÃÎļþ XF86Config µÄ¼ò±ã·½·¨. µ±È»Ê¹ÓÃÆðÀ´±È½Ï·½±ã, µ«ÊǶÔÓÚһЩÐèÒªÁé»î µ÷ÕûµÄ³¡ºÏ¾Í²»ÊǷdz£ÊʺÏ, ÐèÒªÊÖ¶¯µ÷ÕûÅäÖÃÎļþÖеIJÎÊý´ïµ½×îºÃЧ¹û. Äú²»±Ø Ò»¶¨ÕâÑù×ö, ÕâÀïÖ»ÊǽéÉÜÕâÑùÒ»ÖÖ·½·¨, ʹÄú¿ÉÒÔÔÚÓÐÒÉÎʵÄʱºò·½±ãµØ½â¾ö.

¡¡¡¡Ò»°ãÕâ¸öÎļþÊÇ´æÔÚÓÚ /usr/X11R6/lib/X11/ Ŀ¼ÏÂ, ÔÚ /etc »òÕß /etc/X11 Ŀ¼ÖÐÓÐËüµÄÒ»¸ö·ûºÅÁ¬½Ó. ËüÊÇÒ»¸öÎı¾Îļþ, ¿ÉÒÔʹÓà vi ¶ÔËü½øÐÐÐÞ¸Ä. ÏÂÃæ ¶Ô¸ÃÎļþÖи÷²¿·ÖµÄ×÷ÓÃ×ö¸öÏêϸµÄ½éÉÜ. (ÈçÓÐÒÅ©, »¶Ó­Ìá³ö)

¡¡¡¡ÔÚÕâ¸öÎļþÖÐÓÐÕâÑù¼¸¸ö¸ÅÄî: ¶Î (Section) ºÍ×ӶΠ(Subsection). ÿ¸ö¶Î»ò ×Ӷηֱð¸ø³öÁ˲»Í¬µÄ²ÎÊý, ¸ñʽ·Ö±ðΪ:

¡¡¡¡Section

¡¡¡¡......

¡¡¡¡Endsection

¡¡¡¡Section Subsection

¡¡¡¡......

¡¡¡¡Endsubsection

¡¡¡¡Endsection

¡¡¡¡Ò»¸öÍêÕûµÄÅäÖÃÎļþÖаüº¬¾Å¸ö¶Î, ·Ö±ðÊÇ File (Îļþ), Modules (¶¯Ì¬Á´½Ó¿â) SeverFlag (·þÎñÆ÷ÌØÊâ±êÖ¾), Keyboard (¼üÅÌ), Pointer (ָʾÉ豸, Ò»°ãÊÇÊó±ê), Monitor (¼àÊÓÆ÷), Device (ÏÔʾÊÊÅäÆ÷, ¼´ÏÔ¿¨), Screen (ÆÁÄ»ÉèÖÃÐÅÏ¢), XInput (X ÊäÈë).

¡¡¡¡File¶Î: ÕâÒ»¶Îָʾ³öһЩÔËÐÐ X Window ËùÐèÒªµÄÎļþµÄλÖÃ, ±ÈÈçÑÕÉ«µÄ±ð ÃûÎļþ rgb.txt (×¢ÒâÕâÀïÊDz»ÐèҪд³ö¸ÃÎļþµÄÀ©Õ¹Ãû), ±ÈÈç:

¡¡¡¡RgbPath ""/usr/X11R6/lib/X11/rgb""

¡¡¡¡Èç¹ûÄú¿´¹ý /usr/X11R6/lib/X11/rgb.txt µÄÄÚÈÝ, Äã»áºÜÈÝÒ×µÄÖªµÀËüÊÇ ¸ÉʲôÓõÄ. ÓÐÁËËü, Äã¿ÉÒÔʹÓà red1 ´ú±í RGB ÑÕÉ«Öµ 255 0 0 µÈµÈ.

¡¡¡¡½ÓÏÂÀ´ÊÇ×ÖÌåÎļþµÄ·¾¶, ÕâÀïµÄÉèÖý«Ó°Ïìµ½ÖÐÎÄ×ÖÌåµÄÊä³ö. ÕâÀï¶Ô· ¾¶µÄÉèÖÿÉÒÔÊǶà¸ö, ÀýÈçÏÂÃæµÄÕâÑù:

¡¡¡¡FontPath ""unix/:-1""

¡¡¡¡FontPath ""/usr/share/zhfont/X11:unscaled""

¡¡¡¡FontPath ""/usr/share/zhfont/TTF""

¡¡¡¡FontPath ""/usr/X11R6/lib/X11/fonts/local""

¡¡¡¡FontPath ""/usr/X11R6/lib/X11/fonts/chinese""

¡¡¡¡FontPath ""/usr/X11R6/lib/X11/fonts/TTF""

¡¡¡¡FontPath ""/usr/X11R6/lib/X11/fonts/Type1""

¡¡¡¡FontPath ""/usr/X11R6/lib/X11/fonts/Speedo""

¡¡¡¡FontPath ""/usr/X11R6/lib/X11/fonts/misc""

¡¡¡¡FontPath ""/usr/X11R6/lib/X11/fonts/75dpi""

¡¡¡¡FontPath ""/usr/X11R6/lib/X11/fonts/100dpi""

¡¡¡¡ÔÚʹÓÃÒ»¸ö×ÖÌåĿ¼֮ǰ, ÐèҪʹÓà mkfontdir ÃüÁî°ÑÒ»Ìõ·¾¶ÖеÄ×ÖÌå ×÷¸öÁбí, ÔÚ¸ÃĿ¼ÖÐÉú³É font.dir ×÷Ϊ¶Ô×ÖÌåµÄË÷Òý, Èç:

¡¡¡¡mkfontdir /usr/X11Ry/lib/X11/fonts/100dpi

¡¡¡¡¾ßÌå¸ÃÃüÁîµÄÓ÷¨, ÇëʹÓà man ÃüÁî²é¿´Æä man page (ÊÖ²áÒ³), »òÕß»á ÔÚ±¾ÎĵµµÄºóÐø°æ±¾ÖÐÌṩÏêϸµÄ˵Ã÷.

¡¡¡¡¼ÈÈ» Unix µÄ·þÎñÖÐÓÐÒ»Ïî X Font Server, µ±È» X11R6 Ò²ÔÊÐí X ´Ó×ÖÌå ·þÎñÆ÷ (Font Server) ÏÂÉ趨×ÖÐΣ¬ÀýÈç¡¡FontPath ""/usr/X11R6/lib/X11/fonts/misc/,tcp/DarkEagle:7100"" ¡¡¾ÍÊÇÓÃÀ´¸æÖª X server ÔÚ±¾¶ËµÄ /usr/X11R6/lib/X11/fonts/misc ·¾¶ÖÐ, tcp/zok Õâ¸öÖ÷»ú£¬port Ϊ 7100 µÄµØ·½ÕÒ×ÖÐÎ.

¡¡¡¡»¹ÓеÄÒ»¸ö·¾¶ÊÇÄ£¿éÎļþ·¾¶. Ä£¿é·¾¶ÓÃÓÚÖ¸¶¨ËùÐèÒªµÄ¶¯Ì¬Á´½Ó¿âµÄ ·¾¶, ¿ÉÒÔÊÇÓöººÅ·Ö¿ªµÄ¶à¸ö·¾¶, Ò²¿ÉÒÔÊǶà¸öÒÔ ModulePath ¿ªÍ·µÄ ÐÐ. Ò»°ãÕâ¸öÉèÖò»ÊDZØÐëµÄ, ºÜ¶àʱºò¿ÉÄܲ¢²»ÄÜÕÒµ½Õâ¸öÉèÖÃ.

¡¡¡¡ÐèҪ˵Ã÷µÄÊÇ, ÕâÀï¶Ô¸÷¸ö·¾¶µÄÉèÖöÔ˳ÐòÊÇÎ޹صÄ.

¡¡¡¡Modules ¶Î: Õâ¸ö¶ÎÖ¸Ã÷µÄÊÇÐèÒª¼ÓÔصĶ¯Ì¬Ä£¿éÎļþ. µ±È»µ±Ç°µÄ¶¯Ì¬Ä£¿éÖ» ÊÇ˵Ã÷ÁËÐèÒª¼ÓÔØµÄ XInput É豸, ²¢ÇÒÖ»ÔÚÉÙÊýÆä¸öϵͳ (ÏÖÔÚÊÇ Linux Elf, FreeBSD 2.x ºÍ NetBSD 1.x, ±¾×ÊÁÏÕª×Ô RedHat 6.1 ÖÐ XF86Config µÄ man Îĵµ) Öб»Ö§³Ö. ÏÂÃæÊÇÔÚ±¾¶ÎÖпÉÓõÄÉèÖÃÏî:

¡¡¡¡Load ""Ä£¿éÃû""

¡¡¡¡ÕâÌõÖ¸Áîָʾ·þÎñÆ÷¼ÓÔØÓÉÄ£¿éÃûÖ¸¶¨µÄÄ£¿é. Èç¹û¸ÃÄ£¿éûÓÐʹÓà ÍêÕû·¾¶Ãû, ·þÎñÆ÷½«ÔÚÉÏÃæÎļþ¶ÎÖÐÓÉ ModulePath Ö¸¶¨µÄ·¾¶ÖÐ ½øÐÐËÑË÷. ÏÂÃæÊÇһЩ¿ÉÓõÄÄ£¿é:

¡¡¡¡xf86Elo.so

¡¡¡¡xf86MuTouch.so

¡¡¡¡xf86Jstk.so

¡¡¡¡xf86Wacom.so

¡¡¡¡xf86Summa.so

¡¡¡¡xf86AceCad.so

¡¡¡¡xf86Calcomp.so

¡¡¡¡xf86Dial.so

¡¡¡¡ÔÚһЩϵͳÖл¹¿ÉÒÔ°Ñ PEX ºÍ XIE µÄÀ©Õ¹×÷Ϊģ¿éʹÓÃ, ÈçÏÂ:

¡¡¡¡pex5.so

¡¡¡¡xie.so

¡¡¡¡ServerFlag ¶Î: Õâ¸ö¶ÎÖ¸Ã÷ÁËһЩ¾ßÌåµÄ²ÎÊý, ÈçÏÂ:

¡¡¡¡NoTrapSignals Õâ¸ö±êÖ¾½«Ê¹µ÷ÊÔÐÅºÅ¶Ô X Server ²»Æð×÷ÓÃ. µ÷ÊÔÐźŻáʹ X Server ""ת´¢ºËÐÄ"", °ÑÄÚ´æÖÐÓÐ¹ØµÄ X Server µÄÐÅÏ¢´æ´¢ µ½Ó²ÅÌÉÏ, ¼´ËùνµÄ ""Core dump"". ÕâÑùµÄÄ¿µÄÊDZãÓÚ¶Ô X Server ½ø Ðе÷ÊÔ. Ò»°ãÀ´Ëµ, ³ý·ÇÊÇX µÄ³ý´íÈËÔ±, ·ñÔòÎÒÃÇÊÇÓò»µ½Õâ¸öÑ¡ ÏîµÄ.

¡¡¡¡DontZap Õâ¸ö±êÖ¾½«Ê¹ X Server ÊÕµ½ ""Ctrl + Alt + Back Space"" ¼ü ×éºÏ·¢³öµÄÐźÅʱ *²»* Í£Ö¹¹¤×÷. µ±È»Ò»°ãÊDz»½¨ÒéʹÓõÄ.

¡¡¡¡DontZoom Õâ¸ö±ê־ʹ X Window ²»ÄÜÔÚ¸÷ÖÖͼÐÎģʽ֮¼ä½øÐÐÇл». X Window µÄȱʡ״̬ÊÇÔÚÓû§É趨Á˶à×é·Ö±æÂÊ, Ë¢ÐÂƵÂʺÍÑÕÉ«µÄ×é ºÏµÄÇé¿öÏÂ, ÔËÐÐ X Window µÄ¹ý³ÌÖпÉÒÔͨ¹ý Ctrl + ''+'' ºÍ Ctrl + ''-'' Á½×é¼üµÄ×éºÏÔÚ¶à¸öͼÐÎģʽ֮¼ä½øÐж¯Ì¬Çл».

¡¡¡¡Keyboard ¶Î: Õâ¸ö¶ÎÖ¸Ã÷ÁË X Window »·¾³ÖÐËùʹÓõļüÅÌÓ³ÉäÒÔ¼°ÆäËûһЩ²Î Êý. ÈçÏÂÊÇ×÷ÕߵļüÅÌÅäÖÃ:

¡¡¡¡¡¡¡¡Section ""Keyboard""

¡¡¡¡¡¡¡¡Protocol ""Standard""

¡¡¡¡¡¡¡¡# ÕâÀïµÄÈ¡ÖµµÄ¿ÉÄÜÖµÊÇ ""Standard"" ºÍ ""Xqueue""

¡¡¡¡¡¡¡¡¡¡¡¡AutoRepeat 500 5

¡¡¡¡¡¡¡¡# Ö¸¶¨ÑÓ³Ù (delay) ºÍ ËÙÂÊ (rate), ÕâÀïµÄÉ趨·Ö±ðΪ 500 ºÍ 0.

¡¡¡¡¡¡¡¡# ×¢Òâ: Õâ¸öÉèÖò¢·Ç¶ÔËùÓеÄƽ̨¶¼ÊÊÓÃ

¡¡¡¡¡¡¡¡¡¡¡¡LeftAlt Meta

¡¡¡¡¡¡¡¡¡¡¡¡RightAlt Meta

¡¡¡¡¡¡¡¡# ʹÓÃ×óÓÒ Alt ¼ü×÷ Meta ¼ü.

¡¡¡¡¡¡¡¡# ÕâÀïµÄ¿ÉÄÜֵΪ ""Meta"", ""Compose"", ""ModeShift"", ""ModeLock"",

¡¡¡¡¡¡¡¡#¡¡""ScrollLock"", ""Ctrl""

¡¡¡¡¡¡¡¡¡¡ScrollLock Compose

¡¡¡¡¡¡¡¡¡¡RightCtrl Control

¡¡¡¡# ÕâÁ½ÐеĿÉÄÜֵͬÉÏÃæËùÊö

¡¡¡¡¡¡¡¡XkbKeycodes ""xfree86""

¡¡¡¡¡¡¡¡XkbTypes ""default""

¡¡¡¡¡¡¡¡XkbCompat ""default""

¡¡¡¡¡¡¡¡XkbSymbols ""us(pc101)""

¡¡¡¡¡¡¡¡XkbGeometry ""pc""

¡¡¡¡¡¡¡¡XkbRules ""xfree86""

¡¡¡¡¡¡¡¡XkbModel ""pc101""

¡¡¡¡¡¡¡¡XkbLayout ""us""

¡¡¡¡EndSection

¡¡¡¡Õâ¶ÎÉèÖóöÁË XkbLayout »áÓ°Ïì¼üÅ̸÷°´¼üµÄ±íÏÖÒÔÍâ, ÆäËû¶¼Ö»ÊÇһЩ¹¦ ÄÜÉϵÄÉèÖÃ, ûÓÐÌ«´óÓ°Ïì. ÔÚ¿ØÖÆ̨ģʽÏÂ, ¿ÉÒÔͨ¹ý Alt + F? ÔÚ¸÷Ðé ÄâÖն˼ä½øÐÐÇл», ÔÚ X Widow »·¾³ÏÂ, ±ØÐëʹÓà Ctrl + Alt + F? ²ÅÄÜ ¹»´ïµ½ÕâһЧ¹û.

¡¡¡¡¶ÔÓÚ±¾¶ÎÒÔ¼°ÏÂÃæµÄ Pointer ¶Î, ÓÉÓÚ±¾È˾­ÑéºÍËùÖªµÄÏÞÖƲ»ÄÜÍêÕûµØ½² Êö, »áÔÚ²»¾ÃÒÔºó×÷½øÒ»²½²¹³ä. ²¢ÔÚ´ËÏò¸÷λ±íʾǸÒâ.

¡¡¡¡Pointer ¶Î: ÈçÇ°ËùÊö, Õâ¸ö¶ÎÊÇÉèÖÃÊó±êµÈÉ豸µÄ. ÈçϾÙÀýÊÇ×÷ÕßµÄÊó±êÉè ÖÃ:

¡¡¡¡¡¡¡¡Section ""Pointer""

¡¡¡¡¡¡¡¡Protocol ""PS/2""

¡¡¡¡¡¡¡¡Device ""/dev/mouse""

¡¡¡¡¡¡¡¡# ÏÂÃæÕâÁ½¸ö²ÎÊýÊÇһЩ²ÉÓôż¼ÊõµÄÊó±êËùÐèÒªµÄ, Ò»°ã×¢Ê͵ô»òÕßɾ³ý

¡¡¡¡¡¡¡¡# BaudRate 9600

¡¡¡¡¡¡¡¡# SampleRate 150

¡¡¡¡¡¡¡¡# ÏÂÃæµÄÁ½¸ö²ÎÊýÊÇΪ·½±ãʹÓÃË«¼üÊó±êµÄÓû§Ê¹ÓÃÈý¼üÊó±ê¶øÉèÖõÄ

¡¡¡¡¡¡¡¡# µ±Ñ¡ÔñÁËÐéÄâÈý¼üµÄʱºò, ¿ÉÒÔͨ¹ýͬʱµã»÷Êó±ê×óÓÒ¼üÍê³ÉÖмüµÄ¹¦ÄÜ

¡¡¡¡¡¡¡¡Emulate3Buttons

¡¡¡¡¡¡¡¡Emulate3Timeout 50

¡¡¡¡¡¡¡¡# ÏÂÃæÕâ¸ö²ÎÊýÒ²ÊÇΪ´Å½ðÊôÊó±êËùÉ趨µÄ

¡¡¡¡¡¡¡¡# ChordMiddle EndSection

¡¡¡¡Mornitor ¶Î: Õâ¸ö¶ÎµÄÉèÖÃÐèÒª²Î¿¼ÏÔʾÆ÷µÄÓû§ÊÖ²á, ÒÔ±ã»ñµÃÏà¹ØµÄÊý¾Ý, ·ÀÖ¹Ëð»µÏÔʾÆ÷. Õâ¸ö¶ÎÊÇÎҸĶ¯×î¶àµÄ, ÏÖ¾ÙÀýÃèÊöÈçÏÂ:

¡¡¡¡¡¡¡¡Section ""Monitor""

¡¡¡¡¡¡¡¡Identifier ""Samsung SyncMaster 500s/500Ms""

¡¡¡¡¡¡¡¡# ¼àÊÓÆ÷±êʾ·û, ÔÚÏÂÃæ Screen ¶ÎÓÃ×÷±êʾ

¡¡¡¡¡¡¡¡# Õâ¸ö²ÎÊýµÄÉèÖöÔÏÔʾÆ÷µÄģʽûÓÐÖ±½ÓÓ°Ïì, Ö»Òª±£Ö¤¸úºóÃæ

¡¡¡¡¡¡¡¡# Screen ¶ÎµÄÒýÓñ£³ÖÒ»Ö VendorName ""Unknown""

¡¡¡¡¡¡¡¡# Éú²ú³§¼ÒµÄÃû³Æ ModelName ""Unknown""

¡¡¡¡¡¡¡¡# ÖÆÔìºÍÐͺŵıêʾ, ²¢²»ÖØÒª # ÔÚʹÓà Xconfigurator µÄʱºò, Èç¹û²»ÌṩÉÏÊöÖµ, ÔòÌîд

¡¡¡¡¡¡¡¡# ""Unknown""

¡¡¡¡¡¡¡¡# ÏÂÃæÕâÁ½¸ö²ÎÊýÔÚÉèÖÃÏÔʾģʽÉÏÀ´ÊéŶÊDZȽÏÖØÒªµÄ.

¡¡¡¡¡¡¡¡# HorizSync ÊÇˮƽɨÃèƵÂÊ, kHz Ϊµ¥Î».

¡¡¡¡¡¡¡¡HorizSync 50-60

¡¡¡¡¡¡¡¡# VertRefresh ÊÇ´¹Ö±É¨ÃèƵÂÊ, Hz Ϊµ¥Î»

¡¡¡¡¡¡¡¡VertRefresh 80-100

¡¡¡¡¡¡¡¡# ÉÏÃæÕâÁ½¸ö²ÎÊý¿ÉÒÔÊÇÁоٵÄÐÎʽ, Ò²¿ÉÒÔÊÇ·¶Î§µÄÐÎʽ.

¡¡¡¡¡¡¡¡# ±ÈÈç: ÁоÙ: 75 85 100

¡¡¡¡¡¡¡¡# ¡¡¡¡¡¡·¶Î§: ÈçÉÏËùÊö

¡¡¡¡¡¡¡¡# ½ÓÏÂÀ´ÊÇģʽµÄÃèÊöÁË, Èç¹ûÄúʹÓõÄÊÇ TurboLinux »òÕßÊÇ

¡¡¡¡¡¡¡¡# RedHat Linux, ÏÂÃæµÄģʽÁÐ±í½«»á·Ç³£µÄÍêÕû. µ« Slackware

¡¡¡¡¡¡¡¡# ûÓÐÌṩÍêÕûµÄÁбí, ÕâЩÊý¾Ý¿ÉÒÔÔÚÏÔʾÆ÷µÄ˵Ã÷ÊéÉϼûµ½.

¡¡¡¡¡¡¡¡# Ϊ½ÚÊ¡¿Õ¼ä, ÕâÀï½öÁоÙÒ»Ìõ

¡¡¡¡¡¡¡¡# 800x600 @ 85 Hz, 55.84 kHz hsync

¡¡¡¡¡¡¡¡Modeline ""800x600"" 60.75 800 864 928 1088 600 616 621 657 -HSync -VSync

¡¡¡¡¡¡¡¡# »òÕßд³ÉÒÔÏÂÐÎʽ, Ϊ Slackware ²ÉÓÃ

¡¡¡¡¡¡¡¡# Mode ""800x600""

¡¡¡¡¡¡¡¡# DotClock 45

¡¡¡¡¡¡¡¡# HTimings 1024 1048 1208 1264

¡¡¡¡¡¡¡¡# VTimings 768 776 784 817

¡¡¡¡¡¡¡¡# Flags ""Interlace""

¡¡¡¡¡¡¡¡# EndMode

¡¡¡¡Endsection

¡¡¡¡ÕâÀïÀ´½²½²ÉÏÃæµÄ ModeLine µÄº­Òå. ¾ÍÏóµÚ¶þÖÖÐÎʽËùÃèÊöµÄÄÇÑù, ÕâЩ ²ÎÊýÊÇʹÓà ""800x600x85Hz"" ģʽËùÐèÒªµÄ. ÒªÉèÖÃÏÔʾΪÕâÖÖģʽ, Ê×ÏÈ Òª±£Ö¤Ë®Æ½É¨ÃèƵÂʺʹ¹Ö±É¨ÃèƵÂÊÒªÅäºÏºÃ, ¼´ VertRefresh µÄ·¶Î§»òÁÐ ¾ÙÖµÖÐÒª°üÀ¨ 85 Hz, ¶ø HorizSync µÄÖµÐèÒª°üÀ¨ 55.84 kHz. ÕâЩ¶¼¿ÉÒÔ Í¨¹ýÊÖ¹¤µ÷Õû. È»ºóÐèÒª¿´¿´´òµãƵÂÊ. ÓÐЩÏÔʾÆ÷ÓÐÕâ¸ö²ÎÊýÌṩ, ¶øÁí ÍâһЩ¿ÉÄܼì²â²»µ½, ÕâʱÐèÒª²é¿´ÊÖ²á. ´òµãƵÂʵÄÖµ¿ÉÒÔ²»Ìṩ, Õâµã ÔÚÏÂÃæ»áÓн²Êö.

¡¡¡¡×¢Òâ, ÕâÀïµÄ ""800x600"" ¾ÍÊÇÕâÖÖģʽµÄ±êʾ. µÈµ½ÏÂÃæ̸µ½Ä£Ê½µÄÉèÖÃ˳ Ðò¾Í»áÇå³þ X Window ÊÇÈçºÎÉèÖõÄÁË.

¡¡¡¡Device ¶Î: ÕâÀïÖ÷Òª¼Ç¼ÁËÏÔ¿¨µÄÊý¾Ý, ÈçÏ¿ÉÒÔ¿´µ½, ºÜ¼òµ¥, Ö»ÓÐÏÔ´æµÄ´ó СºÍÏÔ¿¨µÄʱÖÓƵÂÊ. Õâ¸öʱÖÓƵÂÊÊÇÓÃÀ´²úÉúÊÓƵÐźÅ, ¶øÏÔʾÆ÷µÄɨÃè ƵÂÊÒ²ÊǸù¾ÝÕâ¸öÐźŲúÉúµÄ. ËùÒÔ²»ÒªÎªÁË×·Çó¸ß·Ö±æÂʺ͸ßË¢ÐÂƵÂÊ°Ñ Ëüµ÷µÃÌ«¸ß, ·ñÔò¿ÉÄÜ»áËðÉËÏÔʾÆ÷. Ò»°ãÔÚÏÔʾÆ÷µÄ˵Ã÷ÊéÉÏ»áÓÐÕâ¸öÖµ, Èç¹ûûÓÐ, ½¨Òé²»Òª³¬¹ý 50.

¡¡¡¡Section ""Device""

¡¡¡¡¡¡¡¡Identifier ""Generic VGA""

¡¡¡¡¡¡¡¡VendorName ""Unknown""

¡¡¡¡¡¡¡¡BoardName ""Unknown""

¡¡¡¡¡¡¡¡Chipset ""generic""

¡¡¡¡¡¡¡¡# VideoRam 256

¡¡¡¡¡¡¡¡# Clocks 25.2 28.3

¡¡¡¡EndSection

¡¡¡¡×¢Òâ: ÉÏÃæËù˵µÄÁ½¸ö¶Î¶¼¿ÉÒÔ¶Ô¶à¸öÉ豸½øÐÐÃèÊö, ϵͳ»áÓà Identifier µÄÖµÇø·Ö²»Í¬µÄÉ豸.

¡¡¡¡Screen ¶Î: X Window µÄÏÔʾģʽµÄÑ¡Ôñ¾ÍÊǼǼÔÚÕâ¸ö¶ÎÖеÄ. Èç¹ûÊÇ RedHat Ôò»áÓÐËùÓÐËÄÖÖ (Mono, VGA16, SVGA, Accelerate) X Server µÄ¶Î, Èç¹û ÊÇ Slackware, Ôò¿ÉÄÜ»áÖ»ÓÐÒ»¸ö¶Î, ¾ÍÊǶÔÓ¦°²×°ÏµÍ³µÄʱºòÖ¸¶¨µÄÏÔʾ É豸µÄ. ÏÂÃæÒÔÎÒʹÓÃµÄ accel X Server ˵˵¸÷×ֶεĺ­Òå.

¡¡¡¡Section ""Screen""

¡¡¡¡¡¡¡¡Driver ""accel""

¡¡¡¡¡¡¡¡# Õâ¸ö²»ÓýâÊÍÁË°É, ÊÇ Permedia II ÏÔ¿¨, ËùÒÔʹÓüÓËÙµÄÇý¶¯

¡¡¡¡¡¡¡¡# ÕâÀïµÄ¿ÉÄÜÖµÊÇ""vga2"", ""vga16"", ""svga"", ""accel"", ¸ù¾Ý×Ô¼º

¡¡¡¡¡¡¡¡# µÄʵ¼ÊÇé¿öÉ趨. ÕâÀï¸ú Ç°Ãæ½² X Server ʱËù˵µÄ X µÄÁ¬½Ó

¡¡¡¡¡¡¡¡# Ä¿±êÓйØϵ, ÎÒÏëÕâ²»ÄÑÁ¬½Ó°É.

¡¡¡¡¡¡¡¡Device ""3DLabs|Permedia II 2D+3D""

¡¡¡¡¡¡¡¡# ÉÏÃæÖƶ¨µÄÏÔ¿¨ÅäÖÆ, Óà ""3DLabs|Permedia II 2D+3D"" ×÷Ϊ

¡¡¡¡¡¡¡¡# Identifier µÄ. µ±È»ÎÒ¿ÉÒÔʹÓÃ×Ô¼ºÏ²»¶µÄÃû×Ö, ʵ¼ÊÕâÀïÖ»ÊÇ

¡¡¡¡¡¡¡¡# ¸ö±ê¼ÇµÄ×÷ÓÃ

¡¡¡¡¡¡¡¡Monitor ""Samsung SyncMaster 500s/500Ms""

¡¡¡¡¡¡¡¡# ÕâÀïµÄ½âÊÍͬ Device, Ò²ÊÇʹÓÃÉÏÃæµÄ Identifier µÄÉ趨ֵ

¡¡¡¡¡¡¡¡Subsection ""Display""

¡¡¡¡¡¡¡¡# ÏÔʾ×Ó¶Î, ¿ÉÒÔÓжà¸ö, ·Ö±ð¶ÔÓ¦²»Í¬µÄÉ«Éî, ¼´ÏÂÃæµÄDepth

¡¡¡¡¡¡¡¡Depth 16

¡¡¡¡¡¡¡¡Modes ""800x600""

¡¡¡¡¡¡¡¡# ËùÈ¡µÄÏÔʾģʽ Õâ¸öÖµ¾ÍÊǸù¾ÝÇ°ÃæµÄ ModeLine ÉÏÃæ

¡¡¡¡¡¡¡¡# µÄ×¢ÊÍдµÄ, ¿ÉÒÔÓжà¸ö, Óÿոñ·Ö¿ª

¡¡¡¡¡¡¡¡# ÕâÀïÐèҪ˵Ã÷µÄÊÇ, X Server Ïȼì²éÕâÀïµÄ·Ö±æÂÊÉèÖÃ,

¡¡¡¡¡¡¡¡# È»ºó¸ù¾ÝÕâ¸öÉèÖúÍÉÏÃæ±êʾµÄ´¹Ö±ºÍˮƽˢÐÂƵÂʾö

¡¡¡¡¡¡¡¡# ¶¨Ê¹ÓÃÄĸö ModeLine, Èç¹ûÔÚË¢ÐÂƵÂʵķ¶Î§ÄÚÓжàÖÖ

¡¡¡¡¡¡¡¡# Mode ¿ÉÒÔÑ¡Ôñ, ÄÇô¿ÉÒÔͨ¹ýʹÓà Ctrl + ''+''/''-''½ø

¡¡¡¡¡¡¡¡# Ðж¯Ì¬Çл». ViewPort 0 0 # Õâ¸öÊÇÊÓͼµÄ×óÉϽÇ×ø±ê

¡¡¡¡¡¡¡¡# Èç¹ûÏëÓÃÐéÄâ´óСµÄÆÁÄ», ¿ÉÒÔÔÚÕâÀï¼ÓÉÏÒ»¾ä

¡¡¡¡¡¡¡¡#Virtual 1024 768

¡¡¡¡¡¡¡¡# ÕâÑùµÄ»°, ¾Í¿ÉÒÔʹÓôóÓÚµ±Ç°Êµ¼ÊÆÁÄ»µÄÐéÄâÆÁÄ»ÁË,

¡¡¡¡¡¡¡¡# ÆÁÄ»»áËæÕâÊó±êµÄÒƶ¯¶øת»». µ±È», Òª±£Ö¤ÓÐ×ã¹»µÄ

¡¡¡¡¡¡¡¡# ÏÔ´æ²ÅÐÐ, ÐéÄâµÄÆÁÄ»´óСҪ±Èʵ¼ÊµÄÉ趨´ó.. EndSubsection

¡¡¡¡¡¡¡¡# ÔÚÕâÏÂÃæ¿ÉÒÔÔÙ¼ÓÉÏ Depth ·Ö±ðΪ 8 ºÍ 24 µÄ×Ó¶Î, ¸ñʽºÍÉÏ

¡¡¡¡¡¡¡¡# ÃæÒ»Ñù.

¡¡¡¡EndSection

¡¡¡¡µ±È», Èç¹û·¢ÏÖËùÑ¡µÄÉ豸Çý¶¯¸ùʵ¼ÊµÄÓ²¼þÉ豸²»Ïà·û, »¹¿ÉÒÔÖØа²×° Çý¶¯³ÌÐò.ÈçºÎÔÚ Linux ÏÂÃæ°²×°Èí¼þ, ÎÒÏë¾Í²»ÔÙÏêϸ½éÉÜÁË. ½éÉÜÕâ·½ Ãæ֪ʶµÄ×ÊÁϺܶà.