¼ÆËã»ú²Ù×÷ϵͳ£¨µÚËİ棩ÌÀСµ¤¿Îºó´ð°¸ÍêÕû°æ

Ó°Ïì : ʹ³ÌÐòµÄ²¢·¢Ö´ÐеÃÒÔʵÐС£

6£®ÊÔ´Ó¶¯Ì¬ÐÔ£¬²¢·¢ÐԺͶÀÁ¢ÐÔÉϱȽϽø³ÌºÍ³ÌÐò

?

´ð£º (1) ¶¯Ì¬ÐÔÊǽø³Ì×î»ù±¾µÄÌØÐÔ£¬±íÏÖΪÓÉ´´½¨¶ø²úÉú£¬Óɵ÷¶È¶øÖ´ÐУ¬ÒòµÃ²»µ½×ÊÔ´ ¶øÔÝÍ£Ö´ÐУ¬Óɳ·Ïú¶øÏûÍö¡£½ø³ÌÓÐÒ»¶¨µÄÉúÃüÆÚ£¬¶ø³ÌÐòÖ»ÊÇÒ»×éÓÐÐòµÄÖ¸ÁºÏ£¬ ÊǾ²

̬ʵÌå¡£

(2) ²¢·¢ÐÔÊǽø³ÌµÄÖØÒªÌØÕ÷£¬Í¬Ê±Ò²ÊÇ

OS µÄÖØÒªÌØÕ÷¡£ÒýÈë½ø³ÌµÄÄ¿µÄÕýÊÇΪÁËʹ

Æä³ÌÐòÄÜºÍÆäËü½ø³ÌµÄ³ÌÐò²¢·¢Ö´ÐУ¬¶ø³ÌÐòÊDz»Äܲ¢·¢Ö´Ðеġ£

(3) ¶ÀÁ¢ÐÔÊÇÖ¸½ø³ÌʵÌåÊÇÒ»¸öÄܶÀÁ¢ÔËÐеĻù±¾µ¥Î»£¬Ò²ÊÇϵͳÖжÀÁ¢»ñµÃ×ÊÔ´ºÍ¶ÀÁ¢µ÷¶ÈµÄ»ù±¾µ¥Î»¡£¶ÔÓÚ佨Á¢Èκνø³ÌµÄ³ÌÐò£¬²»ÄÜ×÷Ϊ¶ÀÁ¢µ¥Î»²Î¼ÓÔËÐС£ 7£®ÊÔ˵Ã÷ PCB µÄ×÷Óã¬ÎªÊ²Ã´Ëµ PCB Êǽø³Ì´æÔÚµÄΩһ±êÖ¾£¿ ´ð£º PCB Êǽø³ÌʵÌåµÄÒ»²¿·Ö£¬ÊDzÙ×÷ϵͳÖÐ×îÖØÒªµÄ¼Ç¼ÐÍ Êý¾Ý½á¹¹ ¡£×÷ÓÃÊÇʹһ¸öÔÚ¶àµÀ³ÌÐò»·¾³Ï²»ÄܶÀÁ¢ÔËÐеijÌÐò£¬

³ÉΪһ¸öÄܶÀÁ¢ÔËÐеĻù±¾µ¥Î»£¬

³ÉΪÄÜÓëÆäËü½ø³Ì

²¢·¢Ö´ÐеĽø³Ì¡£ OS ÊǸù¾Ý PCB ¶Ô²¢·¢Ö´ÐеĽø³Ì½øÐпØÖƺ͹ÜÀíµÄ¡£ 8£®ÊÔ˵Ã÷½ø³ÌÔÚÈý¸ö»ù±¾×´Ì¬Ö®¼äת»»µÄµäÐÍÔ­Òò¡£ ´ð£º £¨ 1£©¾ÍÐ÷״̬ ¡ú Ö´ÐÐ״̬£º½ø³Ì·ÖÅäµ½ CPU ×ÊÔ´

£¨2 £©Ö´ÐÐ״̬ ¡ú ¾ÍÐ÷״̬£ºÊ±¼äƬÓÃÍê £¨3 £©Ö´ÐÐ״̬ ¡ú ×èÈû״̬£º I/O ÇëÇó £¨4 £©×èÈû״̬ ¡ú ¾ÍÐ÷״̬£º I/O Íê³É 9£®ÎªÊ²Ã´ÒªÒýÈë¹ÒÆð״̬£¿¸Ã״̬ÓÐÄÄЩÐÔÖÊ£¿ ´ð£ºÒýÈë¹ÒÆð״̬´¦ÓÚÎåÖÖ²»Í¬µÄÐèÒª

: ÖÕ¶ËÓû§ÐèÒª£¬¸¸½ø³ÌÐèÒª£¬²Ù×÷ϵͳÐèÒª£¬¶Ô»»

±±¾©Ê¯ÓÍ»¯¹¤Ñ§ÔºÐÅÏ¢¹¤³ÌѧԺ¼ÆËã»úϵ 5/48 ¡¶¼ÆËã»ú²Ù×÷ϵͳ¡·Ï°Ìâ²Î¿¼´ð°¸ÓàÓÐÃ÷Óë¼Æ

07 ºÍ¼Æ G09 µÄͬѧÃDZàÖø 5/48

ÐèÒªºÍ¸ººÉµ÷½ÚÐèÒª¡£´¦ÓÚ¹ÒÆð״̬µÄ½ø³Ì²»ÄܽÓÊÕ´¦Àí»úµ÷¶È¡£ 10 £®ÔÚ½øÐнø³ÌÇл»Ê±£¬ËùÒª±£´æµÄ´¦Àí»ú״̬ÐÅÏ¢ÓÐÄÄЩ£¿ ´ð£º½øÐнø³ÌÇл»Ê±£¬ËùÒª±£´æµÄ´¦Àí»ú״̬ÐÅÏ¢ÓУº £¨1 £©½ø³Ìµ±Ç°ÔÝ´æÐÅÏ¢ £¨2 £©ÏÂÒ»Ö¸ÁîµØÖ·ÐÅÏ¢ £¨3 £©½ø³Ì״̬ÐÅÏ¢

£¨4 £©¹ý³ÌºÍϵͳµ÷ÓòÎÊý¼°µ÷ÓõØÖ·ÐÅÏ¢¡£ 11 £®ÊÔ˵Ã÷ÒýÆð½ø³Ì´´½¨µÄÖ÷Ҫʼþ¡£

´ð£ºÒýÆð½ø³Ì´´½¨µÄÖ÷ҪʼþÓУºÓû§µÇ¼¡¢×÷Òµµ÷¶È¡¢Ìṩ·þÎñ¡¢Ó¦ÓÃÇëÇó¡£ 12 £®ÊÔ˵Ã÷ÒýÆð½ø³Ì±»³·ÏúµÄÖ÷Ҫʼþ¡£

´ð£ºÒýÆð½ø³Ì±»³·ÏúµÄÖ÷ҪʼþÓУºÕý³£½áÊø¡¢Òì³£½áÊø£¨Ô½½ç´íÎó¡¢±£»¤´í¡¢·Ç·¨Ö¸Áî¡¢ ÌØÈ¨Ö¸Áî´í¡¢ÔËÐг¬Ê±¡¢µÈ´ý³¬Ê±¡¢ËãÊõÔËËã´í¡¢ I/O ¹ÊÕÏ£©¡¢Íâ½ç¸ÉÔ¤£¨²Ù×÷Ô±»ò²Ù×÷ϵ

ͳ¸ÉÔ¤¡¢¸¸½ø³ÌÇëÇ󡢸¸½ø³ÌÖÕÖ¹£©¡£

13 £®ÔÚ´´½¨Ò»¸ö½ø³ÌʱËùÒªÍê³ÉµÄÖ÷Òª¹¤×÷ÊÇʲô£¿´ð£º

£¨1 £© OS ·¢ÏÖÇëÇó´´½¨Ð½ø³Ìʼþºó£¬µ÷Óýø³Ì´´½¨Ô­Óï £¨2 £©ÉêÇë¿Õ°× PCB £» £¨3 £©ÎªÐ½ø³Ì·ÖÅä×ÊÔ´£» £¨4 £©³õʼ»¯½ø³Ì¿ØÖƿ飻 £¨5 £©½«Ð½ø³Ì²åÈë¾ÍÐ÷¶ÓÁÐ .

14 £®ÔÚ³·ÏúÒ»¸ö½ø³ÌʱËùÒªÍê³ÉµÄÖ÷Òª¹¤×÷ÊÇʲô£¿´ð£º

£¨1 £©¸ù¾Ý±»ÖÕÖ¹½ø³Ì±êʶ·û£¬´Ó

PCB ¼¯ÖмìË÷³ö½ø³Ì PCB £¬¶Á³ö¸Ã½ø³Ì״̬¡£

Creat() £»

£¨2 £©Èô±»ÖÕÖ¹½ø³Ì´¦ÓÚÖ´ÐÐ״̬£¬Á¢¼´ÖÕÖ¹¸Ã½ø³ÌµÄÖ´ÐУ¬Öõ÷¶È±êÖ¾Õæ£¬Ö¸Ê¾¸Ã½ø³Ì±»ÖÕÖ¹ºóÖØÐµ÷¶È¡£

£¨3 £©Èô¸Ã½ø³Ì»¹ÓÐ×Ó½ø³Ì£¬Ó¦½«ËùÓÐ×ÓËï½ø³ÌÖÕÖ¹£¬ÒÔ·ÀËüÃdzÉΪ²»¿É¿Ø½ø³Ì¡£ £¨4 £©½«±»ÖÕÖ¹½ø³ÌÓµÓеÄÈ«²¿×ÊÔ´£¬¹é»¹¸ø¸¸½ø³Ì£¬»ò¹é»¹¸øÏµÍ³¡£

£¨5 £©½«±»ÖÕÖ¹½ø³Ì PCB ´ÓËùÔÚ¶ÓÁлòÁбíÖÐÒÆ³ö£¬µÈ´ýÆäËü³ÌÐòËѼ¯ÐÅÏ¢¡£ 15 £®ÊÔ˵Ã÷ÒýÆð½ø³Ì×èÈû»ò±»»½ÐѵÄÖ÷ҪʼþÊÇʲô£¿

´ð£º a. ÇëÇóϵͳ·þÎñ£» b. Æô¶¯Ä³ÖÖ²Ù×÷£» c. ÐÂÊý¾ÝÉÐδµ½´ï£» d. ÎÞй¤×÷¿É×ö . 16 £®½ø³ÌÔÚÔËÐÐʱ´æÔÚÄÄÁ½ÖÖÐÎʽµÄÖÆÔ¼£¿²¢¾ÙÀý˵Ã÷Ö®¡£ ´ð£º

£¨1 £©¼ä½ÓÏà»¥ÖÆÔ¼¹ØÏµ¡£¾ÙÀý£ºÓÐÁ½½ø³Ì µÄ

һ̨´òÓ¡»ú·ÖÅ䏸Á˽ø³Ì Ð÷¡£

£¨2 £©Ö±½ÓÏà»¥ÖÆÔ¼¹ØÏµ¡£¾ÙÀý£ºÓÐÊäÈë½ø³Ì ʱ£¬

¼ÆËã½ø³ÌÒò²»ÄÜ»ñµÃËùÐèÊý¾Ý¶ø×èÈû£¬µ±½ø³Ì Ö®£¬µ±»º³åÇøÒÑÂúʱ£¬½ø³Ì »½ÐÑ A ¡£

17 £®ÎªÊ²Ã´½ø³ÌÔÚ½øÈëÁÙ½çÇøÖ®Ç°Ó¦ÏÈÖ´ÐÐ Çø¡±´úÂ룿

´ð£ºÎªÁËʵÏÖ¶à¸ö½ø³Ì¶ÔÁÙ½ç×ÊÔ´µÄ»¥³â·ÃÎÊ£¬

±ØÐëÔÚÁÙ½çÇøÇ°ÃæÔö¼ÓÒ»¶ÎÓÃÓÚ¼ì²éÓû·ÃÎÊ¡°½øÈëÇø ¡±´úÂ룿¶øÔÚÍ˳öǰÓÖÒªÖ´ÐÐ

¡°Í˳ö

A °ÑÊý¾ÝÊäÈ뻺³åÇøºó£¬±ã»½Ðѽø³Ì

B £»·´

A ͨ¹ýµ¥»º³åÏò½ø³Ì B ÌṩÊý¾Ý¡£µ±»º³å¿Õ

B£¬Ôò½ø³Ì A Ö»ÄÜ×èÈû£» Ò»µ© B ÊÍ·Å´òÓ¡»ú£¬ A ²ÅÓÉ×èÈû¸ÄΪ¾Í

A ºÍ B£¬Èç¹û A Ìá³ö´òÓ¡ÇëÇó£¬ÏµÍ³ÒѰÑΨһ

A ÒòûÓлº³åÇø·ÅÊý¾Ý¶ø×èÈû£¬½ø³Ì B ½«»º³åÇøÊý¾ÝÈ¡×ߺó±ã

µÄÁÙ½ç×ÊÔ´ÊÇ·ñÕý±»·ÃÎʵĴúÂ룬Èç¹ûδ±»·ÃÎÊ£¬¸Ã½ø³Ì±ã¿É½øÈëÁÙ½çÇø¶Ô×ÊÔ´½øÐзÃÎÊ£¬ ²¢ÉèÖÃÕý±»·ÃÎʱêÖ¾£¬Èç¹ûÕý±»·ÃÎÊ£¬Ôò±¾½ø³Ì²»ÄܽøÈëÁÙ½çÇø£¬ÊµÏÖÕâÒ»¹¦ÄܵĴúÂëΪ ½øÈëÇø \´úÂ룻ÔÚÍ˳öÁÙ½çÇøºó£¬±ØÐëÖ´ÐÐ ½ø³ÌÄÜÔÙ·ÃÎÊ´ËÁÙ½ç×ÊÔ´¡£

\Í˳öÇø \´úÂ룬ÓÃÓÚ»Ö¸´Î´±»·ÃÎʱêÖ¾£¬Ê¹ÆäËü

\

18. ͬ²½»ú¹¹Ó¦×ñÑ­ÄÄЩ»ù±¾×¼Ôò£¿ÎªÊ²Ã´£¿

´ð£ºÍ¬²½»ú¹¹Ó¦×ñÑ­µÄ»ù±¾×¼ÔòÊÇ£º¿ÕÏÐÈýø¡¢Ã¦ÔòµÈ´ý¡¢ÓÐÏ޵ȴý¡¢ÈÃȨµÈ´ýÔ­Òò£ºÎªÊµÏÖ½ø³Ì»¥³â½øÈë×Ô¼ºµÄÁÙ½çÇø¡£ 19. ÊÔ´ÓÎïÀí¸ÅÄîÉÏ˵Ã÷¼Ç¼ÐÍÐźÅÁ¿

wait ºÍ signal ¡£

wait ²Ù

´ð£º wait(S) £ºµ± S.value>0 ʱ£¬±íʾĿǰϵͳÖÐÕâÀà×ÊÔ´»¹ÓпÉÓõġ£Ö´ÐÐÒ»´Î

×÷£¬Òâζ׎ø³ÌÇëÇóÒ»¸öµ¥Î»µÄ¸ÃÀà×ÊÔ´£¬ ʹϵͳÖпɹ©·ÖÅäµÄ¸ÃÀà×ÊÔ´¼õÉÙÒ»¸ö£¬ Òò´ËÃèÊöΪ S.value:=S.value-1 £»µ± S.value<0 ʱ£¬±íʾ¸ÃÀà×ÊÔ´ÒÑ·ÖÅäÍê±Ï£¬½ø³ÌÓ¦µ÷Óà block Ô­Óï×ÔÎÒ×èÈû£¬·ÅÆú´¦Àí»ú£¬²¢²åÈëµ½ÐźÅÁ¿Á´±í

S.L ÖС£

signal(S) £ºÖ´ÐÐÒ»´Î signal ²Ù×÷£¬Òâζ×ÅÊÍ·ÅÒ»¸öµ¥Î»µÄ¿ÉÓÃ×ÊÔ´£¬Ê¹ÏµÍ³Öпɹ©·ÖÅä µÄ¸ÃÀà×ÊÔ´ÊýÔö¼ÓÒ»¸ö£¬¹ÊÖ´ÐÐ

S.value:=S.value+1

²Ù×÷¡£Èô¼Ó 1 ºó S. value ¡Ü0£¬Ôò±í

wakeup Ô­Ó½« S.L

ʾÔÚ¸ÃÐźÅÁ¿Á´±íÖУ¬ÈÔÓеȴý¸Ã×ÊÔ´µÄ½ø³Ì±»×èÈû£¬Òò´ËÓ¦µ÷Óà Á´±íÖеĵÚÒ»¸öµÈ´ý½ø³Ì»½ÐÑ¡£

20 £®ÄãÈÏΪÕûÐÍÐźÅÁ¿»úÖÆÊÇ·ñÍêÈ«×ñÑ­ÁËͬ²½»ú¹¹µÄËÄÌõ×¼Ôò£¿ ´ð£ºÕûÐÍÐźÅÁ¿»úÖÆ²»ÍêÈ«×ñѭͬ²½»úÖÆµÄËÄÌõ×¼Ôò£¬Ëü²»Âú×ã

¡°ÈÃȨµÈ´ý ¡±×¼Ôò¡£

21 £®ÈçºÎÀûÓÃÐźÅÁ¿»úÖÆÀ´ÊµÏÖ¶à¸ö½ø³Ì¶ÔÁÙ½ç×ÊÔ´µÄ»¥³â·ÃÎÊ£¿²¢¾ÙÀý˵Ã÷Ö®¡£ ´ð£ºÎªÊ¹¶à¸ö½ø³Ì»¥³â·ÃÎÊijÁÙ½ç×ÊÔ´£¬Ö»ÐèΪ¸Ã×ÊÔ´ÉèÖÃÒ»»¥³âÐźÅÁ¿ ³õֵΪ 1 £¬È»ºó½«¸÷½ø³Ì·ÃÎʸÃ×ÊÔ´µÄÁÙ½çÇø

mutex £¬²¢ÉèÆä

CS Öà ÓÚ wait(mutex) ºÍ signal(mutex) ²Ù ×÷

mutex Ö´ÐÐ

Ö®¼ä¼´¿É¡£ÕâÑù£¬Ã¿¸öÓû·ÃÎʸÃÁÙ½ç×ÊÔ´µÄ½ø³ÌÔÚ½øÈëÁÙ½çÇøÖ®Ç°£¬¶¼ÒªÏȶÔ

wait ²Ù×÷£¬Èô¸Ã×ÊÔ´´Ë¿Ìδ±»·ÃÎÊ£¬ ±¾´Î wait ²Ù×÷±ØÈ»³É¹¦£¬ ½ø³Ì±ã¿É½øÈë×Ô¼ºµÄÁÙ½çÇø£¬ ÕâʱÈôÔÙÓÐÆäËû½ø³ÌÒ²Óû½øÈë×Ô¼ºµÄÁÙ½çÇø£¬´ËʱÓÉÓÚ¶Ô Òò¶ø¸Ã½ø³Ì×èÈû£¬ ´Ó¶ø±£Ö¤Á˸ÃÁÙ½ç×ÊÔ´Äܱ»»¥³â·ÃÎÊ¡£

mutex Ö´ÐÐ wait ²Ù×÷¶¨»áʧ°Ü£¬ µ±·ÃÎÊÁÙ½ç×ÊÔ´µÄ½ø³ÌÍ˳öÁÙ½çÇø

ºó£¬Ó¦¶Ô mutex Ö´ÐÐ signal ²Ù×÷£¬ÊͷŸÃÁÙ½ç×ÊÔ´¡£ÀûÓÃÐźÅÁ¿ÊµÏÖ½ø³Ì»¥³âµÄ½ø³ÌÃèÊö ÈçÏ£º

Var mutex: semaphore:=1 begin parbegin process 1: begin repeat wait(mutex) £» critical section signal(mutex) £» remainder section until false £» end

process 2: begin

£»

repeat wait(mutex) £» critical section signal(mutex) £» remainder section until false £» end parend

22 £®ÊÔд³öÏàÓ¦µÄ³ÌÐòÀ´ÃèÊöͼ 2-17 ËùʾµÄǰÇýͼ¡£

´ð£º£¨ a£©Var a, b, c, d, e, f, g, h; semaphore:= 0, 0,0, 0, 0, 0, 0, 0; begin parbegin

begin S1; signal(a); signal(b); end; begin wait(a); S2; signal(c); signal(d); end; begin wait(b); S3; signal(e); end; begin wait(c); S4; signal(f); end; begin wait(d); S5; signal(g); end; begin wait(e); S6; signal(h); end; begin wait(f); wait(g); wait(h); S7; end; parend end

£¨b £© Var a, b, c, d, e, f, g, h,i,j; semaphore:= 0,0, 0, 0, 0, 0, 0,0,0, 0; begin parbegin

begin S1; signal(a); signal(b); end; begin wait(a); S2; signal(c); signal(d); end; begin wait(b); S3; signal(e); signal(f); end; begin wait(c); S4; signal(g); end; begin wait(d); S5; signal(h); end; begin wait(e); S6; signal(i); end; begin wait(f); S7; signal(j); end;

begin wait(g);wait(h); wait(i); wait(j); S8;end;

ÁªÏµ¿Í·þ£º779662525#qq.com(#Ìæ»»Îª@)