在线看毛片网站电影-亚洲国产欧美日韩精品一区二区三区,国产欧美乱夫不卡无乱码,国产精品欧美久久久天天影视,精品一区二区三区视频在线观看,亚洲国产精品人成乱码天天看,日韩久久久一区,91精品国产91免费

<menu id="6qfwx"><li id="6qfwx"></li></menu>
    1. <menu id="6qfwx"><dl id="6qfwx"></dl></menu>

      <label id="6qfwx"><ol id="6qfwx"></ol></label><menu id="6qfwx"></menu><object id="6qfwx"><strike id="6qfwx"><noscript id="6qfwx"></noscript></strike></object>
        1. <center id="6qfwx"><dl id="6qfwx"></dl></center>

            新聞中心

            EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 利用MSGQ模塊簡(jiǎn)化復(fù)雜DSP的應(yīng)用

            利用MSGQ模塊簡(jiǎn)化復(fù)雜DSP的應(yīng)用

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


            main()

            if processor 0: 打開(kāi)雇主消息隊(duì)列并

            創(chuàng)建雇主線程。

            if processor 1: 打開(kāi)雇員消息隊(duì)列并

            創(chuàng)建雇員線程。

            打開(kāi)錯(cuò)誤消息隊(duì)列并創(chuàng)建錯(cuò)誤線程。

            srio_init to initialize peripheral

            workerThread()

            Loop

            _get message from the worker queue

            確定發(fā)送器

            向發(fā)送器發(fā)送特定數(shù)量的消息

            bossThread()

            _locate to locate worker queue

            Loop

            _alloc message

            使用要接收的多個(gè)消息來(lái)填充消息。

            MSGQ_setSrcQueue to embedded boss’s message queue

            MSGQ_put message to reader

            Loop

            MSGQ_get message from the boss queue

            errorThread()

            Loop

            MSGQ_get message from the error queue

            Log MQT error via LOG_printf

            在單個(gè)處理器上發(fā)送消息

            下面將介紹在單個(gè)處理器上發(fā)送和接收消息的幕后情況,這個(gè)過(guò)程分為任務(wù)一和任務(wù)二。任務(wù)二由操作系統(tǒng)進(jìn)行調(diào)用,打開(kāi)MSGQ隊(duì)列,并為該消息隊(duì)列指定 “pend”與“post”函數(shù)。如果沒(méi)有消息,則使用“pend”函數(shù),在而向消息隊(duì)列發(fā)送消息時(shí)則調(diào)用“post”函數(shù)。

            如果MSGQ獲得了沒(méi)有待決消息的信息,那么就可運(yùn)行任務(wù)一,但必須讀取隊(duì)列標(biāo)識(shí)符,并定位適當(dāng)?shù)年?duì)列,以免其位于不同的處理器上。通常在啟動(dòng)時(shí)定位隊(duì)列對(duì)性能幾乎沒(méi)有什么影響。此外,任務(wù)一在向任務(wù)二發(fā)送消息之前還必須為消息傳輸分配存儲(chǔ)器。

            一旦任務(wù)一發(fā)送消息,就不能再對(duì)消息進(jìn)行處理,因?yàn)檫@時(shí)MSGQ已擁有該消息,MSGQ會(huì)將該消息分配給適當(dāng)?shù)年?duì)列。任務(wù)二獲得了有消息的信息,并準(zhǔn)備接收消息。一旦任務(wù)二獲得消息,就能夠?qū)ο⑦M(jìn)行重復(fù)使用,并將其發(fā)送回任務(wù)一。例如,如果兩個(gè)任務(wù)要將消息來(lái)回傳輸,那么就僅需分配開(kāi)始的消息。若讀取器接收到消息,就能相應(yīng)地更新內(nèi)容,然后將其發(fā)回。這樣,任務(wù)二就能夠處理消息,一旦處理完成,消息就返回到存儲(chǔ)器管理,任務(wù)二也就不能再對(duì)該消息進(jìn)行處理。消息傳輸至此完成。消息傳遞可通過(guò)為數(shù)據(jù)移動(dòng)提供虛擬接口來(lái)顯著處理器通信的開(kāi)發(fā)與維護(hù)。

            本文引用地址:http://www.biyoush.com/article/152079.htm

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

            評(píng)論


            相關(guān)推薦

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

            關(guān)閉