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

linuxµÄplatformÇý¶¯

´ÓLinux 2.6ÆðÒýÈëÁËÒ»Ì×еÄÇý¶¯¹ÜÀíºÍ×¢²á»úÖÆ:Platform_deviceºÍPlatform_driver¡£
LinuxÖд󲿷ֵÄÉ豸Çý¶¯£¬¶¼¿ÉÒÔʹÓÃÕâÌ×»úÖÆ, É豸ÓÃPlatform_device±íʾ£¬Çý¶¯ÓÃPlatform_driver½øÐÐ×¢²á¡£
 
Linux platform driver»úÖÆºÍ´«Í³µÄdevice driver »úÖÆ(ͨ¹ýdriver_registerº¯Êý½øÐÐ×¢²á)Ïà±È£¬Ò»¸öÊ®·ÖÃ÷ÏÔµÄÓÅÊÆÔÚÓÚplatform»úÖÆ½«É豸±¾ÉíµÄ×ÊÔ´×¢²á½øÄںˣ¬ÓÉÄÚºËͳһ¹ÜÀí£¬ÔÚÇý¶¯³ÌÐòÖÐʹÓÃÕâЩ×ÊԴʱͨ¹ýplatform deviceÌṩµÄ±ê×¼½Ó¿Ú½øÐÐÉêÇ벢ʹÓá£ÕâÑùÌá¸ßÁËÇý¶¯ºÍ×ÊÔ´¹ÜÀíµÄ¶ÀÁ¢ÐÔ£¬²¢ÇÒÓµÓнϺõĿÉÒÆÖ²ÐԺͰ²È«ÐÔ(ÕâЩ±ê×¼½Ó¿ÚÊǰ²È«µÄ)¡£
 
Platform»úÖÆµÄ±¾ÉíʹÓò¢²»¸´ÔÓ£¬ÓÉÁ½²¿·Ö×é³É£ºplatform_deviceºÍplatfrom_driver¡£
ͨ¹ýPlatform»úÖÆ¿ª·¢·¢µ×²ãÇý¶¯µÄ´óÖÂÁ÷³ÌΪ:  ¶¨Òå platform_device à ×¢²á platform_device à ¶¨Òå platform_driver à×¢²á platform_driver¡£
 
Ê×ÏÈҪȷÈϵľÍÊÇÉ豸µÄ×ÊÔ´ÐÅÏ¢£¬ÀýÈçÉ豸µÄµØÖ·£¬ÖжϺŵȡ£
ÔÚ2.6ÄÚºËÖÐplatformÉ豸ÓýṹÌåplatform_deviceÀ´ÃèÊö£¬¸Ã½á¹¹Ì嶨ÒåÔÚkernel\include\linux\platform_device.hÖУ¬
struct platform_device {
 const char * name;
 u32  id;
 struct device dev;
 u32  num_resources;
 struct resource * resource;
};
 
¸Ã½á¹¹Ò»¸öÖØÒªµÄÔªËØÊÇresource£¬¸ÃÔªËØ´æÈëÁË×îÎªÖØÒªµÄÉ豸×ÊÔ´ÐÅÏ¢£¬¶¨ÒåÔÚkernel\include\linux\ioport.hÖУ¬
struct resource {
 const char *name;
 unsigned long start, end;
 unsigned long flags;
 struct resource *parent, *sibling, *child;
};
 
ÏÂÃæ¾Ùs3c2410ƽ̨µÄi2cÇý¶¯×÷ΪÀý×ÓÀ´ËµÃ÷£º
/* arch/arm/mach-s3c2410/devs.c */
/* I2C */
static struct resource s3c_i2c_resource[] = {
         [0] = {
                   .start = S3C24XX_PA_IIC,
                   .end = S3C24XX_PA_IIC + S3C24XX_SZ_IIC - 1,
            &


Ïà¹ØÎĵµ£º

[תÌû]LinuxÇý¶¯¿ª·¢Ñ§Ï°µÄһЩ±ØÒª²½Öè

 1. ѧ»áд¼òµ¥µÄmakefile
2. ±àһЩӦÓÃ
³ÌÐò
£¬¿ÉÒÔÓÃmakefileÅÜÆðÀ´
3. ѧ»áдÇý¶¯
µÄmakefile
4. дһ¼òµ¥charÇý¶¯£¬makefile±àÒëͨ¹ý£¬¿ÉÒÔinsmod£¬ lsmod£¬ rmmod. ÔÚÇý¶¯µÄinitº¯ÊýÀï´òÓ¡hello world£¬insmodºóÓ¦¸ÃÄܹ»Í¨¹ýdmesg¿´µ½Êä³ö
¡£
5. дһÍêÕûÇý¶¯£¬ ¼ÓÉÏread£¬ write£¬ ioctl£¬ pollingµÈ¸ ......

linuxÏÂʹÓÃP4£¨ÃüÁîÐУ©

 »·¾³±äÁ¿:
export P4PASSWD=abcdefg
export P4CLIENT=dyoldfish.com    //Õâ¸ö¿ÉÒÔ²»Éè
export P4USER=dyoldfish
export P4PORT=192.168.1.198:1666
ÃüÁ
1¡¢p4 client  #ÅäÖñ¾µØÐÅÏ¢£¬ÎļþÏÂÔØÔÚÄÄÀïÔÚÕâÀïÃæÅäÖã¬RootÏî
2¡¢p4 sync   #´Óperforce ÏÂÔØÎļþ
3¡¢p4 login& ......

linux viÃüÁîʹÓÃ

 linuxÏÂvi±à¼­Æ÷ÃüÁî
Îı¾±à¼­Æ÷ÊÇËùÓмÆËã»úϵͳÖÐ×î³£ÓõÄÒ»ÖÖ¹¤¾ß¡£UNIXϵı༭Æ÷ÓÐex,sedºÍviµÈ£¬ÆäÖУ¬Ê¹ÓÃ×îΪ¹ã·ºµÄÊÇvi£¬¶øviÃüÁî·±¶à£¬ÂÛ̳ÀïºÃÏñÕâ·½ÃæµÄ×ܽ᲻¶à£¬ÒÔÏÂÉÔ×ö×ܽᣬÒÔ×ʹ²Ïí!¿ÊÍû¸üÕýºÍ²¹³ä!
¡¡¡¡½øÈëviµÄÃüÁî
¡¡¡¡vi filename :´ò¿ª»òн¨Îļþ£¬²¢½«¹â±êÖÃÓÚµÚÒ»ÐÐÊ×
¡¡¡¡vi +n filena ......

LinuxϵͳӲÅ̵ÄÕûÀíά»¤¼°ÆäÓÅ»¯

ÔÚWindowsϵͳÖУ¬´ÅÅÌË鯬ÊÇÒ»¸ö³£¼ûµÄÎÊÌ⣬Èç¹û²»×¢Ò⣬ϵͳÐÔÄÜ¿ÉÄܱ»ÇÖÊ´¡£LinuxʹÓõڶþÀ©Õ¹Îļþϵͳ(ext2)£¬ËüÒÔÒ»ÖÖÍêÈ«²»Í¬µÄ·½Ê½´¦ÀíÎļþ´æ´¢¡£LinuxûÓÐWindowsϵͳÖз¢ÏÖµÄÄÇÖÖÎÊÌ⣬ÕâʹµÃÐí¶àÈËÈÏΪ´ÅÅÌË鯬»¯¸ù±¾²»ÊÇÒ»¸öÎÊÌâ¡£µ«ÊÇ£¬ÕâÊDz»ÕýÈ·µÄ¡£
ËùÓеÄÎļþÏµÍ³Ëæ×Åʱ¼äµÄÍÆÒÆ¶¼Ç÷ÏòÓÚË鯬»¯¡£LinuxÎÄ ......

linuxµÄplatformÇý¶¯

 ´ÓLinux 2.6ÆðÒýÈëÁËÒ»Ì×еÄÇý¶¯¹ÜÀíºÍ×¢²á»úÖÆ:Platform_deviceºÍPlatform_driver¡£
LinuxÖд󲿷ֵÄÉ豸Çý¶¯£¬¶¼¿ÉÒÔʹÓÃÕâÌ×»úÖÆ, É豸ÓÃPlatform_device±íʾ£¬Çý¶¯ÓÃPlatform_driver½øÐÐ×¢²á¡£
 
Linux platform driver»úÖÆºÍ´«Í³µÄdevice driver »úÖÆ(ͨ¹ýdriver_registerº¯Êý½øÐÐ×¢²á)Ïà±È£¬Ò»¸öÊ® ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ