Ò׽ؽØÍ¼Èí¼þ¡¢µ¥Îļþ¡¢Ãâ°²×°¡¢´¿ÂÌÉ«¡¢½ö160KB

linuxÇý¶¯Ö® ledÇý¶¯

Á·ÊÖ, µÚÒ»¸ö×Ö·ûÇý¶¯.
ÓÃÄ£¿é¼ÓÔØ·½·¨
»ªÇåÔ¶¼û<ǶÈëʽlinuxÉ豸Çý¶¯¿ª·¢Ïê½â>µÄ´úÂëÄÃÀ´¸ÄµÄ.  
±àÒë¹ý³Ì·¢Ïֺܶà´íÎó.
×îºó·¢ÏÖ Õâ±¾Êé´øµÄÇý¶¯´úÂë¶¼ÊÇ»ùÓÚlinux2.4µÄ...ĿǰÎÒÓõÄlinux2.6, ´úÂ벿·ÖÐèÒª×öÐÞ¸Ä.
Îҵİå×ÓÊÇ ÓÑÉÆÖ®±ÛµÄ 2410.  vmware+ubuntu  nfs½»²æ±àÒë
Ê×ÏÈ
linux2.6Äں˱àÒëÀïÃæÒª´ò¿ªloadable modules,  ÒÔ¼° unload µÄÑ¡ÏîҲҪѡÉÏ ·ñÔòÓò»µ½rmmodÃüÁî ºÇºÇ.
µÚ¶þ (ºÍÉÏÃæµÚÒ»ÌõÒ»Ñù,½ñºóдÇý¶¯¶¼»áÒªÓõ½Õâ¸ö)
ÒªÖÆ×÷linux ÄÚºËÊ÷(linux2.6±ØÐë)
ÔÚlinux2.6.14.1µÄ´úÂëĿ¼
make bzImage 
»áÉú³ÉÒ»¸öÐÂÎļþ vmlinux 
È»ºó make modules   //±àÒëÄ£¿é
       make modules install //°²×°Ä£¿é
½áÊøÖ®ºó»áÔÚ/lib/modulesÏÂÉú³É2.6.14.1Îļþ¼Ð,  Õâ¸ö¾ÍÊÇÄÚºËÊ÷ÁË.  Ö÷ÒªÓõ½µÄ¾ÍÊÇÀïÃæµÄÍ·Îļþ.
µÚÈý
ÐÞ¸ÄÊéÉÏ´øµÄ´úÂë, Ö÷ÒªÊǸĶ˿ںÅ, ÒÔ¼°²¿·Ö´úÂë»ùÓÚlinux2.6»á²»Í¬, , Çë¼ûÎÒÌṩµÄÏÂÔØ, ÀïÃæ°üÀ¨ÁË makefile, Çý¶¯Ô´´úÂë, ²âÊÔ³ÌÐòÔ´´úÂë.
 ×¢Òâ»áÓõ½ioremap()º¯Êý,  ¾ø¶ÔµØÖ·µ½ÐéÄâµØÖ·µÄת»», È»ºóÓÃÖ¸ÕëÀ´¶ÔportBµÄ¼Ä´æÆ÷¸³Öµ
µÚËÄ
²âÊÔ..
½»²æ±àÒë, ÔÚ¿ª·¢°å´®¿ÚÖÕ¶ËÉÏ  insmod ./led.ko   ³öÏÖÌáʾ·û,   rmmod led Ò²³öÏÖÍ˳öÏûÏ¢.
Õâ¸öʱºò×¢ÒâÁË, ÒªÌí¼ÓÉ豸½Úµã, ·ñÔò test³ÌÐòÊÇ´ò²»¿ªÉ豸µÄ.
mknod /dev/leds c 231 0  //´´½¨É豸½Úµã
 
È»ºóÖ´ÐÐ./test    ,  ¿ÉÒÔ¿´µ½¿ª·¢°åÉÏ4¸öledÈ«ÁÁ, È«ºÚ, ÂÖÁ÷....˵Ã÷Õâ¸öÇý¶¯Åª³É¹¦ÁË. 
ÌṩԴÂëÏÂÔØ.ºÜÐË·Ü.
 
¸ÐлÀϺÎ.


Ïà¹ØÎĵµ£º

linux °æ±¾Ñ¡Ôñ

Ò»Ö±ÒÔÀ´£¬¿ÉÄܺܶàÈëÃÅLinuxµÄÅóÓÑÀ´Ëµ£¬¶¼Òª¿¼ÂǵÄÎÊÌ⣬¾ÍÊǾ¿¾¹Ñ¡Ôñʲô·¢Ðа汾£¬ÔÚÕâÀ½áºÏ¸öÈ˵ÄһЩ¾­Ñ飬¸ø´ó¼ÒһЩ½¨Ò飬Ê×ÏÈ£¬ËµÃ÷Ò»
Ï£¬Linux¶¼ÊÇÒ»ÑùµÄÔ­Àí£¬ÓúÃÒ»¸ö°æ±¾£¬Ò»Àïͨ°ÙÀïÃ÷£¬Ã»ÓÐ˵Äĸö×îºÃ£¬Äĸö²»ºÃµÄ£¬¸ù¾Ý×Ô¼ºµÄ¾ßÌåÐèÇóȥѡÔñ²ÅÊÇÖØÒªµÄ¡£
¡¡¡¡1¡¢¼ÒÓÃ×ÀÃæÏµÍ³£¬Ê×ÍÆubuntuϵÁУ¬¶ÔÓ²¼ ......

LinuxÄÚºËÖÐ ±éÀúÁ´±í


×î½üÔÚ¿´Ò»¸ö¿ªÔ´µÄ´úÂ룬һ¶Î´úÂë¿´Á˺ܾö¼Ã»Óп´¶®£¬GoogleÁËһϣ¬¾¡È»ÊÇlinuxÖÐÁ´±íµÄ±éÀú¡£
±éÀúÁ´±í£º
±éÀúÁ´±ílist_for_eachÊÇÒ»¸öºê£¬Õ¹¿ªÁ˾ÍÊÇÒ»¸öforÑ­»·
#define list_for_each(pos, head) \
        for (pos = (head)->next; prefetch(pos->next), pos != ( ......

linuxͼÐνçÃæ±à³Ì»ù±¾ÖªÊ¶

ºÜ¶àLINUX³õѧÕß·Ö²»Çå³þlinuxºÍXÖ®¼ä,XºÍXfree86Ö®¼ä,XºÍKDE,GNOMEµÈÖ®¼äÊÇʲô¹ØÏµ.³£³£»ìÏý¸ÅÄî,ÎÒÏëÒԱȽÏÒ×ÓÚÀí ½âµÄ·½Ê½ËµÃ÷Ò»ÏÂX,X11,XFREE,WM,KDE,GNOMEµÈÖ®¼äµÄ¹ØÏµ.ÓÉÓÚ±¾ÈËˮƽÓÐÏÞ¿ÉÄÜ´æÔÚ´íÎó,Çë¸ßÊÖÖ¸Õý.
Ò»,linux±¾ÉíûÓÐͼÐνçÃæ,linuxÏÖÔÚµÄͼÐνçÃæµÄʵÏÖÖ»ÊÇlinuxϵÄÓ¦ÓóÌÐòʵÏÖµÄ.
ͼ ÐνçÃæ²¢²»ÊÇ ......

LinuxÐźÅÁ¿ ¹²ÏíÄÚ´æºÍÏûÏ¢¶ÓÁÐ

LinuxÐźÅÁ¿ ¹²ÏíÄÚ´æºÍÏûÏ¢¶ÓÁÐ
1. ÐźÅÁ¿
ʹÓÃÐźÅÁ¿¿ÉÒÔʵÏÖ½ø³Ì¼äͬ²½¡£Ö÷Òªº¯Êý¶¨Ò壺
#include <sys/sem.h>
int semctl(int sem_id, int sem_num, int command, …);
int semget(key_t key, int num_sems, int sem_flags);
int semop(int sem_id, struct sembuf *sem_ops, size_t num_sem_ops);
& ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ