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

一種計(jì)算機(jī)的嵌入式控制系統(tǒng)及其更新方法與流程

文檔序號(hào):11780072閱讀:242來源:國知局
一種計(jì)算機(jī)的嵌入式控制系統(tǒng)及其更新方法與流程
本發(fā)明涉及信息安全領(lǐng)域,具體提出了一種新型的計(jì)算機(jī)的嵌入式控制器系統(tǒng)的更新方法。

背景技術(shù):
計(jì)算機(jī)的電源管理與功耗控制技術(shù)出現(xiàn)在90年代初,當(dāng)初的電源管理主要局限于對(duì)CPU的時(shí)鐘管理和簡單的切斷電源,這樣的電源管理常常會(huì)造成與操作系統(tǒng)和應(yīng)用程序的沖突,從而導(dǎo)致系統(tǒng)死機(jī)。隨著技術(shù)的發(fā)展,在計(jì)算機(jī)中獨(dú)立出一種用于控制鍵盤輸入、電源功耗、時(shí)鐘管理等功能的控制芯片,這種新芯片通常就叫做主板控制芯片(EmbededControler,EC)。由于主板控制芯片獨(dú)立于計(jì)算機(jī)CPU,目前通常被用來控制設(shè)備啟動(dòng)時(shí)序,控制各個(gè)裝置的電源開關(guān)。隨著時(shí)間的推遲,主板控制芯片的功能變得越來越復(fù)雜,再配合上層管理軟件,可以實(shí)現(xiàn)系統(tǒng)電源管理、部件電源管理、CPU電源管理、部件和CPU功效管理、電池管理、熱效應(yīng)管理等,因此其安全性也逐漸引起人們的關(guān)注。為了簡化設(shè)計(jì)節(jié)省成本,現(xiàn)有的計(jì)算機(jī)的EC往往與主板的處理器相連,可以通過上層軟件直接對(duì)EC進(jìn)行操作。隨著片上系統(tǒng)的芯片設(shè)計(jì)架構(gòu)的引入,EC也逐漸開始采用硬件運(yùn)算系統(tǒng)和固件相配合的設(shè)計(jì)方案。為了方便EC固件的更新,在計(jì)算機(jī)通常采用在線下載的方法升級(jí)EC的固件,而且多數(shù)EC的升級(jí)過程不對(duì)升級(jí)操作進(jìn)行合法性檢查,不對(duì)升級(jí)數(shù)據(jù)進(jìn)行可信檢查,因此不正確或者非法的EC固件升級(jí),會(huì)改變EC的功能,威脅計(jì)算機(jī)的安全。

技術(shù)實(shí)現(xiàn)要素:
本發(fā)明的目的在于提供一種計(jì)算機(jī)中EC芯片固件的更新方法,保證更新過程的安全性和更新代碼的可信性,進(jìn)而防止黑客通過更新EC固件,達(dá)到控制計(jì)算機(jī)的目的。一種計(jì)算機(jī)的嵌入式控制系統(tǒng),包括:處理器、總線接口、電源控制器、鍵盤、風(fēng)扇、觸摸板、電池、顯示屏和FLASH存儲(chǔ)單元, 其特征在于還包括:身份識(shí)驗(yàn)證設(shè)備、嵌入式控制器、顯示輸出設(shè)備、更新操作輸入設(shè)備和更新操作確認(rèn)設(shè)備;所述嵌入式控制器包括微處理器、總線、非易失性存儲(chǔ)單元、易失性存儲(chǔ)單元、電源控制器接口、電池接口、風(fēng)扇的控制接口、輸入輸出接口、鍵盤的控制接口、觸摸板接口、身份驗(yàn)證設(shè)備接口和顯示屏的控制接口,顯示輸出設(shè)備接口、更新操作輸入設(shè)備接口和更新操作確認(rèn)設(shè)備接口;所述顯示輸出設(shè)備、更新操作輸入設(shè)備和更新操作確認(rèn)設(shè)備分別連接到嵌入式控制器的顯示輸出設(shè)備接口、更新操作輸入設(shè)備接口和更新操作確認(rèn)設(shè)備接口;所述顯示輸出設(shè)備為LED顯示燈、數(shù)碼顯示管、LED顯示屏或液晶顯示屏中的一種或幾種;所述更新操作輸入設(shè)備為處理器、南橋芯片、USB設(shè)備、HDMI設(shè)備、網(wǎng)絡(luò)設(shè)備、光盤設(shè)備或硬盤設(shè)備中的一種或幾種;所述更新操作確認(rèn)設(shè)備包括按鈕、開關(guān)或按鍵。嵌入式控制器嵌入在計(jì)算機(jī)主板上,與計(jì)算機(jī)的處理器、電源管理芯片、電源、電池、光驅(qū)電源接口、硬盤電源接口、網(wǎng)卡電源接口、顯卡電源接口、鍵盤、PS2接口、SMBus接口、LPC接口、UART接口、顯示器電源接口相連接;嵌入式控制器可以被嵌入在平板電腦、手機(jī)、電視機(jī)、PDA、MP3、MP4和家用電器,用于實(shí)現(xiàn)電池管理、鍵盤管理、電源功耗管理等功能。一種計(jì)算機(jī)嵌入式控制器的更新方法包括:固件代碼下載流程、固件代碼更新申請(qǐng)流程和固件代碼自檢流程;計(jì)算機(jī)嵌入式控制器的更新過程中,固件代碼下載流程、固件代碼更新申請(qǐng)流程和固件代碼自檢流程是依次執(zhí)行的,但固件代碼自檢流程可以單獨(dú)執(zhí)行;A、所述固件代碼下載流程包括:1)用戶按下更新操作確認(rèn)設(shè)備,通知所述嵌入式控制器準(zhǔn)備開始更新固件的下載操作;同時(shí),所述的嵌入式控制器通過身份驗(yàn)證設(shè)備接口連接的身份驗(yàn)證設(shè)備檢查用戶的身份合法性,如果身份合法,則繼續(xù)進(jìn)行更新操作;如果身份不合法,則取消此次更新操作;2)將更新操作輸入設(shè)備連接在嵌入式控制器的更新操作輸入設(shè)備接口;3)嵌入式控制器開始檢查更新操作輸入設(shè)備設(shè)備是否正確連接到更新操作輸入設(shè)備接口;如果正確連接,則通過顯示輸出設(shè)備顯示正確信息否則,通過顯示輸出設(shè)備顯示更新操作輸入設(shè)備連接錯(cuò)誤信息,并一直等待更新操作輸入設(shè)備正確接入;4)處理器向嵌入式控制器發(fā)送待更新固件的設(shè)備信息;設(shè)備信息包括:設(shè)備廠商編號(hào)、類別編號(hào)、產(chǎn)品編號(hào)、文件大小和固件編號(hào);5)嵌入式控制器收到設(shè)備廠商編號(hào)、類別編號(hào)、產(chǎn)品編號(hào)、文件大小和固件編號(hào)后,首先判斷文件大小是否超出嵌入式控制器的存儲(chǔ)空間,如果超出,則通過顯示輸出設(shè)備顯示空間不足,不能進(jìn)行更新的信號(hào),取消本次固件代碼下載操作;否則,比對(duì)待下載的固件代碼和當(dāng)前的固件代碼的版本新舊,將版本新舊的比較結(jié)果發(fā)送給操作系統(tǒng);操作系統(tǒng)是指計(jì)算機(jī)上運(yùn)行的操作系統(tǒng),包括Linux、Windows、Unix和iOS等操作系統(tǒng)軟件;當(dāng)前的固件代碼版本比待更新的固件代碼版本新,則向操作系統(tǒng)發(fā)送0x0h;當(dāng)前的固件代碼版本比待更新的固件代碼版本舊,則向操作系統(tǒng)發(fā)送0x1h;當(dāng)前的固件代碼版本比待更新的固件代碼版本一樣,則向操作系統(tǒng)發(fā)送0x2h;6)當(dāng)嵌入式控制器存儲(chǔ)空間滿足下載要求時(shí),嵌入式控制器通過顯示輸出設(shè)備顯示確認(rèn)繼續(xù)下載的提示信息;7)當(dāng)嵌入式控制器在預(yù)設(shè)值的等待時(shí)間內(nèi)收到用戶發(fā)送的確認(rèn)信號(hào)后,產(chǎn)生并向處理器發(fā)送一個(gè)隨機(jī)數(shù)data1和傳輸密鑰;否則,通過顯示輸出設(shè)備顯示等待超時(shí)的信息,并取消本次下載操作;每次更新操作過程中,嵌入式控制器都要重新生成隨機(jī)數(shù)和傳輸密鑰;6)處理器將收到的隨機(jī)數(shù)data1和傳輸密鑰發(fā)送給操作系統(tǒng);7)操作系統(tǒng)對(duì)收到的隨機(jī)數(shù)data1做附加操作,得到數(shù)據(jù)data2;附加操作包括:加、減、乘或除之一或者兩者以上的組合操作;8)操作系統(tǒng)計(jì)算待升級(jí)固件代碼的哈希值;9)操作系統(tǒng)按照產(chǎn)品編號(hào)、固件代碼的哈希值、固件代碼和數(shù)據(jù)data2進(jìn)行數(shù)據(jù)的組合,并使用傳輸密鑰進(jìn)行加密;10)操作系統(tǒng)將加密后的數(shù)據(jù)傳輸給嵌入式控制器;11)嵌入式控制器使用傳輸密鑰解密收到的加密數(shù)據(jù);12)嵌入式控制器使用固件代碼的哈希值,驗(yàn)證待更新的固件代碼的完整性,若待更新的固件代碼完整,則將待更新的固件代碼及其哈希值存入非易失性存儲(chǔ)單元,并刪除之前存儲(chǔ)的固件代碼,通過顯示輸出設(shè)備顯示待更新的固件代碼下載成功的信息;否則刪除待更新的固件代碼,并通過顯示輸出設(shè)備顯示待更新的固件代碼不正確的信息;B、所述固件代碼的更新申請(qǐng)流程包括:1)當(dāng)待更新的固件代碼在嵌入式控制器中存儲(chǔ)完成后,等待用戶通過更新操作確認(rèn)設(shè)備向嵌入式控制器發(fā)送更新申請(qǐng)信號(hào);2)當(dāng)嵌入式控制器收到用戶的更新操作確認(rèn)信號(hào),嵌入式控制器開始檢查非易失性存儲(chǔ)單元中的固件代碼的完整性,否則繼續(xù)等待用戶的更新操作確認(rèn)信號(hào);3)當(dāng)嵌入式控制器檢查到非易失性存儲(chǔ)單元中固件代碼不完整,則通過顯示輸出設(shè)備顯示待更新的固件代碼不完整的信息,并刪除存儲(chǔ)的固件代碼,取消本次更新操作;4)當(dāng)嵌入式控制器驗(yàn)證非易失性存儲(chǔ)單元中的固件代是完整時(shí),通過顯示輸出設(shè)備顯示更新操作確認(rèn)信息,收到用戶的確認(rèn)信號(hào)后,向操作系統(tǒng)發(fā)送更新嵌入式控制器固件代碼的信息,并結(jié)束當(dāng)前正在操作的所有操作,停止接受操作系統(tǒng)發(fā)送的命令,然后更新嵌入式控制器的固件代碼,并通過顯示輸出設(shè)備顯示更新操作完成的信息;C、所述固件代碼自檢流程:1)當(dāng)嵌入式控制器更新操作完成后,嵌入式控制器立即重新啟動(dòng),加載更新后的固件代碼;2)嵌入式控制器對(duì)易失性存儲(chǔ)單元和非易失性存儲(chǔ)單進(jìn)行工作狀態(tài)檢查,如果檢查正確則繼續(xù)執(zhí)行;否則,通過顯示輸出設(shè)備顯示存儲(chǔ)設(shè)備錯(cuò)誤的信息,等待更換存儲(chǔ)單元,并重新進(jìn)行固件代碼的更新操作;3)嵌入式控制器對(duì)其所連接的設(shè)備進(jìn)行檢查,如果所連接的設(shè)備無法正常工作,則停止計(jì)算機(jī)的執(zhí)行,并通過顯示輸出設(shè)備顯示因設(shè)備無法工作造成的更新操作錯(cuò)誤的信息,等待用戶重新進(jìn)行固件代碼的更新操作;否則,繼續(xù)執(zhí)行;所述的連接的設(shè)備包括:鍵盤、觸摸板、指示燈、顯示輸出設(shè)備、更新操作輸入設(shè)備和更新操作確認(rèn)設(shè)備;4)嵌入式控制器通過檢查所連接設(shè)備的上電工作時(shí)序,如果時(shí)序檢查結(jié)果錯(cuò)誤,則停止計(jì)算機(jī)的執(zhí)行,并通過顯示輸出設(shè)備顯示因上電時(shí)序錯(cuò)誤造成的更新操作錯(cuò)誤的信息,等待用戶重新進(jìn)行固件代碼的更新操作;否則,繼續(xù)執(zhí)行;5)嵌入式控制器向操作系統(tǒng)發(fā)送固件代碼更新后的測試請(qǐng)求;6)當(dāng)嵌入式控制器在預(yù)設(shè)置的時(shí)間內(nèi)接收到操作系統(tǒng)發(fā)送的測試信息后,開始執(zhí)行測試操作,并將測試結(jié)果通過總線和處理器返回給操作系統(tǒng),并等待操作系統(tǒng)對(duì)測試結(jié)果的判斷結(jié)果;如果嵌入式控制器未在預(yù)設(shè)置的時(shí)間內(nèi)收到操作系統(tǒng)發(fā)送的測試信息,則再次向操作系統(tǒng)發(fā)送固件代碼更新后的測試請(qǐng)求,一直到接收到操作系統(tǒng)發(fā)送的測試信息;如果嵌入式控制器未在預(yù)設(shè)置的時(shí)間內(nèi)收到操作系統(tǒng)發(fā)送的測試結(jié)果的判斷結(jié)果,則再次向操作系統(tǒng)發(fā)送固件代碼更新后的測試請(qǐng)求,一直到接收到操作系統(tǒng)發(fā)送的判斷結(jié)果;9)當(dāng)嵌入式控制器收到的測試結(jié)果的判斷結(jié)果是正確,則嵌入式控制器通過顯示輸出設(shè)備顯示固件代碼更新操作成功的信息;否則,通過顯示輸出設(shè)備顯示固件代碼更新操作不成功的信息,并等待用戶重新執(zhí)行固件代碼更新操作。附圖說明圖1計(jì)算機(jī)的嵌入式控制器連接方式圖2計(jì)算機(jī)的嵌入式控制器的結(jié)構(gòu)圖具體實(shí)施方式為達(dá)到上述目的,本發(fā)明的技術(shù)方案具體是這樣實(shí)現(xiàn)的。一、硬件設(shè)計(jì)方面的實(shí)施方案如下:嵌入式控制器選用華邦的WPC8769芯片;顯示輸出設(shè)備:選擇紅、綠、黃三色一體的一位數(shù)碼管指示燈,當(dāng)返回正確信息時(shí)顯示綠色,并配合相應(yīng)的數(shù)字;當(dāng)返回最終嚴(yán)重的錯(cuò)誤信息時(shí)將顯示紅色,并配合相應(yīng)的數(shù)字;當(dāng)處于更新過程中,則顯示黃色;當(dāng)請(qǐng)求按下確認(rèn)按鈕時(shí),閃爍頻率為2次/秒,間隔1秒;更新操作輸入設(shè)備:選擇硬盤;更新操作確認(rèn)設(shè)備:按鈕;計(jì)算機(jī)選用X86架構(gòu);CPU:Intel(R)Core(TM)i5CPUM5202.4GHz;內(nèi)存:3GB;硬盤:ST9500420AS二、更新方法方面的實(shí)施方案如下:操作系統(tǒng)選擇:Windows7旗艦版。一種計(jì)算機(jī)嵌入式控制器的更新方法的具體實(shí)施流程包括:固件代碼下載流程、固件代碼更新申請(qǐng)流程和固件代碼自檢流程;計(jì)算機(jī)嵌入式控制器的更新過程中,固件代碼下載流程、固件代碼更新申請(qǐng)流程和固件代碼自檢流程是依次執(zhí)行的,但固件代碼自檢流程可以單獨(dú)執(zhí)行;A、所述固件代碼下載流程包括:1)用戶按下更新操作確認(rèn)按鈕,通知所述嵌入式控制器準(zhǔn)備開始更新固件的下載操作;同時(shí),所述的嵌入式控制器通過身份驗(yàn)證設(shè)備接口連接的身份驗(yàn)證設(shè)備檢查用戶的身份合法性,如果身份合法,則繼續(xù)進(jìn)行更新操作;如果身份不合法,則取消此次更新操作;2)將更新操作輸入設(shè)備(硬盤)連接在嵌入式控制器的更新操作輸入設(shè)備接口;3)嵌入式控制器開始檢查更新操作輸入設(shè)備設(shè)備是否正確連接到更新操作輸入設(shè)備接口;如果正確連接,則通過顯示輸出設(shè)備顯示正 確信息否則,通過顯示輸出設(shè)備顯示更新操作輸入設(shè)備連接錯(cuò)誤信息,并一直等待更新操作輸入設(shè)備正確接入;4)處理器向嵌入式控制器發(fā)送待更新固件的設(shè)備信息;設(shè)備信息包括:設(shè)備廠商編號(hào)、類別編號(hào)、產(chǎn)品編號(hào)、文件大小和固件編號(hào);5)嵌入式控制器收到設(shè)備廠商編號(hào)、類別編號(hào)、產(chǎn)品編號(hào)、文件大小和固件編號(hào)后,首先判斷文件大小是否超出嵌入式控制器的存儲(chǔ)空間,如果超出,則通過顯示輸出設(shè)備顯示空間不足,不能進(jìn)行更新的信號(hào),取消本次固件代碼下載操作;否則,比對(duì)待下載的固件代碼和當(dāng)前的固件代碼的版本新舊,將版本新舊的比較結(jié)果通過操作系統(tǒng)發(fā)送給用戶;6)當(dāng)嵌入式控制器存儲(chǔ)空間滿足下載要求時(shí),嵌入式控制器通過顯示輸出設(shè)備顯示確認(rèn)繼續(xù)下載的提示信息;7)當(dāng)嵌入式控制器在預(yù)設(shè)值的等待時(shí)間內(nèi)收到用戶發(fā)送的確認(rèn)信號(hào)后,產(chǎn)生并向處理器發(fā)送一個(gè)隨機(jī)數(shù)data1和傳輸密鑰;否則,通過顯示輸出設(shè)備顯示等待超時(shí)的信息,并取消本次下載操作;6)處理器將收到的隨機(jī)數(shù)data1和傳輸密鑰發(fā)送給操作系統(tǒng);7)操作系統(tǒng)對(duì)收到的隨機(jī)數(shù)data1做加1操作,得到數(shù)據(jù)data2;8)操作系統(tǒng)計(jì)算待升級(jí)固件代碼的哈希值;9)操作系統(tǒng)按照產(chǎn)品編號(hào)、固件代碼的哈希值、固件代碼和數(shù)據(jù)data2進(jìn)行數(shù)據(jù)的組合,并使用傳輸密鑰進(jìn)行加密;10)操作系統(tǒng)將加密后的數(shù)據(jù)傳輸給嵌入式控制器;11)嵌入式控制器使用傳輸密鑰解密收到的加密數(shù)據(jù);12)嵌入式控制器使用固件代碼的哈希值,驗(yàn)證待更新的固件代碼的完整性,若待更新的固件代碼完整,則將待更新的固件代碼及其哈希值存入非易失性存儲(chǔ)單元,并刪除之前存儲(chǔ)的固件代碼,通過顯示輸出設(shè)備顯示待更新的固件代碼下載成功的信息;否則刪除待更新的固件代碼,并通過顯示輸出設(shè)備顯示待更新的固件代碼不正確的信息;B、所述固件代碼的更新申請(qǐng)流程包括:1)當(dāng)待更新的固件代碼在嵌入式控制器中存儲(chǔ)完成后,等待用戶通過更新操作確認(rèn)設(shè)備向嵌入式控制器發(fā)送更新申請(qǐng)信號(hào);2)當(dāng)嵌入式控制器收到用戶的更新操作確認(rèn)信號(hào),嵌入式控制器開始檢查非易失性存儲(chǔ)單元中的固件代碼的完整性,否則繼續(xù)等待用戶的更新操作確認(rèn)信號(hào);3)當(dāng)嵌入式控制器檢查到非易失性存儲(chǔ)單元中固件代碼不完整,則通過顯示輸出設(shè)備顯示待更新的固件代碼不完整的信息,并刪除存儲(chǔ)的固件代碼,取消本次更新操作;4)當(dāng)嵌入式控制器驗(yàn)證非易失性存儲(chǔ)單元中的固件代完整時(shí),通過顯示輸出設(shè)備顯示更新操作確認(rèn)信息,收到用戶的確認(rèn)信號(hào)后,向操作系統(tǒng)發(fā)送更新嵌入式控制器固件代碼的信息0x01h,并結(jié)束當(dāng)前正在操作的所有操作,停止接受操作系統(tǒng)發(fā)送的命令,然后更新嵌入式控制器的固件代碼,并通過顯示輸出設(shè)備顯示更新操作完成的信息;C、所述固件代碼自檢流程:1)當(dāng)嵌入式控制器更新操作完成后,嵌入式控制器立即重新啟動(dòng),加載更新后的固件代碼;2)嵌入式控制器對(duì)易失性存儲(chǔ)單元和非易失性存儲(chǔ)單進(jìn)行工作狀態(tài)檢查,如果檢查正確則繼續(xù)執(zhí)行;否則,通過顯示輸出設(shè)備顯示存儲(chǔ)設(shè)備錯(cuò)誤的信息,等待更換存儲(chǔ)單元,并重新進(jìn)行固件代碼的更新操作;3)嵌入式控制器對(duì)其所連接的設(shè)備進(jìn)行檢查,如果所連接的設(shè)備無法正常工作,則停止計(jì)算機(jī)的執(zhí)行,并通過顯示輸出設(shè)備顯示因設(shè)備無法工作造成的更新操作錯(cuò)誤的信息,等待用戶重新進(jìn)行固件代碼的更新操作;否則,繼續(xù)執(zhí)行;4)嵌入式控制器通過檢查所連接設(shè)備的上電工作時(shí)序,如果時(shí)序檢查結(jié)果錯(cuò)誤,則停止計(jì)算機(jī)的執(zhí)行,并通過顯示輸出設(shè)備顯示因上電時(shí)序錯(cuò)誤造成的更新操作錯(cuò)誤的信息,等待用戶重新進(jìn)行固件代碼的更新操作;否則,繼續(xù)執(zhí)行;5)嵌入式控制器向操作系統(tǒng)發(fā)送固件代碼更新后的測試請(qǐng)求0x01h;6)當(dāng)嵌入式控制器在預(yù)設(shè)置的時(shí)間10秒內(nèi)接收到操作系統(tǒng)發(fā)送的測試信息后,開始執(zhí)行測試操作,并將測試結(jié)果通過總線和處理器返回給操作系統(tǒng),并等待操作系統(tǒng)對(duì)測試結(jié)果的判斷結(jié)果;7)如果嵌入式控制器未在預(yù)設(shè)置的時(shí)間10秒內(nèi)收到操作系統(tǒng)發(fā)送的測試信息,則再次向操作系統(tǒng)發(fā)送固件代碼更新后的測試請(qǐng)求0x01h,一直到接收到操作系統(tǒng)發(fā)送的測試信息;8)如果嵌入式控制器未在預(yù)設(shè)置的時(shí)間10秒內(nèi)收到操作系統(tǒng)發(fā)送的測試結(jié)果的判斷結(jié)果,則再次向操作系統(tǒng)發(fā)送固件代碼更新后的測試請(qǐng)求0x01h,一直到接收到操作系統(tǒng)發(fā)送的測試信息;9)當(dāng)嵌入式控制器收到的測試結(jié)果的判斷結(jié)果是正確0x01h,則嵌入式控制器通過顯示輸出設(shè)備顯示固件代碼更新操作成功的信息;否則,通過顯示輸出設(shè)備顯示固件代碼更新操作不成功的信息,并等待用戶重新執(zhí)行固件代碼更新操作。
當(dāng)前第1頁1 2 3 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
武山县| 白朗县| 嘉义市| 赞皇县| 天镇县| 梁河县| 德清县| 温州市| 清镇市| 巩留县| 绥滨县| 广丰县| 辉南县| 泽州县| 太谷县| 海丰县| 鄄城县| 白城市| 奇台县| 紫阳县| 海伦市| 双柏县| 章丘市| 泽库县| 托克托县| 乌什县| 南通市| 泗水县| 镇雄县| 黄浦区| 招远市| 姜堰市| 龙口市| 太仓市| 景宁| 夏邑县| 达拉特旗| 林西县| 五河县| 丹阳市| 阿拉善右旗|