linux ϵͳµ÷ÓÃ
Ò»¡¢ ʲôÊÇϵͳµ÷ÓÃ
ÔÚLinuxµÄÊÀ½çÀÎÒÃǾ³£»áÓöµ½ÏµÍ³µ÷ÓÃÕâÒ»ÊõÓËùνϵͳµ÷Ó㬾ÍÊÇÄÚºËÌṩµÄ¡¢¹¦ÄÜÊ®·ÖÇ¿´óµÄһϵÁеĺ¯Êý¡£ÕâЩϵͳµ÷ÓÃÊÇÔÚÄÚºËÖÐʵÏֵģ¬ÔÙͨ¹ýÒ»¶¨µÄ·½Ê½°Ñϵͳµ÷ÓøøÓû§£¬Ò»°ã¶¼Í¨¹ýÃÅ(gate)ÏÝÈë(trap)ʵÏÖ¡£ÏµÍ³µ÷ÓÃÊÇÓû§³ÌÐòºÍÄں˽»»¥µÄ½Ó¿Ú¡£
¶þ¡¢ ϵͳµ÷ÓõÄ×÷ÓÃ
ϵͳµ÷ÓÃÔÚLinuxϵͳÖз¢»Óמ޴óµÄ×÷Óã¬Èç¹ûûÓÐϵͳµ÷Óã¬ÄÇôӦÓóÌÐò¾ÍʧȥÁËÄں˵ÄÖ§³Ö¡£
ÎÒÃÇÔÚ±à³ÌʱÓõ½µÄºÜ¶àº¯Êý£¬Èçfork¡¢openµÈÕâЩº¯Êý×îÖÕ¶¼ÊÇÔÚϵͳµ÷ÓÃÀïʵÏֵ쬱ÈÈç˵ÎÒÃÇÓÐÕâÑùÒ»¸ö³ÌÐò£º
ÕâÀïÎÒÃÇÓõ½ÁËÁ½¸öº¯Êý£¬¼´forkºÍexit,ÕâÁ½º¯Êý¶¼ÊÇglibcÖеĺ¯Êý£¬µ«ÊÇÈç¹ûÎÒÃǸú×Ùº¯ÊýµÄÖ´Ðйý³Ì£¬¿´¿´glibc¶ÔforkºÍexitº¯ÊýµÄʵÏ־ͿÉÒÔ·¢ÏÖÔÚglibcµÄʵÏÖ´úÂëÀï¶¼ÊDzÉÓÃÈíÖжϵķ½Ê½ÏÝÈëµ½ÄÚºËÖÐÔÙͨ¹ýϵͳµ÷ÓÃʵÏÖº¯ÊýµÄ¹¦Äܵġ£¾ßÌå¹ý³ÌÎÒÃÇÔÚϵͳµ÷ÓõÄʵÏÖ¹ý³Ì»áÏêϸµÄ½²µ½¡£
Óɴ˿ɼû£¬ÏµÍ³µ÷ÓÃÊÇÓû§½Ó¿ÚÔÚÄÚºËÖеÄʵÏÖ£¬Èç¹ûûÓÐϵͳµ÷Óã¬Óû§¾Í²»ÄÜÀûÓÃÄںˡ£
Èý¡¢ ϵͳµ÷ÓõÄÏÖʵ¼°µ÷Óùý³Ì
Ïêϸ½²Êöϵͳµ÷ÓõÄ֮ǰҲ½²Ò»ÏÂLinuxϵͳµÄһЩ±£»¤»úÖÆ¡£
LinuxϵͳÔÚCPUµÄ±£»¤Ä£Ê½ÏÂÌṩÁËËĸöÌØÈ¨¼¶±ð£¬Ä¿Ç°Äں˶¼Ö»Óõ½ÁËÆäÖеÄÁ½¸öÌØÈ¨¼¶±ð£¬·Ö±ðΪ“ÌØÈ¨¼¶0”ºÍ“ÌØÈ¨¼¶3”,¼¶±ð0Ò²¾ÍÊÇÎÒÃÇͨ³£Ëù½²µÄÄÚºËģʽ£¬¼¶±ð3Ò²¾ÍÊÇÎÒÃÇͨ³£Ëù½²µÄÓû§Ä£Ê½¡£»®·ÖÕâÁ½¸ö¼¶±ðÖ÷ÒªÊǶÔϵͳÌṩ±£»¤¡£ÄÚºËģʽ¿ÉÒÔÖ´ÐÐÒ»Ð©ÌØÈ¨Ö¸ÁîºÍ½øÈëÓû§Ä£Ê½£¬¶øÓû§Ä£Ê½Ôò²»ÄÜ¡£
ÕâÀïÌØ±ðÌá³öµÄÊÇ£¬ÄÚºËģʽÓëÓû§Ä£Ê½·Ö±ðʹÓÃ×Ô¼ºµÄ¶ÑÕ»£¬µ±·¢ÉúģʽÇл»µÄʱºòͬʱҪ½øÐжÑÕ»µÄÇл»¡£
ÿ¸ö½ø³Ì¶¼ÓÐ×Ô¼ºµÄµØÖ·¿Õ¼ä£¨Ò²³ÆÎª½ø³Ì¿Õ¼ä£©£¬½ø³ÌµÄµØÖ·¿Õ¼äÒ²·ÖΪÁ½²¿·Ö£ºÓû§¿Õ¼äºÍϵͳ¿Õ¼ä£¬ÔÚÓû§Ä£Ê½ÏÂÖ»ÄÜ·ÃÎʽø³ÌµÄÓû§¿Õ¼ä£¬ÔÚÄÚºËģʽÏÂÔò¿ÉÒÔ·ÃÎʽø³ÌµÄÈ«²¿µØÖ·¿Õ¼ä£¬Õâ¸öµØÖ·¿Õ¼äÀïµÄµØÖ·ÊÇÒ»¸öÂß¼µØÖ·£¬Í¨¹ýϵͳ¶ÎÃæÊ½µÄ¹ÜÀí»úÖÆ£¬·ÃÎʵÄʵ¼ÊÄÚ´æÒª×ö¶þ¼¶µØÖ·×ª»»£¬¼´£ºÂß¼µØÖ·?ÏßÐÔµØÖ·?ÎïÀíµØÖ·¡£
ϵͳµ÷ÓöÔÓÚÄÚºËÀ´Ëµ¾ÍÏ൱ÓÚº¯Êý£¬ÎÒÃÇÊǹؼüÎÊÌâÊÇ´ÓÓû§Ä£Ê½µ½ÄÚºËģʽµÄת»»¡¢¶ÑÕ»µÄÇл»ÒÔ¼°²ÎÊýµÄ´«µÝ¡£
ÏÂÃæ½«½áºÏÄÚºËÔ´´úÂë¶ÔÕâЩ¹ý³Ì½øÐзÖÎö£¬ÒÔÏ·ÖÎö»·¾³ÎªFC2,kernel 2.6.5
ÏÂÃæÊÇÄÚºËÔ´´úÂëÀïarch/i386/kernel/entry.SµÄÒ»¶Î´úÂë¡£
&n
Ïà¹ØÎĵµ£º
1. ѧ»áд¼òµ¥µÄmakefile
2. ±àһЩӦÓÃ
³ÌÐò
£¬¿ÉÒÔÓÃmakefileÅÜÆðÀ´
3. ѧ»áдÇý¶¯
µÄmakefile
4. дһ¼òµ¥charÇý¶¯£¬makefile±àÒëͨ¹ý£¬¿ÉÒÔinsmod£¬ lsmod£¬ rmmod. ÔÚÇý¶¯µÄinitº¯ÊýÀï´òÓ¡hello world£¬insmodºóÓ¦¸ÃÄܹ»Í¨¹ýdmesg¿´µ½Êä³ö
¡£
5. дһÍêÕûÇý¶¯£¬ ¼ÓÉÏread£¬ write£¬ ioctl£¬ pollingµÈ¸ ......
ÏîÄ¿»ù±¾½áÊø£¬Õâ¸öÊÇÆäÖÐϵͳ²Ã¼õµÄÒ»¸ö×ܽáÎĵµ£¬²»ÖªµÀÓÐûÓÐÈ˸ÐÐËȤ£º)
=============================================
ǰÑÔ:
ΪÁËÍê³ÉÓû§µÄÐèÇó£¬ÐèÖÆ×÷Ò»¸öÍêÕûµÄ»·¾³¹©APÔËÐУ¬ÇÒ´æÔÚÒ»Ð©Ô¼ÊøÌõ¼þ¡£
¹Ø¼ü×Ö£º
DOM Kernel Busybox X-Window Window-Manager Interbase nvidia cutdown
Ä¿±ê˵Ã÷£º
ÔÚÒ» ......
´ÓLinux 2.6ÆðÒýÈëÁËÒ»Ì×еÄÇý¶¯¹ÜÀíºÍ×¢²á»úÖÆ:Platform_deviceºÍPlatform_driver¡£
LinuxÖд󲿷ֵÄÉ豸Çý¶¯£¬¶¼¿ÉÒÔʹÓÃÕâÌ×»úÖÆ, É豸ÓÃPlatform_device±íʾ£¬Çý¶¯ÓÃPlatform_driver½øÐÐ×¢²á¡£
Linux platform driver»úÖÆºÍ´«Í³µÄdevice driver »úÖÆ(ͨ¹ýdriver_registerº¯Êý½øÐÐ×¢²á)Ïà±È£¬Ò»¸öÊ® ......
¸´ÖÆÎļþºÍĿ¼ÃüÁî cp
¸ñʽ£º cp [²ÎÊý] Ô´Îļþ»òĿ¼ Ä¿±êÎļþ»òĿ¼
˵Ã÷£º¸ÃÃüÁî°ÑÖ¸¶¨µÄÔ´Îļþ¸´ÖƵ½Ä¿±êÎļþ»ò°Ñ¶à¸öÔ´Îļþ¸´ÖƵ½Ä¿±êĿ¼ÖС£
³£ÓõIJÎÊý£º
- a ¸ÃÑ¡Ïîͨ³£ÔÚ¿½±´Ä¿Â¼Ê±Ê¹Óá£Ëü±£ÁôÁ´½Ó¡¢ÎļþÊôÐÔ£¬²¢µÝ¹éµØ¿½±´Ä¿Â¼£¬Æä×÷ÓõÈÓÚdpRÑ¡ÏîµÄ×éºÏ¡£
- d ¿½±´Ê±±£ÁôÁ´½Ó¡£
- f ɾ³ýÒѾ´æÔÚµÄÄ¿±ê ......