ÕÒÂÛÎÄÍø > ¼ÆËã»úÂÛÎÄ > ¼ÆËã»úÀíÂÛ >

uC/OS-IIÄں˳¬Ê±µÈ´ý»úÖÆµÄ·ÖÎö(1)

ÕªÒª£º±¾ÎÄ´ÓÔ´´úÂë½Ç¶È·ÖÎöÁËuC/OS-IIÄں˳¬Ê±µÈ´ý»úÖÆ£¬Ö¤ÊµÔÚÒ»¶¨Çé¿öϳ¬Ê±Ê±¼ä¼ä¸ô²»×¼È·£¬ÔÚʱ¼ä¼ä¸ôµ½ÆÚµÄÇé¿öÏ£¬ÄÚºËÈÔÓпÉÄÜ·µ»Ø³É¹¦£¬Õâ²»·ûºÏÒ»°ãµÄ²Ù×÷ϵͳԭÀí¡£ÁíÍ⣬½áºÏ³¬Ê±µÈ´ý»úÖÆµÄͨÓÃÄ£ÐÍÒÔ¼°Ò»Ð©Ö÷Á÷Äں˵ÄʵÏÖ·½·¨£¬Ìá³öÁËÕâÒ»²»×ãÖ®´¦µÄ¸ÄÕý·½·¨¡£
¹Ø¼ü´Ê£º³¬Ê±µÈ´ý£»×ÊÔ´£»ÄÚºË

Analysis of waiting-timeout in kernel

Abstract:Waiting-timeout of kernel is analyzed from source code in this paper.It indicates waiting-timeout of uC/OS-II is not correst in some case.The kernel can return success while it is time out.This is not correst.Based on the general type of Waiting-timeout of kernel and the other main real-time kernel ,a method is advanced to resolve this problem in the end.
Key words: waiting-timeout;resource;kernel

1  ÒýÑÔ

    uC/OS-IIÊÇÖøÃûµÄÔ´Â빫¿ªµÄʵʱÄÚºË[1]£¬ÊÇרΪǶÈëʽӦÓÃÉè¼ÆµÄ£¬¿ÉÓÃÓÚ¸÷Àà8λ16λºÍ32λµ¥Æ¬»ú»òDSP¡£ÏÖÔÚÓкܶàʹÓÃÕßÕýÔÚ»òÒѾ­½«ÆäÒÆÖ²µ½¸÷ÖÖÀàÐ͵ÄоƬ¡£ÒòΪԴÂ빫¿ª£¬uC/OS-IIÒ²¾­³£±»×÷ΪǶÈëʽʵʱÄں˵Ľ̲ģ¬Îª×¨ÒµÈËÔ±ÌṩÁËѧϰʵʱÄں˵ÄÄѵûú»á¡£ÔÚʵ¼ÊʹÓÃÖв»¹Ü»ùÓÚºÎÖÖ²Ù×÷ϵͳƽ̨£¬Ó¦ÓóÌÐò¾­³£»áµÈ´ýһЩϵͳ×ÊÔ´£¬ÈçÐźÅÁ¿£¬Ê¼þ±êÖ¾£¬ÏûÏ¢µÈ¡£µÈ´ýÀàÐ͹²ÓÐÈýÖÖ£º(1)Èç¹û²»ÄÜÂíÉÏ»ñÈ¡£¬Ðü¹ÒµÈ´ý£»(2)²»¹ÜÊÇ·ñÄÜ»ñÈ¡×ÊÔ´£¬ÂíÉÏ·µ»Ø£¬²»»áµÈ´ý£»(3) Èç¹û²»ÄÜÂíÉÏ»ñÈ¡×ÊÔ´£¬½«½øÐÐÓÐÏÞʱ¼äµÄµÈ´ý£¬¼´³¬Ê±µÈ´ý¡£

2  ³¬Ê±µÈ´ý»úÖÆµÄ»ù±¾Ô­Àí

    Ó¦ÓóÌÐòͨ¹ý²Ù×÷ϵͳÌṩµÄϵͳµ÷ÓýӿڻñÈ¡×ÊԴʱ£¬ÔÚϵͳµ÷ÓõÄÈë¿Ú²ÎÊýÀï¿ÉÒÔÖ¸¶¨³¬Ê±µÈ´ýµÄ×î´óʱ¼ä£¬Í¨³£ÒÔºÁÃëΪµ¥Î»£¬Äں˻ὫÆäת»¯ÎªÏµÍ³µÄʱÖÓµÎàªÊý(tick)¡£Ò»°ãÄں˶¼»áÖ´ÐÐÒÔÏÂÁ÷³Ì£º
    (1)Èç¹û×ÊÔ´ÄÜÂíÉÏ»ñÈ¡£¬ÏµÍ³µ÷Óý«³É¹¦·µ»Ø¡£
    (2)Èç¹û×ÊÔ´²»ÄÜÂíÉÏ»ñÈ¡£¬Äں˽«ÉèÖÃÒ»¶¨Ê±Æ÷½øÐмÆÊ±£¬°Ñµ±Ç°ÈÎÎñÐü¹ÒÔÚ¸Ã×ÊÔ´µÄµÈ´ý¶ÓÁÐÉÏ£¬¸ÃÈÎÎñ´Ó¾ÍÐ÷±íÖÐɾ³ý£¬²¢½øÐе÷¶È£¬ÈóöCPUµÄʹÓÃȨ¡£
    (3)Èç¹ûÔÚÖ¸¶¨µÄʱ¼äÄÚ×ÊÔ´±äµÃ¿ÉÒÔ»ñÈ¡ÁË£¬¶¨Ê±Æ÷Ó¦ÂíÉÏÍ£Ö¹¼ÆÊ±£¬¸ÃÈÎÎñ´ÓµÈ´ý¶ÓÁÐÀïժϲ¢ÇÒÖØÐ»ص½¾ÍÐ÷±íÖеȺòµ÷¶È¡£
    (4)Èç¹û¶¨Ê±Æ÷µ½Ê±£¬ÈÎÎñÓ¦¸Ã´ÓµÈ´ý¶ÓÁÐÀïժϲ¢ÇÒÖØÐ»ص½¾ÍÐ÷±íÖУ¬ÏµÍ³µ÷Ó÷µ»Ø³¬Ê±ÐÅÏ¢¡£
    ÄÚºËÔÚÿһ¸ötick¶¼»á×öһϵÁеŤ×÷£¬°üÀ¨ÈÎÎñµÄÑÓ³ÙÒÔ¼°³¬Ê±µÈ´ý×ÊÔ´µÄ¶¨Ê±Æ÷µÈÏà¹ØµÄ¼ì²é²Ù×÷¡£Ò»°ãÀ´½²£¬ÔÚÖ¸¶¨µÄʱ¼ä¼ä¸ôÒÔÍâµ½´ïµÄ×ÊÔ´ºÍÐźű»ÈÏΪÊÇÎÞЧµÄ£¬ÕâÒ²ÊÇÖ¸¶¨³¬Ê±Ê±¼ä¼ä¸ôµÄÔ­ÒâËùÔÚ£¬ÓÐЩ¶Ôʱ¼äÒªÇó¿Á¿ÌµÄ³¡ºÏ¾ÍÓÐÕâÖÖÐèÇó£¬Äں˱ØÐë´¦ÀíºÃÕâ·½ÃæµÄÎÊÌâ¡£

¹²3Ò³: 1 [2] [3] ÏÂÒ»Ò³


±ÈÌØÊ±´ú¶ÔÈËÀàÉç»áµÄÖØ¹¹
ÐÅÏ¢ËØÑø¸ÅÄî±È½Ï¼°ÅàÑø
¹¤É̹ÜÀí | ¹¤¿ÆÂÛÎÄ | ²ÆÎñ¹ÜÀí | ¹ÜÀíѧ | ¹«¹²¹ÜÀí | ²ÆÕþ˰ÊÕ | ֤ȯ½ðÈÚ | »á¼ÆÉó¼Æ | ¼ÆËã»ú | ·¨ÂÉÂÛÎÄ | ҽҩѧ | ººÓïÑÔÎÄѧ
Éç»áÂÛÎÄ | ¹¤¿ÆÂÛÎÄ | Àí¿ÆÂÛÎÄ | ÎÄ»¯ÂÛÎÄ | ÒÕÊõÂÛÎÄ | ÎÄѧÂÛÎÄ | ÕÜѧÂÛÎÄ | ÕþÖÎÂÛÎÄ | Ó¢ÓïÂÛÎÄ | д×÷Ö¸µ¼ | ¼ÆËã»úÓ¦ÓÃ
www.zlunwen.com ÕÒÂÛÎÄÍø ® °æÈ¨ËùÓÐ ÍøÕ¾µØÍ¼