我正在尋找一個使用tftp命令集的實現,它可以從遠程服務器獲取數據,但是作爲一個整體獲取數據,它將獲取本地環中的數據大小小於遠程文件大小的緩衝區,並在環形圈起後覆蓋數據。因此,如果有任何進程在數據可用時使用數據,則成功,否則會丟失數據。例如,假設我在本地有一個100 MB的遠程文件和(想要創建?)10 MB大小的環形緩衝區的數據。因此,它將獲取遠程數據並將其放入環形緩衝區。 10 MB之後,它開始覆蓋。 任何建議將不勝感激。提前致謝。Tftp命令實現獲取本地環形緩衝區中的遠程數據
-1
A
回答
3
當您使用Linux時,數據將通過Linux套接字到達您的tftp客戶端。通常,您可以在此套接字上調用read
以獲取數據。然而,如果你想使用環形緩衝區,你可以簡單地設置套接字選項PACKET_RX_RING
並從內存映射地址空間(根據the packet_mmap documentation在Linux 2.4/2.6/3.x中可用)讀取數據,而不是調用read
。沒有必要自己實現環形緩衝區。
示例代碼可從維基連接在那裏,從一個related Stack Overflow question,或從various websites。
相關問題
- 1. debugfs - 環形緩衝區實現-linux
- 2. 如何從paquet讀取緩衝區(tftp)
- 3. 實現istream獲取字符緩衝區?
- 4. 如何在C中實現循環列表(環形緩衝區)?
- 5. C基本環形緩衝區問題
- 6. C++ threadsafe環緩衝區實現
- 7. Java - 環形緩衝區
- 8. 重置命令緩衝區
- 9. Java中的環形緩衝區(隊列)
- 10. 獲取音頻緩衝區數據
- 11. 問題:獲取緩衝區數據
- 12. 循環數組/緩衝區實現中的NullReferenceException
- 13. 級聯(緩衝區)實現
- 14. Recv環形緩衝區vs簡單緩衝區
- 15. Java中的抖動緩衝區實現
- 16. 比較環形緩衝區的內容
- 17. C上的環形緩衝區
- 18. 爲什麼我的環形緩衝區/循環緩衝區在java打破?
- 19. 緩衝區的屏幕命令
- 20. Linux內核空間中的「魔術環緩衝區」實現?
- 21. 數據緩衝區
- 22. 在C中實現雙緩衝區
- 23. 標準gcc發行版中是否有環形緩衝區實現?
- 24. 獲取緩衝區大小
- 25. scanf並獲取緩衝區
- 26. 等待免費環形緩衝區
- 27. vim:獲取卸載緩衝區的緩衝區號
- 28. 提交命令緩衝區DX與OpenCL
- 29. tmux copy last命令複製緩衝區
- 30. 協議緩衝區make命令libprotobuf.dll.a
哪部分給你帶來問題?實現一個環形緩衝區或實現一個tftp客戶端? –
爲tftp客戶端實現環形緩衝區 –