[發(fā)明專利]基于寫時(shí)復(fù)制的虛擬磁盤寫入方法及裝置、存儲(chǔ)介質(zhì)在審
| 申請?zhí)枺?/td> | 201710472651.4 | 申請日: | 2017-06-20 |
| 公開(公告)號: | CN107861685A | 公開(公告)日: | 2018-03-30 |
| 發(fā)明(設(shè)計(jì))人: | 劉仁仕;張齊國 | 申請(專利權(quán))人: | 平安科技(深圳)有限公司 |
| 主分類號: | G06F3/06 | 分類號: | G06F3/06 |
| 代理公司: | 深圳市世紀(jì)恒程知識產(chǎn)權(quán)代理事務(wù)所44287 | 代理人: | 胡海國 |
| 地址: | 518000 廣東省深*** | 國省代碼: | 廣東;44 |
| 權(quán)利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 基于 復(fù)制 虛擬 磁盤 寫入 方法 裝置 存儲(chǔ) 介質(zhì) | ||
技術(shù)領(lǐng)域
本發(fā)明涉及虛擬磁盤技術(shù)領(lǐng)域,尤其涉及一種基于寫時(shí)復(fù)制的虛擬磁盤寫入方法及裝置、存儲(chǔ)介質(zhì)。
背景技術(shù)
虛擬磁盤(Virtual disk),就是在本地電腦里面虛擬出一個(gè)遠(yuǎn)程電腦里面的磁盤,感覺像是在本機(jī)上的硬盤一樣,但其實(shí)它沒在本機(jī)上。虛擬磁盤就是用內(nèi)存中虛擬出一個(gè)或者多個(gè)磁盤的技術(shù),和虛擬內(nèi)存一樣,內(nèi)存的速度要比硬盤快得多,利用這一點(diǎn),在內(nèi)存中虛擬出一個(gè)或多個(gè)磁盤就可以加快磁盤的數(shù)據(jù)交換速度,從而提高電腦的運(yùn)行速度。
虛擬磁盤在當(dāng)前的云計(jì)算環(huán)境中得到廣泛使用,目前,虛擬磁盤在多次寫入文件后會(huì)形成碎片,即連續(xù)虛擬地址空間分布在不連續(xù)的文件地址空間中,這樣就會(huì)不可避免地帶來寫入放大,即對虛擬磁盤的一次寫操作會(huì)被放大成多個(gè)文件寫操作,對寫性能帶來了一定影響。如當(dāng)寫入的數(shù)據(jù)塊大小為2MB時(shí),默認(rèn)簇的大小為64KB時(shí),則需要寫入32個(gè)數(shù)據(jù)簇,而這32個(gè)數(shù)據(jù)簇可能離散分布在不連續(xù)的文件地址中。此時(shí),寫入操作就會(huì)被放大到32倍,導(dǎo)致虛擬磁盤的寫入性能降低。
發(fā)明內(nèi)容
本發(fā)明的主要目的在于提出一種基于寫時(shí)復(fù)制的虛擬磁盤寫入方法及裝置、存儲(chǔ)介質(zhì),旨在解決現(xiàn)有技術(shù)中虛擬磁盤在多次寫入文件后,會(huì)產(chǎn)生寫入放大,導(dǎo)致虛擬磁盤寫入性能降低的技術(shù)問題。
為實(shí)現(xiàn)上述目的,本發(fā)明提供一種基于寫時(shí)復(fù)制的虛擬磁盤寫入方法,所述基于寫時(shí)復(fù)制的虛擬磁盤寫入方法包括:
在檢測到虛擬磁盤有寫入操作時(shí),檢測所述寫入操作的寫入放大倍數(shù);
當(dāng)所述寫入放大倍數(shù)等于或大于預(yù)設(shè)的閾值時(shí),則對所述寫入操作開啟寫時(shí)復(fù)制,以將所述寫入操作對應(yīng)的待寫入文件暫時(shí)寫入虛擬磁盤的緩存中;
當(dāng)接收到存儲(chǔ)指令時(shí),在所述虛擬磁盤中為所述寫入操作分配連續(xù)的地址空間,并將所述緩存中的待寫入文件寫入到所述虛擬磁盤中。
優(yōu)選地,在所述虛擬磁盤中為所述寫入操作分配連續(xù)的地址空間,并將所述緩存中的待寫入文件寫入到所述虛擬磁盤中的步驟包括:
在所述虛擬磁盤中為所述待寫入文件分配連續(xù)的簇;
將所述緩存中的待寫入文件寫入到所述連續(xù)的簇中,并更新所述緩存中的待寫入文件的虛擬地址偏移量。
優(yōu)選地,更新所述緩存中的待寫入文件的虛擬地址偏移量的步驟包括:
根據(jù)所述待寫入文件的文件頭部,索引出所述待寫入文件的虛擬地址偏移量;
更新所述緩存中的待寫入文件的虛擬地址偏移量,并釋放所述虛擬磁盤中已被占用的簇。
優(yōu)選地,釋放所述虛擬磁盤中已被占用的簇的步驟包括:
將所述已被占用的簇對應(yīng)的引用計(jì)數(shù)減1。
優(yōu)選地,在所述虛擬磁盤中為所述寫入操作分配連續(xù)的地址空間,并將所述緩存中的待寫入文件寫入到所述虛擬磁盤中的步驟還包括:
讀取已被占用的簇對應(yīng)的首尾數(shù)據(jù)段,并與所述緩存中的待寫入文件進(jìn)行拼接后同時(shí)寫入到所述虛擬磁盤中。
此外,為實(shí)現(xiàn)上述目的,本發(fā)明還提供一種基于寫時(shí)復(fù)制的虛擬磁盤寫入裝置,所述基于寫時(shí)復(fù)制的虛擬磁盤寫入裝置包括:存儲(chǔ)器、處理器及存儲(chǔ)在所述存儲(chǔ)器上并可在所述處理器上運(yùn)行的基于寫時(shí)復(fù)制的虛擬磁盤寫入程序,所述基于寫時(shí)復(fù)制的虛擬磁盤寫入程序被所述處理器執(zhí)行時(shí)實(shí)現(xiàn)如下步驟:
在檢測到虛擬磁盤有寫入操作時(shí),檢測所述寫入操作的寫入放大倍數(shù);
當(dāng)所述寫入放大倍數(shù)等于或大于預(yù)設(shè)的閾值時(shí),則對所述寫入操作開啟寫時(shí)復(fù)制,以將所述寫入操作對應(yīng)的待寫入文件暫時(shí)寫入虛擬磁盤的緩存中;
當(dāng)接收到存儲(chǔ)指令時(shí),在所述虛擬磁盤中為所述寫入操作分配連續(xù)的地址空間,并將所述緩存中的待寫入文件寫入到所述虛擬磁盤中。
優(yōu)選地,所述基于寫時(shí)復(fù)制的虛擬磁盤寫入程序被所述處理器執(zhí)行時(shí),還可以實(shí)現(xiàn)如下步驟:
在所述虛擬磁盤中為所述待寫入文件分配連續(xù)的簇;
將所述緩存中的待寫入文件寫入到所述連續(xù)的簇中,并更新所述緩存中的待寫入文件的虛擬地址偏移量。
優(yōu)選地,所述基于寫時(shí)復(fù)制的虛擬磁盤寫入程序被所述處理器執(zhí)行時(shí),還可以實(shí)現(xiàn)如下步驟:
根據(jù)所述待寫入文件的文件頭部,索引出所述待寫入文件的虛擬地址偏移量;
更新所述緩存中的待寫入文件的虛擬地址偏移量,并釋放所述虛擬磁盤中已被占用的簇。
優(yōu)選地,所述基于寫時(shí)復(fù)制的虛擬磁盤寫入程序被所述處理器執(zhí)行時(shí),還可以實(shí)現(xiàn)如下步驟:
讀取已被占用的簇對應(yīng)的首尾數(shù)據(jù)段,并與所述緩存中的待寫入文件進(jìn)行拼接后同時(shí)寫入到所述虛擬磁盤中。
該專利技術(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/201710472651.4/2.html,轉(zhuǎn)載請聲明來源鉆瓜專利網(wǎng)。
- 同類專利
- 專利分類
G06F 電數(shù)字?jǐn)?shù)據(jù)處理
G06F3-00 用于將所要處理的數(shù)據(jù)轉(zhuǎn)變成為計(jì)算機(jī)能夠處理的形式的輸入裝置;用于將數(shù)據(jù)從處理機(jī)傳送到輸出設(shè)備的輸出裝置,例如,接口裝置
G06F3-01 .用于用戶和計(jì)算機(jī)之間交互的輸入裝置或輸入和輸出組合裝置
G06F3-05 .在規(guī)定的時(shí)間間隔上,利用模擬量取樣的數(shù)字輸入
G06F3-06 .來自記錄載體的數(shù)字輸入,或者到記錄載體上去的數(shù)字輸出
G06F3-09 .到打字機(jī)上去的數(shù)字輸出
G06F3-12 .到打印裝置上去的數(shù)字輸出
- 內(nèi)容管理方法以及內(nèi)容管理裝置
- 用于更新輸入數(shù)據(jù)的復(fù)制控制信息的設(shè)備和方法
- 非易失性存儲(chǔ)裝置以及存儲(chǔ)控制器
- 一種組播報(bào)文兩級復(fù)制方法及裝置
- 存儲(chǔ)系統(tǒng)、信息處理系統(tǒng)及非易失性存儲(chǔ)器的控制方法
- 數(shù)據(jù)復(fù)制裝置以及計(jì)算機(jī)能讀取的存儲(chǔ)介質(zhì)
- 一種快速復(fù)制PCB線段的方法及系統(tǒng)
- 一種復(fù)制方法、裝置和終端
- 一種基于區(qū)塊鏈的區(qū)塊復(fù)制方法、裝置、設(shè)備及介質(zhì)
- 一種數(shù)據(jù)復(fù)制粘貼方法、系統(tǒng)及電子設(shè)備
- 確定吸收制品功效
- 一種虛擬機(jī)的安全訪問方法及虛擬機(jī)系統(tǒng)
- 一種虛擬桌面的解鎖方法及裝置
- 一種實(shí)時(shí)處理虛擬交換機(jī)網(wǎng)絡(luò)流量的虛擬化平臺(tái)
- 虛擬智能家居實(shí)訓(xùn)系統(tǒng)及其虛擬實(shí)訓(xùn)方法
- 虛擬機(jī)的磁盤資源的管理方法和裝置
- 一種基于KVM的虛擬網(wǎng)卡管理方法
- 虛擬資源數(shù)據(jù)處理方法、裝置、計(jì)算機(jī)設(shè)備和存儲(chǔ)介質(zhì)
- 基于虛擬環(huán)境的道具使用方法、裝置、設(shè)備及介質(zhì)
- 虛擬道具的獲取方法、裝置、設(shè)備及介質(zhì)





