[發(fā)明專利]一種數(shù)據(jù)傳輸方法、裝置、電子設(shè)備及介質(zhì)在審
| 申請?zhí)枺?/td> | 202210691741.3 | 申請日: | 2022-06-17 |
| 公開(公告)號: | CN114968535A | 公開(公告)日: | 2022-08-30 |
| 發(fā)明(設(shè)計)人: | 韋安立 | 申請(專利權(quán))人: | 上海金卓科技有限公司 |
| 主分類號: | G06F9/48 | 分類號: | G06F9/48;G06F9/54 |
| 代理公司: | 北京品源專利代理有限公司 11332 | 代理人: | 郭德霞 |
| 地址: | 201203 上海市浦東新區(qū)中國(上*** | 國省代碼: | 上海;31 |
| 權(quán)利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 一種 數(shù)據(jù)傳輸 方法 裝置 電子設(shè)備 介質(zhì) | ||
本發(fā)明實施例公開了一種數(shù)據(jù)傳輸方法、裝置、電子設(shè)備及介質(zhì)。方法包括:在USB串口邏輯文件下的端口結(jié)構(gòu)體中添加寫入隊列;通過USB串口邏輯文件的第一寫文件函數(shù),將用戶空間傳輸?shù)拇幚頂?shù)據(jù)移至寫入隊列中;通過USB串口邏輯文件的數(shù)據(jù)發(fā)送函數(shù),依次將寫入隊列中的待處理數(shù)據(jù)傳輸至UDC,直至寫入隊列中的待處理數(shù)據(jù)傳輸完畢。通過在USB串口邏輯文件下的端口結(jié)構(gòu)體中添加寫入隊列,更改部分?jǐn)?shù)據(jù)結(jié)構(gòu)和發(fā)送時的數(shù)據(jù)處理流程,實現(xiàn)用戶數(shù)據(jù)先暫存寫入隊列,然后再傳至UDC的發(fā)送隊列,并實現(xiàn)去掉兩次多余的內(nèi)存拷貝和較大的一塊內(nèi)存緩沖區(qū),減少了Linux內(nèi)核對內(nèi)存的占用,提高了數(shù)據(jù)傳輸?shù)男省?/p>
技術(shù)領(lǐng)域
本發(fā)明實施例涉及計算機(jī)技術(shù)領(lǐng)域,尤其涉及一種數(shù)據(jù)傳輸方法、裝置、電子設(shè)備及介質(zhì)。
背景技術(shù)
目前,Linux操作系統(tǒng)中已經(jīng)比較完整的實現(xiàn)了電傳打字機(jī)(Teletypewriter,tty)架構(gòu)下的通用串行總線(Universal Serial Bus,USB)驅(qū)動,用戶只要實現(xiàn)自己的USB設(shè)備控制器(USB Device Controller,UDC)驅(qū)動即可?,F(xiàn)有tty架構(gòu),對于Linux的應(yīng)用程序(Application,APP)來說,如果打開tty架構(gòu)下的USB驅(qū)動所提供的USB虛擬串口(如“ttyGSx”端口),以發(fā)送數(shù)據(jù)至個人計算機(jī)(Personal Computer,PC)時,tty架構(gòu)下的USB驅(qū)動會包含三次相應(yīng)的內(nèi)存拷貝,最終通過USB控制器將數(shù)據(jù)發(fā)送至PC。
但是,在上述數(shù)據(jù)傳輸過程中,需要通過三次內(nèi)存拷貝才能將數(shù)據(jù)發(fā)送至PC,內(nèi)存拷貝次數(shù)過多,還會占用較多內(nèi)存,從而影響了數(shù)據(jù)傳輸?shù)男省?/p>
發(fā)明內(nèi)容
本發(fā)明實施例提供了一種數(shù)據(jù)傳輸方法、裝置、電子設(shè)備及介質(zhì),以提高數(shù)據(jù)傳輸?shù)男省?/p>
根據(jù)本發(fā)明實施例的一方面,提供了一種數(shù)據(jù)傳輸方法,包括:
在USB串口邏輯文件下的端口結(jié)構(gòu)體中添加寫入隊列,所述寫入隊列用于作為存儲用戶空間傳輸?shù)拇幚頂?shù)據(jù)的內(nèi)存空間;
通過USB串口邏輯文件的第一寫文件函數(shù),將用戶空間傳輸?shù)拇幚頂?shù)據(jù)移至所述寫入隊列中;
通過所述USB串口邏輯文件的數(shù)據(jù)發(fā)送函數(shù),依次將所述寫入隊列中的待處理數(shù)據(jù)傳輸至UDC,直至所述寫入隊列中的待處理數(shù)據(jù)傳輸完畢。
根據(jù)本發(fā)明實施例的另一方面,提供了一種數(shù)據(jù)傳輸裝置,包括:
隊列添加模塊,用于在USB串口邏輯文件下的端口結(jié)構(gòu)體中添加寫入隊列,所述寫入隊列用于作為存儲用戶空間傳輸?shù)拇幚頂?shù)據(jù)的內(nèi)存空間;
傳輸模塊,用于通過USB串口邏輯文件的第一寫文件函數(shù),將用戶空間傳輸?shù)拇幚頂?shù)據(jù)移至所述寫入隊列中;
拷貝模塊,用于通過所述USB串口邏輯文件的數(shù)據(jù)發(fā)送函數(shù),依次將所述寫入隊列中的待處理數(shù)據(jù)傳輸至UDC,直至所述寫入隊列中的待處理數(shù)據(jù)傳輸完畢。
根據(jù)本發(fā)明實施例的另一方面,提供了一種電子設(shè)備,所述電子設(shè)備包括:
至少一個處理器;以及
與所述至少一個處理器通信連接的存儲器;其中,
所述存儲器存儲有可被所述至少一個處理器執(zhí)行的計算機(jī)程序,所述計算機(jī)程序被所述至少一個處理器執(zhí)行,以使所述至少一個處理器能夠執(zhí)行本發(fā)明任一實施例所述的數(shù)據(jù)傳輸方法。
根據(jù)本發(fā)明實施例的另一方面,提供了一種計算機(jī)可讀存儲介質(zhì),所述計算機(jī)可讀存儲介質(zhì)存儲有計算機(jī)指令,所述計算機(jī)指令用于使處理器執(zhí)行時實現(xiàn)本發(fā)明任一實施例所述的數(shù)據(jù)傳輸方法。
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于上海金卓科技有限公司,未經(jīng)上海金卓科技有限公司許可,擅自商用是侵權(quán)行為。如果您想購買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202210691741.3/2.html,轉(zhuǎn)載請聲明來源鉆瓜專利網(wǎng)。
- 一種并發(fā)數(shù)據(jù)傳輸控制方法、裝置及終端
- 數(shù)據(jù)傳輸處理方法和數(shù)據(jù)傳輸器
- 一種數(shù)據(jù)傳輸方法及裝置
- 數(shù)據(jù)傳輸方法、裝置及設(shè)備
- 一種數(shù)據(jù)傳輸終端、方法及系統(tǒng)
- 一種物聯(lián)網(wǎng)數(shù)據(jù)傳輸方式的選擇方法和裝置
- 數(shù)據(jù)傳輸方法、數(shù)據(jù)傳輸裝置及計算機(jī)可讀存儲介質(zhì)
- 一種基于電價的非實時數(shù)據(jù)傳輸調(diào)度方法
- 基于云計算的數(shù)據(jù)傳輸處理方法、裝置及系統(tǒng)
- 一種數(shù)據(jù)處理方法、裝置及存儲介質(zhì)





