專利名稱:精簡(jiǎn)供應(yīng)的空間分配的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及精簡(jiǎn)供應(yīng)的空間分配。
背景技術(shù):
當(dāng)存儲(chǔ)系統(tǒng)實(shí)際上可能未完全由物理存儲(chǔ)支持時(shí),使用精簡(jiǎn)(thin)供應(yīng)的存儲(chǔ)系統(tǒng)可將極大的邏輯容量呈現(xiàn)給文件系統(tǒng)。在這些系統(tǒng)中,文件系統(tǒng)可如同大的邏輯容量存在一樣操作,但是當(dāng)物理存儲(chǔ)接近容量時(shí),如果文件系統(tǒng)繼續(xù)將數(shù)據(jù)寫(xiě)入存儲(chǔ)則數(shù)據(jù)可能丟失。在一種使用情形下,精簡(jiǎn)供應(yīng)可用于其中多個(gè)卷可存儲(chǔ)在單組物理存儲(chǔ)上的許多系統(tǒng)。當(dāng)可配置物理存儲(chǔ)時(shí),管理員可能不知道每個(gè)卷可隨時(shí)間使用多少物理空間??删?jiǎn)供應(yīng)多個(gè)卷,而非劃分物理驅(qū)動(dòng)器。這可允許邏輯卷中的任何一個(gè)使用物理存儲(chǔ)資源,直到物理存儲(chǔ)變滿。
發(fā)明內(nèi)容
存儲(chǔ)監(jiān)視系統(tǒng)可駐留在精簡(jiǎn)供應(yīng)的存儲(chǔ)系統(tǒng)中的文件系統(tǒng)和存儲(chǔ)系統(tǒng)之間。存儲(chǔ)監(jiān)視系統(tǒng)可在卷內(nèi)創(chuàng)建空間占用者文件(space holder file),其中空間占用者文件包含未用物理存儲(chǔ)備份的地址空間。當(dāng)從文件系統(tǒng)接收到對(duì)存儲(chǔ)空間的請(qǐng)求時(shí),存儲(chǔ)監(jiān)視系統(tǒng)可通過(guò)將物理存儲(chǔ)設(shè)備的各部分供應(yīng)給卷并且通過(guò)移除空間占用者文件之一來(lái)將物理空間分配給卷。當(dāng)物理存儲(chǔ)空間小時(shí),存儲(chǔ)監(jiān)視系統(tǒng)可呈現(xiàn)警報(bào)以及返回對(duì)卷大小請(qǐng)求可用的物理空間量。提供本發(fā)明內(nèi)容以便以簡(jiǎn)化形式介紹在以下具體實(shí)施方式
中進(jìn)一步描述的一些概念。本發(fā)明內(nèi)容并不旨在標(biāo)識(shí)所要求保護(hù)主題的關(guān)鍵特征或必要特征,也不旨在用于限制所要求保護(hù)主題的范圍。
在附圖中圖1是示出具有供應(yīng)引擎的系統(tǒng)的實(shí)施例的圖示。圖2是示出用于處理文件系統(tǒng)命令的方法的實(shí)施例的時(shí)間線圖示。圖3是示出用于處理文件系統(tǒng)命令的附加方法的實(shí)施例的時(shí)間線圖示。圖4是示出用于向下調(diào)節(jié)已分配空間的方法的實(shí)施例的流程示。圖5是示出用于向上調(diào)節(jié)已分配空間的方法的實(shí)施例的流程示。
具體實(shí)施例方式精簡(jiǎn)供應(yīng)的文件系統(tǒng)可使用空間占用者文件來(lái)占據(jù)卷內(nèi)的空間,隨后釋放空間占用者文件以向卷供應(yīng)物理存儲(chǔ)空間。供應(yīng)引擎可監(jiān)視已分配空間和物理空間,并且能夠在用完物理存儲(chǔ)空間之前發(fā)出小空間警告。
系統(tǒng)可通過(guò)用空間占用者文件填充所有邏輯卷來(lái)操作。空間占用者文件的地址可位于物理存儲(chǔ)介質(zhì)外部,并且即使當(dāng)卷包含較少的數(shù)據(jù)或不包含數(shù)據(jù)時(shí)仍可表現(xiàn)為滿卷。 當(dāng)應(yīng)用程序請(qǐng)求更多物理存儲(chǔ)時(shí),系統(tǒng)可移除空間占用者文件并且將空間占用者文件消耗的量的物理空間分配給卷。標(biāo)準(zhǔn)文件系統(tǒng)可被系統(tǒng)用來(lái)管理存儲(chǔ)系統(tǒng)內(nèi)的文件并且對(duì)各個(gè)文件相關(guān)命令作出響應(yīng)。然而,通信層可截取來(lái)自應(yīng)用程序的命令,并且可確保足夠的物理空間可用于對(duì)文件相關(guān)命令作出響應(yīng)。通信層還可截取可用空間請(qǐng)求,并且可與文件系統(tǒng)分開(kāi)地處理那些請(qǐng)求。貫穿本說(shuō)明書(shū)和權(quán)利要求書(shū),可參考邏輯卷或存儲(chǔ)、以及物理存儲(chǔ)。物理存儲(chǔ)可指非易失性存儲(chǔ)系統(tǒng)的實(shí)際、物理存儲(chǔ)容量。物理存儲(chǔ)的示例可以是硬盤(pán)驅(qū)動(dòng)器。邏輯卷可以是其中文件系統(tǒng)可通過(guò)添加、編輯和刪除文件來(lái)操作的可尋址空間,但是邏輯卷可能不與物理存儲(chǔ)直接對(duì)應(yīng)。在許多實(shí)施例中,邏輯卷可以是文件系統(tǒng)可與之交互的對(duì)象,并且單獨(dú)的空間管理系統(tǒng)可提供物理存儲(chǔ)來(lái)將各項(xiàng)存儲(chǔ)在邏輯卷內(nèi)。貫穿本說(shuō)明書(shū),在所有附圖的描述中,相同的附圖標(biāo)記表示相同的元素。當(dāng)元素被稱為“連接”或“耦合”時(shí),這些元素可直接連接或耦合在一起,或者也可存在一個(gè)或多個(gè)中間元素。相反,當(dāng)元素被稱為“直接連接”或“直接耦合”時(shí),不存在中間元素。本主題可被具體化為設(shè)備、系統(tǒng)、方法、和/或計(jì)算機(jī)程序產(chǎn)品。因此,本主題的部分或全部可用硬件和/或軟件(包括固件、常駐軟件、微碼、狀態(tài)機(jī)、門(mén)陣列等)來(lái)具體化。 此外,本主題可采用其上包含有供指令執(zhí)行系統(tǒng)使用或結(jié)合其使用的計(jì)算機(jī)可使用或計(jì)算機(jī)可讀程序代碼的計(jì)算機(jī)可使用或計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)上的計(jì)算機(jī)程序產(chǎn)品的形式。在本文檔的上下文中,計(jì)算機(jī)可使用或計(jì)算機(jī)可讀介質(zhì)可以是可包含、存儲(chǔ)、通信、傳播、或傳輸程序以供指令執(zhí)行系統(tǒng)、裝置或設(shè)備使用或結(jié)合其使用的任何介質(zhì)。計(jì)算機(jī)可使用或計(jì)算機(jī)可讀介質(zhì)可以是,例如,但不限于,電、磁、光、電磁、紅外、 或半導(dǎo)體系統(tǒng)、裝置、設(shè)備或傳播介質(zhì)。作為示例而非限制,計(jì)算機(jī)可讀介質(zhì)可包括計(jì)算機(jī)存儲(chǔ)介質(zhì)和通信介質(zhì)。計(jì)算機(jī)存儲(chǔ)介質(zhì)包括以用于存儲(chǔ)諸如計(jì)算機(jī)可讀指令、數(shù)據(jù)結(jié)構(gòu)、程序模塊或其他數(shù)據(jù)之類的信息的任何方法或技術(shù)來(lái)實(shí)現(xiàn)的易失性和非易失性、可移動(dòng)和不可移動(dòng)介質(zhì)。計(jì)算機(jī)存儲(chǔ)介質(zhì)包括,但不限于,RAM、ROM、EEPR0M、閃存或其他存儲(chǔ)器技術(shù)、CD-ROM、數(shù)字多功能盤(pán)(DVD)或其他光盤(pán)存儲(chǔ)、磁帶盒、磁帶、磁盤(pán)存儲(chǔ)或其他磁性存儲(chǔ)設(shè)備、或可用于存儲(chǔ)所需信息且可由指令執(zhí)行系統(tǒng)訪問(wèn)的任何其他介質(zhì)。注意,計(jì)算機(jī)可使用或計(jì)算機(jī)可讀介質(zhì)可以是其上打印有程序的紙張或其他合適的介質(zhì),因?yàn)槌绦蚩山?jīng)由例如對(duì)紙張或其他合適的介質(zhì)的光學(xué)掃描來(lái)電子地捕獲,隨后如有必要被編譯、解釋,或以其他合適的方式處理,并且隨后存儲(chǔ)在計(jì)算機(jī)存儲(chǔ)器中。通信介質(zhì)通常以諸如載波或其他傳輸機(jī)制之類的已調(diào)制數(shù)據(jù)信號(hào)來(lái)具體化計(jì)算機(jī)可讀指令、數(shù)據(jù)結(jié)構(gòu)、程序模塊或其他數(shù)據(jù),并且包括任何信息傳送介質(zhì)。術(shù)語(yǔ)“已調(diào)制數(shù)據(jù)信號(hào)”可被定義為其一個(gè)或多個(gè)特性以對(duì)信號(hào)中的信息編碼的方式設(shè)置或改變的信號(hào)。 作為示例而非限制,通信介質(zhì)包括諸如有線網(wǎng)絡(luò)或直接線連接之類的有線介質(zhì),以及諸如聲學(xué)、RF、紅外及其他無(wú)線介質(zhì)之類的無(wú)線介質(zhì)。上述的任何組合也應(yīng)包含在計(jì)算機(jī)可讀介質(zhì)的范圍內(nèi)。當(dāng)本主題在計(jì)算機(jī)可執(zhí)行指令的一般上下文中具體化時(shí),該實(shí)施例可包括由一個(gè)或多個(gè)系統(tǒng)、計(jì)算機(jī)、或其他設(shè)備執(zhí)行的程序模塊。一般而言,程序模塊包括執(zhí)行特定任務(wù)或?qū)崿F(xiàn)特定抽象數(shù)據(jù)類型的例程、程序、對(duì)象、組件、數(shù)據(jù)結(jié)構(gòu)等。通常,程序模塊的功能可在各個(gè)實(shí)施例中按需進(jìn)行組合或分布。圖1是示出系統(tǒng)的實(shí)施例100的示圖,該系統(tǒng)可包括用于管理精簡(jiǎn)供應(yīng)的存儲(chǔ)系統(tǒng)的供應(yīng)引擎。實(shí)施例100是其中供應(yīng)引擎可操作的硬件和軟件環(huán)境的簡(jiǎn)化示例。圖1的示圖示出了系統(tǒng)的各個(gè)功能組件。在一些情況下,組件可以是硬件組件、軟件組件、或者硬件和軟件的組合。一些組件可以是應(yīng)用級(jí)軟件,而其他組件可以是操作系統(tǒng)級(jí)組件。在一些情況下,一個(gè)組件到另一組件的連接可以是緊密連接,其中兩個(gè)或更多個(gè)組件在單個(gè)硬件平臺(tái)上操作。在其他情況下,連接可通過(guò)跨長(zhǎng)距離的網(wǎng)絡(luò)連接來(lái)進(jìn)行。各實(shí)施例可使用不同的硬件、軟件、以及互連體系結(jié)構(gòu)來(lái)實(shí)現(xiàn)所描述的功能。實(shí)施例100是其中精簡(jiǎn)供應(yīng)的存儲(chǔ)系統(tǒng)可操作的系統(tǒng)的示例。精簡(jiǎn)供應(yīng)的存儲(chǔ)系統(tǒng)可具有其中文件系統(tǒng)可存儲(chǔ)和管理文件的一個(gè)或多個(gè)邏輯卷,但是指派給卷的空間大于可用于存儲(chǔ)卷的物理空間。當(dāng)多個(gè)卷可存儲(chǔ)在單個(gè)物理存儲(chǔ)系統(tǒng)上時(shí),精簡(jiǎn)供應(yīng)的存儲(chǔ)系統(tǒng)可以是有用的。 在一個(gè)示例中,在物理存儲(chǔ)系統(tǒng)上可創(chuàng)建4個(gè)卷。在創(chuàng)建卷時(shí),可能不知道每個(gè)卷最終可消耗多少空間,因此,每個(gè)卷可創(chuàng)建有與物理存儲(chǔ)系統(tǒng)相同的存儲(chǔ)空間。在這種情形下,任一卷可生長(zhǎng)成消耗整個(gè)物理存儲(chǔ)系統(tǒng)。然而,當(dāng)每個(gè)卷只有四分之一滿時(shí)物理存儲(chǔ)系統(tǒng)就可以是滿容量的。在期望卷隨時(shí)間生長(zhǎng)時(shí),精簡(jiǎn)供應(yīng)的存儲(chǔ)系統(tǒng)還可以是有用的,但是用戶可能不希望一開(kāi)始就購(gòu)買(mǎi)所有的物理存儲(chǔ)設(shè)備。當(dāng)物理存儲(chǔ)用盡時(shí),用戶能夠添加更多物理存儲(chǔ)設(shè)備而無(wú)需改變卷的配置。存儲(chǔ)系統(tǒng)可使用常規(guī)文件系統(tǒng)來(lái)處理許多文件相關(guān)命令。常規(guī)文件系統(tǒng)是用于存儲(chǔ)和組織計(jì)算機(jī)文件及其數(shù)據(jù)的機(jī)制。通用文件系統(tǒng)可將文件組織到數(shù)據(jù)庫(kù)中,以供計(jì)算機(jī)操作系統(tǒng)存儲(chǔ)、組織、操縱和檢索。存在文件系統(tǒng)的許多不同形式和實(shí)現(xiàn),每一個(gè)可具有不同的優(yōu)點(diǎn)、缺點(diǎn),并且可適于特定硬件或軟件配置。實(shí)施例100示出可能不支持精簡(jiǎn)供應(yīng)的文件系統(tǒng)可被轉(zhuǎn)換成精簡(jiǎn)供應(yīng)的系統(tǒng)的機(jī)制。實(shí)施例100還可示出用于精簡(jiǎn)供應(yīng)的存儲(chǔ)系統(tǒng)的體系結(jié)構(gòu),其中可向/從文件系統(tǒng)添加/移除精簡(jiǎn)供應(yīng)的特征。精簡(jiǎn)供應(yīng)的存儲(chǔ)系統(tǒng)可創(chuàng)建多個(gè)空間占用者文件以填充每個(gè)卷,并且消耗卷內(nèi)的地址空間??臻g占用者文件可能未用物理存儲(chǔ)備份或向其供應(yīng)物理存儲(chǔ),但是其可被刪除以釋放卷內(nèi)的空間。卷內(nèi)所釋放的空間可被供應(yīng)給物理存儲(chǔ)空間,并被文件系統(tǒng)使用。由于卷的許多地址空間可被空間占用者文件占據(jù),因此卷對(duì)文件系統(tǒng)而言可表現(xiàn)為只有小量可用空間。文件系統(tǒng)可在創(chuàng)建新文件或添加到現(xiàn)有文件時(shí)使用可用空間??捎每臻g可隨時(shí)間用盡,并且當(dāng)可用空間量變得小于下閾值時(shí),可移除一個(gè)或多個(gè)空間占用者文件,并且分配給空間占用者文件的空間可變得自由以供文件系統(tǒng)尋址。一些文件系統(tǒng)可以隨機(jī)或隨意的方式消耗物理存儲(chǔ)空間,并且可跨所有可用地址空間分布文件??臻g占用者文件可限制用于每個(gè)卷的物理存儲(chǔ)內(nèi)的可用空間量,并且可控
6制或最小化一些文件系統(tǒng)在大面積上散布文件的傾向。一些實(shí)施例可具有壓縮或合并卷、 移動(dòng)卷、或執(zhí)行其他這種操作的能力。在連續(xù)空間中具有文件可加速或啟用這些操作。實(shí)施例100的體系結(jié)構(gòu)具有可截取應(yīng)用程序和文件系統(tǒng)之間的通信的通信層。通信層可重定向一些文件系統(tǒng)命令,并且在允許文件系統(tǒng)處理命令之前執(zhí)行一些處理。例如,當(dāng)應(yīng)用程序發(fā)送可請(qǐng)求附加物理存儲(chǔ)空間的文件系統(tǒng)命令時(shí),通信層可截取命令并且確定附加物理存儲(chǔ)空間是否可被命令使用。如果是,則可移除空間占用者文件, 從而釋放空間以對(duì)命令作出響應(yīng)。在另一示例中,可截取并處理對(duì)卷可用的自由空間的請(qǐng)求,而無(wú)需調(diào)用文件系統(tǒng)。 存儲(chǔ)系統(tǒng)可通過(guò)確定實(shí)際未使用的物理存儲(chǔ)空間來(lái)計(jì)算可用自由空間。這種請(qǐng)求可由供應(yīng)引擎處理,而無(wú)需將請(qǐng)求發(fā)送到文件系統(tǒng)。實(shí)施例100示出設(shè)備102,設(shè)備102可具有用于管理精簡(jiǎn)供應(yīng)的存儲(chǔ)系統(tǒng)的系統(tǒng)。 設(shè)備102可包括具有可尋址空間的若干卷,這些卷之和可超過(guò)可用的物理存儲(chǔ)空間。設(shè)備102被示為具有硬件組件104和軟件組件106。如圖所示,控制器設(shè)備102表示常規(guī)計(jì)算設(shè)備,但是其他實(shí)施例可具有不同配置、體系結(jié)構(gòu)、或組件。控制器設(shè)備102可以是服務(wù)器計(jì)算機(jī)、臺(tái)式計(jì)算機(jī)、或類似設(shè)備。在一些實(shí)施例中,控制器設(shè)備102可以是膝上型計(jì)算機(jī)、上網(wǎng)本計(jì)算機(jī)、圖形輸入板或平板計(jì)算機(jī)、無(wú)線手機(jī)、蜂窩電話、或任何其他類型的計(jì)算設(shè)備。硬件組件104可包括處理器108、隨機(jī)存取存儲(chǔ)器110、以及非易失性存儲(chǔ)112。硬件組件104還可包括用戶接口 114和網(wǎng)絡(luò)接口 116。在一些實(shí)施例中,處理器108可由若干處理器或處理器核組成。隨機(jī)存取存儲(chǔ)器110可以是處理器108可容易地訪問(wèn)和尋址的存儲(chǔ)器。非易失性存儲(chǔ)112可以是在關(guān)閉設(shè)備102之后持久保持的存儲(chǔ)。非易失性存儲(chǔ) 112可以是任何類型的存儲(chǔ)設(shè)備,包括硬盤(pán)、固態(tài)存儲(chǔ)設(shè)備、磁帶、光學(xué)存儲(chǔ)、或其他類型的存儲(chǔ)。非易失性存儲(chǔ)112可以是只讀、或能夠讀/寫(xiě)。非易失性存儲(chǔ)112可以是存儲(chǔ)設(shè)備的集合。在一些實(shí)施例中,可將諸如盤(pán)驅(qū)動(dòng)器之類的一組存儲(chǔ)設(shè)備排列在一起以提供大量的非易失性存儲(chǔ)。在一些實(shí)施例中,可使用冗余獨(dú)立磁盤(pán)陣列(RAID)技術(shù)來(lái)集聚若干設(shè)備。許多RAID系統(tǒng)可使用相同容量的存儲(chǔ)設(shè)備來(lái)創(chuàng)建大的存儲(chǔ)系統(tǒng)。一些實(shí)施例能夠集聚具有不同存儲(chǔ)容量并且可使用不同硬件技術(shù)的存儲(chǔ)設(shè)備。例如,這些實(shí)施例可將使用通用串行總線(USB)連接而連接有另一盤(pán)驅(qū)動(dòng)器的在IDE接口上訪問(wèn)的常規(guī)盤(pán)驅(qū)動(dòng)器與使用小型計(jì)算機(jī)系統(tǒng)互聯(lián)(SCSI)接口來(lái)連接的固態(tài)存儲(chǔ)設(shè)備集聚
在一起。一些實(shí)施例可配置要在兩個(gè)或兩個(gè)以上的不同存儲(chǔ)設(shè)備上復(fù)制的一個(gè)或多個(gè)卷。 在單個(gè)存儲(chǔ)設(shè)備發(fā)生故障的情況下,這種復(fù)制可提供冗余。當(dāng)卷可在兩個(gè)存儲(chǔ)設(shè)備上復(fù)制時(shí),這種卷消耗的物理存儲(chǔ)可約為未執(zhí)行復(fù)制的卷的物理存儲(chǔ)的兩倍。用戶接口 114可以是能夠顯示輸出并且從用戶接收輸入的任何類型的硬件。在許多情況下,輸出顯示可以是圖形顯示監(jiān)視器,但是輸出設(shè)備可包括燈光和其他視覺(jué)輸出、音頻輸出、動(dòng)力致動(dòng)器輸出、以及其他輸出設(shè)備。常規(guī)輸入設(shè)備可包括鍵盤(pán)和定點(diǎn)設(shè)備,諸如鼠標(biāo)、指示筆、跟蹤球、或其他定點(diǎn)設(shè)備。其他輸入設(shè)備可包括各種傳感器,包括生物測(cè)定輸入設(shè)備、音頻和視頻輸入設(shè)備、以及其他傳感器。
網(wǎng)絡(luò)接口 116可以是到另一計(jì)算機(jī)的任何類型的連接。在許多實(shí)施例中,網(wǎng)絡(luò)接口 116可以是有線以太網(wǎng)連接。其他實(shí)施例可包括基于各種通信協(xié)議的有線或無(wú)線連接。軟件組件106可包括操作系統(tǒng)118,各種應(yīng)用程序和服務(wù)可在操作系統(tǒng)118上操作。操作系統(tǒng)可在執(zhí)行例程和執(zhí)行硬件組件104之間提供抽象層,并且可包括各種例程和與各個(gè)硬件組件直接通信的功能。操作系統(tǒng)118可包括用于管理精簡(jiǎn)供應(yīng)的存儲(chǔ)的若干組件。文件系統(tǒng)120可管理數(shù)據(jù)庫(kù)中的文件,并且可對(duì)各個(gè)命令和請(qǐng)求作出響應(yīng)。包圍文件系統(tǒng)120的是通信層122, 通信層122可截取并處理應(yīng)用程序1 和文件系統(tǒng)120之間的通信??臻g管理系統(tǒng)IM可在文件系統(tǒng)120和物理存儲(chǔ)112之間操作。供應(yīng)引擎1 可管理各個(gè)組件,從而使用文件系統(tǒng)120來(lái)提供精簡(jiǎn)供應(yīng)的存儲(chǔ)系統(tǒng)。文件系統(tǒng)120可提供文件管理功能,諸如創(chuàng)建、刪除和編輯文件。許多文件系統(tǒng)還可準(zhǔn)許用戶將文件組織到目錄或文件夾中,并且可準(zhǔn)許操作在多組文件上執(zhí)行。許多不同的文件系統(tǒng)是在市場(chǎng)上可買(mǎi)到的。精簡(jiǎn)供應(yīng)的存儲(chǔ)系統(tǒng)可使用常規(guī)文件系統(tǒng)來(lái)執(zhí)行一些功能,但是可在使文件系統(tǒng)執(zhí)行特定功能之前或之后執(zhí)行附加操作。在一些情況下,精簡(jiǎn)供應(yīng)的存儲(chǔ)系統(tǒng)可與文件系統(tǒng)分開(kāi)或獨(dú)立地執(zhí)行操作。獨(dú)立于文件系統(tǒng),精簡(jiǎn)供應(yīng)的存儲(chǔ)系統(tǒng)可管理為每個(gè)卷分配的物理空間。當(dāng)接收到可使用比可分配給具體卷大的物理空間的請(qǐng)求時(shí),空間管理系統(tǒng)1 可通過(guò)操縱各個(gè)空間占用者文件來(lái)分配物理空間。請(qǐng)求可由通信層122接收,并且可分析該請(qǐng)求以確定是否有足夠的自由物理空間可用于成功地執(zhí)行該請(qǐng)求。在一個(gè)實(shí)施例中,供應(yīng)引擎1 或其他組件可分析該請(qǐng)求以確定可用自由物理空間。在另一實(shí)施例中,可將該請(qǐng)求發(fā)送到文件系統(tǒng)120。如果返回盤(pán)滿錯(cuò)誤,則通信層 122可截取該錯(cuò)誤并且使空間管理系統(tǒng)IM分配附加空間。在分配附加空間之后,通信層 122可向文件系統(tǒng)120重新發(fā)出原始請(qǐng)求??臻g管理系統(tǒng)IM可向卷分配物理空間和解除對(duì)該物理空間的分配。空間管理系統(tǒng)1 可在卷內(nèi)創(chuàng)建多個(gè)空間占用者文件,并且可添加或移除空間占用者文件以分配物理空間和解除對(duì)該物理空間的分配??臻g管理系統(tǒng)可在未在邏輯卷內(nèi)供應(yīng)的地址區(qū)域中創(chuàng)建空間占用者文件。當(dāng)可刪除空間占用者文件時(shí),可將地址空間分配給物理存儲(chǔ)系統(tǒng)。當(dāng)可創(chuàng)建空間占用者文件時(shí),如果已經(jīng)分配了空間,則可從物理存儲(chǔ)系統(tǒng)釋放空間占用者文件所消耗的地址空間。供應(yīng)引擎1 可監(jiān)視通信層122和空間管理系統(tǒng)124的操作,并且可便于通信層 122和空間管理系統(tǒng)IM之間的通信。供應(yīng)引擎1 可使特定操作得以執(zhí)行,并且可執(zhí)行那些操作中的一些操作,或可使通信層122、空間管理系統(tǒng)124、或文件系統(tǒng)120執(zhí)行一些操作。設(shè)備102的存儲(chǔ)系統(tǒng)可使用若干不同類型的存儲(chǔ)設(shè)備。在常規(guī)計(jì)算機(jī)系統(tǒng)中,硬盤(pán)或固態(tài)存儲(chǔ)設(shè)備可安裝在計(jì)算機(jī)內(nèi)部。一些設(shè)備可具有各種外圍存儲(chǔ)設(shè)備130,外圍存儲(chǔ)設(shè)備130可以是使用USB、SCSI、或其他類型的接口來(lái)連接的外部硬盤(pán)或固態(tài)存儲(chǔ)設(shè)備。一些設(shè)備可具有通過(guò)網(wǎng)絡(luò)132可用的且可以是網(wǎng)絡(luò)存儲(chǔ)設(shè)備134的存儲(chǔ)。物理存儲(chǔ)設(shè)備可以是存儲(chǔ)區(qū)域網(wǎng)絡(luò)(SAN)、通過(guò)局域網(wǎng)連接的存儲(chǔ)設(shè)備、通過(guò)廣域網(wǎng)(諸如因特網(wǎng)、云存儲(chǔ)系統(tǒng)、或任何其他類型的存儲(chǔ)設(shè)備)連接的存儲(chǔ)設(shè)備。各種存儲(chǔ)設(shè)備可獨(dú)立地使用或集聚在一起,從而為精簡(jiǎn)供應(yīng)的卷提供物理存儲(chǔ)。 供應(yīng)引擎126和其他組件可操作以跨一個(gè)或多個(gè)存儲(chǔ)設(shè)備提供精簡(jiǎn)供應(yīng)的卷。圖2是示出用于處理文件系統(tǒng)命令的方法的實(shí)施例200的時(shí)間線圖示。實(shí)施例 200的過(guò)程是應(yīng)用程序202可如何與通信層204、文件系統(tǒng)206和空間管理系統(tǒng)208交互以傳送精簡(jiǎn)供應(yīng)的存儲(chǔ)系統(tǒng)的簡(jiǎn)化示例。其他實(shí)施例可使用不同的排序、附加或更少的步驟、以及不同的命名或術(shù)語(yǔ)來(lái)完成類似功能。在一些實(shí)施例中,各個(gè)操作或操作集合可與其他操作以同步或異步地方式并行地執(zhí)行。此處所選的步驟是為了以簡(jiǎn)化的形式示出一些操作原理而選擇的。實(shí)施例200是時(shí)間線圖示,其中在左列中示出應(yīng)用程序202的操作,在第二列中示出通信層204的操作,在第三列中示出文件系統(tǒng)206的操作,而在右列中示出空間管理系統(tǒng) 208的操作。實(shí)施例200是其中可在執(zhí)行命令之前用文件系統(tǒng)截取和分析命令的實(shí)施例的示例。如果命令可消耗比當(dāng)前可分配大的物理存儲(chǔ)空間,則可分配附加物理存儲(chǔ)空間。在框210,應(yīng)用程序202可發(fā)送文件系統(tǒng)命令???10的文件系統(tǒng)命令可以是文件系統(tǒng)206能夠執(zhí)行的任何類型的操作。實(shí)際命令可取決于正在使用的具體文件系統(tǒng),但是一般而言,這些命令可包括創(chuàng)建、編輯和刪除文件。許多文件系統(tǒng)可具有用于執(zhí)行目錄或文件夾操作、加上許多附加文件具體操作的附加命令。通信層204可在框212接收文件系統(tǒng)命令,并且可執(zhí)行對(duì)該命令的一些分析。如果在框214命令未改變文件大小,則可在框216將命令發(fā)送到文件系統(tǒng)206,其中文件系統(tǒng) 206可在框218接收命令,在框220處理命令,并且在框222返回響應(yīng)。通信層204可在框 224接收響應(yīng),并且在框2 將響應(yīng)發(fā)送到應(yīng)用程序202。應(yīng)用程序可在框2 接收響應(yīng)。與框216-228的操作相反,如果在框214命令可改變文件大小,則可在框230將命令發(fā)送到空間管理系統(tǒng)??臻g管理系統(tǒng)208可在框232接收命令,并且可在框234分析空間分配。如果可在框236響應(yīng)于命令來(lái)調(diào)節(jié)物理空間,則可在框238作出對(duì)物理空間的調(diào)節(jié)。在處理之后,可在框240將命令發(fā)送到文件系統(tǒng)206。文件系統(tǒng)206可在框242接收命令,在框244處理命令,并且在框246發(fā)送響應(yīng)。 通信層204可在框248接收響應(yīng),并且在框250將該響應(yīng)發(fā)送到應(yīng)用程序202,應(yīng)用程序202 可在框252接收該響應(yīng)???38的調(diào)節(jié)可以是將附加物理空間分配給卷??稍诒菊f(shuō)明書(shū)稍后呈現(xiàn)的實(shí)施例 500中找到這種操作的示例。在一些情況下,在框238作出的調(diào)節(jié)可以是解除對(duì)卷的附加物理空間的分配??稍诒菊f(shuō)明書(shū)稍后呈現(xiàn)的實(shí)施例400中找到這種操作的示例。實(shí)施例200示出其中可在將命令發(fā)送到文件系統(tǒng)之前分析文件系統(tǒng)命令的示例實(shí)施例。在另一實(shí)施例中,通信層可準(zhǔn)許將命令發(fā)送到文件系統(tǒng),但是可在應(yīng)用程序接收到響應(yīng)之前截取對(duì)文件系統(tǒng)的響應(yīng)。通信層可確定可能發(fā)生盤(pán)滿的錯(cuò)誤。如果是,通信層可與空間管理系統(tǒng)通信以引發(fā)附加物理空間的分配??蓪⒊跏嘉募到y(tǒng)命令重新發(fā)送到文件系統(tǒng),并且可重試該過(guò)程。圖3是示出用于處理空間請(qǐng)求命令的方法的實(shí)施例300的時(shí)間線圖示。實(shí)施例200的過(guò)程是應(yīng)用程序202可如何與通信層204、文件系統(tǒng)206和空間管理系統(tǒng)208交互以傳送精簡(jiǎn)供應(yīng)的存儲(chǔ)系統(tǒng)的簡(jiǎn)化示例。其他實(shí)施例可使用不同的排序、附加或更少的步驟、以及不同的命名或術(shù)語(yǔ)來(lái)完成類似功能。在一些實(shí)施例中,各個(gè)操作或操作集合可與其他操作以同步或異步方式并行地執(zhí)行。此處所選的步驟是為了以簡(jiǎn)化的形式示出一些操作原理而選擇的。實(shí)施例300是時(shí)間線圖示,其中在左列中示出應(yīng)用程序202的操作,在第二列中示出通信層204的操作,在第三列中示出文件系統(tǒng)206的操作,而在右列中示出空間管理系統(tǒng) 208的操作。在框252,應(yīng)用程序202可發(fā)送存儲(chǔ)空間請(qǐng)求。存儲(chǔ)空間請(qǐng)求可請(qǐng)求特定卷的可用存儲(chǔ)。在精簡(jiǎn)供應(yīng)的存儲(chǔ)系統(tǒng)的情況下,邏輯卷可具有大量的可尋址存儲(chǔ),但是物理存儲(chǔ)可能不如可尋址存儲(chǔ)大。在許多情況下,應(yīng)用程序202可請(qǐng)求可用存儲(chǔ)空間以使應(yīng)用程序可在執(zhí)行操作之前執(zhí)行各種檢查。例如,應(yīng)用程序可確保在實(shí)例化數(shù)據(jù)庫(kù)之前或在創(chuàng)建新的數(shù)據(jù)文件之前足夠的存儲(chǔ)空間是可用的。從文件系統(tǒng)的立場(chǎng)來(lái)看,極小的存儲(chǔ)空間可表現(xiàn)為可用的。這可能是因?yàn)檫壿嬀砜删哂锌商畛淇蓪ぶ房臻g的許多空間占用者文件,從而留下小量的可尋址空間來(lái)創(chuàng)建新文件??捎么鎯?chǔ)空間請(qǐng)求可由空間管理系統(tǒng)208處理,而非將可用存儲(chǔ)空間請(qǐng)求發(fā)送到文件系統(tǒng),文件系統(tǒng)可返回的數(shù)量顯著低于可用的實(shí)際物理空間。應(yīng)用程序202可在框252發(fā)送存儲(chǔ)空間請(qǐng)求,通信層204可在框2M接收該存儲(chǔ)空間請(qǐng)求。通信層204可分析通信,并且確定通信可由空間管理系統(tǒng)208處理。通信層204 可在框256發(fā)送請(qǐng)求,空間管理系統(tǒng)208可在框258接收該請(qǐng)求??臻g管理系統(tǒng)208可在框260確定可用物理存儲(chǔ)容量,并且可在框262將響應(yīng)返回到通信層204。通信層204可在框264接收響應(yīng),并且在框266將該響應(yīng)發(fā)送到應(yīng)用程序 202,該應(yīng)用程序202可在框268接收該響應(yīng)。在框260確定的可用物理存儲(chǔ)容量可能不與可用邏輯存儲(chǔ)空間對(duì)應(yīng),但是可能與可用物理存儲(chǔ)空間相對(duì)應(yīng)。可通過(guò)確定可存儲(chǔ)在物理存儲(chǔ)上的最大文件大小并返回該值來(lái)計(jì)算可用物理存儲(chǔ)空間??捎梦锢泶鎯?chǔ)空間可包括空的已分配物理存儲(chǔ)空間、加上空的未分配物理存儲(chǔ)空間。在一些實(shí)施例中,可用物理存儲(chǔ)空間可包括當(dāng)前卷的空的已分配物理存儲(chǔ)空間、加上尚未分配給其他卷的空的未分配物理存儲(chǔ)空間。在其中特定卷可能在兩個(gè)或兩個(gè)以上物理存儲(chǔ)設(shè)備上復(fù)制的實(shí)施例中,可用物理存儲(chǔ)空間可因此減小。例如,在復(fù)制卷中可用的空間可以是在指派給卷的兩個(gè)物理存儲(chǔ)設(shè)備中較小的物理存儲(chǔ)設(shè)備上可用的空間量。取決于存儲(chǔ)設(shè)備的物理配置和其他因素,其他實(shí)施例可具有計(jì)算可用存儲(chǔ)的不同方法。圖4是示出用于向下調(diào)節(jié)卷中的已分配空間的方法的實(shí)施例400的流程示。 實(shí)施例400的過(guò)程可用于若干情形以用空間占用者文件填充卷。其他實(shí)施例可使用不同的排序、附加或更少的步驟、以及不同的命名或術(shù)語(yǔ)來(lái)完成類似功能。在一些實(shí)施例中,各個(gè)操作或操作集合可與其他操作以同步或異步方式并行地執(zhí)行。此處所選的步驟是為了以簡(jiǎn)化的形式示出一些操作原理而選擇的。
實(shí)施例400是可如何在邏輯卷內(nèi)創(chuàng)建空間占用者文件以消耗許多可尋址存儲(chǔ)空間的示例。當(dāng)可使用存儲(chǔ)空間時(shí),可移除空間占用者文件并且將物理存儲(chǔ)空間分配給卷??稍诒菊f(shuō)明書(shū)稍后呈現(xiàn)的實(shí)施例500中找到這種操作的示例。可在若干不同的情形下調(diào)用實(shí)施例400??稍诳?02創(chuàng)建新卷,并且可在框404指派卷大小。在另一情形下,可在框406作出增加卷大小的請(qǐng)求。在再一情形下,可在框408 刪除或縮減文件。在這些情況中的任一情況下,卷內(nèi)的自由空間量可超過(guò)上閾值,并且可添加空間占用者文件??稍诳?10確定卷內(nèi)的已分配自由空間。如果在框412已分配自由空間量大于上閾值,則可在框416創(chuàng)建空間占用者文件,并且可在框418解除對(duì)空間占用者文件所消耗的物理空間的分配。過(guò)程可重復(fù)循環(huán)回到框410,直到在框412已分配自由空間小于上閾值, 在這種情況下,該過(guò)程可在框414結(jié)束。圖5是示出用于向上調(diào)節(jié)卷中的已分配空間的方法的實(shí)施例500的流程示。 實(shí)施例500的過(guò)程可用于其中卷可請(qǐng)求附加空間的若干情形。其他實(shí)施例可使用不同的排序、附加或更少的步驟、以及不同的命名或術(shù)語(yǔ)來(lái)完成類似功能。在一些實(shí)施例中,各個(gè)操作或操作集合可與其他操作以同步或異步方式并行地執(zhí)行。此處所選的步驟是為了以簡(jiǎn)化的形式示出一些操作原理而選擇的。實(shí)施例500是可如何從邏輯卷移除空間占用者文件且可如何將物理存儲(chǔ)分配給邏輯卷的示例??蓤?zhí)行該過(guò)程,直到?jīng)]有其他空間占用者文件可用,這可指示已經(jīng)消耗了物理存儲(chǔ)且可能發(fā)出警告。可在若干不同的情形下調(diào)用實(shí)施例500。可在框502縮減卷大小,或者可在框504 添加或擴(kuò)展文件。可在框506確定卷內(nèi)的已分配自由空間。如果在框508已分配自由空間量小于下閾值且在框510空間占用者文件在卷內(nèi)可用,則可在框516移除空間占用者文件,并且可在框518分配空間占用者文件所消耗的物理空間。該過(guò)程可重復(fù)循環(huán)回到框506,直到在框 510已分配自由空間小于下閾值,在這種情況下,該過(guò)程可在框510結(jié)束。如果在框508分配自由空間小于下閾值但在框512沒(méi)有更多的空間占用者文件可用,則可在框514發(fā)出小物理空間警告??蓪⒖?14的小物理空間警告發(fā)送給用戶或計(jì)算機(jī)系統(tǒng)的管理員,并且可指示可能完全使用了物理存儲(chǔ)。用戶或管理員可添加附加物理存儲(chǔ)設(shè)備或可移除文件、壓縮卷、或以其他方式更有效地使用物理存儲(chǔ)空間。對(duì)本發(fā)明的上述描述是出于圖示和描述的目的而呈現(xiàn)的。它不旨在窮舉本主題或?qū)⒈局黝}限于所公開(kāi)的精確形式,并且鑒于上述教導(dǎo)其他修改和變型都是可能的。選擇并描述實(shí)施例來(lái)最好地解釋本發(fā)明的原理及其實(shí)踐應(yīng)用,由此使本領(lǐng)域的其他技術(shù)人員能夠在各種實(shí)施例和各種適于所構(gòu)想的特定用途的修改中最好地利用本發(fā)明。所附權(quán)利要求書(shū)旨在被解釋為包括除受現(xiàn)有技術(shù)所限的范圍以外的其他替換實(shí)施例。
權(quán)利要求
1.一種在計(jì)算機(jī)處理器上執(zhí)行的方法,所述方法包括在精簡(jiǎn)供應(yīng)的存儲(chǔ)卷上創(chuàng)建多個(gè)空間占用者文件,所述空間占用者文件包括尚未得到物理存儲(chǔ)指派的所述卷中的地址空間;操作具有所述精簡(jiǎn)供應(yīng)的存儲(chǔ)卷和物理存儲(chǔ)系統(tǒng)的文件系統(tǒng); 截取請(qǐng)求文件空間的文件系統(tǒng)命令;確定所述文件系統(tǒng)命令可消耗比當(dāng)前供應(yīng)大的物理存儲(chǔ)空間、并且向所述卷供應(yīng)所述物理存儲(chǔ)系統(tǒng)的一部分,所述部分的大小至少等于所述空間占用者文件之一的大小;以及從所述文件系統(tǒng)移除所述空間占用者文件之一以使所述文件系統(tǒng)可響應(yīng)于所述文件系統(tǒng)命令來(lái)分配存儲(chǔ)空間。
2.如權(quán)利要求1所述的方法,其特征在于,還包括確定比下閾值小的空間在所述卷上可用,并且移除所述空間占用者文件中的至少一個(gè)。
3.如權(quán)利要求2所述的方法,其特征在于,還包括移除多個(gè)所述空間占用者文件,直到可用空間高于所述下閾值。
4.如權(quán)利要求2所述的方法,其特征在于,還包括確定比上閾值大的空間在所述卷上可用,并且將所述空間占用者文件中的至少一個(gè)添加到所述文件系統(tǒng)。
5.如權(quán)利要求1所述的方法,其特征在于,還包括接收對(duì)所述卷的卷大小請(qǐng)求,確定可用的物理空間量,并且返回可用的所述物理空間量。
6.如權(quán)利要求5所述的方法,其特征在于,可用的所述物理空間量包括空的已分配物理空間和空的未分配物理空間。
7.一種存儲(chǔ)空間管理系統(tǒng),包括管理存儲(chǔ)在所述存儲(chǔ)空間管理系統(tǒng)中的文件的文件系統(tǒng); 到物理存儲(chǔ)系統(tǒng)的連接; 在所述物理存儲(chǔ)系統(tǒng)上精簡(jiǎn)供應(yīng)的一組卷; 接收應(yīng)用程序和所述文件系統(tǒng)之間的通信的通信層;在所述一組卷的地址空間內(nèi)創(chuàng)建多個(gè)空間占用者文件的空間管理系統(tǒng),所述地址空間位于尚未得到物理存儲(chǔ)指派的所述一組卷內(nèi); 供應(yīng)引擎,所述供應(yīng)引擎檢測(cè)在所述通信層上接收到的文件系統(tǒng)命令,所述文件系統(tǒng)命令從應(yīng)用程序發(fā)送; 將所述文件系統(tǒng)命令發(fā)送到所述文件系統(tǒng),并且接收盤(pán)滿響應(yīng); 檢測(cè)所述盤(pán)滿響應(yīng),并且通過(guò)刪除所述空間占用者文件之一來(lái)供應(yīng)所述卷中的至少一個(gè);以及將所述文件系統(tǒng)命令重新發(fā)送到所述文件系統(tǒng),其中所述文件系統(tǒng)用除盤(pán)滿錯(cuò)誤以外的響應(yīng)作出響應(yīng)。
8.如權(quán)利要求7所述的系統(tǒng),其特征在于,到物理存儲(chǔ)系統(tǒng)的所述連接包括網(wǎng)絡(luò)連接。
9.如權(quán)利要求7所述的系統(tǒng),其特征在于,所述文件系統(tǒng)命令包括消耗附加存儲(chǔ)空間的命令。
10.如權(quán)利要求9所述的系統(tǒng),其特征在于,所述文件系統(tǒng)命令包括寫(xiě)命令,所述寫(xiě)命令在所述重新發(fā)送之后成功。
11.如權(quán)利要求10所述的系統(tǒng),其特征在于,所述盤(pán)滿響應(yīng)未向所述應(yīng)用程序發(fā)送。
12.如權(quán)利要求11所述的系統(tǒng),其特征在于,所述盤(pán)滿響應(yīng)只有當(dāng)所述物理存儲(chǔ)滿時(shí)才發(fā)送到所述應(yīng)用程序。
13.如權(quán)利要求12所述的系統(tǒng),其特征在于,所述文件系統(tǒng)命令是由下列各項(xiàng)組成的組中的一個(gè)創(chuàng)建文件;以及編輯文件。
14.如權(quán)利要求7所述的系統(tǒng),其特征在于,所述管理引擎還接收存儲(chǔ)空間查詢,并且返回與最大文件大小相等的空間值,所述空間值可由所述存儲(chǔ)空間管理系統(tǒng)在所述物理存儲(chǔ)系統(tǒng)上創(chuàng)建。
15.如權(quán)利要求14所述的系統(tǒng),其特征在于,所述卷的至少一個(gè)在兩個(gè)物理存儲(chǔ)設(shè)備上復(fù)制。
16.一種系統(tǒng),包括接收并處理文件命令以讀寫(xiě)文件的文件系統(tǒng),所述文件系統(tǒng)具有多個(gè)卷; 應(yīng)用程序和所述文件系統(tǒng)之間的通信層,所述通信層截取所述應(yīng)用程序和文件系統(tǒng)之間的通信;包括多個(gè)存儲(chǔ)設(shè)備和具有物理存儲(chǔ)容量的物理存儲(chǔ)系統(tǒng); 供應(yīng)引擎,所述供應(yīng)引擎將存儲(chǔ)空間分配給所述卷,分配給所述卷中的每一個(gè)的所述存儲(chǔ)空間之和是比所述物理存儲(chǔ)容量大的存儲(chǔ)空間;創(chuàng)建多個(gè)空間占用者文件,所述空間占用者文件各自的地址位于任何分配的物理地址空間外部;標(biāo)識(shí)來(lái)自所述應(yīng)用程序的、消耗第一卷內(nèi)的物理存儲(chǔ)空間的請(qǐng)求,并確定在所述第一卷內(nèi)可用的存儲(chǔ)空間不足;從所述第一卷刪除所述空間占用者文件之一以釋放第一塊空間; 使所述第一塊空間分配到所述物理存儲(chǔ)系統(tǒng)上;以及準(zhǔn)許所述文件系統(tǒng)對(duì)所述請(qǐng)求動(dòng)作。
17.如權(quán)利要求16所述的系統(tǒng),其特征在于,所述卷中的每一個(gè)最初創(chuàng)建有多個(gè)空間占用者文件。
18.如權(quán)利要求17所述的系統(tǒng),其特征在于,所述物理存儲(chǔ)設(shè)備中的至少一個(gè)在第二物理存儲(chǔ)設(shè)備上復(fù)制。
19.如權(quán)利要求16所述的系統(tǒng),其特征在于,所述供應(yīng)系統(tǒng)還 檢測(cè)所述第一卷還未使用的空間比高閾值大;以及創(chuàng)建至少一個(gè)空間占用者文件,并且解除對(duì)與所述至少一個(gè)空間占用者文件相對(duì)應(yīng)的物理存儲(chǔ)空間的分配,直到所述第一卷還未使用的空間比所述高閾值小。
20.如權(quán)利要求17所述的系統(tǒng),所述物理存儲(chǔ)設(shè)備包括可移動(dòng)存儲(chǔ)設(shè)備。
全文摘要
本發(fā)明涉及精簡(jiǎn)供應(yīng)的空間分配。本發(fā)明公開(kāi)了一種存儲(chǔ)監(jiān)視系統(tǒng),該存儲(chǔ)監(jiān)視系統(tǒng)可駐留在精簡(jiǎn)供應(yīng)的存儲(chǔ)系統(tǒng)中的文件系統(tǒng)和存儲(chǔ)系統(tǒng)之間。存儲(chǔ)監(jiān)視系統(tǒng)可在卷內(nèi)創(chuàng)建空間占用者文件,其中空間占用者文件包含未用物理存儲(chǔ)備份的地址空間。當(dāng)從文件系統(tǒng)接收到對(duì)存儲(chǔ)空間的請(qǐng)求時(shí),存儲(chǔ)監(jiān)視系統(tǒng)可通過(guò)將物理存儲(chǔ)設(shè)備的各部分供應(yīng)給卷并且通過(guò)移除空間占用者文件之一來(lái)將物理空間分配給卷。當(dāng)物理存儲(chǔ)空間小時(shí),存儲(chǔ)監(jiān)視系統(tǒng)可呈現(xiàn)警報(bào)以及返回對(duì)卷大小請(qǐng)求可用的物理空間量。
文檔編號(hào)G06F12/02GK102567215SQ20111039265
公開(kāi)日2012年7月11日 申請(qǐng)日期2011年11月23日 優(yōu)先權(quán)日2010年11月24日
發(fā)明者B·舍列珀夫, D·A·戈貝爾, J·M·萊昂, M·瓦曼, R·S·克蘭斯米特 申請(qǐng)人:微軟公司