Èí¼þÌåϵ½á¹¹Í¨³£±»³ÆÎª¼Ü¹¹£¬Ö¸¿ÉÒÔÔ¤ÖÆºÍ¿ÉÖØ¹¹µÄÈí¼þ¿ò¼Ü½á¹¹¡£¼Ü¹¹Éд¦ÔÚ·¢Õ¹ÆÚ£¬¶ÔÓÚÆä¶¨Ò壬ѧÊõ½çÉÐδÐγÉÒ»¸öͳһµÄÒâ¼û£¬¶ø²»Í¬½Ç¶ÈµÄÊÓµãÒ²»áÔì³ÉÈí¼þÌåϵ½á¹¹µÄ²»Í¬Àí½â£¬ÒÔÏÂÊÇһЩÖ÷Á÷µÄ±ê×¼¹Ûµã¡£
×é³ÉÅÉ
Mary ShawÔÚ¡¶Èí¼þÌåϵ½á¹¹£ºÒ»Ãųõ¶¶ËÄßѧ¿ÆµÄÕ¹Íû¡·ÖÐΪ¡°Èí¼þ¼Ü¹¹¡±¸ø³öÁ˷dz£¼òÃ÷µÄ¶¨Ò壺Èí¼þϵͳµÄ¼Ü¹¹½«ÏµÍ³ÃèÊöΪ¼ÆËã»ú×é¼þ¼°×é¼þÖ®¼äµÄ½»»¥£¨The
architecture of a software system defines that system
in terms of computational components and interactions
among those components.£©¡£
ÉÏÊö¶¨ÒåÓÐÈçÏÂÁ½¸öÏÔÖøÌØµã£º
£¨1£©¹Ø×¢¼Ü¹¹ÊÇʵ¼ùÖеĿÍÌ塪¡ªÈí¼þ£¬ÒÔÈí¼þ±¾ÉíΪÃèÊö¶ÔÏó£»
£¨2£©·ÖÎöÁËÈí¼þµÄ×é³É£¬¼´Èí¼þÓɳе£²»Í¬¼ÆËãÈÎÎñµÄ×é¼þ×é³É£¬ÕâЩ×é¼þͨ¹ýÏ໥½»»¥Íê³É¸ü¸ß²ã´ÎµÄ¼ÆËã¡£
¾ö²ßÅÉ
RUP£¨Rational Unified Process£¬Í³Ò»¹ý³Ì£©ÖеÄÈí¼þ¼Ü¹¹¶¨Ò壺
Èí¼þ¼Ü¹¹°üº¬Á˹ØÓÚÒ»ÏÂÎÊÌâµÄÖØÒª¾ö²ß£º
£¨1£©Èí¼þϵͳµÄ×éÖ¯£»
£¨2£©Ñ¡Ôñ×é³ÉϵͳµÄ½á¹¹ÔªËغÍËûÃÇÖ®¼äµÄ½Ó¿Ú£¬ÒÔ¼°µ±ÕâÐ©ÔªËØÏ໥Ð×÷ÊÇËùÌåÏÖµÄÐÐΪ£»
£¨3£©ÈçºÎ×éºÏÕâÐ©ÔªËØ£¬Ê¹ËûÃÇÖ𽥺ϳÉΪ¸ü´óµÄ×Óϵͳ£»
£¨4£©ÓÃÓÚÖ¸µ¼Õâ¸öϵͳ×éÖ¯µÄ¼Ü¹¹·ç¸ñ£ºÕâÐ©ÔªËØÒÔ¼°ËüÃǵĽӿڡ¢Ð×÷ºÍºÏ×÷¡£
Èí¼þ¼Ü¹¹²»½ö½ö×¢ÖØÈí¼þ±¾ÉíµÄ½á¹¹ºÍÐÐΪ£¬»¹×¢ÖØÆäËûÌØÐÔ£ºÊ¹Óᢹ¦ÄÜÐÔ¡¢ÐÔÄÜ¡¢µ¯ÐÔ¡¢ÖØÓᢿÉÀí½âÐÔ¡¢¾¼ÃºÍ¼¼ÊõµÄÏÞÖÆ¼°È¨ºâ£¬ÒÔ¼°ÃÀѧµÈ¡£
ÉÏÊö¶¨ÒåÓÐÈçÏÂÁ½¸öÏÔÖøÌØµã£º
£¨1£©¹Ø×¢¼Ü¹¹Êµ¼ùÖеÄÖ÷Ì塪¡ªÈË£¬ÒÔÈ˵ľö²ßΪÃèÊö¶ÔÏó£»
£¨2£©¹éÄÉÁ˼ܹ¹¾ö²ßµÄÀàÐÍ£¬Ö¸³ö¼Ü¹¹¾ö²ß²»½ö°üÀ¨¹ØÓÚÈí¼þϵͳµÄ×éÖ¯¡¢ÔªËØ¡¢×ÓϵͳºÍ¼Ü¹¹·ç¸ñµÈ¼¸Àà¾ö²ß£¬»¹°üÀ¨¹ØÓÚÖÚ¶à·Ç¹¦ÄÜÐÔÐèÇóµÄ¾ö²ß¡£
Èí¼þ¼Ü¹¹Ä£Ê½ÊǸ߶ȳéÏóµÄ¡¢ÊÊÓÃÓÚÐí¶àÀàËÆÏµÍ³µÄ¡¢Ô¤Ïȶ¨ÒåºÃµÄÒ»ÖÖÌØÊâµÄÈí¼þ¼Ü¹¹¡£
¼Ü¹¹Ä£Ê½µÄ¾µä·ÖÀà

¼Ü¹¹Ä£Ê½µÄÏÖ´ú·ÖÀà

ÓÉÓÚ¾µäģʽ±È½Ï¾ÃÔ¶£¬ÏÂÃæ¶ÔÏÖ´úģʽ¼òÒª²ûÊöһϡ£
·Ö²ã£º´Ó²»Í¬µÄ²ã´ÎÀ´¹Û²ìϵͳ£¬´¦Àí²»Í¬²ã´ÎÎÊÌâµÄ¶ÔÏó±»·â×°µ½²»Í¬µÄ²ãÖУ¬×î´óµÄÓŵãÊǽ«ÕûÌåÎÊÌâ¾Ö²¿»¯£¬°Ñ¿ÉÄܵı仯·Ö±ð·â×°ÔÚ²»Í¬µÄ²ãÖС£µÚN²ãÖ»Äܱ»µÚN-1²ãµ÷ÓûòÕß±»Î»ÓÚÉÏÒ»²ãµÄÈÎÒâÒ»²ãµ÷Óá£

ͼ1 µäÐ͵ķֲã¼Ü¹¹
¹ÜµÀ¡ª¹ýÂËÆ÷£ºÓÃÊý¾ÝÁ÷µÄ¹ÛµãÀ´¹Û²ìϵͳ¡£Õû¸öϵͳÓÉһЩ¹ÜµÀºÍ¹ýÂËÆ÷×é³É£¬ÐèÒª´¦ÀíµÄÊý¾Ýͬ¹ÜµÀ´«Ë͸øÃ¿Ò»¸ö¹ýÂËÆ÷£¬Ã¿¸ö¹ýÂËÆ÷¾ÍÊÇÒ»¸ö´¦Àí²½Ö衣ÿ¸ö¹ýÂËÆ÷¿ÉÒÔµ¥¶ÀÐÞ¸Ä,¹¦Äܵ¥Ò»,²¢ÇÒËüÃÇÖ®¼äµÄ˳Ðò¿ÉÒÔ½øÐÐÅäÖᣵ«Êý¾Ýͨ¹ýÁËËùÓеĹýÂËÆ÷ºó£¬¾ÍÍê³ÉÁËËùÓеĴ¦Àí²Ù×÷£¬µÃµ½ÁË×îÖյĴ¦Àí½á¹û¡£ÕâÖּܹ¹µÄȱµãÊǽ»»¥ÐԲÔÒòÔÚÓÚËüûÓС°±ß½ç¶ÔÏ󡱡ª¡ªËüÊÇ¿ØÖƶÔÏóºÍʵÌå¶ÔÏóµÄ¼ä²åÅÅÁгɵÄÒ»ÌõÁ÷Ë®Ïß¡£
Ò»¸öµäÐ͵ĹܵÀ/¹ýÂËÆ÷Ìåϵ½á¹¹µÄÀý×ÓÊÇÒÔUnix shell±àдµÄ³ÌÐò¡£Unix¼ÈÌṩһÖÖ·ûºÅ£¬ÒÔÁ¬½Ó¸÷×é³É²¿·Ö(UnixµÄ½ø³Ì)£¬ÓÖÌṩijÖÖ½ø³ÌÔËÐÐʱ»úÖÆÒÔʵÏֹܵÀ¡£ÁíÒ»¸öÖøÃûµÄÀý×ÓÊÇ´«Í³µÄ±àÒëÆ÷¡£´«Í³µÄ±àÒëÆ÷Ò»Ö±±»ÈÏΪÊÇÒ»ÖֹܵÀϵͳ£¬ÔÚ¸ÃϵͳÖУ¬Ò»¸ö½×¶Î£¨°üÀ¨´Ê·¨·ÖÎö¡¢Óï·¨·ÖÎö¡¢ÓïÒå·ÖÎöºÍ´úÂëÉú³É£©µÄÊä³öÊÇÁíÒ»¸ö½×¶ÎµÄÊäÈë¡£

ͼ2 ±àÒëÆ÷¼Ü¹¹
ºÚ°å£ºÓ¦ÓÃÖеĶàÖÖ²»Í¬Êý¾Ý´¦ÀíÂß¼Ï໥ӰÏìºÍÐͬÀ´Íê³ÉÊý¾Ý·ÖÎö´¦Àí¡£¾ÍºÃÏñ¶àλ²»Í¬µÄר¼ÒÔÚͬһºÚ°åÉϽ»Á÷˼Ï룬ÿ¸öר¼Ò¶¼¿ÉÒÔ»ñµÃ±ðµÄר¼ÒдÔÚºÚ°åÉϵÄÐÅÏ¢£¬Í¬Ê±Ò²¿ÉÒÔÓÃ×Ô¼ºµÄ·ÖÎöÈ¥¸üкڰåÉϵÄÐÅÏ¢£¬´Ó¶øÓ°ÏìÆäËüר¼Ò¡£
ÔÚʵ¼ÊÓ¦ÓÃÖг£¼ûµÄʵÏÖģʽÓУº
A ÀûÓÃÊý¾Ý¿â£º ÀûÓÃÊý¾Ý¿â³äµ±ºÚ°å£¬²»Í¬µÄÓ¦Óù²ÏíÊý¾Ý¿âÖÐÐÅÏ¢£¬²¢ÇÒ¿ÉÒÔ¸üÐÂÊý¾ÝÐÅÏ¢¡£ÕâÒ²ÊÇ×î³£¼ûµÄʵÏÖ·½Ê½¡£
ÌØµã£º
1 ±ãÓÚʵÏÖÐÅÏ¢µÄ²éѯ£¬É¸Ñ¡ºÍͳ¼Æ£¬Õâ·½Ãæ¹ØÏµÊý¾Ý¿âÌṩÁËSQL 92µÄÇ¿´óÖ§³Ö¡£
2 ²»ÄÜÓÃÓڽϸßʵʱÐÔÒªÇóµÄ»·¾³£¬ÕâÖÖʵÏÖÊǹ¤×÷ÔÚ¡°Àģʽ¡±Ïµģ¬²¢ÇÒ¸ßÆµÂʵķÃÎÊÊý¾Ý¿â»áµ¼ÖÂÑÏÖØµÄϵͳÐÔÄÜÎÊÌâ¡£
B ÀûÓ÷¢²¼¡ª¶©ÔÄģʽ£ºÕâÖÖʵÏÖ·½Ê½Í¨³£²ÉÓÃÏûÏ¢¶ÓÁÐ×÷ΪºÚ°å£¬¶ÓÁй¤×÷ÔÚÖ÷Ìâģʽ£¨Topic£©£¬×¨¼Ò×÷Ϊ¶ÓÁеĶ©ÔÄÕߣ¬Í¬Ê±¿ÉÒÔÏò¶ÓÁз¢ËÍÏûÏ¢£¬ÏûÏ¢»á±»·¢ËÍÖÁËùÓж©ÔÄÕß¡£ÒÔÉϹý³ÌʵÏÖÁËר¼Ò¼äµÄÐÅÏ¢½»Á÷¡£
ÌØµã£º
1 ¿ÉÒÔÓÐЧӦÓÃÓÚʵʱÐÔÒªÇó½Ï¸ßµÄϵͳ£¬ÕâÖÖʵÏÖ¹¤×÷ÔÚ¡°ÍÆÄ£Ê½¡±Ï¡£
2 ÄÑÓÚʵÏÖÐÅÏ¢µÄͳ¼Æ·ÖÎö£¬²»ÏñʵÏÖ·½Ê½Ò»ÄÇÑù¿ÉÒÔͨ¹ýSQLÖ§³Ö£¬ÕâЩ¹¤×÷±ØÐ뿪·¢Õß×Ô¼ºÍê³É¡£
´úÀíÕß £ºÏÖ½ñδÕÒµ½Ïêϸ˵Ã÷£¬±ÊÕßÈÕºóµ½Ó¢ÎÄÍøÕ¾²éÕÒºóÔÙ¸üС£
MVC £º²ÉÓøÃģʽµÄÈí¼þ»á°üº¬ÕâÑùÈýÖÖ×é¼þ£ºModel¡¢View¡¢Controller¡£

ͼ3 »ùÓÚJ2EEƽ̨µÄMVC
PAC £º ÏÖ½ñδÕÒµ½Ïêϸ˵Ã÷£¬±ÊÕßÈÕºóµ½Ó¢ÎÄÍøÕ¾²éÕÒºóÔÙ¸üС£
΢ÄÚºË £ºÎ¢ÄÚºËģʽÄÜÊÊÓÃÓÚÐèÇó¾³£±ä¸üµÄϵͳ£¬Ëü°Ñ×îС»¯µÄ»ù±¾·þÎñÄں˴ÓÀ©Õ¹·þÎñºÍ¿Í»§ÌØÊâ·þÎñÖзÖÀë³öÀ´¡£Î¢Äں˷þÎñÓëÕâЩÀ©Õ¹µÄ½Ó¿ÚºÍе÷ËüÃÇÖ®¼äµÄºÏ×÷¡££¨The
Microkernel architectural pattern applies to software
systems that must be able to adapt to changing system
requirements. It separates a minimal functional core
from extended functionality and customer-specific parts.
The microkernel also serves as a socket for plugging
in these extensions and coordinating their collaboration.£©
Óŵ㣺
1.¿ÉÀ©Õ¹ÐÔ¡£Î¢ÄÚºËËùÓи½¼Ó¹¦ÄܾùÄÜͨ¹ý¿ª·¢Ðµĸ½¼Ó·þÎñµÄÐÎʽ½øÐÐÀ©³ä¡£¶øÇÒ£¬ËüÌṩÁË·â×°µ×²ã¹¦ÄܵĸüÒ×ÓõÄÐéÄâ»ú£¬¸½¼Ó·þÎñµÄ¿ª·¢¿ÉÒÔÔڽϸ߲ã´ÎÉÏ¿ªÊ¼¡£
2.¿ÉÒÆÖ²ÐÔ¡£¸½¼Ó¹¦ÄÜÖ»ÒÀÀµÓÚ΢Äںˣ¬ËüÃÇûÓÐÒÆÖ²ÐԵĿªÏú¡£Ö»ÐèÐÞ¸Ä΢Äں˵ÄÒ»Ö±Ï߹ܲ¿·Ö¼´¿É¡£
3.ÑÓ³¤Èí¼þϵͳµÄÉúÃüÖÜÆÚ¡£Î¢Äں˼ܹ¹¿ÉÒÔ½ÓÄÉһЩµ±Ç°²»¿ÉÔ¤¼ûµÄм¼Êõ£¬ÒÔ¼°ÉÌÒµ²ãÃæµÄй¦ÄܵÄÌôÕ½¡£
ȱµã£º
1.Éè¼ÆºÍʵÏֵĸ´ÔÓÐÔ¡£Î¢ÄÚºËÌṩµÄÄÜÁ¦±ØÐëÉÙ¶ø¾«£¬µ«ÓÖ±ØÐëÍ걸£¬·ñÔò¾Í²»ÄÜÌṩåÐÒ£µÄÍêÕû¡°»úÖÆ¡±
¡£
2.΢Äں˼ܹ¹ÍùÍù±ÈͬÀàÇé¿öÏÂµÄÆäËûÉè¼ÆÐÔÄܵͣ¬Òª½â¾ö´ËÎÊÌâµÃÒÀ¿¿Á¼ºÃµÄ²ßÂÔ¡£
΢ÄÚºËÊÊÓÃÓÚ¿ª·¢ÄѶȴó¡¢Ô¤ÆÚÉú´æÖÜÆÚ³¤¡¢³É±¾¸ßµÄÈí¼þϵͳ£¬Í¨¹ý¸Ä¼Ü¹¹¿ÉÒԺܺõĽâ¾öÕâÈý¸öÎÊÌ⣺
1.΢Äں˽«µ×²ã²îÒì½øÐзâ×°£¬¹¹½¨ÁËÒ»¸ö³éÏó¶È¸ü¸ßµÄÐéÄâ»ú£¬½µµÍÁËÆäËû·þÎñ¿ª·¢µÄÄѶȡ£
2.Éú´æÖÜÆÚ³¤£¬ÐèÒªÓ¦¶ÔµÄ±ä»¯Ô½¶à¡£Î¢Äں˼ܹ¹ÆÁ±ÎÁËϲã±ä»¯£¬ÎªÉϲã·þÎñÌṩÁ˸üÎȶ¨µÄ³éÏó·þÎñ£¬ÀíÓ÷´ó¹æÄ£À©Õ¹µÄÐèÒª¡£
3ͬ¹É¹µ¿ª·ÅÐÔ¿ÉÒÔ»º½â³É±¾¸ßµÄÎÊÌâ¡£½«Î¢ÄÚºËʵÏֵĻù´¡·þÎñ¿ª·¿£¬¿ÉÒÔÎüÒý´óÅú¿ª·¢ÕßÔöÇ¿ÄãµÄ²úÆ·¡£.
ÒÔϸø³öÒ»¸ö΢Äں˵ÄʾÀý£¬ËüÀ´×ÔÓÚCMU- Carnegie-Mellon´óѧ¿ª·¢µÄHydra²Ù×÷ϵͳ¡££¨Below
is illustrative example of Mickrokernel architecture
from Hydra Operating System. Which is developed by CMU-
Carnegie-Mellon University.£©

ͼ4
΢ÈíÏÂÒ»´úʵÑéÐÔ²Ù×÷ϵͳÔÚËÑË÷·½Ã棨Singularity£©ÒýÈëÁË΢Äں˵ĸÅÄMicrosoft¡¯s
next generation experimental operating system in research
code name ¡®Singularity¡¯ has adopting concept of ¡®Microkernel¡¯
£©¡£ÏÂÃæ¸ø³öʾÀýͼ

ͼ5
»ùÓÚԪģÐÍ£º»ùÓÚԪģÐ͵ļܹ¹ºÍ΢Äں˼ܹ¹Ò»Ñù£¬¶¼ÊÇÒÔÊÊÓ¦±ä»¯¡¢Ö§³Ö³¤ÉúÃüÖÜÆÚΪÖ÷ҪĿ±êµÄ¼Ü¹¹Ä£Ê½£¬Ëü°üº¬Á½¸ö²ã£º»ù±¾²ãºÍÔª²ã£¬ÈçÏÂͼËùʾ¡£

ͼ6
»ù±¾²ã¶¨ÒåÓ¦Óã¬Ôª²ãͨ¹ýÔª¶ÔÏóMeta Aµ÷ÓöÔÏóA£¬½Ó´¥ÁËÓ¦ÓöԶÔÏóAµÄÒÀÀµ¡£Ôª²ã°üº¬Ò»×é¡°Ôª¶ÔÏó¡±£¬ÕâЩԪ¶ÔÏó×é³ÉµÄÄ£ÐͽÐ×ö¡°ÔªÄ£ÐÍ¡±£¬ÔªÄ£ÐÍÊǶԻù±¾²ãÖС°Ò»ÇС±µÄ³éÏó¡£ÔªÄ£ÐÍÌṩÁËÈí¼þ±¾ÉíµÄ½á¹¹ºÍÐÐΪµÄ¡°×ÔÃèÊö¡±¡£Ò»°ã¶øÑÔ£¬ÔªÄ£ÐÍÖеÄÔª¶ÔÏóÓ¦·Ö±ð´ÓÈý¸ö·½Ãæ¿Ì»»ù±¾²ã£º½á¹¹¡¢ÐÐΪ¡¢×´Ì¬¡£
ÓÉÓÚ±¾ÈË֪ʶÓÐÏÞ£¬´ËÎÄÒ²Ö»ÊǶԳ£Óüܹ¹Ä£Ê½µÄdz²ã´Î¹éÄÉ£¬¸ü¶àÄÚÈÝÔÚÒÔºóµÄѧϰ¹ý³ÌÖбÊÕ߻᲻¶¨Ê±¸üУ¬Ï£ÍûÕâЩ¶Ô´ó¼ÒÓаïÖú£¬Í¬Ê±Ò²»¶Ó´ó¼ÒÁôÑÔ̽ÌÖ£¬Ö¸Õý²»×ãÖ®´¦¡£
|