專(zhuān)利名稱(chēng):熱插拔的外圍裝置識(shí)別系統(tǒng)及其方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種自動(dòng)識(shí)別外圍裝置的系統(tǒng)及其方法,尤其涉及一種利用通用輸入/輸出(GPIO)中斷檢測(cè)外圍裝置,來(lái)執(zhí)行熱插拔的外圍裝置識(shí)別的系統(tǒng)及其方法。
背景技術(shù):
熱插拔功能就是允許用戶在不關(guān)閉系統(tǒng),不切斷電源的情況下取出和更換損壞的硬盤(pán)、電源或板卡等部件,從而提高了系統(tǒng)對(duì)災(zāi)難的及時(shí)恢復(fù)能力、擴(kuò)展性和靈活性等。熱插拔可以節(jié)省計(jì)算機(jī)關(guān)機(jī)重新啟動(dòng)的時(shí)間,還能降低開(kāi)關(guān)機(jī)時(shí)計(jì)算機(jī)啟動(dòng)電流過(guò)大對(duì)硬件造成的沖擊,所以在高級(jí)計(jì)算機(jī)用戶中備受青睞。目前常用的熱插拔有通用串行總線(USB)設(shè)備,通用串行總線(USB)總線已經(jīng)成為個(gè)人計(jì)算機(jī)的標(biāo)準(zhǔn)接口,其驅(qū)動(dòng)程序已經(jīng)標(biāo)準(zhǔn)化,所以在安裝通用串行總線(Universal Serial Bus,USB)設(shè)備時(shí),將其直接插入接口處,系統(tǒng)即可識(shí)別到該設(shè)備,接著用戶不需要額外的手動(dòng)安裝步驟,就可以跟操作本地硬盤(pán)一樣使用。因此通用串行總線(USB)設(shè)備是一種以安裝方便著稱(chēng)的熱插拔。但是通用串行總線(USB)設(shè)備普遍適用于數(shù)據(jù)傳輸量相對(duì)較少、傳輸速率要求慢的普通計(jì)算機(jī),而在那些對(duì)大數(shù)據(jù)量、高負(fù)荷、高速度等有較高要求的服務(wù)器系統(tǒng),通常需安裝小型計(jì)算器系統(tǒng)接口(SCSI)、串行高級(jí)技術(shù)附加裝置接口(SATA)等服務(wù)器硬盤(pán)設(shè)備。高性能服務(wù)器和工作站主要面向執(zhí)行關(guān)鍵任務(wù)且工作負(fù)荷很重的文件服務(wù)器,其負(fù)荷相當(dāng)于50多人在一天24小時(shí)內(nèi)同時(shí)進(jìn)行訪問(wèn),同時(shí)還面向視頻、動(dòng)畫(huà)制作等有高要求的工作站。服務(wù)器硬盤(pán)幾乎是24小時(shí)不停地運(yùn)轉(zhuǎn),承受著巨大的工作量,因此面向上述以連續(xù)工作為目標(biāo)的及時(shí)操作系統(tǒng),其硬盤(pán)設(shè)備需采用熱插拔的設(shè)計(jì)。由先前技術(shù)可知,在操作系統(tǒng)和主板支持的一定情況下,串行高級(jí)技術(shù)附加裝置接口(SATA)與小型計(jì)算器系統(tǒng)接口(SCSI)硬盤(pán)也可以實(shí)現(xiàn)熱插拔的功能。上述熱插拔的硬盤(pán)設(shè)備均可以在系統(tǒng)使用(開(kāi)機(jī))的情況下,隨時(shí)視需要進(jìn)行硬盤(pán)抽換,而不需關(guān)掉整個(gè)系統(tǒng)。
雖然串行高級(jí)技術(shù)附加裝置接口(SATA)與小型計(jì)算器系統(tǒng)接口(SCSI)硬盤(pán)設(shè)備也可以實(shí)現(xiàn)熱插拔的功能,但仍存在一定的局限性一是現(xiàn)有技術(shù)上支持上述硬盤(pán)熱插拔的主板非常有限;二是即使有合適的支持主板,前提也必須需要用戶進(jìn)行手動(dòng)的硬盤(pán)掃描,直至檢測(cè)到所安裝的硬盤(pán)才可以實(shí)現(xiàn)上述外接硬盤(pán)裝置的熱插拔,將硬盤(pán)增加或者從系統(tǒng)中移出。否則系統(tǒng)會(huì)提示找不到硬盤(pán),這就增加了用戶的負(fù)擔(dān),還增加了用戶操作失誤導(dǎo)致的風(fēng)險(xiǎn),因此對(duì)上述裝置熱插拔功能的實(shí)現(xiàn)和使用帶來(lái)一定的不便。如何在操作系統(tǒng)與熱插拔硬盤(pán)設(shè)備掃描之間建立一個(gè)聯(lián)系的管道,自動(dòng)實(shí)現(xiàn)對(duì)熱插拔硬盤(pán)設(shè)備的識(shí)別,無(wú)需用戶干預(yù)而隨意使用熱插拔硬盤(pán)設(shè)備,遂成為一業(yè)界急待解決的問(wèn)題。
發(fā)明內(nèi)容
鑒于以上的問(wèn)題,本發(fā)明的主要目的在于提供一種熱插拔的外圍裝置識(shí)別方法,無(wú)需用戶干預(yù)而自動(dòng)且方便地實(shí)現(xiàn)對(duì)該熱插拔硬盤(pán)設(shè)備的識(shí)別,以解決先前技術(shù)所帶來(lái)的問(wèn)題。
因此,為達(dá)成上述目的,本發(fā)明所揭示的熱插拔的外圍裝置識(shí)別方法,應(yīng)用于執(zhí)行操作系統(tǒng)的服務(wù)器上,服務(wù)器具有可連接多個(gè)外圍裝置的插槽,方法包含下列步驟設(shè)置連接于插槽的一中斷響應(yīng)單元;當(dāng)外圍裝置連接或脫離插槽時(shí),中斷響應(yīng)單元發(fā)出中斷信號(hào);根據(jù)中斷信號(hào)監(jiān)測(cè)插槽的當(dāng)前外圍裝置狀態(tài);以及根據(jù)監(jiān)測(cè)結(jié)果通知執(zhí)行掃描程序,以識(shí)別外圍裝置。此外,該方法更包括有記錄外圍裝置的狀態(tài)信息到系統(tǒng)日志中的步驟。其中,中斷響應(yīng)單元可以是通用輸入/輸出(GPIO)芯片。
本發(fā)明由于在操作系統(tǒng)與熱插拔外圍裝置的插槽之間設(shè)置了中斷響應(yīng)單元,從而使得操作系統(tǒng)可以及時(shí)了解到熱插拔外圍裝置的插入和移除動(dòng)作,選取并執(zhí)行外圍裝置所需的掃描程序,使操作系統(tǒng)得以自動(dòng)識(shí)別插熱拔外圍裝置。而且選取通用輸入/輸出芯片作為中斷響應(yīng)單元,不僅可以快速產(chǎn)生中斷信號(hào),并能對(duì)當(dāng)前插槽中是否存在外圍設(shè)備進(jìn)行記錄。
此外,將中斷響應(yīng)單元系設(shè)置于背板中,從而可實(shí)現(xiàn)背板對(duì)外圍裝置存在連接或脫離該插槽動(dòng)作時(shí),給予相應(yīng)的電路保護(hù)。
本發(fā)明還提供一種熱插拔的外圍裝置識(shí)別系統(tǒng),用于一服務(wù)器上,該服務(wù)器具有可連接多個(gè)外圍裝置的多個(gè)插槽,該系統(tǒng)包含有一中斷響應(yīng)單元,連接于該插槽中,用以當(dāng)該外圍裝置連接或脫離該插槽時(shí)發(fā)出一中斷信號(hào);一外圍裝置監(jiān)測(cè)單元,用以根據(jù)該中斷信號(hào)實(shí)現(xiàn)該插槽的當(dāng)前外圍裝置狀態(tài)監(jiān)測(cè);以及一外圍裝置服務(wù)單元,用以根據(jù)監(jiān)測(cè)結(jié)果通知執(zhí)行一掃描程序,以識(shí)別該外圍裝置。
有關(guān)本發(fā)明的特征與實(shí)作,茲配合附圖作最佳實(shí)施例詳細(xì)說(shuō)明如下。
圖1為本發(fā)明的熱插拔的外圍裝置識(shí)別方法流程圖;圖2為本發(fā)明的熱插拔的外圍裝置識(shí)別系統(tǒng)構(gòu)架圖;以及圖3為本發(fā)明的熱插拔的外圍裝置識(shí)別方法及系統(tǒng)的通用輸入/輸出(GPIO)晶體的針腳定義圖。
其中,附圖標(biāo)記說(shuō)明如下步驟101 設(shè)置連接于該插槽的一中斷響應(yīng)單元步驟102 當(dāng)該外圍裝置連接或脫離該插槽時(shí),該中斷響應(yīng)單元發(fā)出一中斷信號(hào)步驟103 根據(jù)該中斷信號(hào)監(jiān)測(cè)該插槽的當(dāng)前硬盤(pán)狀態(tài)步驟104 根據(jù)監(jiān)測(cè)結(jié)果通知執(zhí)行一掃描程序,以識(shí)別該外圍裝置步驟105 記錄該外圍裝置的狀態(tài)信息到一系統(tǒng)日志中201 插槽 202 背板203 中斷響應(yīng)單元 204 外圍裝置監(jiān)測(cè)單元205 外圍裝置服務(wù)單元 206 操作系統(tǒng)內(nèi)核207 系統(tǒng)日志 208 系統(tǒng)主板具體實(shí)施方式
本發(fā)明提供一種熱插拔的外圍裝置識(shí)別系統(tǒng)及其方法,通過(guò)在系統(tǒng)主板208與熱插拔外圍裝置的插槽201之間設(shè)置了一中斷響應(yīng)單元203,從而使得操作系統(tǒng)可以及時(shí)了解到熱插拔外圍裝置的插入和移除動(dòng)作,并在操作系統(tǒng)內(nèi)核中驅(qū)動(dòng)掃描程序,以自動(dòng)識(shí)別該熱插拔外圍裝置。如圖1所示,首先設(shè)置連接于插槽的一中斷響應(yīng)單元(步驟101);當(dāng)外圍裝置連接或脫離插槽時(shí),中斷響應(yīng)單元發(fā)出中斷信號(hào)(步驟102);根據(jù)中斷信號(hào)監(jiān)測(cè)插槽的當(dāng)前外圍裝置狀態(tài)(步驟103);根據(jù)監(jiān)測(cè)結(jié)果通知執(zhí)行掃描程序,以識(shí)別外圍裝置(步驟104);以及記錄外圍裝置的狀態(tài)信息到一系統(tǒng)日志中(步驟105)。
下面結(jié)合圖2本發(fā)明所述熱插拔的外圍裝置識(shí)別系統(tǒng),詳細(xì)描述上述的熱插拔的外圍裝置識(shí)別方法。如圖2所示,中斷響應(yīng)單元203連接到多個(gè)插槽201和系統(tǒng)主板208之間,其中響應(yīng)單元203設(shè)置在背板202中,背板可實(shí)現(xiàn)熱插拔時(shí)相應(yīng)的電路保護(hù)。這里響應(yīng)單元203用于記錄當(dāng)前每個(gè)熱插拔插槽中是否有外圍裝置存在,并且在有熱插拔外圍裝置動(dòng)作時(shí),產(chǎn)生中斷信號(hào)通知系統(tǒng)主板208。系統(tǒng)主板208中設(shè)置有一外圍裝置監(jiān)測(cè)單元204、外圍裝置服務(wù)單元205和操作系統(tǒng)206。當(dāng)用戶從插槽中插入或移除一熱插拔外圍裝置后,通用輸入/輸出發(fā)出中斷信號(hào),通知系統(tǒng)主板208中的外圍裝置監(jiān)測(cè)單元204,則外圍裝置監(jiān)測(cè)單元204開(kāi)始進(jìn)行處理,主要對(duì)當(dāng)前外圍裝置狀態(tài)進(jìn)行監(jiān)測(cè)。監(jiān)測(cè)操作包括兩部分,一是檢測(cè)當(dāng)前插槽上是否有外圍裝置存在;二是監(jiān)控外圍裝置插拔動(dòng)作,并及時(shí)將監(jiān)測(cè)的當(dāng)前外圍裝置狀態(tài)信息通知外圍裝置服務(wù)單元205。外圍裝置服務(wù)單元205在獲取到外圍裝置監(jiān)測(cè)單元204的通知后,通知操作系統(tǒng)執(zhí)行掃描程序,以識(shí)別外圍裝置。并且把當(dāng)前外圍裝置狀態(tài)信息記錄到系統(tǒng)日志中。
圖3為本發(fā)明的熱插拔的外圍裝置識(shí)別方法及系統(tǒng)的通用輸入/輸出晶體的針腳定義圖。這里選用的插槽個(gè)數(shù)為6個(gè),通用輸入/輸出采用83601芯片,支持6塊熱插拔外圍裝置。該83601通用輸入/輸出芯片包括偏移地址為0、8、10和11的寄存器,Bit0-Bit7表示寄存器位信息,但應(yīng)當(dāng)了解本發(fā)明并不限于該實(shí)施例。其中各個(gè)針腳定義如下HD#x表示插槽x當(dāng)前外圍裝置存在(x1,2,......6),1表示外圍裝置存在;#x int表示插槽x有外圍裝置插拔動(dòng)作(x1,2,......6),1表示有插拔動(dòng)作;(n/a)字符串表示沒(méi)有功能定義。下面針對(duì)一熱插拔外圍裝置的移除動(dòng)作對(duì)本發(fā)明的熱插拔的外圍裝置識(shí)別方法工作過(guò)程進(jìn)行描述。當(dāng)用戶從插槽6拔掉熱插拔外圍裝置后,通用輸入/輸出203產(chǎn)生中斷,將中斷信號(hào)傳送到外圍裝置監(jiān)測(cè)單元204,則外圍裝置監(jiān)測(cè)單元204開(kāi)始進(jìn)行監(jiān)測(cè)。首先外圍裝置監(jiān)測(cè)單元204查看83601寄存器10(301)&11(304),判斷插槽6所連接的外圍裝置是否有插拔動(dòng)作,發(fā)現(xiàn)#6int(303)信號(hào)為1,即存在插拔動(dòng)作;然后查看寄存器8第5位(Bit5)(304),發(fā)現(xiàn)當(dāng)前外圍裝置不存在。外圍裝置監(jiān)測(cè)單元204將獲取的關(guān)于6號(hào)外圍裝置被移除的中斷信息通知給外圍裝置服務(wù)單元205。外圍裝置服務(wù)單元205將收到的關(guān)于6號(hào)外圍裝置被移除的信息通知操作系統(tǒng),則操作系統(tǒng)在其內(nèi)核中執(zhí)行掃描程序,以識(shí)別該外圍裝置。并且將移除信息記錄到系統(tǒng)日志中。
雖然本發(fā)明以前述的較佳實(shí)施例揭示如上,然而其并非用以限定本發(fā)明,任何本領(lǐng)域技術(shù)人員,在不脫離本發(fā)明的精神和范圍內(nèi),當(dāng)可作一些更動(dòng)與潤(rùn)飾。
權(quán)利要求
1.一種熱插拔的外圍裝置識(shí)別方法,應(yīng)用于執(zhí)行一操作系統(tǒng)的一服務(wù)器上,該服務(wù)器具有可連接多個(gè)外圍裝置的多個(gè)插槽,該方法包含下列步驟設(shè)置連接于該插槽的一中斷響應(yīng)單元;當(dāng)該外圍裝置連接或脫離該插槽時(shí),該中斷響應(yīng)單元發(fā)出一中斷信號(hào);根據(jù)該中斷信號(hào)監(jiān)測(cè)該插槽的當(dāng)前外圍裝置狀態(tài);以及根據(jù)監(jiān)測(cè)結(jié)果通知執(zhí)行一掃描程序,以識(shí)別該外圍裝置。
2.根據(jù)權(quán)利要求1所述的熱插拔的外圍裝置識(shí)別方法,其中執(zhí)行該掃描程序的步驟是在該操作系統(tǒng)的內(nèi)核中完成。
3.根據(jù)權(quán)利要求1所述的熱插拔的外圍裝置識(shí)別方法,其中該中斷響應(yīng)單元是一通用輸入/輸出芯片。
4.根據(jù)權(quán)利要求1所述的熱插拔的外圍裝置識(shí)別方法,其中該中斷響應(yīng)單元設(shè)置于一背板中,以實(shí)現(xiàn)該外圍裝置連接或脫離該插槽時(shí)相應(yīng)的電路保護(hù)。
5.根據(jù)權(quán)利要求3所述的熱插拔的外圍裝置識(shí)別方法,其中該通用輸入/輸出芯片設(shè)置于一背板中,以實(shí)現(xiàn)該外圍裝置連接或脫離該插槽時(shí)相應(yīng)的電路保護(hù)。
6.根據(jù)權(quán)利要求1所述的熱插拔的外圍裝置識(shí)別方法,更包括有記錄該外圍裝置的狀態(tài)信息到一系統(tǒng)日志中。
7.一種熱插拔的外圍裝置識(shí)別系統(tǒng),用于一服務(wù)器上,該服務(wù)器具有可連接多個(gè)外圍裝置的多個(gè)插槽,該系統(tǒng)包含有一中斷響應(yīng)單元,連接于該插槽中,用以當(dāng)該外圍裝置連接或脫離該插槽時(shí)發(fā)出一中斷信號(hào);一外圍裝置監(jiān)測(cè)單元,用以根據(jù)該中斷信號(hào)實(shí)現(xiàn)該插槽的當(dāng)前外圍裝置狀態(tài)監(jiān)測(cè);以及一外圍裝置服務(wù)單元,用以根據(jù)監(jiān)測(cè)結(jié)果通知執(zhí)行一掃描程序,以識(shí)別該外圍裝置。
8.根據(jù)權(quán)利要求7所述的熱插拔的外圍裝置識(shí)別系統(tǒng),其中該掃描程序位于一操作系統(tǒng)內(nèi)核中。
9.根據(jù)權(quán)利要求7所述的熱插拔的外圍裝置識(shí)別系統(tǒng),其中該中斷響應(yīng)單元是一通用輸入/輸出芯片。
10.根據(jù)權(quán)利要求7所述的熱插拔的外圍裝置識(shí)別系統(tǒng),其中該中斷響應(yīng)單元設(shè)置于一背板中,以實(shí)現(xiàn)該外圍裝置連接或脫離該插槽時(shí)相應(yīng)的電路保護(hù)。
11.根據(jù)權(quán)利要求9所述的熱插拔的外圍裝置識(shí)別系統(tǒng),其中該通用輸入/輸出芯片設(shè)置于一背板中,以實(shí)現(xiàn)該外圍裝置連接或脫離該插槽時(shí)相應(yīng)的電路保護(hù)。
12.根據(jù)權(quán)利要求7所述的熱插拔的外圍裝置識(shí)別系統(tǒng),更包括有一系統(tǒng)日志,用以記錄該外圍裝置的狀態(tài)信息。
全文摘要
本發(fā)明涉及一種熱插拔的外圍裝置識(shí)別系統(tǒng)及其方法,應(yīng)用于執(zhí)行操作系統(tǒng)的服務(wù)器上,服務(wù)器具有可連接外圍裝置的插槽。首先設(shè)置連接于插槽的一中斷響應(yīng)單元;當(dāng)外圍裝置連接或脫離插槽時(shí),中斷響應(yīng)單元發(fā)出中斷信號(hào);根據(jù)中斷信號(hào)監(jiān)測(cè)插槽的當(dāng)前外圍裝置狀態(tài);以及根據(jù)監(jiān)測(cè)結(jié)果通知執(zhí)行掃描程序,以識(shí)別外圍裝置。
文檔編號(hào)G06F13/24GK1873632SQ20051007554
公開(kāi)日2006年12月6日 申請(qǐng)日期2005年6月3日 優(yōu)先權(quán)日2005年6月3日
發(fā)明者王震, 陳玄同, 劉文涵 申請(qǐng)人:英業(yè)達(dá)股份有限公司