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

一種防止非法程序在計算機系統(tǒng)運行的方法及其系統(tǒng)的制作方法

文檔序號:6551629閱讀:214來源:國知局
專利名稱:一種防止非法程序在計算機系統(tǒng)運行的方法及其系統(tǒng)的制作方法
技術領域
本發(fā)明涉及計算機安全領域,尤其是涉及計算機本地化來防止非法程序在計算機系統(tǒng)運行的方法及系統(tǒng)。
背景技術
隨著計算技術的發(fā)展,計算機越來越多地進入普通人的生活中,計算安全與安全計算也日益受到人們的重視。
隨著因特網的日益普及,越來越多的計算機接入網絡,使得孤立運行的計算機越來越少。這些計算機互相連接,可以方便地彼此交換數(shù)據(jù)。
不接入因特網的計算機也不是孤立存在的,這些計算機大多通過光盤、磁盤獲得外部數(shù)據(jù)。事實上,幾乎所有的計算機都需要與外部進行數(shù)據(jù)交換,能夠方便的進行數(shù)據(jù)交換也是計算機獲得廣泛應用的重要原因。
然而,進行數(shù)據(jù)交換時,也不可避免的帶來安全隱患。這是由于,數(shù)據(jù)交換過程中,可能會有非法程序趁機入侵計算機系統(tǒng)。其中一些非法程序會在計算機中運行,占用系統(tǒng)資源,甚而破壞計算機系統(tǒng)。
目前,對計算機系統(tǒng)危害最大的是黑客入侵和病毒感染。
黑客入侵是指以達到某種目的,從一臺計算機非法的進入另一臺計算機所從事的一系列操作的總和。黑客入侵目標計算機時,目標計算機用戶一般沒有察覺,黑客進入目標計算機后,會對該機進行非法的操作。
病毒是一種具有特殊目的程序,可通過網絡等數(shù)據(jù)交換途徑進入其它計算機。當滿足程序觸發(fā)條件后,病毒程序執(zhí)行特定的操作。
病毒感染的特征是首先,感染的目標計算機不是預先設定的;其次,感染病毒的計算機必須滿足一定條件才能觸發(fā)。
在應對黑客入侵和病毒感染方面,已經采用了多種的技術措施,但是,這些措施都未能徹底阻止黑客入侵,以及遏制病毒感染。這是由于,目前所采取的技術措施基本上屬于被動防守。比如在對付黑客入侵方面,基本上是針對先前黑客采用的入侵方式;在查殺電腦病毒方面,基本上是針對已有的電腦病毒,這樣就使入侵者處于主動的地位。層出不窮的新的黑客入侵手段和新病毒,使計算機系統(tǒng)不斷受到破壞和干擾。
病毒和黑客之所以可以如此肆虐,一個基本的條件是計算機程序的可移植性。
所謂可移植性,是指在一臺計算機編制、運行的程序,可以在另一臺計算機上運行。正是由于具有可移植性,才使在一個計算機系統(tǒng)上編制、運行的程序可被其它計算機共享。所以,良好的可移植性是對計算機程序的一個基本要求。
為使計算機程序具有可移植性,計算機的硬件、軟件都應有相同的標準。從具有相同的運行環(huán)境的角度而言,也可以說計算機兼容。
目前,大多數(shù)臺式、筆記本式計算機都采用視窗操作系統(tǒng)和英特爾處理器。這就使這些計算機具有良好的兼容性,從而保證了程序的可移植性,使得在某臺計算機上編制的程序可以不經任何修改就能夠在其它計算機上運行。
然而,正是由于計算機系統(tǒng)之間良好的兼容性,使惡意的程序編制者對通用的計算機環(huán)境可以作充分的研究,并編制出運行于上述通用計算機系統(tǒng)的黑客、病毒程序,從而對這些計算機系統(tǒng)造成損害。
相反,對于特殊化的計算機系統(tǒng),一般的作用于通用計算機系統(tǒng)的黑客程序、病毒程序無法在這些系統(tǒng)中運行,也就不可能對其造成破壞。
因此,使用特殊化的計算機系統(tǒng),就可以免受黑客程序、病毒程序的惡意入侵。
然而,特殊化的計算機系統(tǒng)不具有通用性。因此,在其它計算機上編制的程序無法在其上運行。使用這種計算機系統(tǒng),難以分享其他人的智力成果,降低計算機系統(tǒng)的使用價值。

發(fā)明內容
針對上述問題,本發(fā)明解決的技術問題在于提供一種防止非法程序在計算機系統(tǒng)運行的方法及其系統(tǒng),可以使作用于通用計算機系統(tǒng)的黑客、病毒程序無法運行,也就不可能對其造成破壞。同時,根據(jù)通用計算機系統(tǒng)編制的程序,又能夠在進行簡單的變換之后,在該計算機系統(tǒng)上運行。
根據(jù)以上原理,本發(fā)明提供的技術方案的基本思路是對計算機中央處理單元中的寄存器更名,從而建立與通用計算機系統(tǒng)不同的本地計算機系統(tǒng)。當需要運行通用計算機程序時,可以將該程序中使用的寄存器名對應的換名為該本地計算機使用的專有寄存器名,從而在該計算機系統(tǒng)上運行。
根據(jù)上述思路,本發(fā)明的具體技術方案是包括步驟11)將本地計算機系統(tǒng)中央處理單元的寄存器名稱由通用寄存器名更名為本地計算機系統(tǒng)的專有寄存器名;12)通用計算機程序在該計算機系統(tǒng)上運行時,將該計算機程序指令中的通用寄存器名換名為該本地計算機系統(tǒng)的專有寄存器名。
優(yōu)選地,所述步驟11)的更名具體是改變寄存器尋址邏輯電路。
優(yōu)選地,所述改變寄存器尋址邏輯電路具體是設置更名線,并將該更名線與原通用寄存器地址線進行邏輯運算,選定所述寄存器。
優(yōu)選地,所述步驟12)具體包括41)接收授權信息;42)根據(jù)所述授權信息,輸出換名信息;43)依據(jù)所述換名信息,進行所述的換名。
優(yōu)選地,所述本地計算機系統(tǒng)向外部發(fā)送通訊信息時,將通訊內容中包含的該本地計算機系統(tǒng)專有寄存器名逆換名為通用寄存器名。
本發(fā)明同時提供一種防止程序在計算機系統(tǒng)非法運行的系統(tǒng),包括更名單元,用于將本地計算機系統(tǒng)中央處理單元的寄存器名稱由通用寄存器名更名為本地計算機系統(tǒng)的專有寄存器名;換名單元,用于運行通用計算機程序時,根據(jù)更名單元的更名方式獲得的換名信息,將該計算機程序指令中的通用寄存器名換名為該本地計算機系統(tǒng)的專有寄存器名;逆更名單元,用于所述本地計算機系統(tǒng)向外部發(fā)送通信信息時,將該本地計算機系統(tǒng)的專有寄存器名逆更名為通用寄存器名。
優(yōu)選地,所述更名單元包括寄存器更名線及邏輯門,所述寄存器更名線與原寄存器地址線通過邏輯門進行邏輯運算,輸出寄存器選擇信號。
優(yōu)選地,該系統(tǒng)進一步包括授權單元,用于接收授權信息,判斷程序是否獲得授權;當程序獲得授權時,輸出換名信息至換名單元。
相對于現(xiàn)有技術,本發(fā)明具有如下有益效果首先,本發(fā)明提供的防止非法程序在計算機上運行的方法具有主動性。本發(fā)明提供的方法通過對通用計算機中的寄存器更名,建立與通用計算機不同的本地化運行環(huán)境,使所有作用于通用計算機環(huán)境的計算機病毒、黑客程序無法作用于該機。而目前的防病毒、黑客入侵的方法,都是針對已出現(xiàn)的病毒、黑客入侵程序,根據(jù)其具體程序采取相應措施的被動方法。
其次,本發(fā)明提供的方法具有廣譜性。本發(fā)明提供的方法可以防范所有作用于通用計算機系統(tǒng)的病毒、黑客程序,而不是針對其中某一種;本方法也無需為新出現(xiàn)的病毒、黑客程序做任何升級或改變。而現(xiàn)有技術要針對每一種入侵方法采取具體的應對措施,對于新出現(xiàn)的入侵方式一般要進行升級或改變。
最后,本發(fā)明提供的方法具有簡易性。本方法只需對寄存器名進行簡單的變換,即可實現(xiàn)防病毒、黑客程序的目的。而現(xiàn)有技術的防病毒、黑客入侵方法都比較復雜。


圖1是典型的8位CPU的結構框圖;圖2是英特爾8086內部的寄存器單元;圖3是高級語言被編譯成目標代碼的過程;圖4是同一程序在不同計算機上運行的情況;圖5是本發(fā)明實施例流程圖;圖6是本發(fā)明實施例框圖;圖7是通用寄存器的邏輯電路圖;圖8是更名后的CPU中寄存器的邏輯電路圖;
圖9是本發(fā)明實施例更名計算機對通用程序中的寄存器名進行換名的流程圖;圖10為本發(fā)明實施例更名計算機與外部通訊時的逆更名過程的流程圖。
具體實施例方式
為說明本發(fā)明技術方案的原理,這里首先介紹計算機的核心部件中央處理單元(CPU)的運行原理。
圖1示出典型的8位CPU的結構框圖。
在計算機系統(tǒng)中,CPU由算術邏輯運算單元(ALU)和一組寄存器(Registers)組成。
算術邏輯運算單元,在CPU中用于執(zhí)行算術運算(如加、減、乘、除等)以及邏輯運算(如AND、OR、NOT等),能對內存單元或輸入單元送至中央處理單元的資料執(zhí)行各種運算。當運算完成后再由控制單元將結果資料送至內存單元或輸出單元。
由于ALU只有處理數(shù)據(jù)的能力,沒有保存數(shù)據(jù)的能力,而進行算術邏輯運算中不可避免地產生各種中間結果需要存儲,所以CPU中必須有用于存儲這些中間數(shù)據(jù)的存儲元件,也就是寄存器。因此,寄存器是CPU不可缺少的組成部分。
圖2示出美國英特爾公司生產的CPU芯片英特爾8086內部的寄存器單元。
該CPU內部設有通用寄存器、控制寄存器、段寄存器三類寄存器。其中,通用寄存器又分為數(shù)據(jù)寄存器、指針寄存器、變址寄存器。從用途上說來,這些寄存器的主要作用是暫存數(shù)據(jù)、計算地址、保存運算狀態(tài)。
運行任何計算機程序都需要使用寄存器。計算機程序雖然大多以高級程序語言編寫,但最終都是以機器語言的形式在計算機系統(tǒng)上運行,高級語言編寫的程序必須翻譯成機器語言程序。機器語言程序通常被稱為目標程序,它實際上是由一系列二進制碼組成的目標代碼。機器語言程序包含一系列的目標代碼,每個目標代碼不僅說明需要執(zhí)行的具體操作,而且指出需要存取數(shù)據(jù)的寄存器。
圖3示出高級語言被編譯成目標代碼的過程。
程序要執(zhí)行,不管是正常的程序,還是惡意的程序,都必須以上述目標代碼執(zhí)行。每種計算機都有自己的機器語言,機器語言不具有可移植性。一個可執(zhí)行的機器語言目標代碼,如果希望在兩臺計算機上均可以運行,那么兩臺計算機必須完全兼容。
圖4示出同一程序在不同計算機上運行的情況。
程序1在結構相同的計算機甲和計算機乙上,可以無障礙地運行。程序1在結構不同的計算機甲和計算機乙上,無法運行。為了使計算機乙可以運行程序1,必須在計算機乙與程序1之間運行計算機甲仿真程序。如果沒有仿真程序,不同結構的計算機無法運行彼此的程序。
由于機器語言不便記憶,為了克服機器語言的這一缺點,人們采用助記符表示機器指令,這樣就形成了匯編語言。匯編語言的特點是它是一種用助記符號書寫的語言,易于被使用者理解。同時,其基本操作指令直接對應于機器語言指令。比如匯編語言語句MOV AX,3這一語句表示將數(shù)據(jù)3放入寄存器AX。
該命令的目標代碼是10111000 0000010100000000該目標代碼前8位是機器語言指令,其它部分分別表示數(shù)據(jù),以及存放該數(shù)據(jù)的寄存器。
因此,從匯編語言中,可以直觀地看出程序在計算機系統(tǒng)運行時,使用寄存器的情況。
請看下面的一段可在Intel 8086上運行的匯編程序。
DATASEGMENTSTRDB 0DH,0AH,‘Example of string display!$’DATA ENDSSTACK SEGMENTSTACKDB100DUP(0)
STACK ENDSCODE SEGMENTASSUME DSDATA,CSCODE,SSSTACKBEGINMOV AX,DATAMOV DS,AXLEA DX,STRMOV AH,9INT 21HCODE ENDSEND BEGIN這是向屏幕顯示字符串“Example of string display!”的一個小程序??梢钥吹皆搮R編程序中,使用了許多寄存器。
如上所述,由于所有的程序都要使用寄存器,因此,通過改變通用計算機的寄存器名,可以根本改變計算機程序的運行環(huán)境,從而使該計算機具有與通用計算機不同的結構,為通用計算機編制的程序無法在該機上運行。同樣,根據(jù)通用計算機編制的病毒、黑客程序無法入侵此種計算機。所述改變通用寄存器名,其實質是改變寄存器的尋址信息,或者說改變通用寄存器的地址。
以8086為例,當寄存器AX,BX,CX,DX的物理地址變?yōu)榇aAXW,BXW,CXW,DXW則計算機結構發(fā)生改變,原來使用AX,BX,CX,DX的程序是無法運行的。
同時,可以方便的將在通用計算機上運行的程序指令中的寄存器名換名為更名后的寄存器名,從而使通用計算機程序在該機上運行。
這樣,只需對上述程序指令的寄存器名換名過程進行控制,只允許合法的計算機程序可以獲得如何換名的信息,就可以使該更名的計算機系統(tǒng)可以運行通用計算機程序。同時,黑客、病毒等非法程序由于無法獲得換名信息而無法在該計算機系統(tǒng)上運行。
下面結合附圖,對本發(fā)明的具體實施方式
作詳細地說明。
請參見圖5,該圖為本發(fā)明實施例流程圖。
本發(fā)明提供的防止非法程序在計算機系統(tǒng)上運行的方法包括兩個方面
首先,將本地計算機系統(tǒng)寄存器的名稱由通用寄存器名更名為本地計算機系統(tǒng)的專有寄存器名;其次,當通用計算機程序在該計算機系統(tǒng)上運行時,將該計算機程序指令中的通用寄存器名換名為該本地計算機系統(tǒng)的專有寄存器名。
圖6示出本發(fā)明實施例系統(tǒng)框圖。該系統(tǒng)在通用計算機系統(tǒng)的CPU基礎上還包括更名單元、換名單元、逆換名單元、授權單元。
其中,寄存器更名單元在該計算機系統(tǒng)CPU內部,用于將通用寄存器名轉換為更名寄存器名用于該CPU。經過更名后,該CPU的寄存器單元具有與通用CPU不同的識別信息,即不同的名稱。但該CPU的寄存器實體并未改變。
其中寄存器更名信息用于決定寄存器更名單元如何將通用寄存器名更名,即將何種不同于通用寄存器的尋址信息加在該寄存器上。
設原通用寄存器名為AX,更名后寄存器名為AXW,加于所述寄存器的新的尋址信息可以表示為KEY,則通用寄存器名與更名寄存器名的關系可以表示為AX=KEY(AXW)。
寄存器換名單元位于所述CPU外部。
該單元作用在于,根據(jù)授權,及與更名信息KEY對應的換名信息KEY′,將外部通用計算機程序中的寄存器名換名為所述該計算機系統(tǒng)的更名寄存器名。
上述轉化過程可以表示為AXW=KEY′(AX)。
經過上述轉化后,外部通用程序即可在該寄存器更名計算機上執(zhí)行。
授權單元用于判斷計算機程序是否為合法的程序,如為合法程序,則提供換名信息KEY′至換名單元,授權換名單元對該程序指令中的寄存器名進行換名;如為非法程序,則不提供換名信息,程序指令中的寄存器無法正確換名,該程序無法在該計算機系統(tǒng)上運行。
逆換名單元位于CPU外部。
該單元作用在于,當本地計算機系統(tǒng)與外部通訊時,通過該單元將通訊內容中使用的更名寄存器名逆換名為通用寄存器名,以實現(xiàn)與其它計算機的溝通。
應當說明,上述更名單元、換名單元、逆換名單元位于計算機系統(tǒng)CPU內部或外部只是相對的。實際上,上述單元可以均位于CPU芯片的外部,也可均位于CPU芯片內部,但更名單元接近于寄存器,并且該CPU是以更名后的寄存器名尋址該寄存器的。
所述與寄存器緊密聯(lián)系的更名單元的意義在于使所述該CPU的本地化寄存器與通用寄存器在實體上對應,只是尋址信息不同。
為具體說明所述更名單元如何實現(xiàn),下面給出一具體實現(xiàn)寄存器更名單元的邏輯電路圖。
圖7示出通用寄存器的邏輯電路圖。
圖中,D1…Dn是數(shù)據(jù)線,nWR是寫入信號,ADD0與ADD1是地址線。在該電路中,當?shù)刂肪€ADD0與ADD1同時為1時,如果有nWR的寫入信號,那么D1…Dn的數(shù)據(jù)就能夠進入寄存器。
圖8示出更名后的CPU中寄存器的邏輯電路圖。
圖中,地址線ADD0與ADD1分別有寄存器更名線KEY0與KEY1通過非門相與。經過這一處理后,地址線ADD0與ADD1同時為1時,如果同時有nWR的寫入信號,但KEY0與KEY1有一根的輸入為1,D1…Dn的數(shù)據(jù)也不能進入寄存器。要使D1…Dn的數(shù)據(jù)進入寄存器,必須同時KEY0與KEY1皆為0。
以上只是寄存器更名的一種方式,還可以采取其它方式對寄存器更名。只要使寄存器具有與通用寄存器不同的選址方式,就可實現(xiàn)該計算機系統(tǒng)的本地化。
同樣,相應的換名單元也可采取與上述相似邏輯電路方法,或者用軟件方法實現(xiàn)。
圖9示出本發(fā)明實施例本地計算機運行通用計算機程序時對程序中的寄存器名進行換名的流程圖。
步驟S91,開始執(zhí)行通用程序。
所述通用程序已經編譯為機器語言的計算機程序,可以供計算機系統(tǒng)直接讀取并執(zhí)行。
步驟S92,讀取通用程序的指令。
步驟S93,識別通用程序指令中的寄存器代碼。
步驟S84,判斷通用程序指令中是否有寄存器代碼。如果有,則進入步驟S95;如果否,則進入步驟S96。
步驟S95,通過寄存器換名單元,用所述換名信息KEY′對通用程序指令中的寄存器代碼進行換名。
經過上述換名后,所述通用程序指令中的寄存器代碼AX即換名為該已經過寄存器更名的計算機中的本地化寄存器名AXW。
所述換名信息KEY′必須經過授權方可獲得,以保證只有合法的程序才能在該計算機系統(tǒng)運行。
步驟S96,將程序指令送往CPU執(zhí)行。
步驟S97,執(zhí)行過程結束。
由于該更名計算機系統(tǒng)內部使用更名的寄存器名,因此,當該計算機系統(tǒng)與外部通訊時,其包含的寄存器名必須轉化為通用寄存器名,才可以為其它通用寄存器所接收。
該計算機系統(tǒng)包含逆更名單元,以實現(xiàn)上述轉化過程。該單元將輸入的更名計算機的本地寄存器名轉化為通用寄存器名。
圖10為該更名計算機與外部通訊時的逆更名過程的流程圖。
步驟S101,開始執(zhí)行更名計算機本地程序。
所述本地計算機程序寄存器代碼為更名寄存器代碼。
步驟S102,更名CPU識別本地程序指令。
步驟S103,識別本地程序指令時,判斷是否為外部通訊命令。如是,進入步驟S104;如否,進入步驟S107。
步驟S104,判斷所述外部通訊命令是否有更名寄存器代碼。如是,則進入步驟S105;如否,則進入步驟S107步驟S105,根據(jù)更名信息KEY對更名寄存器逆更名,將逆更名獲得的寄存器名作為程序指令的寄存器名。
經過上述逆更名,本地計算機程序轉化為通用計算機程序。
步驟S106,向外部通用系統(tǒng)發(fā)出通訊命令,執(zhí)行程序。
步驟S107,逆更名過程結束。
請參見圖11,本發(fā)明也可用于雙CPU計算機系統(tǒng)。
此時可將其中一個CPU進行更名,也可對兩個CPU均進行更名處理。對每一個更名CPU均包含上述更名系統(tǒng)和過程。
以上所述僅是本發(fā)明的優(yōu)選實施方式,應當指出,對于本技術領域的普通技術人員來說,在不脫離本發(fā)明原理的前提下,還可以做出若干改進和潤飾,這些改進和潤飾也應視為本發(fā)明的保護范圍。
權利要求
1.一種防止非法程序在計算機系統(tǒng)運行的方法,其特征為,包括步驟11)將本地計算機系統(tǒng)中央處理單元的寄存器名稱由通用寄存器名更名為本地計算機系統(tǒng)的專有寄存器名;12)通用計算機程序在該計算機系統(tǒng)上運行時,將該計算機程序指令中的通用寄存器名換名為該本地計算機系統(tǒng)的專有寄存器名。
2.根據(jù)權利要求1所述的方法,其特征為所述步驟11)的更名具體是改變寄存器尋址邏輯電路。
3.根據(jù)權利要求2所述的方法,其特征為所述改變寄存器尋址邏輯電路具體是設置更名線,并將該更名線與原通用寄存器地址線進行邏輯運算,選定所述寄存器。
4.根據(jù)權利要求1所述的方法,其特征為,所述步驟12)具體包括41)接收授權信息;42)根據(jù)所述授權信息,輸出換名信息;43)依據(jù)所述換名信息,進行所述的換名。
5.根據(jù)權利要求1所述的方法,其特征為所述本地計算機系統(tǒng)向外部發(fā)送通訊信息時,將通訊內容中包含的該本地計算機系統(tǒng)專有寄存器名逆換名為通用寄存器名。
6.一種防止程序在計算機系統(tǒng)非法運行的系統(tǒng),其特征為,包括更名單元,用于將本地計算機系統(tǒng)中央處理單元的寄存器名稱由通用寄存器名更名為本地計算機系統(tǒng)的專有寄存器名;換名單元,用于運行通用計算機程序時,根據(jù)更名單元的更名方式獲得的換名信息,將該計算機程序指令中的通用寄存器名換名為該本地計算機系統(tǒng)的專有寄存器名;逆更名單元,用于所述本地計算機系統(tǒng)向外部發(fā)送通信信息時,將該本地計算機系統(tǒng)的專有寄存器名逆更名為通用寄存器名。
7.根據(jù)權利要求6所述的系統(tǒng),其特征為所述更名單元包括寄存器更名線及邏輯門,所述寄存器更名線與原寄存器地址線通過邏輯門進行邏輯運算,輸出寄存器選擇信號。
8.根據(jù)權利要求6所述的系統(tǒng),其特征為,該系統(tǒng)進一步包括授權單元,用于接收授權信息,判斷程序是否獲得授權;當程序獲得授權時,輸出換名信息至換名單元。
全文摘要
本發(fā)明公開防止非法程序在計算機系統(tǒng)運行的方法。將計算機CPU的寄存器名由通用寄存器名更名為專有寄存器名;當通用計算機程序在該計算機上運行時,將程序指令中的通用寄存器名換名為該計算機的專有寄存器名。所述換名需經授權。本發(fā)明同時公開一種系統(tǒng),包括更名單元、換名單元、逆換名單元、授權單元。更名單元將計算機CPU的寄存器名由通用寄存器名更名為該計算機專有寄存器名;換名單元將通用程序指令中的通用寄存器名換名為本地計算機系統(tǒng)的專有寄存器名;逆換名單元在所述本地計算機系統(tǒng)向外部傳送通信時,將該計算機的專有寄存器名逆換名為通用寄存器名。授權單元授權所述換名單元將通用寄存器名換名為該計算機的專有寄存器名。
文檔編號G06F1/00GK1869859SQ20051007191
公開日2006年11月29日 申請日期2005年5月23日 優(yōu)先權日2005年5月23日
發(fā)明者姜珊 申請人:聯(lián)想(北京)有限公司
網友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
濉溪县| 项城市| 醴陵市| 龙岩市| 伊金霍洛旗| 稻城县| 新津县| 上犹县| 阜平县| 广东省| 南昌市| 东辽县| 垣曲县| 高阳县| 永川市| 泸西县| 山阳县| 龙川县| 道真| 建始县| 中西区| 安阳县| 桃源县| 施秉县| 汽车| 宝鸡市| 峨边| 区。| 六枝特区| 佛坪县| 金秀| 米易县| 淮安市| 甘孜| 东宁县| 伊宁市| 清涧县| 诸城市| 舟山市| 乌拉特后旗| 兴隆县|