新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > μC/OS的任務調度實現方法及PowerPC上的優化

        μC/OS的任務調度實現方法及PowerPC上的優化

        作者: 時間:2010-10-25 來源:網絡 收藏

          lwzr3,128(r5)//OSRdy.Grp在結構體中具有固定偏移量

          cntlzwr3,r3//數出OSRdyGrp的前導零數目

          slwir6,r3,2//得到OSRdyTbl的地址偏移量

          lwzxr4,r6,r5//通過結構體指針,讀取OSRdy.Tbl的對應字

          cntlzwr4,r4//計算OSRdyTbl對應字的前導零數目

          slwir3,r3,5//優先級高5位移位

          addr3,r4,r3//和優先級低5位相加,得到完整優先級

          blr//返回

          }

          在64位的 更有cntlzd(Count Leading Zero Double word)指令,一次就可以找出64個中優先級最高的那個,就更沒有必要使用μII中的算法了。

          5 總結

          RTOS實時內核μ和μII中,算法巧妙,性能優異,在嵌入式應用領域很有影響力,被移植到各種CPU上。然而由于是為8位CPU設計的,對于那些具有優先級硬件算法指令的16/32/64位CPU,μC/OSII的軟件算法就完全失去了優勢。應該利用這類CPU的特有指令,任務算法,使RTOS的實時性達到最佳。對于這類處理器,僅移植μC/OSII軟件算法是很不夠的,應該利用相關硬件算法指令。


        上一頁 1 2 3 下一頁

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 新绛县| 高要市| 新龙县| 安化县| 龙江县| 凤山县| 龙游县| 罗甸县| 黑龙江省| 板桥市| 赤峰市| 凯里市| 河津市| 望都县| 子长县| 朝阳县| 平陆县| 阜新市| 崇礼县| 边坝县| 江川县| 都匀市| 霍邱县| 兰坪| 万宁市| 海城市| 贵州省| 长春市| 尼木县| 娄烦县| 临武县| 孟连| 牡丹江市| 兴仁县| 罗城| 赤峰市| 星子县| 咸宁市| 金川县| 弥勒县| 离岛区|