<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > VxWorks下的多重定時(shí)器設(shè)計(jì)

          VxWorks下的多重定時(shí)器設(shè)計(jì)

          作者: 時(shí)間:2009-12-28 來(lái)源:網(wǎng)絡(luò) 收藏

          3.2 主要實(shí)現(xiàn)代碼
          一個(gè)三重的主要實(shí)現(xiàn)代碼如下:


          以上程序中通過sysClkRateSet(100)將最小延時(shí)單位tick修改成10 ms,它是幾個(gè)定時(shí)時(shí)間(30 ms、40 ms、60ms)的最大公約數(shù)。通過抓包軟件Ethereal抓包,查看發(fā)送時(shí)間。以30 ms為例,抓包100次的平均定時(shí)時(shí)間在25 ms左右。出現(xiàn)這種情況的原因是,延時(shí)N個(gè)tick實(shí)際是延時(shí)(N-1)tick~N?tick。由于是等可能概率,則它的數(shù)學(xué)期望是(N+1/2)。對(duì)于tick為10 ms,30 ms即N=3,數(shù)學(xué)期望為25 ms。示意圖如圖4所示。

          延時(shí)精度為1/N秒,N越大越精確。于是調(diào)用函數(shù)synClkRateSet(500),可以使定時(shí)的最大誤差不超過2 ms。但是如果時(shí)鐘頻率太高,會(huì)造成系統(tǒng)在時(shí)鐘中斷處理方面開銷太大,影響系統(tǒng)的任務(wù)調(diào)度,最好通過實(shí)驗(yàn)選用較為合適的時(shí)鐘頻率。這里選用sysClkRate-Set(200)。


          結(jié) 語(yǔ)
          本文針對(duì)下UDP網(wǎng)絡(luò)通信中的可靠傳輸問題,提出了一個(gè)支持重傳和定時(shí)等待確認(rèn)的協(xié)議,并利用系統(tǒng)提供的信號(hào)量同步、消息隊(duì)列和看門狗等多種機(jī)制,綜合了一種可擴(kuò)展的三重。針對(duì)遇到的具體問題,筆者還進(jìn)行了一定的優(yōu)化處理。這種定時(shí)器模型已在筆者所研究的項(xiàng)目中得到利用,驗(yàn)證了其可行性和相對(duì)穩(wěn)定性。這種定時(shí)器模型并不完全適合所有環(huán)境,需要根據(jù)具體情況改進(jìn)和優(yōu)化。


          上一頁(yè) 1 2 下一頁(yè)

          評(píng)論


          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();