一種實(shí)現(xiàn)服務(wù)器硬盤狀態(tài)點(diǎn)燈指示的控制方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及控制技術(shù),尤其涉及一種實(shí)現(xiàn)服務(wù)器硬盤狀態(tài)點(diǎn)燈指示的控制方法。
【背景技術(shù)】
[0002]在現(xiàn)有技術(shù)中,有如下方法可以實(shí)現(xiàn)硬盤狀態(tài)的點(diǎn)燈指示:第一,通過硬盤控制器自身實(shí)現(xiàn),但是當(dāng)前有很多型號(hào)的硬盤不支持該功能;第二,通過簡(jiǎn)單的分立電路來實(shí)現(xiàn),但是這種模式一般只能判斷硬盤是否有接入,不能判斷硬盤是否處于讀寫狀態(tài);第三,使用SGP1總線的數(shù)據(jù)傳輸機(jī)制,由于不同硬盤廠家對(duì)SGP1標(biāo)準(zhǔn)的支持不一致,一些廠家的硬盤不支持SGP1總線協(xié)議;第四,使用復(fù)雜的芯片,盡管該芯片可以實(shí)現(xiàn)硬盤狀態(tài)的指示,但這類芯片的價(jià)格昂貴,成本比較高。另外,以上四種方法均不支持硬盤健康狀態(tài)指示。
【發(fā)明內(nèi)容】
[0003]本發(fā)明所要解決的技術(shù)問題在于:提供一種實(shí)現(xiàn)服務(wù)器硬盤狀態(tài)點(diǎn)燈指示的控制方法,不僅適用面廣、穩(wěn)定可靠、價(jià)格便宜,而且可以全面指示各種硬盤狀態(tài)。
[0004]為解決上述技術(shù)問題,本發(fā)明提出了一種實(shí)現(xiàn)服務(wù)器硬盤狀態(tài)點(diǎn)燈指示的控制方法,包括以下步驟:
[0005]步驟1、通過硬盤檢測(cè)系統(tǒng)定時(shí)讀取南橋芯片上SATA controller上的寄存器來檢測(cè)主板SATA端口是否插入硬盤;
[0006]步驟2、若檢測(cè)到有硬盤接入,則點(diǎn)亮SATA端口對(duì)應(yīng)位置的指示燈;若檢測(cè)到?jīng)]有硬盤接入,則熄滅SATA端口對(duì)應(yīng)位置的指示燈;
[0007]步驟3、在硬盤數(shù)據(jù)讀寫接口模塊中設(shè)置硬盤讀寫標(biāo)志,LED燈控制系統(tǒng)定時(shí)查詢?cè)摌?biāo)志并根據(jù)該標(biāo)志的狀態(tài)控制對(duì)應(yīng)端口硬盤的LED讀寫指示燈;
[0008]步驟4、系統(tǒng)通過定時(shí)執(zhí)行SMART檢測(cè)程序來掃描硬盤的健康狀況,若檢測(cè)到硬盤損壞時(shí),通過報(bào)警器實(shí)現(xiàn)報(bào)警指示。
[0009]進(jìn)一步地,所述報(bào)警器為報(bào)警燈,通過報(bào)警燈的閃爍來實(shí)現(xiàn)報(bào)警指示。
[0010]上述技術(shù)方案至少具有如下有益效果:本發(fā)明系統(tǒng)運(yùn)行穩(wěn)定可靠,價(jià)格便宜,不依賴于特定的硬件系統(tǒng),可以對(duì)服務(wù)器中的每個(gè)硬盤分別進(jìn)行硬盤位置的定位、硬盤讀寫狀態(tài)、健康狀態(tài)的指示,并且可以方便的修改功能。
[0011]上述說明僅是本發(fā)明技術(shù)方案的概述,為了能夠更清楚了解本發(fā)明的技術(shù)手段,而可依照說明書的內(nèi)容予以實(shí)施,并且為了讓本發(fā)明的上述和其他目的、特征和優(yōu)點(diǎn)能夠更明顯易懂,以下特舉較佳實(shí)施例,并詳細(xì)說明如下。
【具體實(shí)施方式】
[0012]需要說明的是,在不沖突的情況下,本申請(qǐng)中的實(shí)施例及實(shí)施例中的特征可以相互組合。下面對(duì)本發(fā)明做進(jìn)一步描述。
[0013]本發(fā)明實(shí)現(xiàn)服務(wù)器硬盤狀態(tài)點(diǎn)燈指示的控制方法包括以下步驟:
[0014]步驟1、通過硬盤檢測(cè)系統(tǒng)定時(shí)讀取南橋芯片上SATA controller上的寄存器來檢測(cè)主板SATA端口是否插入硬盤,比如,當(dāng)portO有硬盤接入時(shí),該寄存器與portO對(duì)應(yīng)的某一位會(huì)由O置成1,同時(shí)將指示對(duì)應(yīng)端口硬盤是否存在的標(biāo)志置I ;否則,當(dāng)portO沒有硬盤接入時(shí),該寄存器與PortO對(duì)應(yīng)的某一位會(huì)由I置成0,同時(shí)將指示對(duì)應(yīng)端口硬盤是否存在的標(biāo)志清零。其他幾個(gè)標(biāo)志也按照相同的處理邏輯進(jìn)行賦值。
[0015]步驟2、若檢測(cè)到有硬盤接入,則點(diǎn)亮SATA端口對(duì)應(yīng)位置的LED指示燈;若檢測(cè)到?jīng)]有硬盤接入,則熄滅SATA端口對(duì)應(yīng)位置的LED指示燈;
[0016]步驟3、在硬盤數(shù)據(jù)讀寫接口模塊中設(shè)置硬盤讀寫標(biāo)志,LED燈控制系統(tǒng)會(huì)定時(shí)查詢?cè)摌?biāo)志并根據(jù)該標(biāo)志的狀態(tài)控制對(duì)應(yīng)端口硬盤的LED讀寫指示燈的亮滅,具體地,由于Linux系統(tǒng)進(jìn)行硬盤數(shù)據(jù)讀寫時(shí)必須要調(diào)用硬盤數(shù)據(jù)讀寫接口模塊同時(shí)需要在該模塊中指定要讀寫硬盤的端口號(hào)(每個(gè)端口只能接一個(gè)硬盤),此時(shí)可以在該模塊中設(shè)置硬盤讀寫標(biāo)志。例如:當(dāng)系統(tǒng)要把數(shù)據(jù)寫到portO對(duì)應(yīng)的硬盤時(shí),在Linux系統(tǒng)讀寫硬盤數(shù)據(jù)接口模塊(一般為ATA驅(qū)動(dòng)模塊)里把portO對(duì)應(yīng)的讀寫標(biāo)志置為1,否則清零。同樣的方式在Linux系統(tǒng)讀寫硬盤數(shù)據(jù)接口模塊里確認(rèn)其他port是否有數(shù)據(jù)讀寫,若有讀寫數(shù)據(jù),則把對(duì)應(yīng)port的硬盤讀寫標(biāo)志置為1,否則清零。而LED燈控制系統(tǒng)工作時(shí),系統(tǒng)初始化時(shí)會(huì)熄滅所有port的硬盤LED讀寫燈,然后系統(tǒng)會(huì)定時(shí)讀取硬盤位置來定位系統(tǒng)中對(duì)應(yīng)端口硬盤是否存在的標(biāo)志,若該標(biāo)志為1,則通過控制相應(yīng)GP1的電平為高點(diǎn)亮對(duì)應(yīng)指示硬盤是否存在的LED指示燈,否則,通過控制相應(yīng)GP1的電平為低,熄滅對(duì)應(yīng)指示硬盤是否存在的LED指示燈;進(jìn)一步地,若port存在接入硬盤,讀取硬盤讀寫標(biāo)志的值,若該標(biāo)志為1,則通過控制GP1的方式來控制對(duì)應(yīng)port指示硬盤是否在讀寫的LED燈進(jìn)行閃爍,否則,控制對(duì)應(yīng)port指示硬盤是否在讀寫的LED燈不閃爍。完成上述處理流程后,該系統(tǒng)會(huì)睡眠一定時(shí)間,然后進(jìn)入該系統(tǒng)重新執(zhí)行上述過程。
[0017]步驟4、系統(tǒng)通過定時(shí)執(zhí)行SMART檢測(cè)程序來掃描硬盤的健康狀況,若檢測(cè)到硬盤損壞時(shí),通過報(bào)警器實(shí)現(xiàn)報(bào)警指示,比如通過報(bào)警燈的閃爍來實(shí)現(xiàn)報(bào)警指示,工作時(shí),定時(shí)執(zhí)行smart命令檢測(cè)掃描所有硬盤,若檢測(cè)結(jié)果為:FAILED,點(diǎn)亮磁盤報(bào)警燈,否則熄滅磁盤報(bào)警燈。
[0018]綜上,本發(fā)明中提到的方法可以適用于所有運(yùn)行Iinux操作系統(tǒng)的服務(wù)器產(chǎn)品中,系統(tǒng)運(yùn)行穩(wěn)定可靠,價(jià)格便宜,不依賴于特定的硬件系統(tǒng),可以對(duì)服務(wù)器中的每個(gè)硬盤分別進(jìn)行硬盤位置的定位、硬盤讀寫狀態(tài)、健康狀態(tài)的指示,并且可以方便的修改功能,比如修改硬盤讀寫狀態(tài)指示燈的閃爍頻率等等。
[0019]以上所述是本發(fā)明的【具體實(shí)施方式】,應(yīng)當(dāng)指出,對(duì)于本技術(shù)領(lǐng)域的普通技術(shù)人員來說,在不脫離本發(fā)明原理的前提下,還可以做出若干改進(jìn)和潤飾,這些改進(jìn)和潤飾也視為本發(fā)明的保護(hù)范圍。
【主權(quán)項(xiàng)】
1.一種實(shí)現(xiàn)服務(wù)器硬盤狀態(tài)點(diǎn)燈指示的控制方法,其特征在于,包括以下步驟: 步驟1、通過硬盤檢測(cè)系統(tǒng)定時(shí)讀取南橋芯片上SATA controller上的寄存器來檢測(cè)主板SATA端口是否插入硬盤; 步驟2、若檢測(cè)到有硬盤接入,則點(diǎn)亮SATA端口對(duì)應(yīng)位置的指示燈;若檢測(cè)到?jīng)]有硬盤接入,則熄滅SATA端口對(duì)應(yīng)位置的指示燈; 步驟3、在硬盤數(shù)據(jù)讀寫接口模塊中設(shè)置硬盤讀寫標(biāo)志,采用LED燈控制系統(tǒng)定時(shí)查詢?cè)摌?biāo)志并根據(jù)該標(biāo)志的狀態(tài)控制對(duì)應(yīng)端口硬盤的LED讀寫指示燈; 步驟4、系統(tǒng)通過定時(shí)執(zhí)行SMART檢測(cè)程序來掃描硬盤的健康狀況,若檢測(cè)到硬盤損壞時(shí),通過報(bào)警器實(shí)現(xiàn)報(bào)警指示。
2.如權(quán)利要求1所述的實(shí)現(xiàn)服務(wù)器硬盤狀態(tài)點(diǎn)燈指示的控制方法,其特征在于,所述報(bào)警器為報(bào)警燈,通過報(bào)警燈的閃爍來實(shí)現(xiàn)報(bào)警指示。
【專利摘要】本發(fā)明公開了一種實(shí)現(xiàn)服務(wù)器硬盤狀態(tài)點(diǎn)燈指示的控制方法,包括步驟1、通過硬盤檢測(cè)系統(tǒng)定時(shí)讀取南橋芯片上SATA controller上的寄存器來檢測(cè)主板SATA端口是否插入硬盤;步驟2、若檢測(cè)到有硬盤接入,則點(diǎn)亮SATA端口對(duì)應(yīng)位置的指示燈;若沒有硬盤接入,則熄滅SATA端口對(duì)應(yīng)位置的指示燈;步驟3、在硬盤數(shù)據(jù)讀寫接口模塊中設(shè)置硬盤讀寫標(biāo)志,采用LED燈控制系統(tǒng)定時(shí)查詢?cè)摌?biāo)志并根據(jù)該標(biāo)志的狀態(tài)控制對(duì)應(yīng)端口硬盤的LED讀寫指示燈;步驟4、系統(tǒng)通過定時(shí)執(zhí)行SMART檢測(cè)程序來掃描硬盤的健康狀況,若檢測(cè)到硬盤損壞時(shí),通過報(bào)警器實(shí)現(xiàn)報(bào)警指示。本發(fā)明不僅適用面廣、穩(wěn)定可靠,而且可以指示各種硬盤狀態(tài)。
【IPC分類】G06F11-32
【公開號(hào)】CN104794043
【申請(qǐng)?zhí)枴緾N201510119669
【發(fā)明人】林坤杰
【申請(qǐng)人】深圳市杰和科技發(fā)展有限公司
【公開日】2015年7月22日
【申請(qǐng)日】2015年3月18日