亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? 關于uc-os-ii中優先級翻轉問題--深藍空間.htm

?? ucos的資料以及單片機dsp的經典移植程序
?? HTM
?? 第 1 頁 / 共 3 頁
字號:
                    <TR>
                      <TD>
                        <TABLE class=seyle4 cellSpacing=0 cellPadding=0 
                        width="100%" border=0>
                          <TBODY>
                          <TR>
                            <TD>&nbsp;</TD></TR>
                          <TR>
                            <TD class=content9 
                              vAlign=center><STRONG>關于uC/OS-II中優先級翻轉問題</STRONG></TD></TR>
                          <TR>
                            <TD>
                              <DIV align=right><SPAN class=textbox-label>[ 
                              2006-5-10 8:36:16 | By: <SPAN 
                              class=style3>深藍++</SPAN> 
                          ]</SPAN></DIV></TD></TR></TBODY></TABLE>
                        <TABLE cellSpacing=0 cellPadding=0 width="100%" 
border=0>
                          <TBODY>
                          <TR>
                            <TD height=3>&nbsp;</TD></TR></TBODY></TABLE>
                        <TABLE style="TABLE-LAYOUT: fixed" cellSpacing=0 
                        cellPadding=0 width="100%" align=center border=0>
                          <TBODY>
                          <TR>
                            <TD><SPAN class=oblog_text><SPAN 
                              id=ob_logd11739></SPAN>
                              <P>引&nbsp;言:</P>
                              <P>1&nbsp;uC/OS-II的運行機制</P>
                              <P>  在嵌入式系統的應用中,實時性是一個重要的指標,而優先級翻轉是影響系統實時性的重要問題。本文著重分析優先級翻轉問題的產生和影響,以及在uC/OS-II中的解決方案。</P>
                              <P>  uC/OS-II采用基于固定優先級的占先式調度方式,是一個實時、多任務的操作系統。系統中的每個任務具有一個任務控制快OS_TCB,任務控制塊記錄任務執行的環境,包括任務的優先級,任務的堆棧指針,任務的相關事件控制塊指針等。內核將系統中處于就緒態的任務在就緒表(ready&nbsp;list)進行標注,通過就緒表中的兩個變量OSRdyGrp和OSRdyTbl[]可快速查找系統中就緒的任務。在uC/OS-II中每個任務有唯一的優先級,因此任務的優先級也是任務的唯一編號(ID),可以作為任務的唯一標識。內核可用控制塊優先級表OSTCBPrioTbl[]由任務的優先級查到任務控制塊的地址。uC/OS-II主要就是利用任務控制快OS_TCB、就緒表(ready&nbsp;list)和控制塊優先級表OSTCBPrioTbl[]來進行任務調度的。任務調度程序OSSched()首先由就緒表(ready&nbsp;list)中找到當前系統中處于就緒態的優先級最高的任務,然后根據其優先級由控制塊優先級表OSTCBPrioTbl[]取得相應任務控制塊的地址,由OS_TASK_SW()程序進行運行環境的切換。將當前運行環境切換成該任務的運行環境,則該任務由就緒態轉為運行態。當這個任務運行完畢或因其它原因掛起時,任務調度程序OSSched()再次到就緒表(ready&nbsp;list)中尋找當前系統中處于就緒態中優先級最高的任務,轉而執行該任務,如此完成任務調度。若在任務運行時發生中斷,則轉向執行中斷程序,執行完畢后不是簡單的返回中斷調用處,而是由OSIntExit()程序進行任務調度,執行當前系統中優先級最高的就緒態任務。當系統中所有任務都執行完畢時,任務調度程序OSSched()就不斷執行優先級最低的空閑任務OSTaskIdle(),等待用戶程序的運行。</P>
                              <P>2&nbsp;uC/OS-II中的優先級翻轉問題</P>
                              <P>  在uC/OS-II中,多個任務按照優先級高低由內核調度執行,而且任務調度所花的時間是常數,與應用程序中建立的任務數無關。對于占先式內核,任務的響應時間是確定的,而且是最優化的,占先式內核保證最高優先級的任務最先執行。&nbsp;</P>
                              <P>  任務的響應時間=尋找最高優先級任務的時間+任務切換時間<BR>  <BR>  在uC/OS-II中尋找進入就緒態的最高優先級任務是通過查就緒表實現的,這減少了所需時間。<BR>y=OSUnMapTbl[OSRdyGrp];<BR>x=&nbsp;OSUnMapTbl&nbsp;[OSRdyTbl[y]];<BR>prio=(y&lt;&lt;3)+x;</P>
                              <P>  任務切換是通過調用匯編函數OS_TASK_SW()來實現的,主要完成兩個任務運行環境的保存和恢復。因此用戶可以通過安排任務的優先級,保證系統的實時性。當涉及到共享資源的互斥訪問時,多任務實時操作系統常常會出現優先級翻轉問題(priority&nbsp;inversion),不能保證高優先級任務的響應時間,影響系統的實時性,uC/OS-II中也存在同樣問題。所謂優先級翻轉問題(priority&nbsp;inversion)即當一個高優先級任務通過信號量機制訪問共享資源時,該信號量已被一低優先級任務占有,而這個低優先級任務在訪問共享資源時可能又被其它一些中等優先級的任務搶先,因此造成高優先級任務被許多具有較低優先級的任務阻塞,實時性難以得到保證。例如:有優先級為A、B和C的三個任務,優先級A&gt;B&gt;C,任務A,B處于掛起狀態,等待某一事件的發生,任務C正在運行,此時任務C開始使用某一共享資源S。在使用中,任務A等待的事件到來,任務A轉為就緒態,因為它比任務C優先級高,所以立即執行。當任務A要使用共享資源S時,由于其正在被任務C使用,因此任務A被掛起,任務C開始運行。如果此時任務B等待的事件到來,則任務B轉為就緒態。由于任務B的優先級比任務C高,因此任務B開始運行,直到其運行完畢,任務C才開始運行。直到任務C釋放共享資源S后,任務A才得以執行。在這種情況下,優先級發生了翻轉,任務B先于任務A運行。這樣便不能保證高優先級任務的響應時間,解決優先級翻轉問題有優先級天花板(priority&nbsp;ceiling)和優先級繼承(priority&nbsp;inheritance)兩種辦法。</P>
                              <P>  優先級天花板是當任務申請某資源時,把該任務的優先級提升到可訪問這個資源的所有任務中的最高優先級,這個優先級稱為該資源的優先級天花板。這種方法簡單易行,不必進行復雜的判斷,不管任務是否阻塞了高優先級任務的運行,只要任務訪問共享資源都會提升任務的優先級。在uC/OS-II中,可以通過OSTaskChangePrio()改變任務的優先級,但是改變任務的優先級是很花時間的。如果不發生優先級翻轉而提升了任務的優先級,釋放資源后又改回原優先級,則無形中浪費了許多CPU時間,也影響了系統的實時性。</P>
                              <P>  優先級繼承是當任務A申請共享資源S時,如果S正在被任務C使用,通過比較任務C與自身的優先級,如發現任務C的優先級小于自身的優先級,則將任務C的優先級提升到自身的優先級,任務C釋放資源S后,再恢復任務C的原優先級。這種方法只在占有資源的低優先級任務阻塞了高優先級任務時才動態的改變任務的優先級,如果過程較復雜,則需要進行判斷。uC/OS-II不支持優先級繼承,而且其以任務的優先級作為任務標識,每個優先級只能有一個任務,因此,不適宜在應用程序中使用優先級繼承。</P>
                              <P>3&nbsp;uC/OS-II中優先級翻轉問題的解決</P>
                              <P>  在uC/OS-II中,為解決優先級翻轉影響任務實時性的問題,可以借鑒優先級繼承的方法對優先級天花板方法進行改進。對uC/OS-II的使用,共享資源任務的優先級不是全部提升,而是先判斷再決定是否提升。即當有任務A申請共享資源S時,首先判斷是否有別的的任務正在占用資源S,若無,則任務A繼續執行,若有,假設為任務B正在使用該資源,則判斷任務B的優先級是否低于任務A,若高于任務A,則任務A掛起,等待任務B釋放該資源,如果任務B的優先級低于任務A,則提升任務B的優先級到該資源的優先級天花板,當任務B釋放資源后,再恢復到原優先級。在uC/OS-II中,每個共享資源都可看作一個事件,每個事件都有相應的事件控制塊ECB。在ECB中包含一個等待本事件的等待任務列表,該列表包括OSEventTbl[]和OSEventGrp兩個域,通過對等待任務列表的判斷可以很容易的確定是否有多個任務在等待該資源,同時也可判斷任務的優先級與當前任務優先級的高低,從而決定是否需要用OSTaskChangePio()來改變任務的優先級。這樣,僅在優先級有可能發生翻轉的情況下才改變任務的優先級,而且利用事件的等待任務列表進行判斷,比用OSTaskChangePio()來改變任務的優先級速度快,并占用較少的CPU時間,有利于系統實時性的提高。</P>
                              <P>  總之,優先級翻轉問題是多任務實時操作系統普遍存在的問題,這個問題也存在于uC/OS-II中。通過在應用程序中進行簡單的判斷,在可能出現優先級翻轉的情況下動態的改變任務的優先級,可以有效地避免任務的優先級翻轉,保證高優先級任務的執行,提高了系統的實時性。</P>
                              <P>[from 
                              http://ic37.com/Document/View.asp?id=7296]</P></SPAN></TD></TR></TBODY></TABLE>
                        <TABLE cellSpacing=0 cellPadding=0 width="100%" 
border=0>
                          <TBODY>
                          <TR>
                            <TD height=3>&nbsp;</TD></TR></TBODY></TABLE>
                        <TABLE cellSpacing=0 cellPadding=0 width="100%" 
border=0>
                          <TBODY>
                          <TR>
                            <TD class=seyle5 height=13>
                              <DIV align=right><SPAN class=textbox-urls><A 
                              href="http://www.mcublog.com/blog/user1/6944/archives/2006/11739.html#">閱讀全文<SPAN 
                              id=ob_logreaded></SPAN></A> | <A 
                              href="http://www.mcublog.com/blog/user1/6944/archives/2006/11739.html#cmt">回復(1)</A> 
                              <SPAN id=ob_logm11739></SPAN>| <A 
                              href="http://www.mcublog.com/blog/showtb.asp?id=11739" 
                              target=_blank>引用通告<SPAN id=ob_tbnum></SPAN></A> | 
                              <A 
                              href="http://www.mcublog.com/blog/user_post.asp?logid=11739" 
                              target=_blank>編輯</A></SPAN></DIV></TD></TR></TBODY></TABLE>
                        <TABLE height=14 cellSpacing=0 cellPadding=0 
                        width="100%" align=center border=0>
                          <TBODY>
                          <TR>
                            <TD>&nbsp;</TD></TR></TBODY></TABLE></TD></TR></TBODY></TABLE>
                  <DIV id=morelog>
                  <UL>
                    <LI>上一篇:<A 
                    href="http://www.mcublog.com/blog/user1/6944/archives/2006/11476.html">PID控制C源程序</A> 

                    <LI>下一篇:<A 
                    href="http://www.mcublog.com/blog/user1/6944/archives/2006/11740.html">碼表</A> 
                    </LI></UL></DIV>
                  <TABLE cellSpacing=0 cellPadding=0 width="100%" border=0>
                    <TBODY>
                    <TR>
                      <TD>
                        <TABLE class=seyle4 cellSpacing=0 cellPadding=0 
                        width="100%" border=0>
                          <TBODY>
                          <TR>
                            <TD>&nbsp;</TD></TR>
                          <TR>
                            <TD class=content9 
                              vAlign=center><STRONG>Re:關于uC/OS-II中優先級翻轉問題<A 
                              name=14224></A></STRONG></TD></TR>
                          <TR>
                            <TD>
                              <DIV align=right><SPAN class=textbox-label>[ <SPAN 
                              id=t_14224>2008-3-5 20:26:46</SPAN> | By: <SPAN 
                              class=style3><SPAN 
                              id=n_14224>hucheng1010(游客)</SPAN></SPAN> 
                              ]</SPAN></DIV></TD></TR></TBODY></TABLE>
                        <TABLE cellSpacing=0 cellPadding=0 width="100%" 
border=0>
                          <TBODY>
                          <TR>
                            <TD height=3>&nbsp;</TD></TR></TBODY></TABLE>
                        <TABLE style="TABLE-LAYOUT: fixed" cellSpacing=0 
                        cellPadding=0 width="100%" align=center border=0>
                          <TBODY>
                          <TR>
                            <TD><SPAN class=oblog_text><IMG class=ob_face 
                              height=48 alt=hucheng1010(游客) 
                              src="關于uC-OS-II中優先級翻轉問題--深藍空間.files/ico_default.gif" 
                              width=48 align=absMiddle><SPAN 
                              id=c_14224>您的博客就像寶藏</SPAN> 
                        </SPAN></TD></TR></TBODY></TABLE>
                        <TABLE cellSpacing=0 cellPadding=0 width="100%" 
border=0>
                          <TBODY>
                          <TR>
                            <TD height=3>&nbsp;</TD></TR></TBODY></TABLE>
                        <TABLE cellSpacing=0 cellPadding=0 width="100%" 
border=0>
                          <TBODY>
                          <TR>
                            <TD class=seyle5 height=13>
                              <DIV align=right><SPAN class=textbox-urls>個人主頁 | 
                              <A href="javascript:reply_quote('14224')">引用</A> | 
                              <A 
                              href="http://www.mcublog.com/blog/user1/6944/archives/2006/11739.html#top">返回</A> 
                              | <A 
                              href="http://www.mcublog.com/blog/user_comments.asp?action=del&amp;id=14224" 
                              target=_blank>刪除</A> | <A 
                              href="http://www.mcublog.com/blog/user_comments.asp?action=modify&amp;re=true&amp;id=14224" 
                              target=_blank>回復</A></SPAN></DIV></TD></TR></TBODY></TABLE>
                        <TABLE height=14 cellSpacing=0 cellPadding=0 
                        width="100%" align=center border=0>
                          <TBODY>
                          <TR>
                            <TD>&nbsp;</TD></TR></TBODY></TABLE></TD></TR></TBODY></TABLE>
                  <DIV id=form_comment>
                  <DIV id=gg_usercomment></DIV><A name=cmt></A>
                  <DIV class=title>發表評論:</DIV>
                  <FORM id=commentform name=commentform 
                  onsubmit="return Verifycomment()" 
                  action=/blog/savecomment.asp?logid=11739 method=post>
                  <DIV class=d1><LABEL>昵稱:<INPUT id=UserName maxLength=20 
                  name=UserName></LABEL></DIV>
                  <DIV class=d2><LABEL>密碼:<INPUT id=Password type=password 
                  maxLength=20 name=Password> (游客無須輸入密碼)</LABEL></DIV>
                  <DIV class=d3><LABEL>主頁:<INPUT id=homepage maxLength=50 
                  size=42 value=http:// name=homepage></LABEL></DIV>
                  <DIV class=d4><LABEL>標題:<INPUT id=commenttopic maxLength=50 
                  size=42 value=Re:關于uC/OS-II中優先級翻轉問題 
                  name=commenttopic></LABEL></DIV>
                  <DIV class=d5><INPUT id=edit type=hidden name=edit> 
                  <DIV id=oblog_edit>數據載入中...</DIV></DIV>
                  <DIV class=d6><SPAN id=ob_code></SPAN><INPUT onclick='oblog_edittext.createTextRange().execCommand("Copy");' type=submit value=&nbsp;提&nbsp;交&nbsp;></DIV></FORM></DIV></TD></TR></TBODY></TABLE></DIV></TD></TR></TBODY></TABLE></TD>
    <TD vAlign=top width=145><IMG height=152 alt="" 
      src="關于uC-OS-II中優先級翻轉問題--深藍空間.files/index1_06.jpg" 
width=145></TD></TR></TBODY></TABLE>
<TABLE class=content3 cellSpacing=0 cellPadding=0 width=996 border=0>
  <TBODY>
  <TR>
    <TD align=middle height=20></TD></TR></TBODY></TABLE><SPAN id=gg_userbot></SPAN>
<DIV id=powered><A href="http://www.mcublog.com/" target=_blank><IMG 
alt="Powered by Mcublog." src="關于uC-OS-II中優先級翻轉問題--深藍空間.files/oblog_powered.gif" 
border=0></A>
<SCRIPT language=javascript 
src="關于uC-OS-II中優先級翻轉問題--深藍空間.files/click.htm"></SCRIPT>
 </DIV>
<SCRIPT src="關于uC-OS-II中優先級翻轉問題--深藍空間.files/200605.htm"></SCRIPT>

<SCRIPT src="關于uC-OS-II中優先級翻轉問題--深藍空間.files/count.htm"></SCRIPT>

<SCRIPT src="關于uC-OS-II中優先級翻轉問題--深藍空間.files/commentedit.htm"></SCRIPT>

<SCRIPT src="F:\ucos\新資料\關于uC-OS-II中優先級翻轉問題--深藍空間.files\count(1).htm"></SCRIPT>

<SCRIPT src="關于uC-OS-II中優先級翻轉問題--深藍空間.files/login.htm"></SCRIPT>

<SCRIPT src="關于uC-OS-II中優先級翻轉問題--深藍空間.files/ShowXml.htm"></SCRIPT>

<SCRIPT src="F:\ucos\新資料\關于uC-OS-II中優先級翻轉問題--深藍空間.files\count(2).htm"></SCRIPT>
</BODY></HTML>

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产精品色婷婷| 香蕉成人啪国产精品视频综合网| 欧美日韩高清不卡| 99re热这里只有精品免费视频| 亚洲色图视频网站| 久久久久久久久久久久久女国产乱| 欧美日韩综合不卡| 国产精品一区二区久久不卡 | 美女网站色91| 一区精品在线播放| 日本一区二区三区视频视频| 日韩视频一区二区三区在线播放 | 欧美日本不卡视频| 色综合久久久久久久久久久| 国产精品18久久久久久久久久久久 | 日韩激情中文字幕| 亚洲综合色婷婷| 亚洲人吸女人奶水| 久久久久久久久久久久电影 | 亚洲国产视频一区二区| 亚洲少妇30p| 亚洲色图欧美在线| 亚洲三级在线播放| 亚洲精品自拍动漫在线| 亚洲日本护士毛茸茸| 久久综合视频网| www激情久久| 久久综合九色综合欧美亚洲| 欧美一级日韩一级| 日韩欧美第一区| 精品国产一区二区三区忘忧草 | 在线观看一区日韩| 99亚偷拍自图区亚洲| 不卡一二三区首页| 国产91丝袜在线18| 成人国产精品免费观看动漫| 成人精品国产福利| jvid福利写真一区二区三区| 91成人在线观看喷潮| 欧美性极品少妇| 欧美三级视频在线观看| 欧美一区二区免费视频| 国产日产欧产精品推荐色| 亚洲欧美日韩中文字幕一区二区三区 | 精品写真视频在线观看 | 91.麻豆视频| 国产亚洲欧美在线| 一级做a爱片久久| 精品一区二区久久久| 99国产精品视频免费观看| 欧美日韩国产高清一区二区三区 | 国产日韩影视精品| 亚洲精品乱码久久久久久| 免费日韩伦理电影| 成人国产视频在线观看| 制服丝袜中文字幕一区| 国产欧美一区二区三区在线老狼| 伊人开心综合网| 国产乱码精品一区二区三 | 日韩一区二区三区四区 | 日韩在线卡一卡二| 成人久久久精品乱码一区二区三区| 在线观看亚洲成人| 久久免费的精品国产v∧| 一区二区三区免费网站| 国产在线观看一区二区| 欧美日韩日日摸| 中文乱码免费一区二区| 蜜桃传媒麻豆第一区在线观看| 99久久国产免费看| 亚洲精品一区二区三区香蕉| 亚洲伊人色欲综合网| 成人黄色在线网站| 欧美电视剧免费观看| 一区二区免费看| jlzzjlzz欧美大全| 久久久久久久国产精品影院| 午夜一区二区三区在线观看| 成人av网址在线| 久久人人97超碰com| 午夜视黄欧洲亚洲| 成人av免费在线播放| 久久综合九色综合97婷婷女人| 午夜精品在线看| 欧美体内she精高潮| 中文字幕日韩精品一区| 成人午夜视频福利| 亚洲精品一区在线观看| 另类成人小视频在线| 欧美日韩国产小视频| 一区二区欧美在线观看| 91免费精品国自产拍在线不卡| 欧美激情艳妇裸体舞| 国产精品中文字幕日韩精品| 精品国产一区二区国模嫣然| 日韩av在线发布| 欧美精品777| 天堂蜜桃一区二区三区| 欧美揉bbbbb揉bbbbb| 亚洲乱码国产乱码精品精小说| 成人app在线| 国产精品免费人成网站| 福利电影一区二区| 欧美激情艳妇裸体舞| 成人综合婷婷国产精品久久免费| 国产亚洲精品aa午夜观看| 国产在线播放一区二区三区| 久久蜜桃av一区精品变态类天堂| 久久99久久精品| 欧美成人三级电影在线| 国产综合久久久久久鬼色 | 亚洲午夜羞羞片| 在线观看视频一区二区欧美日韩| 亚洲精品伦理在线| 欧美三级电影网| 日韩av午夜在线观看| 555www色欧美视频| 美国av一区二区| 久久久九九九九| 成人在线视频一区二区| 中文字幕在线一区免费| 97se狠狠狠综合亚洲狠狠| 亚洲欧洲综合另类在线| 在线免费观看一区| 视频一区中文字幕国产| 欧美精品在线一区二区三区| 轻轻草成人在线| 精品精品国产高清a毛片牛牛| 韩国在线一区二区| 久久精品人人爽人人爽| 99热这里都是精品| 一区二区三区不卡在线观看 | 久久久久久97三级| av在线播放成人| 午夜激情一区二区三区| 精品三级在线看| 成人国产一区二区三区精品| 亚洲一区在线视频观看| 日韩视频一区二区三区| 国产精品77777竹菊影视小说| 亚洲人成网站在线| 欧美一级欧美三级| 成人做爰69片免费看网站| 风间由美一区二区三区在线观看| 中文字幕欧美激情一区| 欧美色手机在线观看| 国产一区二区毛片| 中文字幕佐山爱一区二区免费| 91精品国产综合久久精品图片| 久久爱另类一区二区小说| 国产欧美精品一区二区色综合朱莉| 色综合久久久久| 国模娜娜一区二区三区| 亚洲精品国产a| 26uuu国产在线精品一区二区| 91在线观看免费视频| 奇米777欧美一区二区| 国产精品国产三级国产aⅴ入口| 欧美日韩国产高清一区| 成人综合激情网| 蜜桃av噜噜一区| 亚洲六月丁香色婷婷综合久久 | 欧美日韩中文精品| 国产精品综合网| 亚洲一二三四区| 日本一区二区在线不卡| 欧美高清视频在线高清观看mv色露露十八| 国产美女在线精品| 亚洲r级在线视频| 中文字幕中文字幕一区| 精品不卡在线视频| 欧美视频自拍偷拍| 成人国产精品免费观看视频| 蜜臀av一区二区在线免费观看 | 亚洲一区免费视频| 国产亚洲制服色| 日韩一区国产二区欧美三区| 色婷婷精品大在线视频| 成人自拍视频在线| 韩国一区二区三区| 免费欧美在线视频| 亚洲午夜免费电影| 亚洲视频免费观看| 国产清纯白嫩初高生在线观看91 | 日韩中文字幕不卡| 一级女性全黄久久生活片免费| 中文字幕欧美区| 国产午夜精品一区二区| 日韩一区二区三区精品视频| 欧美日精品一区视频| 91久久精品网| 99天天综合性| 成人黄色网址在线观看| 久久不见久久见免费视频1| 日韩激情在线观看| 亚洲v中文字幕| 亚洲午夜三级在线| 亚洲一区视频在线| 北条麻妃一区二区三区| 极品少妇一区二区|