LinuxÇý¶¯µÄ±àÒëÓë¼ÓÔØ
±àÒëºÍ¼ÓÔØ
±¾Õ¿ªÍ·µÄ "hello world" Àý×Ó°üº¬ÁËÒ»¸ö¼ò¶ÌµÄ½¨Á¢²¢¼ÓÔØÄ£¿éµ½ÏµÍ³ÖÐÈ¥µÄÑÝʾ. µ±È», Õû¸ö¹ý³Ì±ÈÎÒÃÇÄ¿Ç°¿´µ½µÄ¶à. ±¾½ÚÌṩÁ˸ü¶àϸ½Ú¹ØÓÚÒ»¸öÄ£¿é×÷ÕßÈçºÎ½«Ô´Âëת»»³ÉÄÚºËÖеÄÔËÐеÄ×Óϵͳ.
2.4.1. ±àÒëÄ£¿é
µÚÒ»²½, ÎÒÃÇÐèÒª¿´Ò»ÏÂÄ£¿éÈçºÎ±ØÐë±»½¨Á¢. Ä£¿éµÄ½¨Á¢¹ý³ÌÓëÓû§¿Õ¼äµÄÓ¦ÓóÌÐòµÄ½¨Á¢¹ý³ÌÓÐÏÔÖø²»Í¬; ÄÚºËÊÇÒ»¸ö´óµÄ, ¶ÀÁ¢µÄ³ÌÐò, ¶ÔÓÚËüµÄ¸÷¸ö²¿·ÖÈçºÎ×éºÏÔÚÒ»ÆðÓÐÏêϸµÄÃ÷È·µÄÒªÇó. ½¨Á¢¹ý³ÌÒ²ÓëÒÔÇ°°æ±¾µÄÄں˵Ĺý³Ì²»Í¬; еĽ¨Á¢ÏµÍ³ÓÃÆðÀ´¸ü¼òµ¥²¢ÇÒ²úÉú¸üÕýÈ·µÄ½á¹û, µ«ÊÇËü¿´ÆðÀ´ÓëÒÔÇ°·Ç³£²»Í¬. Äں˽¨Á¢ÏµÍ³ÊÇһͷ¸ºÔðµÄÒ°ÊÞ, ÎÒÃǾͿ´ËüһС²¿·Ö. ÔÚÄÚºËÔ´ÂëµÄ Document/kbuild Ŀ¼Ï·¢ÏÖµÄÎļþ, ÈκÎÏëÀí½â±íÃæ֮ϵÄÕæʵÇé¿öµÄÈ˶¼ÒªÔĶÁÒ»ÏÂ.
Óм¸¸öÇ°Ìá, Äã±ØÐëÔÚÄܽ¨Á¢ÄÚºËÄ£¿éÇ°½â¾ö. µÚÒ»¸öÊDZ£Ö¤ÄãÓа汾×㹻еıàÒëÆ÷, Ä£¿é¹¤¾ß, ÒÔ¼°ÆäËû±ØÒª¹¤¾ß. ÔÚÄÚºËÎĵµÄ¿Â¼ÏµÄÎļþ Documentation/Changes Ò»Ö±ÁгöÁËÐèÒªµÄ¹¤¾ß°æ±¾; ÄãÓ¦µ±ÔÚÏòÇ°×ß֮ǰ²Î¿¼Ò»ÏÂËü. ÊÔͼ½¨Á¢Ò»¸öÄÚºË(°üÀ¨ËüµÄÄ£¿é), ÓôíÎóµÄ¹¤¾ß°æ±¾, ¿ÉÄܵ¼Ö²»¾¡µÄÆæ¹ÖµÄÄÑÌâ. ×¢Òâ, ż¶ûµØ, ±àÒëÆ÷µÄ°æ±¾Ì«Ð¿ÉÄÜ»áÒýÆðºÍÌ«Àϵİ汾ÒýÆðµÄÒ»ÑùµÄÎÊÌâ. ÄÚºËÔ´Âë¶ÔÓÚ±àÒëÆ÷×öÁ˺ܴóµÄ¼ÙÉè, еķ¢Ðа汾ÓÐʱ»áһʱµØÆÆ»µ¶«Î÷.
Èç¹ûÄãÈÔȻûÓÐÒ»¸öÄÚºËÊ÷ÔÚÊÖ±ß, »òÕß»¹Ã»ÓÐÅäÖúͽ¨Á¢ÄÚºË, ÏÖÔÚÊÇʱ¼äÈ¥×öÁË. ûÓÐÔ´ÂëÊ÷ÔÚÄãµÄÎļþϵͳÉÏ, ÄãÎÞ·¨Îª 2.6 Äں˽¨Á¢¿É¼ÓÔصÄÄ£¿é. ʵ¼ÊÔËÐÐΪÆä¶ø½¨Á¢µÄÄÚºËÒ²ÊÇÓаïÖúµÄ( ¾¡¹Ü²»ÊDZØÒªµÄ ).
Ò»µ©ÄãÒѽ¨Á¢ÆðËùÓж«Î÷, ¸øÄãµÄÄ£¿é´´½¨Ò»¸ö makefile ¾ÍÊÇÖ±½ØÁ˵±µÄ. ʵ¼ÊÉÏ, ¶ÔÓÚ±¾ÕÂÇ°ÃæչʾµÄ" hello world" Àý×Ó, µ¥Ðо͹»ÁË:
obj-m := hello.o
ÊìϤ make , µ«ÊÇ¶Ô 2.6 Äں˽¨Á¢ÏµÍ³²»ÊìϤµÄ¶ÁÕß, ¿ÉÄÜÆæ¹ÖÕâ¸ö makefile ÈçºÎ¹¤×÷. ±Ï¾¹ÉÏÃæµÄÕâÒ»Ðв»ÊÇÒ»¸ö´«Í³µÄ makefile µÄÑù×Ó. ´ð°¸, µ±È», ÊÇÄں˽¨Á¢ÏµÍ³´¦ÀíÁËÓàÏµĹ¤×÷. ÉÏÃæµÄ°²ÅÅ( ËüÀûÓÃÁËÓÉ GNU make ÌṩµÄÀ©Õ¹Óï·¨ )±íÃ÷ÓÐÒ»¸öÄ£¿éÒª´ÓÄ¿±êÎļþ hello.o ½¨Á¢. ÔÚ´ÓÄ¿±êÎļþ½¨Á¢ºó½á¹ûÄ£¿éÃüÃûΪ hello.ko.
·´Ö®, Èç¹ûÄãÓÐÒ»¸öÄ£¿éÃûΪ module.ko, ÊÇÀ´×Ô 2 ¸öÔ´Îļþ( ¹ÃÇÒ³Æ֮Ϊ, file1.c ºÍ file2.c ), ÕýÈ·µÄÊéдӦµ±ÊÇ:
obj-m := module.o
module-objs := file1.o file2.o
¶ÔÓÚÒ»¸öÏóÉÏÃæչʾµÄÒª¹¤×÷µÄ makefile, Ëü±ØÐëÔÚ¸ü´óµÄÄں˽¨Á¢ÏµÍ³µÄÉÏÏÂÎı»µ÷Ó
Ïà¹ØÎĵµ£º
ÓÉÓÚ£¬ÐèÒª¶¨Ê±±¸·ÝÊý¾Ý£¬ËùÒÔʹÓà 7zaÀ´´ò°ü¡£¡£¡£ Ä¿±êÎļþ¼Ð¾³£º¬ÓдóÁ¿µÄÓû§ÉÏ´«Í¼Æ¬£¬ÕâЩͼƬÎÞÐè¸ßÃܶȶ¨ÆÚ±¸·Ý£¬ËùÒÔ£¬Ï£ÍûÔÚ´ò°üµÄʱºòÅųýËüÃÇ¡£¡£
Ñо¿ÁËÒ»ÏÂ7zaµÄÃüÁîÐУ¬´óÖ¿ÉÒÔÕâÑùÍê³É£º
7za a '-x!backup/fold/' test.zip backup
&nb ......
access£¨ÅжÏÊÇ·ñ¾ßÓдæÈ¡ÎļþµÄȨÏÞ£©
¡¡¡¡Ïà¹Øº¯Êý stat£¬open£¬chmod£¬chown£¬setuid£¬setgid
¡¡¡¡±íÍ·Îļþ #include<unistd.h>
¡¡¡¡¶¨Ò庯Êý int access(const char * pathname,int mode);
¡¡¡¡º¯Êý˵Ã÷ access()»á¼ì²éÊÇ·ñ¿ÉÒÔ¶Á/дijһÒÑ´æÔÚµÄÎļþ¡£²ÎÊýmodeÓм¸ÖÖÇé¿ö×éºÏ£¬R_OK ......
<!--
@page { margin: 2cm }
P { margin-bottom: 0.21cm }
A:link { so-language: zxx }
-->
´ó¼ÒÖªµÀ£¬
MeeGo
×ÀÃæµÄ×î´óÌصãÊÇʹÓÃ×ÔÓÉ£¨
free
use
£©£¬²»ÂÛÄãÔÚʲôµØ·½£¨Ê²Ã´¹ú¼Ò£©£¬Ò²²»ÂÛÄãÏëÓÃËü¸ÉʲôÊÂÇé¡£ÄÇô£¬
MeeGo
ÊDz»ÊÇÀ¬»ø´úÂëÄØ£¿µ±È»²»ÊÇ¡£ ......
ÔÚÍøÉÏ¿´µ½ÓÐÈË×ܽáµÃ²»´í
1£®¿ª»úÆô¶¯Ê±×Ô¶¯ÔËÐгÌÐò
Linux
¼ÓÔغó, Ëü½«³õʼ»¯Ó²¼þºÍÉ豸Çý¶¯, È»ºóÔËÐеÚÒ»¸ö½ø³Ìinit¡£init¸ù¾ÝÅäÖÃÎļþ¼ÌÐøÒýµ¼¹ý³Ì£¬Æô¶¯ÆäËü½ø³Ì¡£Í¨³£Çé¿öÏ£¬Ð޸ķÅÖÃ
ÔÚ /etc/rc»ò /etc/rc.d »ò /etc/rc?.d Ŀ¼ÏµĽű¾Îļþ£¬¿ÉÒÔʹinit×Ô¶¯Æô¶¯Æ ......