用于管理和編輯文件系統中文件的方法和裝置的制作方法

            文檔序號:6749950閱讀:249來源:國知局
            專利名稱:用于管理和編輯文件系統中文件的方法和裝置的制作方法
            技術領域
            本發明涉及存儲裝置,例如個人視頻錄像機(Personal VideoRecorder/PVR)。具 體而言,本發明涉及用于管理和編輯文件系統中文件的方法和裝置。
            背景技術
            當前,個人視頻錄像機應用在機頂盒(Set Top Box)中廣泛采用。用戶有時需要編 輯其視頻記錄,例如,用戶需要刪除文件以除去商業廣告(commercials)。但是,商業廣告有 可能位于視頻記錄的任何位置,因此用戶就需要從視頻記錄文件的各個位置刪除數據。艮口, 用戶可能需要從視頻記錄文件的開始、中間或尾部位置刪除商業廣告。圖1是傳統文件系統的實例,例如FAT 32或者EXT 2。在此文件系統中,文件通 常存儲在多個塊(block)中。在圖1中,使用10個塊來存儲文件。塊是最小的配置單位 (allocation unit),并包含16個扇區(sector)。一個扇區中有512個字節(byte),因此 通常一個塊具有8K字節。在順序文件(sequential file)中,通過文件管理系統將全部塊 連接(link)在一起。對于每個塊,連接信息可以包括前指數(例如當前塊之前塊的編號) 和后指數(例如當前塊之后塊的編號)。通常文件管理系統知道文件從哪里開始(即起始 塊號)以及文件占據的空間長度(即使用多少塊來存儲此文件)。文件的實際長度有可能 小于文件占據的空間長度。在此傳統文件系統中,從文件尾部刪除數據(例如除去商業廣告)比較容易。如果 是在文件尾部進行刪除,則刪除的數據將被直接釋放。但是,很難從文件的中部、特別是從 某些塊的部分刪除數據。如果從塊的某些部分刪除數據,則該塊將不是一個完整的塊(非 完整塊),即該塊中的數據小于8K。在這種條件下,傳統處理方法是將后續塊的數據移動以 填充(fill)非完整塊。這樣做的原因是,在傳統文件系統中,文件管理系統只記錄起始塊 號和文件長度(即使用了多少個塊來存儲文件),因此即使將某些數據從塊中刪除,還需要 一定時間對塊的該部分進行讀出。但是,移動后續塊以填補非完整塊將需要處理時間,特別 是對于比較大的文件。為了解決傳統文件系統中存在的問題,JP 2003 052006公開了一種信息編輯控 制器,通過減少在編輯視頻和音頻數據過程中對介質的讀/寫訪問帶來的復制操作(copy operation)而實現高速編輯。

            發明內容
            本發明的第一方面提供了一種用于管理文件系統中的文件數據的方法。在所述文 件系統中,將用于存儲文件數據的存儲空間分為多個大小相同并且順序編號的塊。所述塊 設置在順序編號的組塊(chunk)中,并且每個組塊包括至少一個塊。對于一個組塊,所述方 法包括下述步驟在刪除文件中的數據的步驟之后,利用第一管理數據和第二管理數據記 錄每個組塊中的第一塊的頭部和最后塊的尾部中未被數據占據的空間大小,所述空間大小 小于塊的大小。
            根據一個實施方式,所述刪除步驟包括從所述組塊的頭部或者尾部刪除數據。根據一個實施方式,連接(link)包含給定文件的數據的組塊,連接信息記錄在文 件系統管理數據中。另外,如果一個組塊被完全刪除,釋放用于所述刪除的組塊的存儲空間并連接被 刪除的組塊的前面和后面的組塊。本發明的第二方面提供了一種用于管理文件系統中的文件數據的方法。在所述文 件系統中,將用于存儲文件數據的存儲空間分為多個大小相同并且順序編號的塊。所述塊 設置在順序編號的組塊中,并且每個組塊包括至少一個塊。對于一個組塊,所述方法包括下 述步驟在刪除文件中的數據的步驟之后,利用第一管理數據和第二管理數據記錄每個組 塊中的第一塊的頭部和最后塊的尾部中未被數據占據的空間大小,所述空間大小小于塊的 大小。當文件部分被刪除并且刪除起始位置和尾部位置沒有位于相同的塊中但是位于相 同的組塊中時,所述組塊被分為第一新組塊和第二新組塊。在此情況下,采用第三管理數 據和第四管理數據分別記錄第二新組塊的第一塊的頭部以及最后塊的尾部中的空閑空間 (empty space),并且連接第一新組塊和第二新組塊以保持文件的連續性。根據一個實施方式,采用刪除之前原組塊號對第一新組塊進行編號,緊隨文件系 統中最初的最后組塊號對第二新組塊進行編號。根據一個實施方式,如果一個塊中的數據被完全刪除,釋放該塊的空間。本發明的第三方面提供了 一種用于管理文件系統中的文件數據的方法。在所述文 件系統中,將用于存儲文件數據的存儲空間分為多個大小相同并且順序編號的塊。所述塊 設置在順序編號的組塊中,并且每個組塊包括至少一個塊。對于一個組塊,所述方法包括下 述步驟在刪除文件中的數據的步驟之后,利用第一管理數據和第二管理數據記錄每個組 塊中的第一塊的頭部和最后塊的尾部中未被數據占據的空間大小,所述空間大小小于塊的 大小。當從組塊的塊的中部刪除文件的某些數據時,將所述塊中被刪除的數據之后的剩余 的第二半部數據移動到緊隨塊中數據的第一半部數據之后的位置,并且將發生刪除的塊和 組塊中該塊之前的塊重組為第一新組塊,并且如果在發生刪除的塊之后還有塊,將這些之 后的塊重組為第二新組塊,利用第三管理數據和第四管理數據分別記錄第二新組塊中第一 塊的頭部和最后塊的尾部中的空閑空間的大小,并連接第一新組塊與第二新組塊。根據一個實施方式,采用刪除之前初始組塊號對第一新組塊進行編號,緊隨文件 系統中最初的最后組塊號對第二新組塊進行編號。根據另外一個實施方式,將組塊之間的連接信息記錄在文件系統管理數據中。本發明的第四方面提供了一種文件系統。在所述文件系統中,將用于存儲文件數 據的存儲空間分為多個大小相同并且順序編號的塊。所述塊設置在順序編號的組塊中,并 且每個組塊包括至少一個塊。所述文件系統包括用于每個組塊的管理數據,用于指示組塊 的頭部和/或尾部中空閑空間大小,其中所述空閑存儲空間的大小小于塊的大小。根據一個實施方式,利用第一管理數據和第二管理數據記錄組塊中的第一塊的頭 部和最后塊的尾部中的空間大小。根據另外一個實施方式,連接用于文件的全部組塊以保持文件的連續性,并且將 連接信息存儲在文件系統管理數據中。本發明的第五方面提供了 一種包括上述文件系統的存儲裝置。


            圖1是傳統文件系統的示意圖;圖2是根據本發明的實施方式的文件系統的示意圖;圖3是根據本發明的另一實施方式的文件系統的示意圖;圖4是利用根據本發明實施方式的文件系統進行讀出操作時計算組塊中的數據 實際大小的流程圖;圖5是根據本發明的文件系統的讀出操作的流程圖;圖6是利用根據本發明實施方式的文件系統進行寫入操作時計算組塊中的數據 實際大小的流程圖;圖7是根據本發明的文件系統的寫入操作的流程圖;圖8是根據本發明的文件系統的數據刪除操作的流程圖;圖9是從組塊的開始切除數據的數據刪除操作的示意圖;圖10是從組塊的尾部切除數據的數據刪除操作的示意圖;圖11是從組塊的中部切除數據的數據刪除操作的流程圖;圖12是從組塊的中部切除數據的數據刪除操作的示意圖。
            具體實施例方式下面對本發明的優選實施方式進行詳細說明,但是這些實施方式不構成對本發明 范圍的任何限制。在圖2所示的實施方式中,文件具有8個塊,每個塊包含8K字節的數據。在文 件管理系統中,屬于一個文件的塊通過組塊來管理。組塊包含一組塊(至少一個塊)。 在圖2中,組塊0包括塊0-2,組塊1包括塊10-11,組塊2包括塊12-14。雖然在本實 施方式中所有組塊中的塊的數量均不同,但在其他實施方式中數量可以相同。根據本 實施方式,采用6個描述符來描述每個組塊。所述6個描述符為StartBl0CkNumber、 TotalBlockNumber、PreviousChunkNumber、NextChunkNumber、UnusedSizeInFirstBlock 禾口 UnusedSizelnLastBlockοStartBlockNumber表示組塊的起始塊號,TotalBlockNumber表示組塊中塊的總 數,PreviousChunkNumber表示當前組塊之前的組塊號,NextChunkNumber表示當前組塊之 后的組塊號,UnusedSizelnFirstBlock表示組塊的第一塊中未用空間量(未被數據占據的 空間的比特數hUnusedSizelnLastBlock表示組塊的最后塊中未用空間量(未被數據占據 的空間的比特數)。采用最后兩個描述符的原因在于,在組塊被從中部刪除數據之后,最后 塊中的未用空間通常出現在刪除開始的塊,而第一塊中的未用空間通常出現在刪除結束的 塊。請參看圖2,將組塊 0-2 分別描述為(0,3,-1,1,0,0)、(10,2,0,2,0,0),和(12,3, 1,-1,0,0)ο第一組塊的描述符為(0,3,-1,1,0,0),其中第一描述符“O”表示當前組塊從塊 O開始,第二描述符“3”表示當前組塊中有3個塊,第三描述符“_1”表示當前組塊之前組塊 為“空(NULL) ”,第四描述符“1”表示當前組塊之后的組塊為組塊1,第五和第六描述符“O” 分別表示當前組塊的第一塊中的未用空間為O字節和當前組塊的最后塊中的未用空間為O字節,即組塊0中全部塊都包含8K字節數據。組塊1和2中的描述符與組塊0中描述符類 似。在本實施方式中,采用“NULL”來表示當前組塊的前一組塊或后一組塊是無效的,這意 味著當前組塊是文件的第一組塊或者最后組塊。例如,組塊0的前一組塊的系數為“NULL”, 組塊2的后一組塊的系數為“NULL”。在圖3所示另外一個實例中,文件中有3個組塊組塊0、組塊1和組塊2,用(10, 2,_1,1,1024,2048)、(20,4,0,2,0,0)和(28,6,1, -1,0,0)分別表示這三個組塊。從三個 組塊的描述符可以看出,組塊0開始于塊10,其長度是2個塊,每個塊為8K (8*1024)字節, 組塊0的第一塊中未使用空間的量為IK (8*1024)字節,組塊0的最后塊中未使用空間的量 為2K (8*1024)字節;組塊1開始于塊20,其長度是4個塊,每個塊為8K (8*1024)字節,組 塊1的第一塊和最后塊中未使用空間的量為0,這表示組塊1中為滿數據;組塊2開始于塊 28,其長度是6個塊,每個塊為8K (8*1024)字節,組塊2的第一塊和最后塊中未使用空間的 量為0。圖4和圖5說明了根據本發明實施方式的讀出操作的詳細流程。圖4示出了計算組塊中數據大小的實際長度的流程。流程開始于步驟410。在步 驟 420,計算組塊中數據的實際長度 ChunkLength,ChunkLength = TotalBlockNumber^Blo ckSize-UnusedSizeInFirstBlock-UnusedSizeInLastBlock,其中 TotalBlockNumber 是當 前組塊中塊總數。用每個塊的大小BlockSize (字節)乘以TotalBlockNumber,可以獲得當 前組塊占據的字節總數,而需要從當前組塊占據的字節總數除去UnusedSizelnLastBlock 和UnusedSizelnFirstBlock的大小,因為這些空間實際上是空閑的。當在步驟430確定當 前組塊不是文件中的最后組塊時,獲得當前組塊中數據的實際長度。流程終止于步驟460。 例如,組塊 O 的 ChunkLength 為 2*8K_1K_2K = 13Kbytes。但是,如果在步驟430確定當前組塊是文件中的最后組塊時,流程前進至步驟 440,以進一步確定占據當前組塊的當前文件的數據實際長度。此步驟用于排除最后組塊中 的保留空間(reserved space)。當向文件系統中寫入某些數據時,將分配更多空間以適應 這些數據,從而當在當前數據之后將另外的數據寫入相同文件時不會發生空間的再分配。 步驟440的目的是除去保留空間。在步驟440,確定ChunkLength是否大于FileLength與 ChunkStartPosition之間的差。FileLength是指示當前文件具有多少字節數據的參數, ChimkStartPosition指示當前組塊從何處開始或者當前組塊之前有多少字節數據。在圖3 中以組塊2為例。組塊長度為6*8K = 48Κ。FileLength為(4+6+2) *8Κ_3Κ = 93Κ。組塊2的 起始位置ChunkStartPosition為2*8K+4*8K_1K_2K = 45Κ字節,即存儲在組塊2的文件部 分從文件開始處偏移45Κ的位置開始。如果在步驟440的判斷結果為“是”,即ChunkLength 大于FileLength與ChunkStartPosition之間的差,則只讀出ChunkLength的數據,而此時 并不考慮剩余的數據。圖5是示意性讀出步驟的流程圖。讀出步驟開始于步驟510。在步驟511確定數據長度是否大于0,該步驟為有效性 檢驗。如果判斷結果為“否”,表示沒有數據可以讀出。然后流程前進至步驟512并結束。如 果存在可以讀出的數據,流程前進至步驟513以計算讀出所述文件所需的參數。在步驟513 中,首先計算出OffsetInChimk,該參數是指示讀出操作在當前組塊中的偏移的指針。例如, 組塊中第一可用數據字節的偏移量是“0”字節,組塊中第二可用數據字節的偏移量是“1”
            7字節,等等。OffsetInChunk = FilePosition-ChunkStartPosition。文件位置是文件中的 偏移。例如,文件中第一可用數據字節的偏移量是“0”字節,文件中第二可用數據字節的偏 移量是“1”字節,等等。在圖3中還以組塊0為例進行說明。從組塊0的第一數據字節讀 出文件。對于組塊0中數據的第一字節并且也是文件的數據的第一字節,FilePosition為 0,ChunkStartPosition為0,因此OffsetInChunk也是0。如果文件是從數據的第五字節讀 出,則 FilePosition 為 5 字節并且 ChunkStartPosition 為 O 字節。因此 OffsetInChunk 為 5字節。則計算出組塊1中數據的第一字節的物理位置,即ReadOffset = ChunkStartAddr essInHardDisk+OffsetlnChunk+UnusedSizelnFirstBlockοChunkStartAddressInHardDisk 是硬盤上當前組塊的地址。因此對于組塊1,UnusedSizelnFirstBlock為IK字節,并且 ReadOffset為ChunkStartAddressHardDisk加上1KB,這表示應用程序首先找到組塊1的 物理位置,然后移動1KB的偏移量并到達將被讀出的數據的實際位置。還要判斷從當前組 土夬中可以讀出多少數據=AvailableSizeInChunk = ChunkLength-OffsetInChunk。對于組 塊 1,AvailableSizeInChunk 為 13K 字節。在步驟514進一步判斷將要讀出的數據量Length_to_Read是否大于當前組塊 中的可用數據AvailableSizelnChunk。此步驟用于判斷從當前組塊讀出數據是否已經足 夠。如果需要讀出更多數據,即步驟514判斷結果為“是”,則需要首先讀出當前組塊中的全 部數據。在步驟 515 設置 ReadSizeInChunk = AvailableSizelnChunk。如果步驟 514 判 斷結果為“否”,即需要讀出比當前組塊中可用數據量少的數據,則流程前進至步驟516,將 Length_to_Read設置為ReadSizelnChunk。在步驟515和516之后,流程前進至步驟517 以進行讀出操作,從位置ReadOffset讀出ReadSizelnChunk數據。在讀出操作之后,流程 前進至步驟518以更新參數Length_to_Read和FilePosition,其中Length_to_Read被更 新為 Length_to_Read-ReadSizeInChunk,因為根據上述流程已經讀出 ReadSizelnChunk 數 據,并且 FilePosition = FilePosition+ReadSizelnChunk。另外,在步驟519判斷文件的數據是否已經被完全讀出。如果判斷結果為“是”,即 更新的Length_to_Read大于0,則當前文件的某些數據還未讀出,應用程序前進至下一組 塊以在步驟520和521進行后續的讀出操作。在步驟521,ChunkStartPosition被更新為 前一 ChunkStartPosition 力口上前一 ChunkLength,艮口下一組塊的 ChunkStartPosition。如 果步驟519的判斷結果為“否”,即當前文件的全部數據均已經被讀出,則流程前進至步驟 522。請參看圖6和圖7,其示出了示例性寫入操作。圖6和圖7中的符號/標記/標識 符都與圖4和圖5類似,此處不再詳細說明。圖6是計算可以在組塊中寫入數據的自由空間量的流程圖。此流程開始于步 驟601。在步驟602,判斷當前組塊中數據的實際長度,該步驟與圖4的讀出步驟過程中 的操作類似,此處不再詳細說明。隨后在步驟603,判斷當前組塊是否為文件的最后組 塊。如果判斷結果為“否”,流程前進至步驟605并結束。如果判斷結果為“是”,流程前進 至步驟604,其中當前組塊中可用空閑空間是步驟602獲得的值加上文件的最后組塊的值 UnusedSizeInLastBlockο圖7示出了詳細的寫入操作。所述寫入操作開始于步驟710并進入步驟712,在該步驟判斷將寫入的數據長度是否有效。如果判斷結果為“否”,流程前進至步驟712并結束。如果判斷結果為 “是”,流程前進至步驟713,以計算在當前組塊寫入的位置、映射至硬盤的位置以及在當 前組塊中能夠寫入多少字節的數據。上述三個數值由OffsetlnChunk、WriteOffset和 AvailableWriteSizeInChunk表示。此處對OffsetlnChunk的計算與讀出操作過程相同。 但是,此處OffsetlnChunk用于計算寫入操作在當前組塊中開始的位置。WriteOffset表 示寫入當前文件的實際物理位置,其計算過程與圖4所示讀出操作過程中的ReadOffset相 似。AvailableWriteSizelnChunk顯示了在當前組塊中可以寫入的大小,其計算與讀出操作 中的AvailableSizeInChunk相似,不同之處是利用圖6所示步驟計算ChunkLength。在步 驟714,判斷當前組塊中是否有空間可以寫入數據,即AvailableWriteSizelnChunk是否大 于0。如果判斷結果為“否”,流程前進至步驟720以進一步考慮利用下一組塊的可能性。如 果步驟714的判斷結果為“是”,則在步驟715判斷寫入的數據長度Length_t0_Write是否 大于可以用于寫入操作的大小AvailableWriteSizelnChunk。如果步驟715的判斷結果為 “是”,即當前組塊中可以寫入的大小不足以進行數據寫入,因此需要更多組塊。然后流程前 進至步驟 716,AvailableWriteSizelnChunk 大小的數據被設置在 WriteSizelnChunk,用于 步驟718的寫入操作。如果判斷結果為“否”,即當前組塊具有足夠的空間來寫入數據。在 步驟717,將Length_to_Write設置為WriteSizelnChunk并且流程前進至步驟718,其中從 位置 WriteOffset 寫入 WriteSizelnChunk 的 data。然后,原始FilePosition 移動至由原始 FilePosition+ffriteSizelnChunk 所確定的位置。將要寫入的文件的剩余數據大小變為原始Length_t0_Write減去 WriteSizelnChunk (已經寫入組塊)。由于根據步驟715的判斷結果后續寫入操作有可能需要更多組塊,則在步驟 720判斷是否仍需要寫入某些數據。如果該步驟的判斷結果為“是”,則移動至下一組 塊以進行寫入操作,如步驟721和722所示。在步驟724,UnusedSizelnFirstBlock和 UnusedSizelnLastBlock被初始化為O并移動至下一組塊。將寫入操作開始的位置的指針 修改為 ChunkStartPosition = ChunkStartPosition+ChunkLength。從文件系統中刪除數據也是重要的流程。該流程示于圖8至圖11中。圖8示出了示例性刪除操作的流程圖。此流程開始于步驟801。在步驟802,進行判 斷以找到刪除開始的位置。該步驟為有效性檢驗。其后,判斷將被刪除的數據長度是否為有 效值(步驟803)。如果判斷結果為“否”,流程前進至步驟805并結束。如果判斷結果為“是”, 在步驟804確定刪除開始的位置OffsetlnChunk以及從當前組塊中刪除的數據的長度。利 用公式 Off setlnChunk = Fi lePosition-ChunkStartPosition 來計算 OffsetlnChunk,利用 ^ J^AvailableDeleteSize = ChunkLength—Offset InChunk 來計算 Avai lab IeDe IeteSize0 然后流程前進至步驟806,判斷將刪除的數據長度Length_t0_Delete是否大于當前組塊中 可用數據的大小。如果步驟806的判斷結果為“否”,表示當前組塊中具有足夠數據可供刪 除。則流程前進至步驟813-816以執行刪除操作。在步驟813,判斷OffsetlnChunk是否等于0。此步驟用于確定刪除操作是否從 組塊數據的第一字節開始。如果判斷結果為“否”,即當前組塊的刪除操作從組塊的中部開 始,則流程前進至步驟815,從由OffsetlnChunk指示的位置開始刪除當前組塊的數據。同 時,由于步驟806的判斷結果為“否”,因此相對于需要刪除的數據長度而言當前組塊中有更多的可用數據,因此在當前組塊中應該留有某些數據。在這種情況下,在步驟815只刪 除當前組塊的中部,并且流程結束于步驟816。如果步驟813的判斷結果為“是”,即刪除 操作從當前組塊的頭部開始。由于步驟806的判斷結果為“否”,相對于將刪除的數據而言 具有更多可用數據,則在步驟814刪除當前組塊的頭部。當從當前組塊的頭部開始進行刪 除操作時,剩余塊中的第一塊的頭部可能被部分刪除。則該塊變成了部分填充的塊,換言 之其未對齊(aligned)。采用新的UnusedSizelnFirstBlock描述當前組塊的剩余第一塊 的未用頭部。采用下述公式計算新的 UnusedSizelnFirstBlock :UnusedSizeInFirstBlock =(Length_to_Delete+UnusedSizeInFirstBlock) % BlockSize0 (Length_to_ Delete+UnusedSizelnFirstBlock)表示將釋放的區域長度。“ % ”運算對應于獲得除法的 補數(arithmetical complement)。如果補數不為零,表示在刪除之后剩余組塊的第一塊的 頭部中還有未被數據占據的空間。圖9示出了一個實施例。在圖9中,當前組塊中有5個塊,即塊1-5。在塊1的頭部有3K字節的未用空 間,在塊5的尾部有2K的未用空間。S卩,當前組塊的UnusedSizelnFirstBlock為3K字 節,當前組塊的UnusedSizelnLastBlock為2K字節。刪除從塊1的第一數據開始,將刪 除18K字節的數據。因此Length_t0_Delete為18K字節。在刪除之后,塊1-2將被釋 放,因為它們被完全刪除。刪除之后的組塊的UnusedSizelnLastBlock將與刪除之前原 組塊的 UnusedSizelnLastBlock 相同,UnusedSizelnFirstBlock 將變為(Length_to_ Delete+UnusedSizelnFirstBlock) % BlockSize = (18+3) % 8 = 5K 字節。如果步驟806的判斷結果為“是”,刪除整個當前組塊也不夠。在這種情況 下,流程前進至步驟807,判斷對當前組塊的刪除將從頭部還是中部開始。如果該判 斷結果為“否”,刪除操作從中部的某個位置開始進行,流程前進至步驟808,以從位置 OffsetInChunk開始刪除組塊中的空間。因為步驟806的判斷結果為“是”,表示應當 刪除從OfTsetInChimk開始的數據,而組塊頭部的某些數據仍然存在,如果當前組塊的 UnusedSizelnFirstBlock和數據的大小OffsetInChunk的總數不構成完整塊(滿8K字 節),在當前組塊的尾部將存在某些未用空間,因此在步驟808,利用下面的公式計算當前 組塊的新 UnusedSizelnLastBlock :UnusedSiζeInLastBlock = BlockSize- (OffsetlnChun k+UnusedSizelnFirstBlock) % BlockSize。此處,“OffsetlnChunk+UnusedSizelnFirstBlo ck”表示某些數據仍然存在于組塊中。“% ”運算獲得除法的補數。在“% ”運算之后,獲得 新的最后塊中剩余數據量。從BlockSize中減去剩余數據量以獲得最后塊中的未用大小。 圖10是說明該流程的實施例。在圖10中,當前組塊有5個塊,即塊1-5。在塊1的頭部有5K字節的未用空間, 在塊5的尾部有2K的未用空間。S卩,當前組塊的UnusedSizelnFirstBlock為5K字節, 當前組塊的UnusedSizelnLastBlock為3K字節。刪除操作從塊3中6K字節開始,將刪 除15K字節的數據。OffsetInChimk為17K字節。在刪除之后,釋放塊4_5,當前組塊的 UnusedSizelnFirstBlock 將不變,因此將有新 UnusedSizelnLastBlock 值。該新值為 Blo ckSize-(OffsetInChunk+UnusedSizeInFirstBlock) % BlockSize = 8K_((17+5) % 8)Κ = 8Κ-6Κ = 2Κ 字節。但是,如果步驟807的判斷結果為“是”,則刪除操作從當前組塊的頭部開始。因為 步驟806的判斷結果對于步驟807為“是”,在步驟809刪除整個組塊。在此操作之后流程
            10前進至下一組塊并返回步驟803。如果圖8所示刪除是刪除了組塊的中部,即在步驟815處理,組塊被分為兩個組 塊。圖11示出了處理這種情況的操作。流程開始于步驟1111。在步驟1112,通過公式Offset =OffsetlnChunk+UnusedSizelnChunk 計算描述符 “Offset”。隨后在步驟 1113 判斷是 否在組塊中的相同塊上進行了刪除,即刪除組塊的中部。判斷方法是判斷是否(Offset/ BlockSize) = (Offset+Length_to_Delete)/BlockSize。此處“/”是獲得結果的整數部分 的運算。如果步驟1113的判斷結果為“否”,表示從當前組塊的中部刪除了組塊的某些整塊 并且當前組塊被分為兩個組塊。如果步驟1113的判斷結果為“是”,表示從塊的中部進行刪 除操作。流程前進至步驟1114,拷貝塊的后部以重寫被刪除的內容,將Offset的數值更新 為 Offset 的原始值加上(BlockSize-(Offset+Length_to_Delete) % BlockSize)。在步驟 1115的處理之后,在步驟1116和1117更新某些標識符的數值。在步驟1116和1117將設置新組塊的描述符并改變原組塊的描述符。下面將參照圖12進一步說明步驟1116和1117的過程。在圖12中,當前組 土夬(例如組塊5)具有6個塊,StartBlockNumer為塊10,TotalBlockNumber為6個塊, PreviousChunkNumber 為組塊 4, NextChunkNumber 為組塊 6, UnusedSizeInFirstBlock 為 3K 字節,UnusedSizelnLastBlock 為 4K 字節。在進行刪除操作時,OffsetInChunk為 15K 字節,Length_to_Delete 為 2IK 字 節,即從15K字節之后的位置開始刪除21K字節數據。因此Offset為OffsetInChunk+Un usedSizelnFirstBlock = 15K+3K = 18K 字節。根據步驟 1113,因為(Offset/Block)= (18K/8K) Φ ((Offset) +Length_to_Delete) = ((18K+21K)/8K),刪除未發生在單一組塊 中。在刪除操作之后,原組塊5將變為新組塊5和另一組塊(如果在原始文件系統中有7個 組塊,則為組塊8)。對于新組塊5,StartBlockNumer未變。由于在步驟1116中(Offset% BlockSize) = (18K % 8K) = 2 乒 0,新組塊 5 的 TotalBlockNumber 將等于((Offset/ BlockSize)+l),即變為3個塊。新組塊5的PreviousChunkNumber與原組塊5的相同。 NextChunkNumber變為組塊8。新組塊5的UnusedSizelnFirstBlock與原組塊5的相同。 新組塊 5 的 UnusedSizelnLastBlock 為 BlockSize-(Offset% BlockSize) = 8K-(18% 8) K = 8Κ-2Κ = 6Κ 字節。對于新組塊 8,StartBlockNumer 為新組塊 5 的 StartBlockNumber 力口 上 (Offset+Length_to_Delete)/BlockSize,等于 10+(18K+21K)/8K = 10+4 = 14,即為塊 14。 TotalBlockNumber 為新組塊 5 的 TotelBlockNumber 減去(Offset+Length_to_Delete)/ BlockSize,等于6-4 = 2,即新組塊8中有2個塊。組塊8的PreviousChunkNumber為組 塊 5,NextChunkNumber 為組塊 6。組塊 8 的 UnusedSizelnFirstBlock 為(Offset+Length_ to_Delete) % BlockSize = (18+21) % 8 = 7K 字節,UnusedSizelnLastBlock 與原組塊 5 具有相同大小,即4K字節。塊13被從文件系統中完全刪除,因此其空間被釋放。上述的文件系統可以是機頂盒(Set Top Box)和其他裝置中的PVR文件系統。上面說明了本發明的幾個實施方式。可以理解,對上述實施方式可以進行各種修 改。另外,本領域普通技術人員可以理解,對于說明書中說明的結構和方法,可以使用具有 實質上相同的功能、采用實質上相同的方式并獲得實質上相同的效果的其他結構和方法來 替代進行實施。因此,本說明書所述實施方式以及上述相同的實施方式都屬于權利要求所
            11限定的保護范圍。
            權利要求
            一種用于管理文件系統中的文件數據的方法,其中將用于存儲文件數據的存儲空間分為多個大小相同并且順序編號的塊,其特征在于,所述塊設置在順序編號的組塊中,并且每個組塊包括至少一個塊,對于一個組塊,所述方法包括下述步驟在刪除文件中的數據的步驟之后,利用第一管理數據和第二管理數據記錄每個組塊中的第一塊的頭部和最后塊的尾部中未被數據占據的空間大小,所述空間大小小于塊的大小。
            2.根據權利要求1所述的方法,其中所述刪除步驟包括從所述組塊的頭部或者尾部刪 除數據。
            3.根據權利要求1或2所述的方法,其中連接包含給定文件的數據的組塊,并且將連接 信息記錄在文件系統管理數據中。
            4.根據權利要求1至3其中任一所述的方法,其中如果一個組塊被完全刪除,釋放用于 所述刪除的組塊的存儲空間并連接被刪除的組塊的前面和后面的組塊。
            5.根據權利要求1所述的方法,還包括下述步驟當文件部分被刪除并且刪除起始位置和結束位置沒有位于相同的塊中但是位于相同 的組塊中時,所述組塊被分為第一新組塊和第二新組塊;采用第三管理數據和第四管理數據分別記錄第二新組塊的第一塊的頭部以及最后塊 的尾部中的空閑空間;并且連接第一新組塊和第二新組塊以保持文件的連續性。
            6.根據權利要求5所述的方法,其中采用刪除之前原組塊號對第一新組塊進行編號, 緊隨文件系統中最初的最后組塊號對第二新組塊進行編號。
            7.根據權利要求5或6所述的方法,其中如果一個組塊被完全刪除,釋放該塊的空間。
            8.根據權利要求1所述的方法,還包括下述步驟當從組塊的塊的中部刪除某些數據時,將所述塊中被刪除的數據之后的剩余的第二半部數據移動到緊隨塊中數據的第一半 部數據之后的位置,將發生刪除的塊和組塊中該塊之前的塊重組為第一新組塊,并且如果在發生刪除的塊 之后還有塊,將這些之后的塊重組為第二新組塊,利用第三管理數據和第四管理數據以分別記錄第二新組塊中第一塊的頭部和最后塊 的尾部中的空閑空間的大小,并且連接第一新組塊與第二新組塊。
            9.根據權利要求8所述的方法,其中采用刪除之前初始組塊號對第一新組塊進行編 號,緊隨文件系統中最初的最后組塊號對第二新組塊進行編號。
            10.根據權利要求8或9所述的方法,其中將組塊之間的連接信息記錄在文件系統管理 數據中。
            11.一種文件系統,其中將用于存儲文件數據的存儲空間分為多個大小相同并且順序 編號的塊,其特征在于,所述塊設置在順序編號的組塊中,并且每個組塊包括至少一個塊, 所述文件系統包括用于每個組塊的管理數據,用于指示組塊的頭部和/或尾部中空閑存儲 空間的大小,其中所述空閑存儲空間的大小小于塊的大小。
            12.根據權利要求11所述的文件系統,其中利用第一管理數據和第二管理數據記錄組塊中的第一塊的頭部和最后塊的尾部中的空間大小。
            13.根據權利要求12所述的文件系統,其中連接用于文件的全部組塊以保持文件的連 續性,并且將連接信息存儲在文件系統管理數據中。
            14.一種包括權利要求11-13中任一所述文件系統的存儲裝置。
            全文摘要
            本發明提供了用于管理和編輯文件系統中文件的方法和裝置。在管理文件系統中的文件數據的方法中,將用于存儲文件數據的存儲空間分為多個大小相同并且順序編號的塊。所述塊設置在順序編號的組塊中,并且每個組塊包括至少一個塊。對于一個組塊,所述方法包括下述步驟在刪除文件中的數據的步驟之后,利用第一管理數據和第二管理數據記錄每個組塊中的第一塊的頭部和最后塊的尾部中未被數據占據的空間大小,所述空間大小小于塊的大小。
            文檔編號G11B27/034GK101911198SQ200880122672
            公開日2010年12月8日 申請日期2008年11月19日 優先權日2007年12月27日
            發明者張曉龍, 胡建強 申請人:湯姆遜許可公司
            網友詢問留言 已有0條留言
            • 還沒有人留言評論。精彩留言會獲得點贊!
            1
            婷婷六月激情在线综合激情,亚洲国产大片,久久中文字幕综合婷婷,精品久久久久久中文字幕,亚洲一区二区三区高清不卡,99国产精品热久久久久久夜夜嗨 ,欧美日韩亚洲综合在线一区二区,99国产精品电影,伊人精品线视天天综合,精品伊人久久久大香线蕉欧美
            亚洲精品1区 国产成人一级 91精品国产欧美一区二区 亚洲精品乱码久久久久久下载 国产精品久久久久久久伊一 九色国产 国产精品九九视频 伊人久久成人爱综合网 欧美日韩亚洲区久久综合 欧美日本一道免费一区三区 夜夜爽一区二区三区精品 欧美日韩高清一区二区三区 国产成人av在线 国产精品对白交换绿帽视频 国产视频亚洲 国产在线欧美精品 国产精品综合网 国产日韩精品欧美一区色 国产日韩精品欧美一区喷 欧美日韩在线观看区一二 国产区精品 欧美视频日韩视频 中文字幕天天躁日日躁狠狠躁97 视频一二三区 欧美高清在线精品一区二区不卡 国产精品揄拍一区二区久久 99久久综合狠狠综合久久aⅴ 亚洲乱码视频在线观看 日韩在线第二页 亚洲精品无码专区在线播放 成人亚洲网站www在线观看 欧美三级一区二区 99久久精品免费看国产高清 91麻豆国产在线观看 最新日韩欧美不卡一二三区 成人在线观看不卡 日韩国产在线 在线亚洲精品 亚洲午夜久久久久中文字幕 国产精品成人久久久久久久 精品国产一区二区在线观看 欧美精品国产一区二区三区 中文在线播放 亚洲第一页在线视频 国产午夜精品福利久久 九色国产 精品国产九九 国产永久视频 久久精品人人做人人综合试看 国产一区二区三区免费观看 亚洲精品国产电影 9999热视频 国产精品资源在线 麻豆久久婷婷国产综合五月 国产精品免费一级在线观看 亚洲国产一区二区三区青草影视 中文在线播放 国产成人综合在线 国产在线观看色 国产亚洲三级 国产片一区二区三区 久久99精品久久久久久牛牛影视 亚洲欧美日韩国产 四虎永久免费网站 国产一毛片 国产精品视频在 九九热在线精品 99精品福利视频 色婷婷色99国产综合精品 97成人精品视频在线播放 精品久久久久久中文字幕 亚洲欧美一区二区三区孕妇 亚洲欧美成人网 日韩高清在线二区 国产尤物在线观看 在线不卡一区二区 91网站在线看 韩国精品福利一区二区 欧美日韩国产成人精品 99热精品久久 国产精品免费视频一区 高清视频一区 精品九九久久 欧美日韩在线观看免费 91欧美激情一区二区三区成人 99福利视频 亚洲国产精品91 久热国产在线 精品久久久久久中文字幕女 国产精品久久久久久久久99热 成人自拍视频网 国产精品视频久久久久久 久久影院国产 国产玖玖在线观看 99精品在线免费 亚洲欧美一区二区三区导航 久久久久久久综合 国产欧美日韩精品高清二区综合区 国产精品视频自拍 亚洲一级片免费 久久久久久九九 国产欧美自拍视频 视频一区二区在线观看 欧美日韩一区二区三区久久 中文在线亚洲 伊人热人久久中文字幕 日韩欧美亚洲国产一区二区三区 欧美亚洲国产成人高清在线 欧美日韩国产码高清综合人成 国产性大片免费播放网站 亚洲午夜综合网 91精品久久一区二区三区 国产无套在线播放 国产精品视频网站 国产成人亚洲精品老王 91在线网站 国产视频97 欧美黑人欧美精品刺激 国产一区二区三区免费在线视频 久久久国产精品免费看 99re6久精品国产首页 久久精品91 国产成人一级 国产成人精品曰本亚洲 日本福利在线观看 伊人成综合网 久久综合一本 国产综合久久久久久 久久精品成人免费看 久久福利 91精品国产91久久久久久麻豆 亚洲精品成人在线 亚洲伊人久久精品 欧美日本二区 国产永久视频 国产一区二 一区二区福利 国产一毛片 亚洲精品1区 毛片一区二区三区 伊人久久大香线蕉综合影 国产欧美在线观看一区 亚洲国产欧洲综合997久久 国产一区二区免费视频 国产91精品对白露脸全集观看 久久亚洲国产伦理 欧美成人伊人久久综合网 亚洲性久久久影院 久久99国产精一区二区三区! 91精品国产欧美一区二区 欧美日韩亚洲区久久综合 日韩精品一二三区 久久久夜色精品国产噜噜 国产在线精品福利91香蕉 久久久久久久亚洲精品 97se色综合一区二区二区 91国语精品自产拍在线观看性色 91久久国产综合精品女同我 日韩中文字幕a 国产成人亚洲日本精品 久久国产精品-国产精品 久久国产经典视频 久久国产精品伦理 亚洲第一页在线视频 国产精品久久久久三级 日韩毛片网 久久免费高清视频 麻豆国产在线观看一区二区 91麻豆国产福利在线观看 国产成人精品男人的天堂538 一区二区三区中文字幕 免费在线视频一区 欧美日韩国产成人精品 国产综合网站 国产资源免费观看 亚洲精品亚洲人成在线播放 精品久久久久久中文字幕专区 亚洲人成人毛片无遮挡 国产一起色一起爱 国产香蕉精品视频在 九九热免费观看 日韩亚洲欧美一区 九九热精品在线观看 精品久久久久久中文字幕专区 亚洲欧美自拍偷拍 国产精品每日更新 久久久久国产一级毛片高清板 久久天天躁狠狠躁夜夜中文字幕 久久精品片 日韩在线毛片 国产成人精品本亚洲 国产成人精品一区二区三区 九九热在线观看 国产r级在线观看 国产欧美日韩精品高清二区综合区 韩国电影一区二区 国产精品毛片va一区二区三区 五月婷婷伊人网 久久一区二区三区免费 一本色道久久综合狠狠躁篇 亚洲综合色站 国产尤物在线观看 亚洲一区亚洲二区 免费在线视频一区 欧洲精品视频在线观看 日韩中文字幕a 中文字幕日本在线mv视频精品 91精品在线免费视频 精品国产免费人成在线观看 精品a级片 中文字幕日本在线mv视频精品 日韩在线精品视频 婷婷丁香色 91精品国产高清久久久久 国产成人精品日本亚洲直接 五月综合视频 欧美日韩在线亚洲国产人 精液呈暗黄色 亚洲乱码一区 久久精品中文字幕不卡一二区 亚洲天堂精品在线 激情婷婷综合 国产免费久久精品久久久 国产精品亚洲二区在线 久久免费播放视频 五月婷婷丁香综合 在线亚洲欧美日韩 久久免费精品高清麻豆 精品久久久久久中文字幕 亚洲一区网站 国产精品福利社 日韩中文字幕免费 亚洲综合丝袜 91精品在线播放 国产精品18 亚洲日日夜夜 伊人久久大香线蕉综合影 亚洲精品中文字幕乱码影院 亚洲一区二区黄色 亚洲第一页在线视频 一区二区在线观看视频 国产成人福利精品视频 亚洲高清二区 国内成人免费视频 精品亚洲性xxx久久久 国产精品合集一区二区三区 97av免费视频 国产一起色一起爱 国产区久久 国产资源免费观看 99精品视频免费 国产成人一级 国产精品九九免费视频 欧美91精品久久久久网免费 99热国产免费 久久精品色 98精品国产综合久久 久久精品播放 中文字幕视频免费 国产欧美日韩一区二区三区在线 精品久久蜜桃 国产小视频精品 一本色道久久综合狠狠躁篇 91在线免费观看 亚洲精品区 伊人成综合网 伊人热人久久中文字幕 伊人黄色片 99国产精品热久久久久久夜夜嗨 久久免费精品视频 亚洲一区二区三区高清不卡 久久久久国产一级毛片高清板 国产片一区二区三区 久久狠狠干 99久久婷婷国产综合精品电影 国产99区 国产精品成人久久久久 久久狠狠干 青青国产在线观看 亚洲高清国产拍精品影院 国产精品一区二区av 九九热在线免费视频 伊人久久国产 国产精品久久久久久久久久一区 在线观看免费视频一区 国产精品自在在线午夜区app 国产精品综合色区在线观看 国产毛片久久久久久国产毛片 97国产免费全部免费观看 国产精品每日更新 国产尤物视频在线 九九视频这里只有精品99 一本一道久久a久久精品综合 久久综合给会久久狠狠狠 国产成人精品男人的天堂538 欧美一区二区高清 毛片一区二区三区 国产欧美日韩在线观看一区二区三区 在线国产二区 欧美不卡网 91在线精品中文字幕 在线国产福利 国内精品91久久久久 91亚洲福利 日韩欧美国产中文字幕 91久久精品国产性色也91久久 亚洲性久久久影院 欧美精品1区 国产热re99久久6国产精品 九九热免费观看 国产精品欧美日韩 久久久久国产一级毛片高清板 久久国产经典视频 日韩欧美亚洲国产一区二区三区 欧美亚洲综合另类在线观看 国产精品自在在线午夜区app 97中文字幕在线观看 视频一二三区 精品国产一区在线观看 国产欧美日韩在线一区二区不卡 欧美一区二三区 伊人成人在线观看 国内精品91久久久久 97在线亚洲 国产在线不卡一区 久久久全免费全集一级全黄片 国产精品v欧美精品∨日韩 亚洲毛片网站 在线不卡一区二区 99re热在线视频 久久激情网 国产毛片一区二区三区精品 久久亚洲综合色 中文字幕视频免费 国产视频亚洲 婷婷伊人久久 国产一区二区免费播放 久久99国产精品成人欧美 99国产在线视频 国产成人免费视频精品一区二区 国产不卡一区二区三区免费视 国产码欧美日韩高清综合一区 久久精品国产主播一区二区 国产一区电影 久久精品国产夜色 国产精品国产三级国产 日韩一区二区三区在线 久久97久久97精品免视看 久久国产免费一区二区三区 伊人久久大香线蕉综合电影网 99re6久精品国产首页 久久激情网 亚洲成人高清在线 国产精品网址 国产成人精品男人的天堂538 香蕉国产综合久久猫咪 国产专区中文字幕 91麻豆精品国产高清在线 久久国产经典视频 国产精品成人va在线观看 国产精品爱啪在线线免费观看 日本精品久久久久久久久免费 亚洲综合一区二区三区 久久五月网 精品国产网红福利在线观看 久久综合亚洲伊人色 亚洲国产精品久久久久久网站 在线日韩国产 99国产精品热久久久久久夜夜嗨 国产综合精品在线 国产区福利 精品亚洲综合久久中文字幕 国产制服丝袜在线 毛片在线播放网站 在线观看免费视频一区 国产精品久久久精品三级 亚洲国产电影在线观看 最新日韩欧美不卡一二三区 狠狠综合久久综合鬼色 日本精品1在线区 国产日韩一区二区三区在线播放 欧美日韩精品在线播放 亚洲欧美日韩国产一区二区三区精品 久久综合久久网 婷婷六月激情在线综合激情 亚洲乱码一区 国产专区91 97av视频在线观看 精品久久久久久中文字幕 久久五月视频 国产成人福利精品视频 国产精品网址 中文字幕视频在线 精品一区二区三区免费视频 伊人手机在线视频 亚洲精品中文字幕乱码 国产在线视频www色 色噜噜国产精品视频一区二区 精品亚洲成a人在线观看 国产香蕉尹人综合在线 成人免费一区二区三区在线观看 国产不卡一区二区三区免费视 欧美精品久久天天躁 国产专区中文字幕 久久精品国产免费中文 久久精品国产免费一区 久久无码精品一区二区三区 国产欧美另类久久久精品免费 欧美精品久久天天躁 亚洲精品在线视频 国产视频91在线 91精品福利一区二区三区野战 日韩中文字幕免费 国产精品99一区二区三区 欧美成人高清性色生活 国产精品系列在线观看 亚洲国产福利精品一区二区 国产成人在线小视频 国产精品久久久久免费 99re热在线视频 久久久久久久综合 一区二区国产在线播放 成人国产在线视频 亚洲精品乱码久久久久 欧美日韩一区二区综合 精品久久久久免费极品大片 中文字幕视频二区 激情粉嫩精品国产尤物 国产成人精品一区二区视频 久久精品中文字幕首页 亚洲高清在线 国产精品亚洲一区二区三区 伊人久久艹 中文在线亚洲 国产精品一区二区在线播放 国产精品九九免费视频 亚洲二区在线播放 亚洲狠狠婷婷综合久久久久网站 亚洲欧美日韩网站 日韩成人精品 亚洲国产一区二区三区青草影视 91精品国产福利在线观看 国产精品久久久久久久久99热 国产一区二区精品尤物 久碰香蕉精品视频在线观看 亚洲日日夜夜 在线不卡一区二区 国产午夜亚洲精品 九九热在线视频观看这里只有精品 伊人手机在线视频 91免费国产精品 日韩欧美中字 91精品国产91久久久久 国产全黄三级播放 视频一区二区三区免费观看 国产开裆丝袜高跟在线观看 国产成人欧美 激情综合丝袜美女一区二区 国产成人亚洲综合无 欧美精品一区二区三区免费观看 欧美亚洲国产日韩 日韩亚州 国产欧美日韩精品高清二区综合区 亚洲午夜国产片在线观看 精品久久久久久中文字幕 欧美精品1区 久久伊人久久亚洲综合 亚洲欧美日韩精品 国产成人精品久久亚洲高清不卡 久久福利影视 国产精品99精品久久免费 久久久久免费精品视频 国产日产亚洲精品 亚洲国产午夜电影在线入口 精品无码一区在线观看 午夜国产精品视频 亚洲一级片免费 伊人久久大香线蕉综合影 国产精品久久影院 久碰香蕉精品视频在线观看 www.欧美精品 在线小视频国产 亚洲国产天堂久久综合图区 欧美一区二区三区不卡 日韩美女福利视频 九九精品免视频国产成人 不卡国产00高中生在线视频 亚洲第一页在线视频 欧美日韩在线播放成人 99re视频这里只有精品 国产精品91在线 精品乱码一区二区三区在线 国产区久久 91麻豆精品国产自产在线观看一区 日韩精品成人在线 九九热在线观看 国产精品久久不卡日韩美女 欧美一区二区三区综合色视频 欧美精品免费一区欧美久久优播 国产精品网址 国产专区中文字幕 国产精品欧美亚洲韩国日本久久 日韩美香港a一级毛片 久久精品123 欧美一区二区三区免费看 99r在线视频 亚洲精品国产字幕久久vr 国产综合激情在线亚洲第一页 91免费国产精品 日韩免费小视频 亚洲国产精品综合一区在线 国产亚洲第一伦理第一区 在线亚洲精品 国产精品一区二区制服丝袜 国产在线成人精品 九九精品免视频国产成人 亚洲国产网 欧美日韩亚洲一区二区三区在线观看 在线亚洲精品 欧美一区二区三区高清视频 国产成人精品男人的天堂538 欧美日韩在线观看区一二 亚洲欧美一区二区久久 久久精品中文字幕首页 日本高清www午夜视频 久久精品国产免费 久久999精品 亚洲国产精品欧美综合 88国产精品视频一区二区三区 91久久偷偷做嫩草影院免费看 国产精品夜色视频一区二区 欧美日韩导航 国产成人啪精品午夜在线播放 一区二区视频在线免费观看 99久久精品国产自免费 精液呈暗黄色 久久99国产精品 日本精品久久久久久久久免费 精品国产97在线观看 99re视频这里只有精品 国产视频91在线 999av视频 亚洲美女视频一区二区三区 久久97久久97精品免视看 亚洲国产成人久久三区 99久久亚洲国产高清观看 日韩毛片在线视频 综合激情在线 91福利一区二区在线观看 一区二区视频在线免费观看 激情粉嫩精品国产尤物 国产成人精品曰本亚洲78 国产成人精品本亚洲 国产精品成人免费视频 国产成人啪精品视频免费软件 久久精品国产亚洲妲己影院 国产精品成人久久久久久久 久久大香线蕉综合爱 欧美一区二区三区高清视频 99热国产免费 在线观看欧美国产 91精品视频在线播放 国产精品福利社 欧美精品一区二区三区免费观看 国产一区二区免费视频 国产午夜精品一区二区 精品视频在线观看97 91精品福利久久久 国产一区福利 国产综合激情在线亚洲第一页 国产精品久久久久久久久久久不卡 九色国产 在线日韩国产 黄网在线观看 亚洲一区小说区中文字幕 中文字幕丝袜 日本二区在线观看 日本国产一区在线观看 欧美日韩一区二区三区久久 欧美精品亚洲精品日韩专 国产日产亚洲精品 久久综合九色综合欧美播 亚洲国产欧美无圣光一区 欧美视频区 亚洲乱码视频在线观看 久久无码精品一区二区三区 九九热精品免费视频 久久99精品久久久久久牛牛影视 国产精品成久久久久三级 国产一区福利 午夜国产精品视频 日本二区在线观看 99久久网站 国产亚洲天堂 精品国产一区二区三区不卡 亚洲国产日韩在线一区 国产成人综合在线观看网站 久久免费高清视频 欧美在线导航 午夜精品久久久久久99热7777 欧美久久综合网 国产小视频精品 国产尤物在线观看 亚洲国产精品综合一区在线 欧美一区二区三区不卡视频 欧美黑人欧美精品刺激 日本福利在线观看 久久国产偷 国产手机精品一区二区 国产热re99久久6国产精品 国产高清啪啪 欧美亚洲国产成人高清在线 国产在线第三页 亚洲综合一区二区三区 99r在线视频 99精品久久久久久久婷婷 国产精品乱码免费一区二区 国产在线精品福利91香蕉 国产尤物视频在线 五月婷婷亚洲 中文字幕久久综合伊人 亚洲精品一级毛片 99国产精品电影 在线视频第一页 久久99国产精品成人欧美 国产白白视频在线观看2 成人精品一区二区www 亚洲成人网在线观看 麻豆91在线视频 色综合合久久天天综合绕视看 久久精品国产免费高清 国产不卡一区二区三区免费视 欧美国产中文 99精品欧美 九九在线精品 国产中文字幕在线免费观看 国产一区中文字幕在线观看 国产成人一级 国产精品一区二区制服丝袜 国产一起色一起爱 亚洲精品成人在线 亚洲欧美精品在线 国产欧美自拍视频 99精品久久久久久久婷婷 久99视频 国产热re99久久6国产精品 视频一区亚洲 国产精品视频分类 国产精品成在线观看 99re6久精品国产首页 亚洲在成人网在线看 亚洲国产日韩在线一区 久久国产三级 日韩国产欧美 欧美在线一区二区三区 国产精品美女一级在线观看 成人午夜免费福利视频 亚洲天堂精品在线 91精品国产手机 欧美日韩视频在线播放 狠狠综合久久综合鬼色 九一色视频 青青视频国产 亚洲欧美自拍一区 中文字幕天天躁日日躁狠狠躁97 日韩免费大片 996热视频 伊人成综合网 亚洲天堂欧美 日韩精品亚洲人成在线观看 久久综合给会久久狠狠狠 日韩精品亚洲人成在线观看 日韩国产欧美 亚洲成aⅴ人片在线影院八 亚洲精品1区 99久久精品免费 国产精品高清在线观看 国产精品久久久免费视频 在线亚洲欧美日韩 91在线看视频 国产精品96久久久久久久 欧美日韩国产成人精品 91在线亚洲 热久久亚洲 国产精品美女免费视频观看 日韩在线毛片 亚洲永久免费视频 九九免费在线视频 亚洲一区网站 日本高清二区视频久二区 精品国产美女福利在线 伊人久久艹 国产精品久久久久三级 欧美成人精品第一区二区三区 99久久精品国产自免费 在线观看日韩一区 国产中文字幕一区 成人免费午夜视频 欧美日韩另类在线 久久99国产精品成人欧美 色婷婷中文网 久久天天躁夜夜躁狠狠躁2020 欧美成人伊人久久综合网 国产精品福利资源在线 国产伦精品一区二区三区高清 国产精品亚洲综合色区韩国 亚洲一区欧美日韩 色综合视频 国语自产精品视频在线区 国产高清a 成人国内精品久久久久影 国产在线精品香蕉综合网一区 国产不卡在线看 国产成人精品精品欧美 国产欧美日韩综合精品一区二区三区 韩国电影一区二区 国产在线视频www色 91中文字幕在线一区 国产人成午夜免视频网站 亚洲综合一区二区三区 色综合视频一区二区观看 久久五月网 九九热精品在线观看 国产一区二区三区国产精品 99久热re在线精品996热视频 亚洲国产网 在线视频亚洲一区 日韩字幕一中文在线综合 国产高清一级毛片在线不卡 精品国产色在线 国产高清视频一区二区 精品日本久久久久久久久久 亚洲国产午夜精品乱码 成人免费国产gav视频在线 日韩欧美一区二区在线观看 欧美曰批人成在线观看 韩国电影一区二区 99re这里只有精品6 日韩精品一区二区三区视频 99re6久精品国产首页 亚洲欧美一区二区三区导航 欧美色图一区二区三区 午夜精品视频在线观看 欧美激情在线观看一区二区三区 亚洲热在线 成人国产精品一区二区网站 亚洲一级毛片在线播放 亚洲一区小说区中文字幕 亚洲午夜久久久久影院 国产自产v一区二区三区c 国产精品视频免费 久久调教视频 国产成人91激情在线播放 国产精品欧美亚洲韩国日本久久 久久亚洲日本不卡一区二区 91中文字幕网 成人国产在线视频 国产视频91在线 欧美成人精品第一区二区三区 国产精品福利在线 久久综合九色综合精品 欧美一区二区三区精品 久久国产综合尤物免费观看 久久99青青久久99久久 日韩精品免费 久久国产精品999 91亚洲视频在线观看 国产精品igao视频 色综合区 在线亚洲欧国产精品专区 国产一区二区三区在线观看视频 亚洲精品成人在线 一区二区国产在线播放 中文在线亚洲 亚洲精品第一国产综合野 国产一区二区精品久久 一区二区三区四区精品视频 99热精品久久 中文字幕视频二区 国产成人精品男人的天堂538 99精品影视 美女福利视频一区二区 久久午夜夜伦伦鲁鲁片 综合久久久久久久综合网 国产精品国产欧美综合一区 国产99视频在线观看 国产亚洲女在线精品 婷婷影院在线综合免费视频 国产亚洲3p一区二区三区 91成人爽a毛片一区二区 亚洲一区二区高清 国产欧美亚洲精品第二区首页 欧美日韩导航 亚洲高清二区 欧美激情观看一区二区久久 日韩毛片在线播放 亚洲欧美日韩高清中文在线 亚洲日本在线播放 国产精品一区二区制服丝袜 精品国产一区二区三区不卡 国产不卡在线看 国产欧美网站 四虎永久在线观看视频精品 国产黄色片在线观看 夜夜综合 一本色道久久综合狠狠躁篇 欧美亚洲综合另类在线观看 国产91在线看 伊人久久国产 欧美一区二区在线观看免费网站 国产精品久久久久三级 久久福利 日韩中文字幕a 亚洲午夜久久久久影院 91在线高清视频 国产亚洲一区二区三区啪 久久人精品 国产精品亚洲午夜一区二区三区 综合久久久久久 久久伊人一区二区三区四区 国产综合久久久久久 日韩一区精品视频在线看 国产精品日韩欧美制服 日本精品1在线区 99re视频 无码av免费一区二区三区试看 国产视频1区 日韩欧美中文字幕一区 日本高清中文字幕一区二区三区a 亚洲国产欧美无圣光一区 国产在线视频一区二区三区 欧美国产第一页 在线亚洲欧美日韩 日韩中文字幕第一页 在线不卡一区二区 伊人久久青青 国产精品一区二区在线播放 www.五月婷婷 麻豆久久婷婷国产综合五月 亚洲精品区 久久国产欧美另类久久久 99在线视频免费 伊人久久中文字幕久久cm 久久精品成人免费看 久久这里只有精品首页 88国产精品视频一区二区三区 中文字幕日本在线mv视频精品 国产在线精品成人一区二区三区 伊人精品线视天天综合 亚洲一区二区黄色 国产尤物视频在线 亚洲精品99久久久久中文字幕 国产一区二区三区免费观看 伊人久久大香线蕉综合电影网 国产成人精品区在线观看 日本精品一区二区三区视频 日韩高清在线二区 久久免费播放视频 一区二区成人国产精品 国产精品免费精品自在线观看 亚洲精品视频二区 麻豆国产精品有码在线观看 精品日本一区二区 亚洲欧洲久久 久久中文字幕综合婷婷 中文字幕视频在线 国产成人精品综合在线观看 91精品国产91久久久久福利 精液呈暗黄色 香蕉国产综合久久猫咪 国产专区精品 亚洲精品无码不卡 国产永久视频 亚洲成a人片在线播放观看国产 一区二区国产在线播放 亚洲一区二区黄色 欧美日韩在线观看视频 亚洲精品另类 久久国产综合尤物免费观看 国产一区二区三区国产精品 高清视频一区 国产精品igao视频 国产精品资源在线 久久综合精品国产一区二区三区 www.五月婷婷 精品色综合 99热国产免费 麻豆福利影院 亚洲伊人久久大香线蕉苏妲己 久久电影院久久国产 久久精品伊人 在线日韩理论午夜中文电影 亚洲国产欧洲综合997久久 伊人国产精品 久草国产精品 欧美一区精品二区三区 亚洲成人高清在线 91免费国产精品 日韩精品福利在线 国产一线在线观看 国产不卡在线看 久久99青青久久99久久 亚洲精品亚洲人成在线播放 99久久免费看国产精品 国产日本在线观看 青草国产在线视频 麻豆久久婷婷国产综合五月 国产中文字幕一区 91久久精品国产性色也91久久 国产一区a 国产欧美日韩成人 国产亚洲女在线精品 一区二区美女 中文字幕在线2021一区 在线小视频国产 久久这里只有精品首页 国产在线第三页 欧美日韩中文字幕 在线亚洲+欧美+日本专区 精品国产一区二区三区不卡 久久这里精品 欧美在线va在线播放 精液呈暗黄色 91精品国产手机 91在线免费播放 欧美视频亚洲色图 欧美国产日韩精品 日韩高清不卡在线 精品视频免费观看 欧美日韩一区二区三区四区 国产欧美亚洲精品第二区首页 亚洲韩精品欧美一区二区三区 国产精品视频免费 在线精品小视频 久久午夜夜伦伦鲁鲁片 国产无套在线播放 久热这里只精品99re8久 欧美久久久久 久久香蕉国产线看观看精品蕉 国产成人精品男人的天堂538 亚洲人成网站色7799在线观看 日韩在线第二页 一本色道久久综合狠狠躁篇 国产一区二区三区不卡在线观看 亚洲乱码在线 在线观看欧美国产 久久福利青草精品资源站免费 国产玖玖在线观看 在线亚洲精品 亚洲成aⅴ人在线观看 精品91在线 欧美一区二三区 日韩中文字幕视频在线 日本成人一区二区 日韩免费专区 国内精品在线观看视频 久久国产综合尤物免费观看 国产精品系列在线观看 一本一道久久a久久精品综合 亚洲免费播放 久久精品国产免费 久久人精品 亚洲毛片网站 亚洲成a人一区二区三区 韩国福利一区二区三区高清视频 亚洲精品天堂在线 一区二区三区中文字幕 亚洲国产色婷婷精品综合在线观看 亚洲国产成人久久笫一页 999国产视频 国产精品香港三级在线电影 欧美日韩一区二区三区四区 日韩国产欧美 国产精品99一区二区三区 午夜国产精品理论片久久影院 亚洲精品中文字幕麻豆 亚洲国产高清视频 久久免费手机视频 日韩a在线观看 五月婷婷亚洲 亚洲精品中文字幕麻豆 中文字幕丝袜 www国产精品 亚洲天堂精品在线 亚洲乱码一区 国产日韩欧美三级 久久999精品 伊人热人久久中文字幕 久热国产在线视频 国产欧美日韩在线观看一区二区三区 国产一二三区在线 日韩国产欧美 91精品国产91久久久久 亚洲一区小说区中文字幕 精品一区二区免费视频 国产精品视频免费 国产精品亚洲综合色区韩国 亚洲国产精品成人午夜在线观看 欧美国产日韩精品 中文字幕精品一区二区精品