ÔµØÖ·£ºhttp://selftest.51cto.com/subread.php?sid=213
×Ô²â¼ò½é£º
ShellÒ²½Ð×öÃüÁîÐнçÃæ£¬ËüÊÇUnix/ÀàUnix²Ù×÷ϵͳÏ´«Í³µÄÓû§ºÍ¼ÆËã»úµÄ½»»¥½çÃæ¡£Óû§Ö±½ÓÊäÈëÃüÁîÀ´Ö´Ðи÷ÖÖ¸÷ÑùµÄÈÎÎñ¡£µ±È»Î¢ÈíµÄWindows²Ù×÷ϵͳҲÌṩÁËÕâÑùµÄ¹¦ÄÜ£¬ËüÃÇÊÇWindows 9XϵÄcommand.com£¬ºÍ»ùÓÚWindows NTµÄ¸÷ÖÖϵͳϵÄcmd.exe¡£ÆÕͨÒâÒåÉϵÄshell¾ÍÊÇ¿ÉÒÔ½ÓÊÜÓû§ÊäÈëÃüÁîµÄ³ÌÐò¡£ËüÖ®ËùÒÔ±»³Æ×÷shellÊÇÒòΪËüÒþ²ØÁ˲Ù×÷ϵͳµÍ²ãµÄϸ½Ú¡£Í¬ÑùµÄUnix/ÀàUnixϵÄͼÐÎÓû§½çÃæGNOMEºÍKDE£¬ÓÐʱҲ±»½Ð×öÐéÄâshell»òÕßͼÐÎshell¡£
±¾Ì×¼¼Êõ×Ô²â´ÓÖ÷Òª´ÓshellµÄÏà¹ØÖªÊ¶µã³ö·¢£¬¾¡¿ÉÄܶàµÄº¸ÇshellµÄ·½·½ÃæÃæ¡£¡£Í¨¹ý±¾Ì×¼¼Êõ×Ô²â¿ÉÒÔ¼ì²âÄã¶ÔshellµÈlinux»ù´¡ÖªÊ¶µÄÕÆÎճ̶ȡ£±¾Ì×ÊÔÌâÒ²ÊʺÏÐÂÊÖ½ø½×£¬Í¬Ê±±¾Ì××Բ⺸ÇÁËÖ÷Á÷linuxÈÏÖ¤¹¤³ÌʦÖйØÓÚshellµÄÖØÒªÖªÊ¶µã£¬ÕÆÎÕÁËÕâЩ£¬¶ÔÄã²Î¼ÓlinuxÏà¹ØÈÏÖ¤Óкܴó°ïÖú¡£
Ïà¹Ø¼¼Êõ×Բ⣺linux¹ÜÀíÔ±±Ø±¸ÀûÆ÷£ºvi±à¼Æ÷¹¥ÂÔ
& ......
´íÎóÓ¡ÏóºÍÈÏʶÂÞÁÐÈçÏ£¬Ò»Ò»½âÊÍ£º
1¡£linuxϵÄÈí¼þÌ«ÉÙ
»Ø´ð£ºlinux ϵÄÈí¼þÒ»µãÒ²²»ÉÙ¡£windows»¹ÔÚÄï¶Ç×ÓÀïµÄʱºò£¬UnixÒѾÈçÈÕÖÐÌìÁË¡£ÒªÖªµÀ΢Èí¹«Ë¾¿ª·¢µÄµÚÒ»¸ö²Ù×÷ϵͳÊÇʲôÂð£¿ÊÇÒ»¸ö½Ð×öXenixµÄ¶«Î÷£¬ÊÇUnixµÄÒ»¸ö·ÖÖ§£¬ºóÀ´²ÅÈ¥¸ãDOSµÄ¡£ÓÐÈËÓÖÎÊÁË£¬Unix²»ÊÇLinux°¢£¬ÒªÖªµÀ£¬LinuxÍêÈ«ÖØÐµÄʵÏÖÁËUnix£¬ÊÇÒ»¸öÍêÕûµÄÀàUnixϵͳ£¬¼¸ºõËùÓеÄUnixϵÄÈí¼þÒªÒÆÖ²µ½Linuxϲ»·Ñ´µ»ÒÖ®Á¦£¬ÉõÖÁ°Ñ¶þ½øÖÆ´úÂ뿽±´¹ýÀ´¾ÍÄÜÓã¨Ç°ÌáÊÇÓ²¼þƽ̨Ïàͬ£©¡£ÁíÍ⣬GNUÆìϵÄ×ÔÓÉÈí¼þ¸üÊÇÊý²»Ê¤Êý£¬ÍêÈ«ÄÜÂú×ãÄãµÄÈκÎÐèÒª¡£
Èç¹ûӲҪ˵LinuxÓÐʲôӲÉ˵ϰ£¬ÄǾÍÊÇÓÎÏ·Èí¼þ²»×ã¡£windowsϵÄÐí¶à´ó¼Ò¶úÊìÄÜÏêµÄÓÎÏ·£¬ÊDz»ÄÜÖ±½ÓÔÚlinuxÏÂÍæµÄ£¬µ«ÊÇÏÖÔÚ³öÀ´ÁËһЩÈí¼þ£¬¿ÉÒÔËÆµÃwindowsϵÄÈí¼þÔÚlinuxÏÂÖ±½ÓÔËÐУ¬Èçwine.¾ÝÎÒËùÖª£¬ÔÚLinuxϰ²×°wineºó£¬¿ÉÒÔÅÜÆðÀ´Ðí¶àÓÎÏ·£¬°üÀ¨Ä§ÊÞÕù°ÔµÈµÈ£¬¶øÇÒ²»¿¨£¬ºÜÁ÷³©¡£µ«¿ÉϧµÄÊÇ£¬wine»¹²»Ì«³ÉÊ죬»¹Óв¿·ÖÈí¼þÅܲ»ÆðÀ´¡£
µ«ÊÇLinuxϵÄÓÎÏ·Èí¼þÈÔÈ»ºÜ¶à£¬²»¹ýÐí¶à´ó¼Ò¶¼²»Ê죬µ«ÔÚÅ·ÃÀºÜÁ÷ÐС£ÒªÖªµÀLinuxÔÚÅ·ÃÀÊÇÏ൱Á÷Ðеġ£
Ʋ¿ªÓÎÏ·Èí¼þÀ´Ëµ£¬LinuxÏ ......
»òÎÊ£ºLinux¼æÈÝÐԲ
ÕæµÄÊÇÕâÑùÂ𣿴Ó2.6.30Äں˿ªÊ¼£¬Çý¶¯³ÌÐòÕ¼Õû¸öÄں˵ĴúÂë±ÈÂÊÊ״γ¬¹ý50£¥¡£¾ÍÔÚ2009ÄêÊ¥µ®½ÚÄÇÌ죬Linus Torvalds ÔÚ¸ø´ó¼Ò·¢µÄÊ¥µ®¿ìÀÖµÄÓʼþÖжԴúÂë×öÁËͳ¼Æ£¬Çý¶¯³ÌÐòµÄ´úÂ뾹ȻռÁËËùÓдúÂëµÄ69£¥ÁËÒѾ£¬ÏÖÔÚÄÚºË×î¸ß°æ±¾ÊÇ2.6.32¡£ÓÎÏ·Ò¡¸ËʲôµÄ¶¼ÒѾ֧³ÖÁË£¬ÏÖÔÚÆÕͨµÄPC£¬ÖÁÉÙÔÚÖйú£¬ÒѾÅö²»µ½Çý¶¯²»ÆðÓ²¼þµÄÇé¿öÁË¡£ÏÖÔÚÁ÷ÐеÄUbuntu²Ù×÷ϵͳ£¬ÊÇ×îÁ÷ÐеÄÒ»¸öLinux·¢Ðа棬°²×°ºÃºóÒ»°ã¿ÉÄÜ»¹Òª°²×°ÏÂÏÔ¿¨Çý¶¯£¬ÆäËûµÄ¾Í²»¹ÜÁË¡£ÔڱʼDZ¾ÉÏÉõÖÁÁ¬ÏÔ¿¨Çý¶¯¶¼²»ÓÃ×°£¬ÏµÍ³ÒѾº¬ÁË¡£ÕâÒ²ÊÇLinuxÊ¡Ðĵĵط½£¬°²×°ºÃºó£¬ÔÙ×°¸öÏÔ¿¨Çý¶¯£¬¾ÍËãÍêÁË£¬Ê£ÏµÄʱ¼äÓÃÀ´ÅäÖÃϵͳ£¬ºÏÊÊ×Ô¼ºµÄÐèÒª¡£²»ÅäÖÃÒ²¿ÉÒÔ£¬Õâʱʲô¶¼ÄÜÓÃÁË¡£²»ÏñwindowsÏ£¬´ËʱÐèÒªÂúÌìϵÄËÑÐèÒªµÄÈí¼þ£¬È»ºóÂúÌìϵÄÕÒ×¢²áÂ룬ÔÙװɱ¶¾Èí¼þ……¡£¶ÔÁË£¬Linuxϲ»ÓÃװɱ¶¾Èí¼þ¡£ ......
ÈçºÎÈÃLinux¸ÉµôWindows£¿ÎÒ³ÐÈÏ£¬ÕâÊÇÓеã±êÌâµ³ÁË¡£µ«Õâ¸öÎʺţ¬¹À¼ÆºÜ¶àLinuxµÄ·ÛË¿²»ÖªµÀ»ÃÏë¹ý¶àÉٱ飻ҡÆìÄź°£¬ÁоÙLinuxÖÚ¶àÓŵ㣬ÂÞÁÐWindows¸÷ÖÖ×ïÐУ¬¾ÍÊÇÈÃÈËÃÇÈ¥ÊÔÊÔLinux¡£¿ÉÊǽá¾ÖÔõôÑù£¿´ó¼Ò¶¼¿´µ½ÁË¡£
ΪʲôLinux»áʧ°Ü£¿àÞ£¬²»Ó¦¸Ã˵ÊÇʧ°Ü£¬Ó¦¸ÃÊÇ˵ΪʲôռÓÐÂÊÔ¶Ô¶µÍÓÚWindows£¿ÒªÖªµÀ£¬Windows¿ÉÊÇÒª¸¶´ó°Ñ´ó°Ñ³®Æ±£¬¶øLinuxµÄ·¢Ðаæ´ó¶àÊý¶¼ÊÇÃâ·ÑµÄ¡£Äª·ÇÈ«ÌìϵÄÈ˶¼ÉµÁ˲»³É£¬ÓÐÃâ·ÑµÄ²»Ó㬾ÍÒª´ÕÈÈÄÖÈ¥³öµãѪ£¿
ºÃ°É£¬ÎÒÃǾÍÒÔÒ»¸ö×îÆÕͨµÄÓû§½Ç¶ÈÀ´¿´¿´°É¡£ÏëÏñһϣ¬³ýÈ¥¹¤×÷ÒÔÍ⣬ÎÒÃÇ»áÓõçÄÔÀ´¸Éɶ£¿
ÉÏÍø¡£Õâ¸ö£¬LinuxÉϵÄFireFox¾ÍÄÜ×öµ½¡£µ±È»ÕâÊÇÄÜ×öµ½£¬²¢²»´ú±íÍêÃÀ¡£ÓжàÉÙÍøÒ³²»ÊÇÒÀÕÕ΢ÈíµÄ¹æ·¶£¬ÒÔ½øÐÐÀ©³ä£¬µ¼ÖÂFireFox²»ÄÜÕý³£ÏÔʾµÄ£¿Äã¿ÉÒÔà©à©²»ÐݵضÔÓû§Ëµ£¬ÕâÊÇÒòÎªÍøÕ¾Ã»ÓзûºÏ±ê×¼¹æ·¶£¬µ¼ÖÂFireFoxÏÔʾ²»Õý³££¬¶øIEÕý³£ÊÇÒòΪ΢Èí¸ãµÃ¹íÖ®ÀàµÈµÈ¡£ÎÒÏëû¼¸¸öÓû§»áÈ¥ÊÔͼÀí½â£¬È»ºóÈÌÊÜÕâ²»ÊÊ¡£¶ÔÓÚËûÃÇÀ´Ëµ£¬ÍøÒ³ÏÔʾ²»Õý³££¬ÎÞ·¨Ê¹ÓÃQQ¿Õ¼ä£¬²»ÄܽøÐÐ͵²ËÕâһȫÃñ»î¶¯£¬»¹²»ÈçÈÃËûÃÇÔÒÁ˵çÄÔËãÁË¡£ÓÃLinux + Fire ......
ϵͳÖÐÄܹ»Ëæ»ú£¨²»ÐèÒª°´Ë³Ðò£©·ÃÎʹ̶¨´óСÊý¾ÝƬ£¨chunks£©µÄÉ豸±»³Æ×÷¿éÉ豸£¬ÕâЩÊý¾ÝƬ¾Í³Æ×÷¿é¡£×î³£¼ûµÄ¿éÉ豸ÊÇÓ²ÅÌ£¬³ý´ËÒÔÍ⣬»¹ÓÐÈíÅÌÇý¶¯Æ÷¡¢CD-ROMÇý¶¯Æ÷ºÍÉÁ´æµÈµÈÐí¶àÆäËû¿éÉ豸¡£×¢Ò⣬ËüÃǶ¼ÊÇÒÔ°²×°ÎļþϵͳµÄ·½Ê½Ê¹Óõė—ÕâÒ²ÊÇ¿éÉ豸һ°ãµÄ·ÃÎÊ·½Ê½¡£
ÁíÒ»ÖÖ»ù±¾µÄÉ豸ÀàÐÍÊÇ×Ö·ûÉ豸¡£×Ö·ûÉ豸°´ÕÕ×Ö·ûÁ÷µÄ·½Ê½±»ÓÐÐò·ÃÎÊ£¬Ïñ´®¿ÚºÍ¼üÅ̾Ͷ¼ÊôÓÚ×Ö·ûÉ豸¡£Èç¹ûÒ»¸öÓ²¼þÉ豸ÊÇÒÔ×Ö·ûÁ÷µÄ·½Ê½±»·ÃÎʵϰ£¬ÄǾÍÓ¦¸Ã½«Ëü¹éÓÚ×Ö·ûÉ豸£»·´¹ýÀ´£¬Èç¹ûÒ»¸öÉ豸ÊÇËæ»ú£¨ÎÞÐòµÄ£©·ÃÎʵģ¬ÄÇôËü¾ÍÊôÓÚ¿éÉ豸¡£
ÕâÁ½ÖÖÀàÐ͵ÄÉ豸µÄ¸ù±¾Çø±ðÔÚÓÚËüÃÇÊÇ·ñ¿ÉÒÔ±»Ëæ»ú·ÃÎÊ——»»¾ä»°Ëµ¾ÍÊÇ£¬ÄÜ·ñÔÚ·ÃÎÊÉè±¸Ê±ËæÒâµØ´ÓÒ»¸öλÖÃÌø×ªµ½ÁíÒ»¸öλÖ᣾ٸöÀý×Ó£¬¼üÅÌÕâÖÖÉ豸ÌṩµÄ¾ÍÊÇÒ»¸öÊý¾ÝÁ÷£¬µ±ÄãÇÃÈë“fox”Õâ¸ö×Ö·û´®Ê±£¬¼üÅÌÇý¶¯³ÌÐò»á°´ÕÕºÍÊäÈëÍêÈ«ÏàͬµÄ˳Ðò·µ»ØÕâ¸öÓÉÈý¸ö×Ö·û×é³ÉµÄÊý¾ÝÁ÷¡£Èç¹ûÈüüÅÌÇý¶¯³ÌÐò´òÂÒ˳ÐòÀ´¶Á×Ö·û´®£¬»ò¶ÁÈ¡ÆäËû×Ö·û£¬¶¼ÊÇûÓÐÒâÒåµÄ¡£ËùÒÔ¼üÅ̾ÍÊÇÒ»ÖÖµäÐ͵Ä×Ö·ûÉ豸£¬ËüÌṩµÄ¾ÍÊÇÓû§´Ó¼üÅÌÊäÈëµÄ×Ö·ûÁ÷¡£¶Ô¼üÅ̽øÐжÁ²Ù× ......
ÏÂÃæµÄ´úÂë·ÖÎöÊǸù¾Ýlinux-2.6.17.14_stm22°æ±¾
#define STSYS_WriteRegDev32LE(Address_p, value) writel((u32)value, (void*)Address_p)
ÔÚinclude/asm-sh/io.h
#define writel(v,a) ({__raw_writel((v),(a));mb();})
#define __raw_write(v,a) __writel((v),(void __iomem *)(a))
#define __writel(v,a) sh_mv.mv_writel(v,a)
ÔÚarch/sh/kernel/setup.cÖаÑsh_mv.mv_writel->generic_write1
ÔÚarch/sh/kernel/io_generic.cÖÐ
void generic_writel(U32 b, void __iomem *addr)
{
ctrl_outl(b,(unsigned long __force)addr);
}
ÔÚinclude/asm-sh/io.h
static inline void ctrl_outl(unsigned inst b,unsigned long addr)
{
*(volatile unsigned long *)addr = b;
}
´æÔÚÒ»¸öÒÉÎÊ£º
×îºóÊÇ´ÓÓû§¿Õ¼äÖ±½ÓÉèÖüĴæÆ÷£¬µ«ÄÜÕâÑùÖ±½Ó¸³ÖµÂ𣿠²»Í¨¹ýMMÂ𣿠......