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

LinuxÉ豸Çý¶¯¿ª·¢Ïê½â ±Ê¼Ç1 LinuxÉ豸Çý¶¯ÈëÃÅ


ʲôÊÇÇý¶¯£¿
×îͨË׵ĽâÊ;ÍÊÇ“ÇýʹӲ¼þÉ豸Ðж¯”
×÷Óã¿
É豸Çý¶¯Óëµ×²ãÓ²¼þÖ±½Ó´ò½»µÀ£¬°´ÕÕÓ²¼þÉ豸µÄ¾ßÌ幤×÷·½Ê½¶ÁдÉ豸¼Ä´æÆ÷£¬Íê³ÉÉ豸µÄÂÖѯ¡¢Öжϴ¦Àí¡¢DMAͨÐÅ£¬½øÐÐÎïÀíÄÚ´æÏòÐéÄâÄÚ´æµÄÓ³É䣬×îÖÕʹͨÐÅÉ豸Äܹ»ÊÕ·¢Êý¾Ý£¬Ê¹ÏÔʾÉ豸Äܹ»ÏÔʾÎÄ×ֺͻ­Ã棬ʹ´æ´¢É豸Äܹ»¼Ç¼ÎļþºÅÊý¾Ý
¼ÆËã»úϵͳµÄÓ²¼þÖ÷ÒªÓÐcpu¡¢´æ´¢Æ÷¡¢ÍâÉè×é³É¡£µ«ÊÇËæ×ÅICÖÆÔ칤Òյķ¢Õ¹£¬Ä¿Ç°£¬Ð¾Æ¬µÄ¼¯³É¶ÈÔ½À´Ô½¸ß£¬ÍùÍùcpuÄÚ²¿¾Í¼¯³ÉÁË´æ´¢Æ÷ºÍÍâÉèÊÊÅäÆ÷¡£ARM´¦ÀíÆ÷¼¯³ÉÁËUART¡¢I2C¿ØÖÆÆ÷£¨2==ƽ·½£©¡¢USB¿ØÖÆÆ÷¡¢SDRAM¿ØÖÆÆ÷µÈ
Çý¶¯Õë¶ÔµÄ¶ÔÏóÊÇ´æ´¢Æ÷ºÍÍâÉ裨°üÀ¨cpuÄÚ²¿¼¯³ÉµÄ´æ´¢Æ÷ºÍÍâÉ裩£¬¶ø²»ÊÇÕë¶ÔcpuºË¡£Linux½«´æ´¢Æ÷ºÍÍâÉè·ÖΪ3¸ö»ù´¡´óÀࣺ×Ö·ûÉ豸¡¢¿éÉ豸¡¢ÍøÂçÉ豸
×Ö·ûÉ豸֮ÄÇЩ±ØÐëÒÔ´®ÐÐ˳ÐòÒÀ´Î½øÐзÃÎʵÄÉ豸£¬Èç´¥ÃþÆÁ¡¢´Å´øÇý¶¯Æ÷¡¢Êó±êµÈ¡£¿ÉÉ豸¿ÉÒÔ°´ÕÕÈÎÒâ˳Ðò½øÐзÃÎÊ£¬ÒÔ¿éΪµ¥Î»½øÐвÙ×÷£¬ÈçÓ²ÅÌ¡¢ÈíÇýµÈ¡£×Ö·ûÉ豸²»¾­¹ýϵͳµÄ¿ìËÙ»º³å£¬¶ø¿éÉ豸¾­¹ýϵͳµÄ¿ìËÙ»º³å¡£µ«ÊÇ£¬×Ö·ûÉ豸ºÍ¿éÉ豸²¢Ã»ÓÐÃ÷ÏԵĽçÏÞ£¬ÈçflashÉ豸·ûºÏ¿éÉ豸µÄÌØµã£¬µ«ÊÇÎÒÃÇÈÔÈ»¿ÉÒÔ°ÑËü×÷Ϊһ¸ö×Ö·ûÉ豸À´·ÃÎÊ
ÔÚLinuxϵͳÖУ¬ÍøÂçÉè±¸ÃæÏòÊý¾Ý°üµÄ½ÓÊպͷ¢ËͶøÉè¼Æ£¬Ëü²¢²»¶ÔÓ¦ÓÚÎļþϵͳµÄ½Úµã¡£ÄÚºËÓëÍøÂçÉ豸µÄͨÐźÍÄÚºËÓë×Ö·ûÉ豸¡¢¿éÉ豸µÄͨÐÅ·½Ê½ÍêÈ«²»Í¬¡£
ÈçÉÏͼËùʾ£¬³ýÍøÂçÉ豸Í⣬×Ö·ûÉ豸Óë¿éÉ豸¶¼±»Ó³Éäµ½LinuxÎļþϵͳµÄÎļþºÍĿ¼£¬Í¨¹ýÎļþϵͳµÄϵͳµ÷ÓýӿÚopen()¡¢write()¡¢read()¡¢close()µÈº¯Êý¼´¿É·ÃÎÊ×Ö·ûÉ豸ºÍ¿éÉ豸¡£¿éÉ豸±È×Ö·ûÉ豸¸´ÔÓ£¬ÔÚËüÉÏÃæ»áÊ×ÏȽ¨Á¢Ò»¸ö´ÅÅÌ/FlashÎļþϵͳ£¬ÈçFAT¡¢Ext3¡¢YAFFS¡¢JFFSµÈFAT¡¢Ext3¡¢YAFFS¡¢JFFS¹æ·¶ÁËÎļþºÍĿ¼ÔÚ´æ´¢½éÖÊÉϵÄ×éÖ¯
Ó¦ÓóÌÐò¿ÉÒÔʹÓÃLinuxµÄϵͳµ÷Óýӿڱà³Ì£¬Ò²¿ÉÓÉʹÓÃc¿âº¯Êý£¬³öÓÚ¿ÉÒÆÖ²ÐԵĿ¼ÂÇ£¬ºóÕ߸üÖµµÃÍÆ¼ö¡£c¿âº¯Êý±¾ÉíÒ²ÊÇͨ¹ýϵͳµ÷ÓýӿڶøÊµÏÖµÄ
ÔÚǶÈëʽϵͳµÄÉè¼ÆÖУ¬LEDÒ»°ãÖ±½ÓÓÉcpuµÄGPIO¿ØÖÆ¡£GPIOÒ»°ãÓÐÁ½×é¼Ä´æÆ÷¿ØÖÆ£¬¼´Ò»×é¿ØÖÆ¼Ä´æÆ÷ºÍÒ»×éÊý¾Ý¼Ä´æÆ÷¡£¿ØÖƼĴæÆ÷¿ÉÉèÖÃGPIO¿ÚµÄ¹¤×÷·½Ê½ÎªÊäÈë»òÊä³ö¡£µ±Òý½ÅÉèÖÃΪÊä³öʱ£¬ÏòÊý¾Ý¼Ä´æÆ÷µÄ¶ÔӦλдÈë1ºÍ0»á·Ö±ðÔÚÒý½ÅÉϲúÉú¸ßµçƽºÍµÍµçƽ£»µ±Òý½ÅÉèÖÃΪÊäÈëʱ£¬¶ÁÈ¡Êý¾Ý¼Ä´æÆ÷µÄ¶ÔӦλ¿É»ñµÃÒý½ÅÉÏÏàÓ¦µÄµçƽÐźÅ


Ïà¹ØÎĵµ£º

LINUXÏÂI2C×ÜÏßÊÊÅäÆ÷³õʼ»¯µ÷ÓÃÁ´

ÒÔ i2c-mpc.c Çý¶¯Ä£¿éΪÀý
fsl_i2c_init -> of_register_platform_driver -> of_register_driver -> driver_register -> bus_add_driver -> driver_attach
-> bus_for_each_dev -> __driver_attach -> driver_probe_device -> really_probe -> drv->probe(dev); ......

Éî¶ÈÍÚ¾òLinux²Ù×÷ϵͳÃüÁî¡°man¡±

manÊÇmanual£¨ÊֲᣩµÄËõд
man¿ÉÒÔÔÚ²»Í¬µÄ°æ±¾ÖÐʹÓã¬Ö÷Òª·ÖΪÁ½Àà¡£Red HatºÍÐí¶àÆäËû»ùÓÚRPMµÄ°æ±¾Ê¹Óô«Í³µÄman³ÌÐò£¬¶ø»ùÓÚDebianµÄ°æ±¾Ê¹ÓÃÒ»¸öÃûΪman-dbµÄÈí¼þ°ü¡£
man£¨1£©
ÔÚÎı¾´°¿ÚÖÐä¯ÀÀÎļþµÄ·½Ê½ÔÚÆÕ±éʹÓÃHTMLºÍPDFµÄʱ´úÖÐËÆºõÓÐЩ¹ýʱÁË£¬µ«ÔÚÖÕ¶Ë´°¿ÚÖÐÔĶÁÎļþÈÔÓÐÆäÓÅÊÆ¡£¶ÔÓÚÄÇЩLinux¿ª·¢ÕßÀ´ ......

LinuxÄÚ´æ¹ÜÀí

LinuxÄÚ´æ¹ÜÀí(ÉÏ)
ÕªÒª£º±¾ÕÂÊ×ÏÈÒÔÓ¦ÓóÌÐò¿ª·¢ÕߵĽǶÈÉóÊÓLinuxµÄ½ø³ÌÄÚ´æ¹ÜÀí£¬ÔÚ´Ë»ù´¡ÉÏÖð²½ÉîÈëµ½ÄÚºËÖÐÌÖÂÛϵͳÎïÀíÄÚ´æ¹ÜÀíºÍÄÚºËÄÚ´æµØÊ¹Ó÷½·¨¡£Á¦Çó´ÓÍâ×ÔÄÚ¡¢Ë®µ½Çþ³ÉµØÒýµ¼ÍøÓÑ·ÖÎöLinuxµØÄÚ´æ¹ÜÀíÓëʹÓá£ÔÚ±¾ÕÂ×îºóÎÒÃǸø³öÒ»¸öÄÚ´æÓ³ÉäµØÊµÀý£¬°ïÖúÍøÓÑÃÇÀí½âÄÚºËÄÚ´æ¹ÜÀíÓëÓû§ÄÚ´æ¹ÜÀíÖ®¼äµØ¹ØÏµ£¬Ï£Í ......

arm linux µÈ´ý¶ÓÁмòµ¥·ÖÎö

Author-------Dansen-----xzd2734@163.com
wait_queue_head_t wait_q;
Ê×ÏÈ¿´¿´
wait_queue_head_tÕâ¸öµÈ´ý¶ÓÁеĽṹ
ÔÚwait.hÖж¨ÒåÁËÕâ¸ö½á¹¹
typedef struct
__wait_queue_head wait_queue_head_t;
struct __wait_queue_head {
 wq_lock_t
lock;
 struct list_head task_list;
};
# define wq_ ......

WindowsϵÄLinuxÐéÄâ»úÍøÂçÅäÖÃ

½ñÌìÔÚÐéÄâ»úÏÂÓÖ֨װÁËlinux£¬ÏÂÃæÊÇ´ÓÍøÉÏËѵ½µÄlinuxÐéÄâ»úµÄÍøÂçÅäÖãº
 
1¡¢ Äã×°ºÃÐéÄâ»úºó,Äã»á·¢ÏÖ¶à³öÀ´Á½¸öÍø¿¨ ,Ò»¸ö1,Ò»¸ö8,
2¡¢ ¹²Ïí¶ÔÍâµÄÍø¿¨£º“±¾µØÁ¬½Ó—ÊôÐÔ—¸ß¼¶” Ñ¡ÖÐ
   ÔÊÐíÆäËûÍøÂçÓû§Í¨¹ý´Ë¼ÆËã»úµÄInternetÁ¬½ÓÀ´Á¬½Ó
  £¨Õâʱ“ÔÊÐíÆäËûÍ ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ