Linux XFree86 HOWTO ¤¤Ä¶ª© <author>§@ªÌ: Eric S. Raymond<newline> ĶªÌ: J.S. Lin, , <tt/r6921068@ms.cc.ntu.edu.tw/ <date>v5.9, 27 October 1998 <abstract> ¥»¤å¥ó´y­z¦p¦ó¨ú±o,¦w¸Ë,»P³]©w Linux ¤Wªº X Window System (X11R6), XFree86 3.3 ª©. ¥¦¬O¤@¨B¤@¨B³]©w XFree86 ©ó§Aªº¨t²Î¤W. </abstract> <toc> <sect>¤¶²Ð <p> X Window System ¬O UNIX ¨t²Î¤W±j¤jªº (¦³¨Ç¤H¥i¯à·|»¡·¥Ãe¤j¦Ó¥B«D±`½ÆÂøªº) ¹Ï§Î¤Æ§@·~Àô¹Ò. ­ì¥»ªº X Window System µ{¦¡½X¬O MIT ©Òµo®iªº; ±q¨º®É°_°Ó·~³c°âªÌ´N¤w¸g¨Ï X ¦¨¬°UNIX ¥­¥x¤Wªº¤u·~¼Ð·Ç. ¹ê»Ú¤W, ¦b¥@¬É¤W¨C¥x UNIX ¤u§@¯¸¥i¥H¶] X Window system ªº¦Uª©¥». ¤@­Ó MIT X Window System version 11, release 6 (X11R6) ¦b 80386/80486/Pentium UNIX systems ¤W§K¶O,¥i­«µo¦æªº²¾´Óª©¥»¤w¸g¦bµo®i, ¥Ñ­ì¥» David Wexelblat <htmlurl url="mailto:dwex@XFree86.org" name="<dwex@XFree86.org>"> ©Ò»â¾Éªºµ{¦¡³]­p®v¹Î¶¤. ³o­Óª©¥»,¥s§@ XFree86, ¥i¥H¨ú±oµ¹ System V/386, 386BSD, ©M¨ä¥L x86 UNIX ¹ê§@,¥]¬A Linux. ¥¦¥]§t©Ò¦³»Ý­nªº binaries, ·f°tÀÉ®×, libraries, ¥H¤Î¤u¨ã. XFree86 ªº§¹¾ã¸ê®Æ¬O¥i¥H¨ú±o¦b XFree86 ªººô¯¸, <url url="http://www.XFree86.org">. ¦b¥»¤å¥ó, §Ú­Ì±N¤@¨B¨Bªº´y­z¦p¦ó¦b Linux ¦w¸Ë©M³]©w XFree86, ¦ý§A¦Û¤v±N¥²¶·¾aŪ XFree86 ¥»¨­¤½¶}ªº¤å¥ó(³o¨Ç¤å¥ó¥H¤U·|°Q½×) ¨Ó¥R¹ê¬Y¨Ç²Ó¸`. µM¦Ó, ¨Ï¥Î©M¼ô½m X Window System ¬O»·¶W¥X¥»¤å¥ó½d³ò --- °ò©ó³o­Ó¥Øªº,§AÀ³¸Ó¦b²³¦h°Q½×¨Ï¥Î X Window System ªº¦n®Ñ¤¤,¨ú¤@¥»¨Ó¬Ý. <sect1>¨ä¥L¸ê°T¨Ó·½ <p> ¦pªG§A¥H«e±q¥¼Å¥¹L Linux, ¨ºùØ­±¦³¤@¨ÇÃö©ó³o¨t²Î[X Window System]ªº°ò¥»¸ê®Æ. ­n§ä¨ì³o¨Ç¸ê®Æªº³Ì¦n¦a¤è¬O¦b Linux Documentation Project ªº home page §Y <url url="http://sunsite.unc.edu/LDP">. §A¯à¦b¨º§ä¨ì¸Ó¤å¥ó¤§³Ì·s, ³Ì·sªºª©¥»¦b <url url="http://sunsite.unc.edu/LDP/HOWTO/XFree86-HOWTO.html"> <sect1>³o¤å¥óªº·sª©¥» <p> Linux XFree86 HOWTO ªº·sª©¥»±N·|©w´Á©Ê¦a±i¶K¦b <htmlurl url="news:comp.os.linux.help" name="comp.os.linux.help"> ©M <htmlurl url="news:comp.os.linux.announce"> ¥H¤Î <url url="news:news.answers" name="news.answers">. ¥L­Ì¤]±N·|§ó·s¨ì¦UºØ Linux WWW ©M FTP ¯¸,¥]¬A LDP home page. §AÁ`¬O¯à¨£¨ì¥»¤å¥óªº³Ì·sª©¥»¦b¥þ²y¸ê°Tºô, Âǥѳo­Ó URL <url url="http://sunsite.unc.edu/LDP/HOWTO/XFree86-HOWTO.html">. <sect1>¦^¨ç»P­q¥¿ <p> ¦pªG§A¹ï³o¤å¥ó¦³°ÝÃD©Îµû½×, ½Ð¦Û¦bªº±H«Ê«Hµ¹ Eric S. Raymond, <htmlurl url="mailto:esr@thyrsus.com" name="esr@thyrsus.com">. §Ú«ÜÅwªï¥ô¦ó«ØÄ³©Î§åµû. ¦pªG§A¦b¤å¥ó¤¤§ä¨ì¿ù»~. ½ÐÅý§Úª¾¹D,¨Ï±o§Ú¯à°÷¦b¤U­Óª©¥»­×¥¿¥¦. ÁÂÁÂ. ½Ð <em/¤£­n/ ±H«Hµ¹§Ú, °Ý¨Ç¦p¦ó¨Ï§AªºÅã¥Ü¥d©MÅã¥Ü¾¹¯à¦b X ¤U, ¥¿±`¹B§@ªº°ÝÃD. ³o­Ó HOWTO ªº·N¹Ï¬O§Ö³t,»´©öªº«ü¤Þµ¹ <em/¤@¯ë/ ¦w¸Ë, ¥¦¨Ï¥Î·sªº¤¬°Ê¦¡³]©w¾¹[interactive configurator]. ¦pªG§Aµo¥Í°ÝÃD,ÂsÄý¤@¤U XFree86 Video Timings HOWTO, <url url="http://sunsite.unc.edu/LDP/HOWTO/XFree86-Video-Timings-HOWTO.html">. ³o¬O XFree86's `Videomodes.doc' Àɮפ§³Ì·sªº HTML ª©¥».) ¨º¤å¥ó°O¿ý§Ú©Òª¾¹D, Ãö©ó¸Ñ¨M³]©w¤W§xÃøªº¨Æ±¡. ¦pªG¥¦¤£¯àÀ°±o¤W§A,¨º§Ú¤]À°¤£¤W. <sect>µwÅé»Ý¨D <p> ¦b XFree86 3.3ª©, ¥H¤UªºÅã¥Ü´¹¤ù²Õ¬O³Q¤ä´©ªº. ³o¤å¥ó¥]¬A§AªºÅã¥Ü¤¶­±¥d À³¸Ó»¡©ú©Ò¨Ï¥Îªº´¹¤ù²Õ. ¦pªG§A¦b¥«³õ¤W®³¨ì«Ü·sªºÅã¥Ü¥d, ©Î¶R¤@¥x·s¾÷¾¹¦Óªþ¦³Åã¥Ü¥d, À³­n¨D³c°â°Ó¥¿½Tªº«ü¥X¸ÓÅã¥Ü¥d¬O­þ®a»s³y,«¬¸¹, ¤Î´¹¤ù²Õ. ³o¥i¥H­n¨D³c°â°Ó¬°§A¥h¥´§Þ³N¤ä´©¹q¸Ü; ¤@¯ë³c°â°Ó·|¼Ö·N³o»ò°µ. ¤j³¡¤À PC µwÅé³c°â°Ó·|»¡³o­ÓÅã¥Ü¥d¬O ``¼Ð·Ç SVGA ¥d'', ¥¦ ''À³¸Ó¯à¥¿±`¹B§@'' ¦b§Aªº¨t²Î¤W. ¸ÑÄÀ¤@¤U§Aªº³nÅé (´£¨ì Linux ©M XFree86!) ¨Ã¨S¦³¤ä´©©Ò¦³Åã¥Ü´¹¤ù²Õ, ©Ò¥H§A¥²¶·­n¦³¸Ô²Óªº¸ê®Æ. §A¤]¯à±oª¾§AªºÅã¥Ü¥dÂǥѰõ¦æ <tt>SuperProbe</tt> µ{¦¡, ¥¦¥]§t©ó XFree86 ®M¥ó. ³o¦b¥H¤U·|¦³§ó¸ÔºÉªº»¡©ú. ¥H¤U¼Ð·Ç SVGA ´¹¤ù²Õ¦³³Q¤ä´©: <itemize> <item> Tseng ET3000, ET4000AX, ET4000/W32, ET6000 <item> Western Digital/Paradise PVGA1 <item> Western Digital WD90C00, WD90C10, WD90C11, WD90C24, WD90C30, WD90C31, WD90C33 <item> Genoa GVGA <item> Trident TVGA8800CS, TVGA8900B, TVGA8900C, TVGA8900CL, TVGA9000, TVGA9000i, TVGA9100B, TVGA9200CX, TVGA9320, TVGA9400CX, TVGA9420, TGUI9420DGi, TGUI9430DGi, TGUI9440AGi, TGUI9660XGi, TGUI9680 <item> ATI 18800, 18800-1, 28800-2, 28800-4, 28800-5, 28800-6, 68800-3, 68800-6, 68800AX, 68800LX, 88800GX-C, 88800GX-D, 88800GX-E, 88800GX-F, 88800CX, 264CT, 264ET, 264VT, 264VT2, 264GT <item> NCR 77C22, 77C22E, 77C22E+ <item> Cirrus Logic CLGD5420, CLGD5422, CLGD5424, CLGD5426, CLGD5428, CLGD5429, CLGD5430, CLGD5434, CLGD5436, CLGD5440, CLGD5446, CLGD5462, CLGD5464, CLGD6205, CLGD6215, CLGD6225, CLGD6235, CLGD6410, CLGD6412, CLGD6420, CLGD6440 <item> OAK OTI067, OTI077, OTI087 <item> Avance Logic ALG2101, ALG2228, ALG2301, ALG2302, ALG2308, ALG2401 <item> Chips & Technologies 65520, 65530, 65540, 65545, 65520, 65530, 65540, 65545, 65546, 65548, 65550, 65554 <item> MX MX68000, MX680010 <item> Video 7/Headland Technologies HT216-32 <item> SiS 86C201, 86C202, 86C205 <item> ARK Logic ARK1000PV, ARK1000VL, ARK2000PV, ARK2000MT <item> RealTek RTG3106 <item> Alliance AP6422 <item> Matrox MGA2064W and Mystique cards <item> NVidia/SGS Thomson NV1, STG2000 </itemize> ¥H¤U¨ã¦³¥[³t¯S©Êªº SVGA ´¹¤ù²Õ¤]³Q¤ä´©: <itemize> <item> 8514/A (and true clones) <item> ATI Mach8, Mach32, Mach64 <item> Cirrus CLGD5420, CLGD5422, CLGD5424, CLGD5426, CLGD5428, CLGD5429, CLGD5430, CLGD5434, CLGD5436, CLGD5440, CGLD5446, CLGD5462, CLGD5464. <item> S3 86C911, 86C924, 86C801, 86C805, 86C805i, 86C928, 86C864, 86C964, 86C732, 86C764, 86C765, 86C868, 86C968, 86C325, 86C988 <item> Western Digital WD90C31, WD90C33, WD90C24A <item> Weitek P9000 <item> IIT AGX-014, AGX-015, AGX-016 <item> IBM XGA-2 <item> Tseng ET4000/W32, ET4000/W32i, ET4000/W32p, ET6000 <item> Ark Logic ARK1000PV, ARK1000VL, ARK2000PV, ARK2000MT <item> MGA2064W </itemize> ¨Ï¥Î³o¨Ç´¹¤ù²ÕªºÅã¥Ü¥d¦³³Q¤ä´©©Ò¦³¶×¬y±Æ«¬¦¡[bus type],¥]¬A VLB ©M PCI. °£¤F Avance Logic, MX ©M Video 7 ´¹¤ù²Õ¥u¦³¤ä´© 256 ¦â¼Ò¦¡, ¥H¤W¨ä¥L¥þ³£¦P®É¦³¤ä´© 256 ¦â©M ³æ¦â¼Ò¦¡. ­Y§AªºÅã¥Ü¥d¸Ë¦³¨¬°÷ªº DRAM, ¥H¤W´¹¤ù²Õ«Ü¦h³£¦³¤ä´©¨C³æ¦ì¹³¯À[pixel] 16 ¤Î 32 ¦ì¤¸[bits] ¼Ò¦¡ (¯S§O¬O¤@¨Ç Mach32, P9000, S3 ©M Cirrus boards). ³q±`ªº³]©w¬O¨C³æ¦ì¹³¯À 8 ¦ì¤¸ (¥ç§Y 256 ¦â). ³æ¦âªº¦øªAµ{¦¡[monochrome server]¤]¤ä´© generic VGA cards, Hercules monochrome card, Hyundai HGC1280, Sigma LaserView, ©M Apollo monochrome cards. ¦b Compaq AVGA ªº³¡¤À, ¥u¦³ 64k Åã¥Ü°O¾ÐÅé¬O¦³¤ä´©µ¹³æ¦â¦øªAµ{¦¡, ¦Ó GVGA ÁÙ¥¼¹ï¶W¹L 64k °µ´ú¸Õ. ³o¦Cªí²@µLºÃ°Ý¦a±N·|ÀH®É¶¡¦ÓÂX¼W. XFree86 ¥Ø«eª©¥»ªº release notes À³¸Ó·|¥]§t§¹¾ã©Ò¤ä´©Åã¥Ü´¹¤ù²Õªº¦Cªí. XFree86 µo®iªÌ©Ò­±Á{ªº¤@­Ó°ÝÃD¬O, ¬Y¨ÇÅã¥Ü¥d»s³y°Ó¬°¯à©w¥XÅX°Ê¸Ó¥d©Ò¨Ï¥Îªº®É¯ßÀW²v,¦Ó¨Ï¥Î«D¼Ð·Ç¾÷¨î. ³o¨Ç»s³y°Ó¤¤,¦³¨Ç­n¹À´N¨S¦³¤½¶},¦p¦óµ{¦¡³]­p³o±i¥dªº³W®æ; ­n¹À¥L­Ì´N¬O­n¨Dµo®iªÌñ¤@±i¨M¤£¥i¬ªÅSªºÁn©ú®Ñ,¥H¨ú±o¸Ó¸ê®Æ. ³o©úÅã¦a­­¨î XFree86 ³nÅ骺¦Û¥Ñ´²§G, ¦³¨Ç¨Æ¬O XFree86 µo®i¹Î¶¤©Ò¤£¼Ö·N¥h°µªº. ¦³¦nªøªº¤@¬q®É¶¡,³o¬O­Ó°ÝÃDµo¥Í¦b Diamond ©Ò»s³yªº¬Y¨ÇÅã¥Ü¥d¤W, ¦ý·í XFree86 ªº 3.1 ª©®É, Diamond ¤w¸g¶}©l»P³o­Óµo®i¹Î¶¤¦X§@,¦ÓÄÀ¥X§K¶OªºÅX°Êµ{¦¡µ¹³o¨Ç¥d. ¦b Linux ¤U XFree86 ©Ò«ØÄ³¬[³]¬O¤@¥x 486 ©Î§ó¦n, ¦Ó¥B¦Ü¤Ö·f°t 8 megabytes RAM, ©M¨ã¦³¤W­z©Ò¦C¥X´¹¤ù²ÕªºÅã¥Ü¥d. ¬°¤F³Ì¦nªºªí²{, §Ú­Ì«ØÄ³¨Ï¥Î¥[³t¥d, ¹³¬O±i S3-chipset card. §AÀ³¸ÓÀˬd¹ï©ó XFree86 ªº¤å¥ó, ¦Ó¥B¦b¨M©w«_ÀI¤@¸Õªº¤ßºA¤U,ÁʶR©ù¶QªºµwÅ餧«e,½Ð¥ýÀˬd§Aªº¯S©w¥d¬O¦³¤ä´©ªº. ¤@¤è­±­È±o¤@´£ªº¬O, Matt Welsh (³o­Ó FAQ ªºµo°_¤H) ªº­Ó¤H Linux system ¬O¤@¥x 486DX2-66, 20 megabytes RAM, ¸Ë°t¦³ 2 megabytes DRAM ªº VLB S3-864 chipset card. ¥L¦b¸Ó¾÷¾¹¤W¶] X benchmarks ,¤]¦³¦b Sun Sparc IPX workstations ¤W¶]. Linux system ¤j²¤¬O¤ñ Sparc IPX §Ö 7 ­¿ (¦n©_ªº¿s±´, ¦b Linux ¤U¦Ó¥Î¸ÓÅã¥Ü¥dªº XFree86-3.1 ¤j¬ù¶]¥X 171,000 xstones; Sparc IPX «h¤j¬ù¬O 24,000). ¤@¯ë¦Ó¨¥, ¦b¨Ï¥Î¥[³t SVGA ¥dªº Linux system ¤Uªº XFree86 ¤ñ°_«Ø¥ß¦b°Ó·~¤Wªº UNIX workstations (¥¦³q±`±Ä¥Î²³æªº framebuffers ¨Ó¹Ï§ÎÅã¥Ü) ·|¦³¸û¨Îªºªí²{. §Aªº¾÷¾¹¦Ü¤Ö»Ý­n 4 megabytes ªº physical RAM, ©M 16 megabytes ªº virtual RAM (Á|¨Ò¦Ó¨¥, 8 megs physical ©M 8 megs swap). °O¦í§A¦³ªº physical RAM ¶V¦h,¨t²Î·íµo¥Í°O¾ÐÅéµu¯Ê¦Ó­n¥æ´«[swap]¦s¨úµwºÐ¾÷·|¶V¤Ö. ¦]¬° ¥æ´« ¥»½è¤W¬OºCªº(ºÏºÐ¬Û¸û°O¾ÐÅé¬OÆZºCªº), ­n¬yºZ¦a¶] XFree86 ªº¸Ü, ¦³ 8 megabytes RAM ©Î§ó¦h¬O¥²­nªº. 16 megabytes §ó¦n. ¨ã¦³ 4 megabytes ªº physical RAM ªº¨t²Î¥i¯à¤ñ¶] 8 megs ©Î§ó¦hªº¨t²ÎºC <em>³\¦h</em> (¬Æ¦Ü¥i°ª¹F 10 ­¿). <sect>¦w¸Ë XFree86 <p> «Ü¦³¥i¯à,§A¨ú±oªº XFree86 ¬O Linux µo¦æ®M¥óªº¤@³¡¤À, ¦b¨ººØ±¡§Î, ¤À¶}¤U¸ü¸Ó³nÅé¬O¨S¦³¥²­nªº. ¦b¨º±¡§Î¤U,§A¥i¥H²¤¹L³o¤@¸`. XFree86 ªº Linux ¤G¤¸½Xª©¥»¥i¥H¦b³\¦h FTP ¯¸§ä¨ì. ¦b XFree86 ¯¸, ¥¦¬O¦b <url url="ftp://ftp.xfree86.org/pub/XFree86/current/binaries/Linux-ix86"> ( ·íµ§ªÌ¦b¼gªº®É­Ô, ¥Ø«eªºª©¥»¬O 3.2A; ³Ì·sª©¥»«h©w´Á¦aÄÀ¥X). ¦b°µ¥ô¦ó¨ä¥¦ªF¦è¤§«e,­º¥ý¤U¸ü¥B°õ¦æ `preinst.sh' ªº shell script. ³o¥i¥H§i¶D§A,¦b§AÄ~Äò§Aªº¦w¸Ë¤§«e,§A»Ý­n¦b§´·í¦ì¸m¦³Ãöªº¥ý¨M­n¯À. ¦pªG§Aª½±µ¤U¸ü XFree86, ³o­Ó¦Cªí¦C¥X¦b XFree86-3.3 ³nÅé®M¥ó¤¤ªºÀÉ®×. ¥H¤U server ¤§¤@¬O¥²»Ýªº: <descrip> <tag/X338514.tgz/ Server for 8514-based boards. <tag/X33AGX.tgz/ Server for AGX-based boards. <tag/X33I128.tgz/ Server for the Number Nine Imagine 128. <tag/X33Mach32.tgz/ Server for Mach32-based boards. <tag/X33Mach64.tgz/ Server for Mach64-based boards. <tag/X33Mach8.tgz/ Server for Mach8-based boards. <tag/X33Mono.tgz/ Server for monochrome video modes. <tag/X33P9K.tgz/ Server for P9000-based boards. <tag/X33S3.tgz/ Server for S3-based boards. <tag/X33S3V.tgz/ Server for the S3 ViRGE and ViRGE/VX (considered beta) <tag/X33SVGA.tgz/ Server for Super VGA-based boards. <tag/X33W32.tgz/ Server for ET4000/W32-based boards. </descrip> ¦pªG§A¤£ª¾¹D­n¨ú­þ¤@­Ó,´N¨ú VGA16 server,X33VGA16.tgz. ¤£ºÞ«ç¼Ë,§A³£­n¤U¸ü³o¤@­Ó,¦]¬°§A±N»Ý­n¥¦¦b¤U­Ó¨BÆJ¥h°õ¦æ¦Û°Ê³]©w¤u¨ã. ¥H¤U¥þ³¡Àɮ׳£¬O¥²¶·ªº: <descrip> <tag/preinst.sh/ Pre-installation script <tag/postinst.sh/ Post-installation script <tag/X33bin.tgz/ The rest of the X11R6 binaries. <tag/X33cfg.tgz/ Config files for <tt>xdm</tt>, <tt>xinit</tt> and <tt>fs</tt>. <tag/X33doc.tgz/ Documentation. <tag/X33man.tgz/ Manual pages. <tag/X33fnts.tgz/ 75dpi, misc and PEX fonts <tag/X33lib.tgz/ Shared X libraries and support files. <tag/X33set.tgz/ XF86Setup utility <tag/X33VG16.tgz/ Server for VGA/EGA-based boards. </descrip> ¥H¤UÀɮ׬O¿ï¾Ü©Êªº: <descrip> <tag/X33f100.tgz/ 100dpi fonts <tag/X33fcyr.tgz/ Cyrillic fonts <tag/X33fnon.tgz/ Other fonts (Chinese, Japanese, Korean, Hebrew) <tag/X33fscl.tgz/ Scalable fonts (Speedo and Type1) <tag/X33fsrv.tgz/ Font server and config files <tag/X33prog.tgz/ X header files, config files and compile-time libs <tag/X33lkit.tgz/ X server LinkKit <tag/X33lk98.tgz/ PC98 X server LinkKit <tag/X33nest.tgz/ Nested X server <tag/X33prt.tgz/ X print server <tag/X33vfb.tgz/ Virtual framebuffer X server <tag/X33ps.tgz/ PostScript version of the documentation <tag/X33html.tgz/ HTML version of the documentation </descrip> ¨º­Ó XFree86 ¥Ø¿ýÀ³¸Ó¥]§t¦³¥Ø«eª©¥»ªº release notes ¦b <tt/RELNOTES/. ¹ï©ó¦w¸Ë²Ó¸`,¥i¬d¾\©ó¸Ó¤å¥ó[RELNOTES]. ©Ò­n¦w¸Ë XFree86 ªº¤u§@ªº¬O¨ú±o¥H¤WÀÉ®×, (¥H <tt/root/ ¨­¤À) «Ø¥ß <tt>/usr/X11R6</tt> ¥Ø¿ý, ©M±q <tt>/usr/X11R6</tt> ¸Ñ¶}¨º¨ÇÀɮצp¤U¦C«ü¥O: <tscreen><verb> gzip -dc X33bin.tgz | tar xfB - </verb></tscreen> °O¦í³o¨Ç tar Àɮ׬O¬Û¹ï©ó <tt>/usr/X11R6</tt> ¥Ø¿ý©Ò¥]¸Ë°_¨Óªº, ©Ò¥H«Ü­«­nªº¬O­n¦b¨ºùظѥ]¥]¸Ë. §A»Ý­n½T©w <tt>/usr/X11R6/bin</tt> ¬O¦³³]¦b§Aªº path ¤¤. ³o¥i¥HÂǥѽs¿è§A¨t²Î¤º©wªº <tt>/etc/profile</tt> ©Î <tt>/etc/csh.login</tt> (¦¹¤D®Ú¾Ú§A,©Î¦b§A¨t²Î¤¤ªº¨ä¥L¨Ï¥ÎªÌ,©Ò¨Ï¥Îªº shell ¦Ó©w). ©ÎªÌ§A¥i¥H²³æ¦a­×§ï <tt>.bashrc</tt> ©Î <tt>.cshrc</tt> (µø§Aªº shell ¦Ó©w) ¨Ó§â¸Ó¥Ø¿ý¥[¤J§A­Ó¤Hªº path . §A¤]»Ý­n½T©w <tt>/usr/X11R6/lib</tt> ¯à³Q runtime linker <tt>ld.so</tt> §ä¨ì. ¬°¤F³o¼Ë,¥[³o¦æ <tscreen><verb> /usr/X11R6/lib </verb></tscreen> ¨ì³o­ÓÀÉ <tt>/etc/ld.so.conf</tt>, ©M¥H <tt>root</tt> ¨­¤À¥h°õ¦æ <tt>/sbin/ldconfig</tt>, <sect>³]©w XFree86 <p> <sect1>¤@¯ë³]©w <p> ¥H«e,­n³]©w¦n XFree86 ¥H«K¯à¨Ï¥Î§Aªº·Æ¹«, Áä½L, Åã¥Ü¾¹, ©MÅã¥Ü¥d, ¬O¨¯­Wªº®t¨Æ, »Ý­n¤j¶qªº¿Ë¦Û°Ê¤â¥h³]©w©MÀ|¸Õ½Õ¾ã[hand-hacking] ¤@­Ó«Ü½ÆÂøªº³]©wÀÉ®×, ¨º¥i»¡¬O¤@ºØ¤£¥i¨¥¶ÇªºÃÀ³N. ²{¦b¤£¦A»Ý­n¤F; ¦b3.2/3.3ª©«á,¨Ï³o­Ó¹Lµ{´X¥G¨S¤°·N¸q¤F. §A©Ò­n°µªº¬O¶}±Ò <tt/XF86Setup/ µ{¦¡. ³oµ{¦¡¤D¨Ì¿à²{¤µ©Ò¦³·s¥X³f¦Ó¥B·f°t¨ã EGA/VGA ¯à¤O¤§Åã¥Ü¾¹ªºPCµwÅ鱡ªp¦Ó©w. ¥¦±Ä¥Î VGA16 server ¦Ó¥B§Q¥Î¥¦¥H³Ì§C¶¥¦@³q©Ê 640x480 ¼Ò¦¡¨Ó¶}±Ò X. µM«á¥¦°õ¦æ¤¬°Ê¦¡µ{¦¡,¥¦±a§A¸g¹L³sÄò¤­­Ó³]©w­±ªO -- mouse, keyboard, (video) card, monitor, ©M `other' (¦U¦¡¦U¼Ëªº server ¿ï¶µ). ¥þ³¡¹Lµ{¬Û·í²³æ. (¦pªG§A¬O¥Î Red Hat Linux, §A¥i¥H¨Ï¥Î¥t¤@­Ó¥s§@ <tt/xf86config/ µ{¦¡. ¥¦ªº§@¥Î«D±`¹³¬O <tt/XF86Setup/ ,¦ý¬O¨ä¥»¨­¤£¬O¨Ï¥Î X ¤¶­±»P VGA16 server.) ¦³¤@¤pÂI­n°O¦íªº¬O,¦pªG§A¹³¤j¦h¼Æ¤H¨Ï¥Î¥Ø«eªºPC, §AªºÁä½L¹ê»Ú¤W¬O XF86Setup ©Ò©I¥sªº `Generic 102-key PC (intl)' ¦Ó¤£¬O¹w©wªº `Generic 101-key PC'. ¦pªG§A¿ï¾Ü¹w©wªº(101), ¦b§AÁä½L[keyboard]ªº·¥¥kÃä(¼Æ¦r¤Î¨ä¬ÛÃö [numeric keypad and friends])¤Wªº«öÁä¸s[key cluster]¥i¯à·|¨S¦³§@¥Î. ¦pªG§A¤£½T©w§AÅã¥Ü¾¹ªº«¬¦¡[monitor type],§A¥i¥H³sÄò¸Õ¸Õ¥¦©Ò¦C¥Xªº«¬¦¡. ´N¨Ì§Aªº²ßºD¥Ñ¤W©¹¤U¸Õ(¸û¤W­±ªº¿ï¶µ©Ò¥]§tªº¬O¸û§C dot-clock ³t«×, ¦Ó¥B¹ïµwÅé­n¨D¤]¤ñ¸û§C). ¦pªGµo¥Í¤F²V¶Ã©ÎÄY­«¦a§á¦±ÅܧÎ[distorted]ªº¹Ï§Î®É, ½Ð©¹¦^¸Õ[Back off]. ¤p³¡¤Àªº§á¦±ÅܧΠ(¹Ï§Îµy¤Ó¤j,µy¤Ó¤p,©Îµy°¾Â÷¤¤¤ß) ¤£¬O¤°»ò¤j°ÝÃD; §A¬O¥i¥H°¨¤WÂǥѷL½Õ[fine-tuning]¦¹ mode ¨Ó­×¥¿. ¦AªÌ, ·íµ{¦¡¥´¶} <tt/xvidtune/ ¤¹³\§A¥h½Õ¾ã[tweak]§AªºÅã¥Ü¼Ò¦¡[video mode], §OÅýªì©lªºÄµ§iµøµ¡,¨Ï§A·P¨ìºò±i. ²{¦b¦hÀWÅã¥Ü¾¹[multisync monitors] (¤£¹³¥L­Ì¥H«e¬O¥Î©wÀWªº) ¤£·|¦]¬°¥Î³o¤è¦¡¦Ó´N»´©ö·lÃa. XF86Config ¥i¥H°²³]§Aªº·Æ¹«¸Ë¸m¬O¦b <file>/dev/mouse</file>. ¦pªG§Aµo²{³o¨S§@¥Î®É,§A¥i¯à»Ý­n³sµ² <file>/dev/mouse</file> ¨ì·Æ¹«¹ê»Ú©Ò¦b <file>/dev/ca[01]</file> ¨º. ¦pªG§Aµo²{·í <code>gpm</code> ¥¿¦b°õ¦æ,¦Ó XFree86 µ¹§A¤@­Ó "mouse busy" ªº¿ù»~°T®§®É, ¨º§A«h»Ý­n³sµ²¨ì <file>/dev/ttyS[01]</file> ¨Ó¨ú¥N. ³]©wªº¹Lµ{¾Þ§@¦³¿ï©w²Å¦X§AªºÅã¥Ü¥d¤@¯ë«¬ºAªº server (¹³¬O <tt/XF86_VGA16/, <tt/XF86_Mach64/, or <tt/XF86_S3/) ¥H¤Î³]©w <tt/XF86Config/ ÀÉ®×, ¦Ó server ¶}©l±Ò°Ê®É·|Ū¨ú¸ÓÀɤ¤ªº§A¦w¸Ë®É¤w«ü©wªº¯S®í°Ñ¼Æ. <tt/XF86Config/ ªº©Ò¦b¦ì¸m·|ÀH®É§Aªº OS ¤£¦P¦ÓÅÜ, ¦ý¦³­Ó¦a¤è¥i§ä§ä¬Ý¬O¦b <tt>/etc/X11</tt>. ¦b¸û¦­ªº XFree86 ª©¥», <tt/XF86Setup/ ·|ª½±µ±N `X' «ü¥O³s±µ©Ò¿ï¾Üªº server. ¦b³Ìªñªºª©¥», ¨ú¦Ó¥N¤§ªº¬O±N `X' ³s±µ¨ì¥s Xwrapper ªº set-user-id wrapper µ{¦¡. ³o·Qªk¬O©Ò¦³ªº setuid root stuff ³£¸¨¦b Xwrapper ¤§¤¤, ©Ò¥H server ´N¤£¥²¦b¥Î setuid root. <sect1>¸Ñ¨M§xÃø <p> ·í§A­è¶}©l¶}±Ò X server, ¦³¨Ç¶µ¥Ø°¸º¸·|¨S¦³³]©w«Ü¥¿½T. ³oÁ`¬O´X¥G·|¥Ñ§Aªº³]©wÀɮפ¤ªº¤@¨Ç°ÝÃD©Ò¤Þ°_ªº. ³q±`¦b¬OÅã¥Ü¾¹ªº timing values ¤£¥¿½T, ©ÎÅã¥Ü¥dªº dot clocks ³]©w¤£¥¿½T. ¤Ö¼Æ°ÝÃD¥i¥HÂÇ¥Ñ <tt/xvidtune/ ¨Ó¸Ñ¨M; ·í¿Ã¹õ¤W¹ê¦b¬O²V¶Ã¤£²M·¡®É,³q±`¬Oªí¥Ü §A»Ý­n¦^¨ì XF86Setup ¦Ó¿ï¾Ü¥\¯à¤ñ¸û§CªºÅã¥Ü¾¹«¬¦¡[monitor type]. ¦pªG§AªºÅã¥Ü¦n¹³±²¦±[roll], ©ÎÃäÃä¼Ò½k¤£²M[fuzzy], ³o«Ü²M·¡¦aªí¥ÜÅã¥Ü¾¹ªº timing values ©Î dot clocks ¬O¿ùªº. ¦AªÌ, ­n½T©w§A¬O¥¿½T¦a«ü¥X§AªºÅã¥Ü¥d´¹¤ù²Õ, ¦b <tt>XF86Config</tt> ¤¤ªº <tt>Device</tt> ¬q¸¨¤§¨ä¥¦¶µ¥Ø¤]¬O¦p¦¹. µ´¹ï­n½T©w§A¬O¨Ï¥Î¥¿½Tªº X server ,¦Ó¥B <tt>/usr/X11R6/bin/X</tt> ¦³²Å¸¹³sµ² [symbolic link]¨ì³o­Ó server. ¦pªGµo¥Í¨ä¥¦©Ò¦³¥¢±Ñªº±¡ªp, ¸Õ¸Õ ''¨ª»r¦a[bare]'' ¶}±Ò X; ¤]´N¬O, ¨Ï¥Î¹³³o¼Ëªº«ü¥O: <tscreen><verb> X > /tmp/x.out 2>&1 </verb></tscreen> µM«á§A¥i¥H¬å¥h X server (¨Ï¥Î <tt>ctrl-alt-backspace</tt> Á䪺²Õ¦X) ¦Ó¥BÀˬd <tt>/tmp/x.out</tt> ªº¤º®e. X server ·|³ø§i¥ô¦óĵ§i¤Î¿ù»~---Á|¨Ò, ¦pªG§AªºÅã¥Ü¥d¨S¦³¤@­Ó dot clock ¥i¬Û²Å¦X§AÅã¥Ü¾¹©Ò¤ä´©ªº¼Ò¦¡. °O¦í§A¥i¥H¨Ï¥Î <tt>ctrl-alt-numeric +</tt> ©M <tt>ctrl-alt-numeric -</tt> ¨Ó¤Á´«¦b <tt>XF86Config</tt> ¤¤ªº <tt>Screen</tt> ¬q¸¨ªº <tt>Modes</tt> ¦æ ©Ò¦C¥XªºÅã¥Ü¼Ò¦¡. ­Y³Ì°ª¸ÑªR«×¼Ò¦¡¤£¯à¬Ý°_¨Ó«Ü¾A·í,¸Õ¸Õ¤Á¨ì¸û§Cªº¸ÑªR«×. ³o¦Ü¤Ö·|Åý§Aª¾¹D§Aªº X ³]©w³o³¡¤À¬O¥¿½Tªº¹B§@. ¦AªÌ, Àˬd¤@¤U§AÅã¥Ü¾¹¤Wªº««ª½»P¤ô¥­¤§¤j¤p/¹ï·Ç±Û¯Ã. ¦b«Ü¦h±¡ªp¤U,·í X ­è¶}±Ò®É, ³o¨Ç¬O»Ý­n½Õ¾ãªº. Á|­Ó¨Ò¤l, ¦pªGÅã¥Ü¾¹¦n¹³¦³ÂI°¾¤@Ãä®É, ³q±`§A¯à°÷¨Ï¥ÎÅã¥Ü¾¹ªº±±¨î¨Ó­×¥¿³o­Ó. USENET ªº newsgroup <tt>comp.windows.x.i386unix</tt> ¥D­n¬O¦b°Q½×¦³Ãö XFree86, <tt>comp.os.linux.x</tt> ¤]¬O. ¬Ý¤@¤U newsgroup ¨º¨Ç»P§AªºÅã¥Ü¥d¦³Ãöªº¤å³¹¤]³\¬O­Ó¦n¥D·N---§A¤]³\­è¦n¬Ý¨ì¬Y¨Ç¤H¸ò§A¦³¬Û¦Pªº°ÝÃD. <sect1>¦Û©w³]©w <p> ¦pªG§AªºÅã¥Ü¾¹¯à¤ä´© 1600x1200 -- ¦Ó¥Î XF86Setup ¨Ó¦w¸Ë¤§³Ì°ª©Ò¯à°÷¤ä´©ªº¸ÑªR«×¬O 1280x1024, ¨º»ò§A·|»Ý­n¿Ë¦Û°Ê¤â¥h¹Á¸Õ½Õ¾ã§Aªº X ¤§³]©w,¥H«K¨ú±o³Ì¨Î¤Æªºªí²{. ¦pªG°ò©ó³o­Ó²z¥Ñ©Î¨ä¥¦²z¥Ñ, ¦Ó§A·Q­n¿Ë¦Û°Ê¤â¥h¹Á¸Õ½Õ¾ã§AªºÅã¥Ü³]©w, ¥h¬Ý¤@¤U LDP ªº XFree86 Video Timings HOWTO, <url url="http://sunsite.unc.edu/LDP/HOWTO/XFree86-Video-Timings-HOWTO.html">. (³o´N¬O XFree86 ªº `Videomodes.doc' Àɮפ§³Ì·sªº HTML ª©¥».) <sect1> ¨Ï¥Î 16-¦ì¤¸ ªºÃC¦â <p> ®Ú¾Ú¤º©wªº, X ¨Ï¥Î 8-¦ì¤¸ ¦â²`[color depth]¦Ó¦³256¦â. ¬°Á×¶}³oºØ­­¨î, «Ü¦hÀ³¥Îµ{¦¡°t¸m¥L­Ì¦Û¤vªº¦â±m¹ïÀ³¹Ï[colormap],¾É­PÀþ¶¡ÃC¦âÂà´«, ·í´å¼Ð¦b¨â­Ó¦U¾Ö¦³¦Û¤vªº¦â±m¹ïÀ³¹Ï¤§µøµ¡²¾°Ê®É. Arena WWW ÂsÄý¾¹´N¬O³o¼Ë¤l. ¦pªG§A·Q­n¨Ï¥Î¥ý¶iªº¹Ï§Î¤ÆªºÀ³¥Îµ{¦¡,256¦â¤]³\¤£¨¬°÷. §A¥i¯à»Ý­n¦³ 16-¦ì¤¸ ¦â²` (65,536 ÃC¦â). ¦ý­nª`·Nªº¬O, ¤£¬O©Ò¦³À³¥Îµ{¦¡³£­n¤u§@¦b 16-¦ì¤¸ ÃC¦â¤Uªº. §A¯à²³æ¦a¨Ï¥Î 16-¦ì¤¸ ªº¦â²`¦Ó¦³ 65K ªº¤£¦P¦â, ÂǥѶ}±Ò X ®É,¥Î¥H¤U«ü¥O <code> startx -- -bpp 16 </code> ©ÎªÌ±N¤U¦C³o¦æ <code> exec X :0 -bpp 16 </code> Â\¶i§Aªº .xserverrc Àɮפº. µM¦Ó,¬°¤F¨Ï³o¨Ï¯à¥¿±`¤u§@, §A»Ý­n¦³ <code>screen</code> ¬q¸¨¦b§Aªº XF86Config Àɮפ¤: <code> DefaultColorDepth 16 </code> ¦pªG§A¨Ï¥Î xdm,§A¥i¯à»Ý­n§ïÅÜ <file>Xservers</file> ÀÉ®×, ¨ä¤j·§¦ì¸m¬O¦b <file>/etc/X11/xdm/</file>. ¨å«¬ªº³]©wÀÉ´N¥u¦³¤@¦æ, ¬Ý°_¨Ó´N¹³³o¼Ë <code> :0 local /usr/X11R6/bin/X </code> ¥[¤W <code>-bpp 16</code> ¨ì³o startup ¿ï¶µ: <code> :0 local /usr/X11R6/bin/X -bpp 16 </code> ¦AªÌ,§A·|»Ý­n§â¦â²` 16 (bits)ªºÅã¥Ü¥[¤J§Aªº X ³]©wÀɪº `screen' ¬q¸¨³¡¤À. ¤@¯ë§A¥i¥Hª½±µ½Æ»s 8-bitÅã¥Ü³¡¤À,¦Ó§ïÅܦâ²`¤j¤p. ¸û¦hÃC¦â­n§AªºÅã¥Ü¥d¦b¬Û¦Pªº®É¶¡¤º¯àÂà´«¦¨§ó¦h¸ê®Æ. ¦pªG§AªºÅã¥Ü¥d¤£¯àÀ³¥I, ¨º»ò´N¬O¸ÑªR«×[resolution]©Î¬O§ó·s²v[refresh rate]¥²¶·­n­°§C. XFree ¤º©wªº¬O­°§C¸ÑªR«×. ¦pªG§A­n«O«ù¸ÑªR«×¦Ó­°§C§ó·s²v, §A¥²¶··s¥[¤J¤@¦æ¾A·íªº Modeline ¨ì§Aªº XF86Config Àɮפ¤, ¨ä©w¸q¨ã¦³³Ì§C§ó·s²v¤Uªº¸ÑªR«×.Á|­Ó¨Ò¤l, ¨ú¥NÂÂ­È <tscreen><verb> Modeline "1024x768" 75 1024 1048 1184 1328 768 771 777 806 -hsync -vsync </verb></tscreen> ´«¦¨ <tscreen><verb> Modeline "1024x768" 65 1024 1032 1176 1344 768 771 777 806 -hsync -vsync. </verb></tscreen> ³oùتºÅ]³N¼Æ¦r 75 ©M 65 ¬O¦U­Ó®É¯ß²v[clock rates], ¨º¨Ç¬O§A§ä¨ì X °O¿ý¦b§Aªº .X.err ÀÉ®×ùتº. ¬d¸ß¤@¤U¦b XF86 ¤å¥óªº monitors ÀÉ®×,¦³Ãö¦b 16 ¦ì¤¸¦â²`¤U ³Ì¾A¦X§AªºÅã¥Ü¥d¯à°÷¶Ç°e³Ì¤j®É¯ß²vªº Modelines. <sect>°õ¦æ XFree86 <p> ·í§Aªº <tt>XF86Config</tt> ¤w³]©w, §A·Ç³Æ¶}±Ò X server ¸Õ¥Î¤@¤U, ½Ð½T©w <tt>/usr/X11R6/bin</tt> ¦³³]¦b§Aªº path ¤¤. ¶}±Ò XFree86 ªº«ü¥O¬O <tscreen> startx </tscreen> ³o¬O <tt>xinit</tt> ªº«eºÝ¤¶­±[front-end](¦b¨ä¥L UNIX ¨t²Î,§A·|²ßºD¨Ï¥Î <tt>xinit</tt>). ³o«ü¥O±N·|¶}©l X server ¦Ó¥B°õ¦æ¦b§A®Ú¥Ø¿ý[home directory]¤U¤§ <tt>.xinitrc</tt> Àɮפº©Ò§ä¨ìªº«ü¥O. <tt>.xinitrc</tt> ¥u¬O­Ó¥]§t©Ò­n°õ¦æ X clients ªº shell script. ¦pªG³o­ÓÀɮפ£¦s¦b, ¨º»ò¨t²Î¤º©wªº <tt>/usr/X11R6/lib/X11/xinit/xinitrc</tt> ±N·|³Q¨Ï¥Î. ¤@­Ó¼Ð·Ç <tt>.xinitrc</tt> Àɮ׬ݰ_¹³³o¼Ë: <tscreen><verb> #!/bin/sh xterm -fn 7x13bold -geometry 80x32+10+50 & xterm -fn 9x15bold -geometry 80x34+30-10 & oclock -geometry 70x70-7+7 & xsetroot -solid midnightblue & </verb></tscreen> ³o­Ó script ±N¶}±Ò¨â­Ó <tt>xterm</tt> clients, ¤@­Ó <tt>oclock</tt>, ¦Ó¥B³]©w®Úµøµ¡[root window](­I´º)ªºÃC¦â¦¨ <tt>²`ÂŦâ[midnightblue]</tt>. µM«á¥¦¶}±Òµøµ¡ºÞ²zµ{¦¡ <tt>fvwm2</tt>. ª`·N <tt>fvwm2</tt> ¬O¥Î shell ªº <tt>exec</tt> ­z¥y[statement]©Ò°õ¦æªº; ³o³y¦¨ <tt>xinit</tt> µ{§Ç[process]³Q <tt>fvwm2</tt> ¨ú¥N. ¤@¥¹ <tt>fvwm2</tt> µ{§ÇÂ÷¶}, X server ±NÃö²¦. §A¥i¥H¨Ï¥Î root ªí³æ[menus] ¨Ó¨Ï <tt>fvwm2</tt> Â÷¶}: ¦b®à­±­I´º¤W©ñ¶} mouse ªº²Ä¤@­Ó«öÁä---³o±N¥X²{¤U©Ôªí³æ,¨º±NÅý§A¥i¥HÂ÷¶} <tt>Exit Fvwm2</tt>. ½T©w¦b <tt>.xinitrc</tt> ¤¤ªº³Ì«á­±ªº«ü¥O¬O¥H <tt>exec</tt>¬°¶}ÀYªº, ¦Ó¨º¤£·|³Q©ñ¦b­I´º°õ¦æªº (¦Ó¦b¨º¦æ«áÀY,¨S¦³¦A±µµÛ¤°»ò°Ê§@). §_«h, X server Ãö²¦Àþ¶¡, ±N·|¦A¥h°õ¦æ <tt>.xinitrc</tt> Àɮפ¤ªº client. ¦¹¥~, §A¥ç¥i¥H«ö <tt>ctrl-alt-backspace</tt> ¤§²Õ¦XÁä¦ÓÂ÷¶} X. ³o·|ª½±µ¬å±¼ X server, Â÷¶}µøµ¡¨t²Î. ¥H¤W¬O«D±`,«D±`²³æªº®à­±³]©w. ­n¶]³\¦h¦nµ{¦¡¤Î³]©w¬O¥i¥H¦b§Aªº <tt>.xinitrc</tt> Àɮפ¤µy¥[­×§ï§Y¥i°µ¨ì. ¦pªG§A¬O·s±µÄ² X Window System §@·~Àô¹Ò; §Ú­Ì±j¯P«ØÄ³§A¿ï¤@¥»¦n®Ñ, ¹³¬O Niall Manfield µÛ§@ªº <em>The X Window System: A User's Guide</em>(Addison-Wesley 1990). ¨Ï¥Î»P³]©w X ¹ê¦b¬O¤ñ¸û²`¤J©Ò¥H«ÜÃø¯à²[»\¦b³o. ¬Ý¤@¤U <tt>xterm</tt>, <tt>oclock</tt>, ©M <tt>fvwm2</tt> ªº man pages, ´N±q³o¸ê®Æ¶}©l§a. <sect1>¨Ï¥Îªº±ø¥ó <p> ¥»¤å¥ó 1996 ¦~ªºª©ÅvÂkÄÝ©ó Eric S. Raymond. §A¥i¥H¦Û¥Ñ¦a¨Ï¥Î, ´²¥¬, »P½Æ»s, ¥u­n§A: <itemize> <item>¨S¦³²¤¹L©ÎÅܧó³o­Óª©Åvµù©ú. <item>¨S¦³²¤¹L©ÎÅܧó³o­Óª©¥»§Ç¸¹¤Î¤é´Á. <item>¨S¦³²¤¹L©ÎÅܧ󥻤å¥ó©Ò«ü¨ìªº¥Ø«e WWW ª©¥». <item>´N¹³³o¼Ë²M·¡¦a¼Ð¤W¥ô¦ó¿@ÁY©ÎÅܧ󪺪©¥». </itemize> ³o­­¨î¥Øªº¬O«O»Ù¤@¨Ç¼ç¦bªºÅªªÌ, Á×§K¬Ý¨ìªº¬O¦³ªº©Î·lÃaªºª©¥». ¦pªG§A»{¬°§A¦³¨Ò¥~ªº±¡ªp, ¥i¥H¦V§Ú¸ß°Ý¤@¤U. <sect1>·PÁ <p> This document was originated by Matt Welsh in the dim and backward abysm of time. Thanks, Matt! <sect>½Ķ <p> <itemize> <item><url name="¸q¤j§Q»y" url="http://www.pluto.linux.it/ildp/HOWTO/XFree86-HOWTO.html"> <item><url name="´µ©Ôºû¥§¨È»y" url="http://www.lugos.si/delo/slo/HOWTO-sl/XFree86-HOWTO-sl.html"> <item> </itemize><url name="§Jù®J¦è¨È»y" url="http://meta.mioc.hr/XFree86-KAKO.html"> </article>