System.ArgumentOutOfRangeException: 索引和長度必須引用該字符串內的位置。 參數名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 精品亚洲AV无码一区二区三区 ,伊人久久综合无码成人网,久久天堂av综合色无码专区
  • 
    <ul id="o6k0g"></ul>
    <ul id="o6k0g"></ul>

    磁盤數據讀取方法及裝置制造方法及圖紙

    技術編號:43840936 閱讀:14 留言:0更新日期:2024-12-31 18:36
    本申請提出了一種磁盤數據讀取方法及裝置,該方法包括:獲取應用程序針對目標文件的數據讀取請求;檢測應用級緩沖區內為所述目標文件已緩存的未處理數據是否達到指定數據量,其中,所述指定數據量指的是讀取所述目標文件所需的多次讀取操作中單次讀取操作的數據讀取量;在所述未處理數據未達到所述指定數據量的情況下,為所述數據讀取請求執行磁盤數據讀取操作;在所述未處理數據達到所述指定數據量的情況下,在所述應用級緩沖區中選擇所述指定數據量的未處理數據轉移至用戶緩沖區,使所述應用程序在所述用戶緩沖區獲取所述指定數據量的未處理數據。本申請的技術方案,減少了磁盤讀取操作對系統資源的調用次數,同時也提升了磁盤讀取操作的效率。

    【技術實現步驟摘要】

    【】本申請涉及數據存儲,尤其涉及一種磁盤數據讀取方法及裝置


    技術介紹

    0、
    技術介紹

    1、用戶進程運行過程中經常需要從磁盤文件中讀取數據作為應用程序的輸入,同時,操作系統需要將應用程序的核心信息持久化存儲到磁盤文件中,以支持操作系統后續調度應用程序的操作和應用程序出錯時的狀態恢復行為。在這些數據讀取過程中,應用程序對文件的讀取并不是一次性從頭到尾完成的,而是通過將文件拆分后進行多次小數據量的片段讀取來完成的。在此基礎上,在文件讀取過程中很可能因系統中斷而讀取失敗,或因檢測到文件結束而觸發eof條件,使讀取操作出現不足值的情況,這都會影響數據讀取的可靠性。

    2、對此,相關技術中提出了多種數據讀取方式來緩解這一問題帶來的弊端。

    3、其中,可采用內聯匯編方式進行文件讀取。具體地,可根據磁盤控制器廠商提供的磁盤端口信息,確定磁盤中安裝的文件系統中文件的元信息,在c程序中內嵌直接訪問硬件端口的程序,直接將磁盤數據讀入到內存,避免了系統中斷帶來的磁盤文件讀取失敗問題。然而,這一方式需要使用者充分了解計算機系統中所使用硬盤對外發布的接口信息,以及需要使用者能夠基于該接口信息選擇合適的端口對磁盤文件進行訪問,所消耗人工成本較高。并且,此種方式對讀取操作不足值的情況并不敏感,需要額外為讀取操作不足值的情況增加代碼判斷,而多代碼的引入會增加系統本身的安全隱患。

    4、另外,相關技術中還指出,可使用syscall系統提供的統一系統調用函數進行磁盤數據讀取。此系統調用函數是對操作系統中所有軟中斷的對象實施,對不同的數據讀取失敗問題具有兼容性。然而,該統一系統調用函數使用統一接口返回所有中斷的返回值,各種返回值包含的內容豐富多變,對于讀操作來說,需要基于復雜的返回值分析數據讀取失敗問題的原因。這一過程涉及大量分析,耗費系統資源過多。

    5、因此,如何更為安全有效地應對磁盤文件讀取過程中出現的問題,成為目前亟待解決的技術問題。


    技術實現思路

    0、
    技術實現思路

    1、本申請實施例提供了一種磁盤數據讀取方法及裝置,旨在解決相關技術中針對磁盤文件讀取失敗問題的解決方式便利性不足的技術問題。

    2、第一方面,本申請實施例提供了一種磁盤數據讀取方法,包括:

    3、獲取應用程序針對目標文件的數據讀取請求;

    4、檢測應用級緩沖區內為所述目標文件已緩存的未處理數據是否達到指定數據量,其中,所述指定數據量指的是讀取所述目標文件所需的多次讀取操作中單次讀取操作的數據讀取量;

    5、在所述未處理數據未達到所述指定數據量的情況下,為所述數據讀取請求執行磁盤數據讀取操作,其中,所述磁盤數據讀取操作用于在磁盤中讀取所述目標文件的所述未處理數據以外的部分;

    6、在所述未處理數據達到所述指定數據量的情況下,在所述應用級緩沖區中選擇所述指定數據量的未處理數據轉移至用戶緩沖區,使所述應用程序在所述用戶緩沖區獲取所述指定數據量的未處理數據。

    7、在本申請的一個實施例中,可選地,在所述獲取應用程序針對目標文件的數據讀取請求之前,還包括:

    8、在用戶進程所在的用戶態地址空間中建立所述應用級緩沖區,其中,

    9、為所述應用級緩沖區設置用于統計所述應用級緩沖區內的未處理數據的計數器,以及為所述應用級緩沖區設置用于指示所述未處理數據所在的磁盤訪問位置的地址指針。

    10、在本申請的一個實施例中,可選地,在所述應用級緩沖區中選擇所述指定數據量的未處理數據轉移至用戶緩沖區后,還包括:

    11、更新所述應用級緩沖區的所述計數器和所述地址指針。

    12、在本申請的一個實施例中,可選地,在為所述數據讀取請求執行磁盤數據讀取操作之后,還包括:

    13、獲取執行所述磁盤數據讀取操作的返回結果;

    14、若所述返回結果為磁盤數據讀取成功,返回所述檢測應用級緩沖區內為所述目標文件已緩存的未處理數據是否達到指定數據量的步驟,直至所述未處理數據達到所述指定數據量時,停止所述磁盤數據讀取操作。

    15、在本申請的一個實施例中,可選地,該方法還包括:

    16、若所述返回結果為因系統阻塞導致磁盤數據讀取失敗,返回所述為所述數據讀取請求執行磁盤數據讀取操作的步驟,直至磁盤數據讀取成功或執行所述磁盤數據讀取操作的次數達到預設次數上限。

    17、在本申請的一個實施例中,可選地,該方法還包括:

    18、若所述返回結果為因磁盤文件錯誤導致磁盤數據讀取失敗,終止磁盤數據讀取進程,并向所述應用程序返回數據讀取失敗信息。

    19、在本申請的一個實施例中,可選地,該方法還包括:

    20、若所述返回結果為因磁盤文件錯誤導致磁盤數據讀取失敗,檢測所述數據讀取請求所針對的磁盤內是否存在與所述磁盤數據讀取操作的讀取目標具有相同數據特征的替換數據,其中,所述數據特征包括數據主體、數據內容和數據置信度;

    21、若所述磁盤內存在所述替換數據,向所述應用程序返回所述替換數據和預設的替換提示信息。

    22、第二方面,本申請實施例提供了一種磁盤數據讀取裝置,包括:

    23、數據讀取請求獲取單元,用于獲取應用程序針對目標文件的數據讀取請求;

    24、數據量檢測單元,用于檢測應用級緩沖區內為所述目標文件已緩存的未處理數據是否達到指定數據量,其中,所述指定數據量指的是讀取所述目標文件所需的多次讀取操作中單次讀取操作的數據讀取量;

    25、第一處理單元,用于在所述未處理數據未達到所述指定數據量的情況下,為所述數據讀取請求執行磁盤數據讀取操作,其中,所述磁盤數據讀取操作用于在磁盤中讀取所述目標文件的所述未處理數據以外的部分;

    26、第二處理單元,用于在所述未處理數據達到所述指定數據量的情況下,在所述應用級緩沖區中選擇所述指定數據量的未處理數據轉移至用戶緩沖區,使所述應用程序在所述用戶緩沖區獲取所述指定數據量的未處理數據。

    27、在本申請的一個實施例中,可選地,該裝置還包括:

    28、應用級緩沖區建立單元,用于在獲取應用程序針對目標文件的數據讀取請求之前,在用戶進程所在的用戶態地址空間中建立所述應用級緩沖區,其中,為所述應用級緩沖區設置用于統計所述應用級緩沖區內的未處理數據的計數器,以及為所述應用級緩沖區設置用于指示所述未處理數據所在的磁盤訪問位置的地址指針。

    29、在本申請的一個實施例中,可選地,該裝置還包括:

    30、信息更新單元,用于在所述應用級緩沖區中選擇所述指定數據量的未處理數據轉移至用戶緩沖區后,更新所述應用級緩沖區的所述計數器和所述地址指針。

    31、在本申請的一個實施例中,可選地,該裝置還包括:

    32、返回結果獲取單元,用于在為所述數據讀取請求執行磁盤數據讀取操作之后,獲取執行所述磁盤數據讀取操作的返回結果;

    33、第一執行單元,用于若所述返本文檔來自技高網...

    【技術保護點】

    1.一種磁盤數據讀取方法,其特征在于,包括:

    2.根據權利要求1所述的磁盤數據讀取方法,其特征在于,在所述獲取應用程序針對目標文件的數據讀取請求之前,還包括:

    3.根據權利要求2所述的磁盤數據讀取方法,其特征在于,在所述應用級緩沖區中選擇所述指定數據量的未處理數據轉移至用戶緩沖區后,還包括:

    4.根據權利要求1至3中任一項所述的磁盤數據讀取方法,其特征在于,在為所述數據讀取請求執行磁盤數據讀取操作之后,還包括:

    5.根據權利要求4所述的磁盤數據讀取方法,其特征在于,還包括:

    6.根據權利要求4所述的磁盤數據讀取方法,其特征在于,還包括:

    7.根據權利要求4所述的磁盤數據讀取方法,其特征在于,還包括:

    8.一種磁盤數據讀取裝置,其特征在于,包括:

    9.一種計算機設備,其特征在于,包括:至少一個處理器;以及,與所述至少一個處理器通信連接的存儲器;

    10.一種計算機可讀存儲介質,其特征在于,存儲有計算機可執行指令,所述計算機可執行指令用于執行如權利要求1至7中任一項所述的方法。</p>...

    【技術特征摘要】

    1.一種磁盤數據讀取方法,其特征在于,包括:

    2.根據權利要求1所述的磁盤數據讀取方法,其特征在于,在所述獲取應用程序針對目標文件的數據讀取請求之前,還包括:

    3.根據權利要求2所述的磁盤數據讀取方法,其特征在于,在所述應用級緩沖區中選擇所述指定數據量的未處理數據轉移至用戶緩沖區后,還包括:

    4.根據權利要求1至3中任一項所述的磁盤數據讀取方法,其特征在于,在為所述數據讀取請求執行磁盤數據讀取操作之后,還包括:

    5.根據權利要求4所述的磁盤數據...

    【專利技術屬性】
    技術研發人員:邊博
    申請(專利權)人:北銀金融科技有限責任公司
    類型:發明
    國別省市:

    網友詢問留言 已有0條評論
    • 還沒有人留言評論。發表了對其他瀏覽者有用的留言會獲得科技券。

    1
    主站蜘蛛池模板: 国产高清无码视频| 国产成人无码AⅤ片在线观看| 97久久精品无码一区二区天美| 亚洲中文无码a∨在线观看| 激情无码亚洲一区二区三区| 亚洲永久无码3D动漫一区| 亚洲人成网亚洲欧洲无码| 波多野结衣AV无码| 人妻在线无码一区二区三区| 久久人妻少妇嫩草AV无码蜜桃| 在线看片无码永久免费视频| 在线精品无码字幕无码AV| 毛片亚洲AV无码精品国产午夜| 无码国产乱人伦偷精品视频 | 国产乱子伦精品免费无码专区| 成人午夜亚洲精品无码网站| 无码精品人妻一区| 无码国产精成人午夜视频不卡| 无码人妻黑人中文字幕| 高h纯肉无码视频在线观看| 亚洲精品无码久久不卡| 日韩久久无码免费毛片软件| 久久久g0g0午夜无码精品| 亚洲一区无码中文字幕乱码| 熟妇人妻AV无码一区二区三区| 亚洲AV永久无码精品水牛影视| 亚洲精品无码久久久| yy111111少妇影院里无码| 无码国模国产在线无码精品国产自在久国产 | 全免费a级毛片免费看无码| 在线看无码的免费网站| 日韩精品真人荷官无码| 免费精品无码AV片在线观看| 无码午夜人妻一区二区三区不卡视频| av无码一区二区三区| 日韩a级无码免费视频| 中文字幕有码无码AV| 亚洲AV日韩AV高潮无码专区| 无码精品久久久天天影视| 久久无码专区国产精品发布| 亚洲中文字幕久久无码|