sample venc c公共緩衝池分析

2021-09-27 04:34:37 字數 553 閱讀 2598

vb結構體如下所示:

如圖所示,總共有兩個公共快取池,每個快取池有多個快取塊.vi採集到資料後存放在快取塊bm中,然後交給vpss處理,最後根據情況還會使用多個快取塊bi,bj,bk最後釋放回到快取池中.

其結構體如下可以官方文件 himpp ipc v2.0 **處理軟體開發參考.pdf中有詳細說明

typedef struct hivb_conf_s

astcommpool[vb_max_comm_pools];

} vb_conf_s;

u32maxpoolcnt:為整個系統可容納的快取池個數

astcommpool:為公共快取池.

然後venc中**相關的是

stvbconf.u32maxpoolcnt = 128;//這個就是乙個經驗值.

hi_mpi_vb_setconf(pstvbconf);海思提供的api,將分配的記憶體註冊進核心. 

標準I O緩衝 全緩衝 行緩衝 無緩衝

說明 我只對網路資源進行了整合,方便學習 基於流的操作最終會呼叫read或者write函式進行i o操作。為了使程式的執行效率最高,流物件通常會提供緩衝區,以減少呼叫系統i o庫函式的次數。基於流的i o提供以下3種緩衝 全緩衝 直到緩衝區被填滿,才呼叫系統i o函式。對於讀操作來說,直到讀入的內容...

標準I O緩衝 全緩衝 行緩衝 無緩衝

某日一朋友寫了乙個hello world 出不來結果,如下 include intmain int argc,char argv 注意到,在 中printf語句列印的字串最後沒有帶換行符,而且最後呼叫了 exit函式,這導致了在終端螢幕上顯示不出來字串 hello world 首先介紹一下unix裡...

標準I O緩衝 全緩衝 行緩衝 無緩衝

說明 我只對網路資源進行了整合,方便學習 基於流的操作最終會呼叫read或者write函式進行i o操作。為了使程式的執行效率最高,流物件通常會提供緩衝區,以減少呼叫系統i o庫函式的次數。基於流的i o提供以下 3種緩衝 全緩衝 直到緩衝區被填滿,才呼叫系統i o函式。對於讀操作來說,直到讀入的內...