欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

一種固態(tài)硬盤及其邏輯地址范圍沖突監(jiān)控方法、系統(tǒng)與流程

文檔序號:11154879閱讀:372來源:國知局
一種固態(tài)硬盤及其邏輯地址范圍沖突監(jiān)控方法、系統(tǒng)與制造工藝

本發(fā)明涉及存儲技術(shù)領(lǐng)域,特別涉及一種固態(tài)硬盤及其邏輯地址范圍沖突監(jiān)控方法、系統(tǒng)。



背景技術(shù):

SSD(即Solid State Disk,固態(tài)硬盤)是基于Nand Flash技術(shù)的新型存儲器件,具有讀寫速度快,存儲密度大,功耗低等特點,目前已得到越來越廣泛的應用。SSD主要包括存儲單元和控制單元。其中,SSD的存儲單元是指Nand Flash芯片,Nand Flash是一種新型的非易失存儲介質(zhì),每個Nand Flash由多個target構(gòu)成,每個target由多個LUN組成,每個LUN包含多個block,每個block包含多個page。另外,SSD的控制單元是指Nand Flash控制器芯片,負責對Nand Flash的讀寫操作和控制。Nand Flash控制器有多個Flash channel,每個Flash channel可以控制多個Nand Flash芯片。

通常來說,SSD固件將主機端發(fā)下的讀寫命令拆分成多個獨立的Flash page操作,并發(fā)送給Nand Flash控制器,Nand Flash控制器根據(jù)磨損均衡算法,將Flash page操作轉(zhuǎn)發(fā)到某一個Flash channel的某一個Flash target。

為了提高SSD讀寫性能,SSD固件支持主機端多個讀寫命令的并發(fā)操作,由于Nand Flash控制器會跨多個Flash channel和多個Flash target調(diào)度,主機端的并發(fā)讀寫命令會亂序處理。考慮上述情況,假設(shè)主機下發(fā)一個讀命令和一個寫命令,并且它們的邏輯地址范圍有重疊,如果不做沖突檢測處理,讀命令返回的數(shù)據(jù)會混合部分先寫入的舊數(shù)據(jù)和部分后寫入的新數(shù)據(jù),從而影響SSD的數(shù)據(jù)正確性。為了保證SSD的數(shù)據(jù)正確性,需要在Flash控制器上對主機端的讀寫命令進行邏輯地址范圍沖突檢測,避免出現(xiàn)混合新舊數(shù)據(jù)的情況。

目前,不同的SSD廠商有不同的邏輯地址范圍沖突檢測方法,有采用遍歷邏輯地址范圍,依次判斷的方法;也有采用計算邏輯地址哈希值,構(gòu)建哈希隊列,然后再依次判斷的方法。然而,總體來說,上述每種檢測方法均需要消耗較長的時間,檢測效率較低。

綜上所述可以看出,如何提高邏輯地址訪問沖突檢測過程中的檢測效率是目前還有待進一步解決的問題。



技術(shù)實現(xiàn)要素:

有鑒于此,本發(fā)明的目的在于提供一種固態(tài)硬盤及其邏輯地址范圍沖突監(jiān)控方法、系統(tǒng),提高了邏輯地址訪問沖突檢測過程中的檢測效率。其具體方案如下:

一種邏輯地址范圍沖突監(jiān)控方法,應用于固態(tài)硬盤,包括:

獲取主機端發(fā)送的數(shù)據(jù)操作命令;

提取每個數(shù)據(jù)操作命令所對應的邏輯地址范圍,并將提取到的邏輯地址范圍抽象成節(jié)點,以得到相應的新節(jié)點;

按照預先基于邏輯地址大小順序設(shè)定的二叉樹構(gòu)造規(guī)則,將新節(jié)點向當前的現(xiàn)有二叉樹中進行添加操作,若添加失敗,則判定該新節(jié)點與現(xiàn)有二叉樹中的節(jié)點之間存在邏輯地址范圍沖突,若添加成功,則判定該新節(jié)點與現(xiàn)有二叉樹中的節(jié)點之間不存在邏輯地址范圍沖突。

可選的,所述主機端發(fā)送的數(shù)據(jù)操作命令包括讀取命令和/或?qū)懭朊睢?/p>

可選的,所述二叉樹構(gòu)造規(guī)則包括:

若現(xiàn)有二叉樹中的根節(jié)點還未存在,則將新節(jié)點確定為根節(jié)點;

若現(xiàn)有二叉樹中的根節(jié)點已經(jīng)存在,則按照節(jié)點深度由淺至深的順序,將新節(jié)點分別與現(xiàn)有二叉樹中的節(jié)點進行依次比較,以試圖從現(xiàn)有二叉樹中確定出適合新節(jié)點的添加位置;

其中,在將新節(jié)點與現(xiàn)有二叉樹中的任一節(jié)點進行比較的過程中,若新節(jié)點的邏輯結(jié)束地址小于該節(jié)點的邏輯起始地址,則判定該節(jié)點的左分支為新節(jié)點的潛在添加區(qū)域,若新節(jié)點的邏輯起始地址大于該節(jié)點的邏輯結(jié)束地址,則判定該節(jié)點的右分支為新節(jié)點的潛在添加區(qū)域,否則,將該節(jié)點確定為新節(jié)點對應的沖突節(jié)點,并判定新節(jié)點添加失敗。

可選的,所述二叉樹構(gòu)造規(guī)則包括:

若現(xiàn)有二叉樹中的根節(jié)點還未存在,則將新節(jié)點確定為根節(jié)點;

若現(xiàn)有二叉樹中的根節(jié)點已經(jīng)存在,則按照節(jié)點深度由淺至深的順序,將新節(jié)點分別與現(xiàn)有二叉樹中的節(jié)點進行依次比較,以試圖從現(xiàn)有二叉樹中確定出適合新節(jié)點的添加位置;

其中,在將新節(jié)點與現(xiàn)有二叉樹中的任一節(jié)點進行比較的過程中,若新節(jié)點的邏輯結(jié)束地址小于該節(jié)點的邏輯起始地址,則判定該節(jié)點的右分支為新節(jié)點的潛在添加區(qū)域,若新節(jié)點的邏輯起始地址大于該節(jié)點的邏輯結(jié)束地址,則判定該節(jié)點的左分支為新節(jié)點的潛在添加區(qū)域,否則,將該節(jié)點確定為新節(jié)點對應的沖突節(jié)點,并判定新節(jié)點添加失敗。

可選的,所述方法,還包括:

若新節(jié)點添加失敗,則將新節(jié)點保存至與沖突節(jié)點對應的目標鏈表中。

可選的,所述方法,還包括:

若新節(jié)點添加失敗,則對沖突節(jié)點對應的數(shù)據(jù)操作命令進行優(yōu)先響應;

若沖突節(jié)點所對應的數(shù)據(jù)操作命令已響應完畢,則將該沖突節(jié)點從現(xiàn)有二叉樹中刪除,得到變更后的二叉樹,然后按照所述二叉樹構(gòu)造規(guī)則,將所述目標鏈表中保存的節(jié)點遷移至變更后的二叉樹。

本發(fā)明還公開了一種邏輯地址范圍沖突監(jiān)控系統(tǒng),應用于固態(tài)硬盤,包括:

命令獲取模塊,用于獲取主機端發(fā)送的數(shù)據(jù)操作命令;

地址提取模塊,用于提取每個數(shù)據(jù)操作命令所對應的邏輯地址范圍;

地址抽象模塊,用于將所述地址提取模塊提取到的邏輯地址范圍抽象成節(jié)點,以得到相應的新節(jié)點;

二叉樹構(gòu)造模塊,用于按照預先基于邏輯地址大小順序設(shè)定的二叉樹構(gòu)造規(guī)則,將新節(jié)點向當前的現(xiàn)有二叉樹中進行添加操作,若添加失敗,則判定該新節(jié)點與現(xiàn)有二叉樹中的節(jié)點之間存在邏輯地址范圍沖突,若添加成功,則判定該新節(jié)點與現(xiàn)有二叉樹中的節(jié)點之間不存在邏輯地址范圍沖突。

可選的,所述二叉樹構(gòu)造模塊所使用的二叉樹構(gòu)造規(guī)則,具體包括:

若現(xiàn)有二叉樹中的根節(jié)點還未存在,則將新節(jié)點確定為根節(jié)點;

若現(xiàn)有二叉樹中的根節(jié)點已經(jīng)存在,則按照節(jié)點深度由淺至深的順序,將新節(jié)點分別與現(xiàn)有二叉樹中的節(jié)點進行依次比較,以試圖從現(xiàn)有二叉樹中確定出適合新節(jié)點的添加位置;

其中,在將新節(jié)點與現(xiàn)有二叉樹中的任一節(jié)點進行比較的過程中,若新節(jié)點的邏輯結(jié)束地址小于該節(jié)點的邏輯起始地址,則判定該節(jié)點的左分支為新節(jié)點的潛在添加區(qū)域,若新節(jié)點的邏輯起始地址大于該節(jié)點的邏輯結(jié)束地址,則判定該節(jié)點的右分支為新節(jié)點的潛在添加區(qū)域,否則,將該節(jié)點確定為新節(jié)點對應的沖突節(jié)點,并判定新節(jié)點添加失敗。

可選的,所述系統(tǒng),還包括:

節(jié)點保存模塊,用于當新節(jié)點添加失敗,則將新節(jié)點保存至與沖突節(jié)點對應的目標鏈表中;

優(yōu)先響應模塊,用于對沖突節(jié)點對應的數(shù)據(jù)操作命令進行優(yōu)先響應;

節(jié)點剔除模塊,用于當沖突節(jié)點所對應的數(shù)據(jù)操作命令已響應完畢,則將該沖突節(jié)點從現(xiàn)有二叉樹中刪除,得到變更后的二叉樹;

節(jié)點遷移模塊,用于按照所述二叉樹構(gòu)造規(guī)則,將所述目標鏈表中保存的節(jié)點遷移至變更后的二叉樹。

本發(fā)明進一步公開了一種固態(tài)硬盤,包括前述公開的邏輯地址范圍沖突監(jiān)控系統(tǒng)。

本發(fā)明中,邏輯地址范圍沖突監(jiān)控方法,包括:獲取主機端發(fā)送的數(shù)據(jù)操作命令;提取每個數(shù)據(jù)操作命令所對應的邏輯地址范圍,并將提取到的邏輯地址范圍抽象成節(jié)點,以得到相應的新節(jié)點;按照預先基于邏輯地址大小順序設(shè)定的二叉樹構(gòu)造規(guī)則,將新節(jié)點向當前的現(xiàn)有二叉樹中進行添加操作,若添加失敗,則判定該新節(jié)點與現(xiàn)有二叉樹中的節(jié)點之間存在邏輯地址范圍沖突,若添加成功,則判定該新節(jié)點與現(xiàn)有二叉樹中的節(jié)點之間不存在邏輯地址范圍沖突。

可見,本發(fā)明在獲取到主機端發(fā)送的數(shù)據(jù)操作命令之后,將會提取出每個數(shù)據(jù)操作命令所對應的邏輯地址范圍,然后將提取到的邏輯地址范圍抽象成節(jié)點,然后按照預先基于邏輯地址大小順序來設(shè)定得到的二叉樹構(gòu)造規(guī)則,嘗試將上述經(jīng)過抽象后得到的節(jié)點添加至當前現(xiàn)有二叉樹中,如果能夠添加成功,則可直接判定上述節(jié)點與現(xiàn)有二叉樹中的節(jié)點之間不存在邏輯地址范圍沖突,如果添加失敗,則可直接判定上述節(jié)點與現(xiàn)有二叉樹中的節(jié)點之間存在邏輯地址范圍沖突,由上可見,本發(fā)明將數(shù)據(jù)操作命令所對應的邏輯地址范圍抽象成節(jié)點,然后根據(jù)該節(jié)點是否能夠按照預設(shè)的規(guī)則添加至現(xiàn)有二叉樹中,便可快速地完成邏輯地址范圍沖突檢測,也即,本發(fā)明提高了邏輯地址訪問沖突檢測過程中的檢測效率。

附圖說明

為了更清楚地說明本發(fā)明實施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對實施例或現(xiàn)有技術(shù)描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的實施例,對于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動的前提下,還可以根據(jù)提供的附圖獲得其他的附圖。

圖1為本發(fā)明實施例公開的一種邏輯地址范圍沖突監(jiān)控方法流程圖;

圖2為本發(fā)明實施例公開的一種具體的邏輯地址范圍沖突監(jiān)控方法流程圖;

圖3為本發(fā)明實施例公開的一種現(xiàn)有二叉樹結(jié)構(gòu)示意圖;

圖4為新節(jié)點與現(xiàn)有二叉樹發(fā)生沖突的示意圖;

圖5為在對沖突節(jié)點進行優(yōu)先響應后得到的二叉樹示意圖;

圖6為在沖突節(jié)點刪除后新節(jié)點的添加示意圖;

圖7為本發(fā)明實施例公開的一種邏輯地址范圍沖突監(jiān)控系統(tǒng)結(jié)構(gòu)示意圖。

具體實施方式

下面將結(jié)合本發(fā)明實施例中的附圖,對本發(fā)明實施例中的技術(shù)方案進行清楚、完整地描述,顯然,所描述的實施例僅僅是本發(fā)明一部分實施例,而不是全部的實施例?;诒景l(fā)明中的實施例,本領(lǐng)域普通技術(shù)人員在沒有做出創(chuàng)造性勞動前提下所獲得的所有其他實施例,都屬于本發(fā)明保護的范圍。

本發(fā)明實施例公開了一種邏輯地址范圍沖突監(jiān)控方法,應用于固態(tài)硬盤,參見圖1所示,該方法包括:

步驟S11:獲取主機端發(fā)送的數(shù)據(jù)操作命令。

可以理解的是,本實施例中,主機端發(fā)送的數(shù)據(jù)操作命令具體可以包括讀取命令和/或?qū)懭朊?。其中,每個讀取命令和每個寫入命令均存在各自所對應的邏輯地址范圍。

步驟S12:提取每個數(shù)據(jù)操作命令所對應的邏輯地址范圍,并將提取到的邏輯地址范圍抽象成節(jié)點,以得到相應的新節(jié)點。

本實施例中,將提取到的邏輯地址范圍抽象成節(jié)點是指將提取到的邏輯地址范圍抽象成二叉樹的節(jié)點。

步驟S13:按照預先基于邏輯地址大小順序設(shè)定的二叉樹構(gòu)造規(guī)則,將新節(jié)點向當前的現(xiàn)有二叉樹中進行添加操作。

步驟S14:若上述新節(jié)點添加失敗,則判定該新節(jié)點與現(xiàn)有二叉樹中的節(jié)點之間存在邏輯地址范圍沖突。

步驟S15:若上述新節(jié)點添加成功,則判定該新節(jié)點與現(xiàn)有二叉樹中的節(jié)點之間不存在邏輯地址范圍沖突。

可見,本發(fā)明實施例在獲取到主機端發(fā)送的數(shù)據(jù)操作命令之后,將會提取出每個數(shù)據(jù)操作命令所對應的邏輯地址范圍,然后將提取到的邏輯地址范圍抽象成節(jié)點,然后按照預先基于邏輯地址大小順序來設(shè)定得到的二叉樹構(gòu)造規(guī)則,嘗試將上述經(jīng)過抽象后得到的節(jié)點添加至當前現(xiàn)有二叉樹中,如果能夠添加成功,則可直接判定上述節(jié)點與現(xiàn)有二叉樹中的節(jié)點之間不存在邏輯地址范圍沖突,如果添加失敗,則可直接判定上述節(jié)點與現(xiàn)有二叉樹中的節(jié)點之間存在邏輯地址范圍沖突,由上可見,本發(fā)明實施例將數(shù)據(jù)操作命令所對應的邏輯地址范圍抽象成節(jié)點,然后根據(jù)該節(jié)點是否能夠按照預設(shè)的規(guī)則添加至現(xiàn)有二叉樹中,便可快速地完成邏輯地址范圍沖突檢測,也即,本發(fā)明實施例提高了邏輯地址訪問沖突檢測過程中的檢測效率。

參見圖2所示,本發(fā)明實施例公開了一種具體的邏輯地址范圍沖突監(jiān)控方法,包括下面步驟:

步驟S21:獲取主機端發(fā)送的數(shù)據(jù)操作命令。

步驟S22:提取每個數(shù)據(jù)操作命令所對應的邏輯地址范圍,并將提取到的邏輯地址范圍抽象成節(jié)點,以得到相應的新節(jié)點。

步驟S23:按照預先基于邏輯地址大小順序設(shè)定的二叉樹構(gòu)造規(guī)則,將新節(jié)點向當前的現(xiàn)有二叉樹中進行添加操作。

本實施例中,上述二叉樹構(gòu)造規(guī)則具體可以包括:

若現(xiàn)有二叉樹中的根節(jié)點還未存在,則將新節(jié)點確定為根節(jié)點,若現(xiàn)有二叉樹中的根節(jié)點已經(jīng)存在,則按照節(jié)點深度由淺至深的順序,將新節(jié)點分別與現(xiàn)有二叉樹中的節(jié)點進行依次比較,以試圖從現(xiàn)有二叉樹中確定出適合新節(jié)點的添加位置;

具體的,本實施例在將新節(jié)點與現(xiàn)有二叉樹中的任一節(jié)點進行比較的過程中,若新節(jié)點的邏輯結(jié)束地址小于該節(jié)點的邏輯起始地址,則判定該節(jié)點的左分支為新節(jié)點的潛在添加區(qū)域,若新節(jié)點的邏輯起始地址大于該節(jié)點的邏輯結(jié)束地址,則判定該節(jié)點的右分支為新節(jié)點的潛在添加區(qū)域,否則,將該節(jié)點確定為新節(jié)點對應的沖突節(jié)點,并判定新節(jié)點添加失敗。

步驟S24:若上述新節(jié)點添加成功,則判定該新節(jié)點與現(xiàn)有二叉樹中的節(jié)點之間不存在邏輯地址范圍沖突。

步驟S25:若上述新節(jié)點添加失敗,則判定該新節(jié)點與現(xiàn)有二叉樹中的節(jié)點之間存在邏輯地址范圍沖突,然后進入步驟S26。

步驟S26:將新節(jié)點保存至與沖突節(jié)點對應的目標鏈表中。

步驟S27:對沖突節(jié)點對應的數(shù)據(jù)操作命令進行優(yōu)先響應。

步驟S28:若沖突節(jié)點所對應的數(shù)據(jù)操作命令已響應完畢,則將該沖突節(jié)點從現(xiàn)有二叉樹中刪除,得到變更后的二叉樹,然后按照二叉樹構(gòu)造規(guī)則,將上述目標鏈表中保存的節(jié)點遷移至變更后的二叉樹。

例如,假設(shè)現(xiàn)有二叉樹的具體構(gòu)造如圖3所示,如果此時獲取到一個新的數(shù)據(jù)操作命令,該命令對應的邏輯地址范圍從1200至1280,則將該邏輯地址范圍抽象成一個新節(jié)點“1200-1280”,按照上述二叉樹構(gòu)造規(guī)則,可以檢測出上述新節(jié)點“1200-1280”與現(xiàn)有二叉樹中的已有節(jié)點“1200-1300”之間存在邏輯地址范圍沖突,參見圖4所示,此時可以把上述新節(jié)點“1200-1280”保存至已有節(jié)點“1200-1300”對應的目標鏈表中。接著可以對上述已有節(jié)點“1200-1300”對應的數(shù)據(jù)操作命令進行優(yōu)先響應,也即提高其處理優(yōu)先級,當響應結(jié)束后,便可將上述已有節(jié)點“1200-1300”從現(xiàn)有二叉樹中刪除,并按照二叉樹構(gòu)造規(guī)則重新構(gòu)造二叉樹,得到如圖5所示的變更后的二叉樹。緊接著,按照上述二叉樹構(gòu)造規(guī)則,將上述目標鏈表中保存的新節(jié)點“1200-1280”遷移至上述變更后的二叉樹,得到如圖6所示的二叉樹。

本發(fā)明實施例公開了另一種具體的邏輯地址范圍沖突監(jiān)控方法,包括下面步驟:

步驟S31:獲取主機端發(fā)送的數(shù)據(jù)操作命令。

步驟S32:提取每個數(shù)據(jù)操作命令所對應的邏輯地址范圍,并將提取到的邏輯地址范圍抽象成節(jié)點,以得到相應的新節(jié)點。

步驟S33:按照預先基于邏輯地址大小順序設(shè)定的二叉樹構(gòu)造規(guī)則,將新節(jié)點向當前的現(xiàn)有二叉樹中進行添加操作。

本實施例中,上述二叉樹構(gòu)造規(guī)則具體可以包括:

若現(xiàn)有二叉樹中的根節(jié)點還未存在,則將新節(jié)點確定為根節(jié)點,若現(xiàn)有二叉樹中的根節(jié)點已經(jīng)存在,則按照節(jié)點深度由淺至深的順序,將新節(jié)點分別與現(xiàn)有二叉樹中的節(jié)點進行依次比較,以試圖從現(xiàn)有二叉樹中確定出適合新節(jié)點的添加位置;

其中,在將新節(jié)點與現(xiàn)有二叉樹中的任一節(jié)點進行比較的過程中,若新節(jié)點的邏輯結(jié)束地址小于該節(jié)點的邏輯起始地址,則判定該節(jié)點的右分支為新節(jié)點的潛在添加區(qū)域,若新節(jié)點的邏輯起始地址大于該節(jié)點的邏輯結(jié)束地址,則判定該節(jié)點的左分支為新節(jié)點的潛在添加區(qū)域,否則,將該節(jié)點確定為新節(jié)點對應的沖突節(jié)點,并判定新節(jié)點添加失敗。

步驟S34:若上述新節(jié)點添加成功,則判定該新節(jié)點與現(xiàn)有二叉樹中的節(jié)點之間不存在邏輯地址范圍沖突。

步驟S35:若上述新節(jié)點添加失敗,則判定該新節(jié)點與現(xiàn)有二叉樹中的節(jié)點之間存在邏輯地址范圍沖突,然后進入步驟S36。

步驟S36:將新節(jié)點保存至與沖突節(jié)點對應的目標鏈表中。

步驟S37:對沖突節(jié)點對應的數(shù)據(jù)操作命令進行優(yōu)先響應。

步驟S38:沖突節(jié)點所對應的數(shù)據(jù)操作命令已響應完畢,則將該沖突節(jié)點從現(xiàn)有二叉樹中刪除,得到變更后的二叉樹,然后按照二叉樹構(gòu)造規(guī)則,將上述目標鏈表中保存的節(jié)點遷移至變更后的二叉樹。

相應的,本發(fā)明實施例還公開了一種邏輯地址范圍沖突監(jiān)控系統(tǒng),應用于固態(tài)硬盤,參見圖7所示,該系統(tǒng)包括:

命令獲取模塊11,用于獲取主機端發(fā)送的數(shù)據(jù)操作命令;

地址提取模塊12,用于提取每個數(shù)據(jù)操作命令所對應的邏輯地址范圍;

地址抽象模塊13,用于將地址提取模塊13提取到的邏輯地址范圍抽象成節(jié)點,以得到相應的新節(jié)點;

二叉樹構(gòu)造模塊14,用于按照預先基于邏輯地址大小順序設(shè)定的二叉樹構(gòu)造規(guī)則,將新節(jié)點向當前的現(xiàn)有二叉樹中進行添加操作,若添加失敗,則判定該新節(jié)點與現(xiàn)有二叉樹中的節(jié)點之間存在邏輯地址范圍沖突,若添加成功,則判定該新節(jié)點與現(xiàn)有二叉樹中的節(jié)點之間不存在邏輯地址范圍沖突。

具體的,上述二叉樹構(gòu)造模塊所使用的二叉樹構(gòu)造規(guī)則,可以包括:

若現(xiàn)有二叉樹中的根節(jié)點還未存在,則將新節(jié)點確定為根節(jié)點;若現(xiàn)有二叉樹中的根節(jié)點已經(jīng)存在,則按照節(jié)點深度由淺至深的順序,將新節(jié)點分別與現(xiàn)有二叉樹中的節(jié)點進行依次比較,以試圖從現(xiàn)有二叉樹中確定出適合新節(jié)點的添加位置;

其中,在將新節(jié)點與現(xiàn)有二叉樹中的任一節(jié)點進行比較的過程中,若新節(jié)點的邏輯結(jié)束地址小于該節(jié)點的邏輯起始地址,則判定該節(jié)點的左分支為新節(jié)點的潛在添加區(qū)域,若新節(jié)點的邏輯起始地址大于該節(jié)點的邏輯結(jié)束地址,則判定該節(jié)點的右分支為新節(jié)點的潛在添加區(qū)域,否則,將該節(jié)點確定為新節(jié)點對應的沖突節(jié)點,并判定新節(jié)點添加失敗。

進一步的,本發(fā)明實施例中的邏輯地址范圍沖突監(jiān)控系統(tǒng),還可以包括節(jié)點保存模塊、優(yōu)先響應模塊、節(jié)點剔除模塊和節(jié)點遷移模塊;其中,

節(jié)點保存模塊,用于當新節(jié)點添加失敗,則將新節(jié)點保存至與沖突節(jié)點對應的目標鏈表中;

優(yōu)先響應模塊,用于對沖突節(jié)點對應的數(shù)據(jù)操作命令進行優(yōu)先響應;

節(jié)點剔除模塊,用于當沖突節(jié)點所對應的數(shù)據(jù)操作命令已響應完畢,則將該沖突節(jié)點從現(xiàn)有二叉樹中刪除,得到變更后的二叉樹;

節(jié)點遷移模塊,用于按照二叉樹構(gòu)造規(guī)則,將目標鏈表中保存的節(jié)點遷移至變更后的二叉樹。

另外,關(guān)于上述各個模塊更加具體的工作過程可以參考前述實施例中公開的相應內(nèi)容,在此不再進行贅述。

可見,本發(fā)明實施例在獲取到主機端發(fā)送的數(shù)據(jù)操作命令之后,將會提取出每個數(shù)據(jù)操作命令所對應的邏輯地址范圍,然后將提取到的邏輯地址范圍抽象成節(jié)點,然后按照預先基于邏輯地址大小順序來設(shè)定得到的二叉樹構(gòu)造規(guī)則,嘗試將上述經(jīng)過抽象后得到的節(jié)點添加至當前現(xiàn)有二叉樹中,如果能夠添加成功,則可直接判定上述節(jié)點與現(xiàn)有二叉樹中的節(jié)點之間不存在邏輯地址范圍沖突,如果添加失敗,則可直接判定上述節(jié)點與現(xiàn)有二叉樹中的節(jié)點之間存在邏輯地址范圍沖突,由上可見,本發(fā)明實施例將數(shù)據(jù)操作命令所對應的邏輯地址范圍抽象成節(jié)點,然后根據(jù)該節(jié)點是否能夠按照預設(shè)的規(guī)則添加至現(xiàn)有二叉樹中,便可快速地完成邏輯地址范圍沖突檢測,也即,本發(fā)明實施例提高了邏輯地址訪問沖突檢測過程中的檢測效率。

進一步的,本發(fā)明還公開了一種固態(tài)硬盤,包括前述公開的邏輯地址范圍沖突監(jiān)控系統(tǒng)。關(guān)于該系統(tǒng)的具體構(gòu)造可以參考前述實施例中公開的相應內(nèi)容,在此不再進行贅述。

最后,還需要說明的是,在本文中,諸如第一和第二等之類的關(guān)系術(shù)語僅僅用來將一個實體或者操作與另一個實體或操作區(qū)分開來,而不一定要求或者暗示這些實體或操作之間存在任何這種實際的關(guān)系或者順序。而且,術(shù)語“包括”、“包含”或者其任何其他變體意在涵蓋非排他性的包含,從而使得包括一系列要素的過程、方法、物品或者設(shè)備不僅包括那些要素,而且還包括沒有明確列出的其他要素,或者是還包括為這種過程、方法、物品或者設(shè)備所固有的要素。在沒有更多限制的情況下,由語句“包括一個……”限定的要素,并不排除在包括所述要素的過程、方法、物品或者設(shè)備中還存在另外的相同要素。

以上對本發(fā)明所提供的一種固態(tài)硬盤及其邏輯地址范圍沖突監(jiān)控方法、系統(tǒng)進行了詳細介紹,本文中應用了具體個例對本發(fā)明的原理及實施方式進行了闡述,以上實施例的說明只是用于幫助理解本發(fā)明的方法及其核心思想;同時,對于本領(lǐng)域的一般技術(shù)人員,依據(jù)本發(fā)明的思想,在具體實施方式及應用范圍上均會有改變之處,綜上所述,本說明書內(nèi)容不應理解為對本發(fā)明的限制。

當前第1頁1 2 3 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
禄丰县| 阳原县| 卫辉市| 关岭| 盈江县| 西藏| 亚东县| 靖江市| 黑水县| 上高县| 唐河县| 金秀| 临湘市| 台中县| 顺义区| 庄河市| 信阳市| 余庆县| 资兴市| 松滋市| 无极县| 平定县| 六枝特区| 江陵县| 横山县| 平武县| 满城县| 肥西县| 余庆县| 牟定县| 商洛市| 从江县| 漯河市| 拜泉县| 晋江市| 丹东市| 河南省| 鞍山市| 桦南县| 汪清县| 红安县|