LinuxÇý¶¯µÄһЩ»ù±¾²Ù×÷
LinuxÇý¶¯µÄһЩ»ù±¾²Ù×÷
LinuxÄÚºËÖж¨ÒåÁ˺ܶàºê£¬¶ÔÓ²¼þ¶Ë¿ÚºÍ¼Ä´æÆ÷½øÐвÙ×÷£¬´ÓÍøÉÏËѼ¯ÁËһЩºê¶¨ÒåµÄÐÅÏ¢£º
1. __REG¼òµ¥µÄ˵¾ÍÊÇ»ñµÃºóÃæËùʾÎïÀíµØÖ·Ó³ÉäºóµÄÐéÄâµØÖ·£¬ÀýÈ磺
#define GPLR0 __REG(0x40E00000) /* GPIO Pin-Level Register GPIO<31:0> */
#define GPLR1 __REG(0x40E00004) /* GPIO Pin-Level Register GPIO<63:32> */
#define GPLR2 __REG(0x40E00008) /* GPIO Pin-Level Register GPIO<80:64> */
pxa´¦ÀíÆ÷ÄÚ²¿¼Ä´æÆ÷µÄÎïÀíµØÖ·ºÍÄں˿ռäµÄÐéÄâµØÖ·¶ÔÓ¦¹ØÏµÈçÏÂ:
Intel PXA internal I/O mappings:* 0x40000000 - 0x41ffffff <--> 0xf8000000 - 0xf9ffffff
* 0x44000000 - 0x45ffffff <--> 0xfa000000 - 0xfbffffff
* 0x48000000 - 0x49ffffff <--> 0xfc000000 - 0xfdffffff
2. #define GPLR(x) __REG2(0x40E00000, ((x) & 0x60) >> 3).
»¹ÓÐÒ»¸öת»»µÄ¾ä×Ó#define GPIO_bit(x) (1 << ((x) & 0x1f))
GPIO¹²ÓÐ80¸ö,ËùÒÔ32bitµÄ¼Ä´æÆ÷Ö»ºÃû×é×ö3¸ö. GPIO_BIT¾ÍÊÇ1×óÒÆxλ(²¢ÇÒ²»Òª³¬¹ý32);¶øGPLR(X)ÔòÊǸù¾ÝxµÄÊýÖµ(Õâ¸öÊÇGPIOºÅ,Èç16,37,72)µÃµ½3¸öGPLRÖÐÊôÓÚ¸ÃGPIOµÄGPLRµÄÆðʼµØÖ·,(__REG2¾ÍÊÇ»ñµÃÁ½¸öµØÖ·µÄºÍ).ÕâÑù×Ó¿ÉÒÔͨ¹ýÏÂÃæµÄ¸³Öµ·½·¨:
GPSR(GPIO48_nPOE) = GPIO_bit(GPIO48_nPOE) | GPIO_bit(GPIO49_nPWE);À´ÉèÖÃGPIO48ËùÔÚGPSRµÄ2¸öλ.Õâôһ´ó¶Ñ,ÊÇΪÁËÓõ½GPIOºÅ¶¨ÒåºÃµÄºê.¼òµ¥µÄGPSR3=XXXX|XXXXÒ²ÊÇ¿ÉÒÔµÄ.
3. side effect£¨ÒëΪ±ß¼ÊЧӦ»ò¸±×÷Óã©£ºÊÇÖ¸¶Áȡij¸öµØÖ·Ê±¿ÉÄܵ¼Ö¸õØÖ·ÄÚÈÝ·¢Éú±ä»¯£¬±ÈÈ磬ÓÐЩÉ豸µÄÖжÏ״̬¼Ä´æÆ÷Ö»ÒªÒ»¶ÁÈ¡£¬±ã×Ô¶¯ÇåÁã¡£I/O¼Ä´æÆ÷µÄ²Ù×÷¾ßÓÐside effect£¬Òò´Ë£¬²»ÄÜ¶ÔÆä²Ù×÷²»ÄÜʹÓÃcpu»º´æ
Ïà¹ØÎĵµ£º
ÐÞ¸ÄÄ¿±ê£ºÓÃ×Ô¶¨ÒåµÄppmÍ¼Æ¬Ìæ´ú/drivers/video/logo/logo_linux_clut224.ppm
ͬʱɾ³ýlogo_linux_clut224.c logo_linux_clut224.oÎļþÕâÑù²ÅÄÜʹ±àÒëµÄʹÓÃlogo_linux_clut224.ppmÖØÐ±àÒë
ppmͼƬµÄÉú³É£º
# pngtopnm logo_linux_clut224.png > logo_linux_clut224.pnm
# pnmquant 224 logo_linux_clut224.pnm &g ......
ÏÂÃæÒÔÅäÖÃjava
»·¾³±äÁ¿ÎªÀý½éÉÜÈýÖÖÅäÖû·¾³±äÁ¿µÄ·½·¨¡£
1.ÐÞ¸Ä/etc/profileÎļþ
Èç¹ûÄãµÄ¼ÆËã»ú½ö½ö×÷Ϊ¿ª·¢Ê¹ÓÃÊ±ÍÆ¼öʹÓÃÕâÖÖ·½·¨£¬ÒòΪËùÓÐÓû§
µÄshell
¶¼ÓÐȨʹÓÃÕâЩ»·¾³±äÁ¿£¬¿ÉÄÜ
»á¸øÏµÍ³
´øÀ´°²È«ÐÔÎÊÌâ¡£
(1)ÓÃÎı¾±à¼Æ÷´ò¿ª/etc/profile
(2)ÔÚprofileÎļþĩβ¼ÓÈ룺
JA ......
1 ÒýÑÔ
¡¡¡¡Ị̈߳¨thread£©¼¼ÊõÔçÔÚ60Äê´ú¾Í±»Ìá³ö£¬µ«ÕæÕýÓ¦ÓöàÏ̵߳½²Ù×÷ϵͳÖÐÈ¥£¬ÊÇÔÚ80Äê´úÖÐÆÚ£¬solarisÊÇÕâ·½ÃæµÄٮٮÕß¡£´«Í³µÄUnixÒ²Ö§³ÖÏ̵߳ĸÅÄµ«ÊÇÔÚÒ»¸ö½ø³Ì£¨process£©ÖÐÖ»ÔÊÐíÓÐÒ»¸öỊ̈߳¬ÕâÑù¶àÏ߳̾ÍÒâζ×Å¶à½ø³Ì¡£ÏÖÔÚ£¬¶àÏ̼߳¼ÊõÒѾ±»Ðí¶à²Ù×÷ϵͳËùÖ§³Ö£¬°üÀ¨Windows/NT£¬µ±È»£¬Ò²°üÀ¨Linux¡£
......
ÏÂÃæµÄÎļþµÄʹÓ÷½·¨ÊÇ£º½«ÏÂÃæµÄÎļþ±£´æÔÚlinuxÄÚºËÔ´ÂëĿ¼ÖУ¬ÎļþµÄÃû³ÆÊÇ.config£¬È»ºómake menuconfig,ÔÚ³öÏÖ
µÄÅäÖýçÃæÖÐÑ¡ÔñLoad ConfiguratioÑ¡ÏȻºó¿ÉÒÔÔÚÕâ¸ö»ù´¡ÉÏÐÞ¸Ä×Ô¼ºµÄkernel¡£ÏÂÃæµÄÅäÖÃÊÇ»ùÓÚs3c2410£¬Ö§³Öyaffs2
Îļþϵͳ¡£ÎÒ¿´ÁËһϱàÒë³öÀ´µÄuImage´ó¸ÅÔÚ800k×óÓÒ£¬ºÇºÇôÕâÊDZ¾È˵ÚÒ»´Î³É ......
ºÍ
WindowsϵͳһÑùLinuxÒ²Óо²Ì¬/¶¯Ì¬Á´½Ó¿â£¬ÏÂÃæ½éÉÜ´´½¨ºÍʹÓ÷½·¨£º
¼ÙÉèÓÐÏÂÃæ¼¸¸öÎļþ£º
Í·ÎļþString.h£¬ÉùÃ÷Ïà¹Øº¯ÊýÔÐΣ¬ÄÚÈÝÈçÏ£º
Strlen.c£º
º¯ÊýStrlenµÄʵÏÖ£¬»ñÈ¡¸ø¶¨×Ö·û´®µÄ³¤¶È£¬ÄÚÈÝÈçÏ£º
Strlnen.c£ºº¯Êý
StrNlenµÄʵÏÖ£¬»ñÈ¡¸ø¶¨×Ö·û´®µÄ³¤¶È£¬Èç¹ûÊäÈë×Ö·û´®µÄ³¤¶È´óÓÚÖ¸¶¨µÄ×î´ó³¤¶È£¬Ô ......