前言
在開發程序中會發現 Hi3559AV100 雙系統下要傳輸共享一些檔案該如何處理,也有客戶反映按照官方檔案操作雙系統下 sharefs 使用不了,然后就整理了這篇博文,希望能對大家日后開發有幫助,
一、Sharefs 功能
Sharefs 可使 A53UP Huawei LiteOS 訪問 A53MP+A73MP Linux 上目錄,其原始碼目錄位于:sdk/osdrv/components/ipcm/class/sharefs Sharefs 采用 IPCM6 號埠,
Sharefs 采用 Server/Client 模型,Server 提供被訪問目錄,接收 Client 發出的檔案訪問命令并執行,然后回傳結果給 Client,在 Client 端,通過一些基本的檔案或目錄訪問操作(open/read/write/close、cd/ls/stat 等),其實際等同于訪問 Server 端對應的目錄,
---- 結束
二、初始化
A53UP Huawei LiteOS 鏈接 libipcm.a,libsharefs.a 庫,并在 app_init 中執行初始化:
_ipcm_vdd_init();
sharefs_client_init("/sharefs");
修改原始碼后重新編譯燒錄,具體編譯燒錄方法可以參考我上一篇博文《【Hi3559AV100 Camera】 Hi3559AV100 環境搭建》
---- 結束
三、加載驅動
A53MP+A73MP 加載 hi_ipcm.ko,并執行:sharefs & ,作為后臺程式,統起來后進入 /kmod 目錄下加載驅動
insmod hi_ipcm.ko
insmod hi_virt-tty.ko
sharefs &
這樣驅動就加載成功了,
---- 結束
四、LiteOS 訪問 Sharefs
驅動加載完成后就可以通過 virt-tty 虛擬串口切換到 A53UP LiteOS 端
virt-tty a53
這樣在A53UP Huawei LiteOS 就可訪問 A53MP+A73MP Linux 的目錄“/sharefs”
A53MP+A73MP Linux:

A53UP Huawei LiteOS:

注意:
由 Client 指定的 Sharefs 訪問目錄(sharefs_client_init 的入參)在 Server 端必須存在,并且能被 Server 端應用 sharefs 訪問,不然,Client 會訪問失敗,
說明:
有些人可能會使用 sharefs 來傳輸一些視頻碼流檔案來做其他處理,例如:big-little 模式下通過 /sharefs 來解碼會產生解碼太慢的問題,這是因為 sharefs 只是用于傳輸音頻的一些 檔案,如果是視頻碼流的話,需要使用 datafifo 來傳輸,具體請參考 hisyslink\datafifo 里面的 sample 說明,通過 datafifo 獲取到碼流之后再呼叫 decode 的介面即可,后面我會單獨寫一篇博文來處理上述問題,請期待~
【Hi3559AV100 Camera】?Hi3559AV100 雙系統下使用 RAMFS 檔案系統來跑 sample_vdec視頻解碼
---- 結束
五、參考資料
《 【Hi3559AV100 Camera】 Hi3559AV100 環境搭建 》
《 WM_Hi3559A╱C V100 SDK 安裝及升級使用說明.pdf 》
《 WM_Hi3559A╱C V100 開發環境用戶指南.pdf 》
注:
未經本人允許,不得轉載!謝謝!
轉載請註明出處,本文鏈接:https://www.uj5u.com/qianduan/143131.html
標籤:其他
上一篇:淘寶產品界面的視頻和圖片輪播功能
下一篇:走進音視頻的世界——音視頻解碼
