源碼AMI
⑴ 與信源代碼中的 1 碼絕對應的AMI碼及HDB3碼能否一定相反為什麼
這個問題應該是「與信源代碼中的『1』碼相對應的AMI碼及HDB3碼是否一定相同?為什麼?」吧?!
不一定相同,因為它們的編碼規律不一樣。你可以舉個例子驗證一下就行了!
按照你的問題,答案就是:不一定相反,因為它們的編碼規律不一樣。
⑵ 誰能告訴告訴我啊
要這個做什麼:
A
A:對象代碼庫文件
AAM:Authorwareshocked文件
AAS:Authorwareshocked包
ABF:Adobe二進制屏幕字體
ABK:CorelDRAW自動備份文件
ABS:該類文件有時用於指示一個摘要(就像在一篇有關科學方面的文章的一個摘要或概要,取自abstract)
ACE:Ace壓縮檔案格式
ACL:CorelDRAW6鍵盤快捷鍵文件
ACM:Windows系統目錄文件
ACP:Microsoftoffice助手預覽文件
ACR:美國放射醫學大學文件格式
ACT:Microsoftoffice助手文件
ACV:OS/2的驅動程序,用於壓縮或解壓縮音頻數據
AD:AfterDark屏幕保護程序
ADA:Ada源文件(非-GNAT)
ADB:Ada源文件主體(GNAT);HP100LX組織者的約定資料庫
ADD:OS/2用於引導過程的適配器驅動程序
ADF:Amiga磁碟文件
ADI:AutoCAD設備無關二進制繪圖儀格式
ADM:AfterDark多模塊屏幕保護;WindowsNT策略模板
ADP:FaxWork用於傳真數據機的交互安裝文件;AstoundDynamite文件
ADR:AfterDark隨機屏幕保護;SmartAddress的地址簿
ADS:Ada源文件說明書(GNAT)
AFM:Adobe的字體尺度
AF2,AF3:ABC的FlowChat文件
AI:AdobeIllustrator格式圖形
AIF,AIFF:音頻互交換文件,SiliconGraphicandMacintosh應用程序的聲音格式
AIFC:壓縮AIF
AIM:AOL即時信息傳送
AIS:ACDSee圖形序列文件;VelvetStudio設備文件
AKW:RoboHELP的幫助工程中所有A-關鍵詞
ALAW:歐洲電話音頻格式
ALB:JASCImageCommander相冊
ALL:藝術與書信庫
AMS:VelvetStudio音樂模塊(MOD)文件;Extreme的Tracker模塊文件
ANC:CanonComputer的調色板文件,包含一系列可選的顏色板
ANI:Windows系統中的動畫游標
ANS:ANSI文本文件
ANT:SimAntForWindows中保存的游戲文件
API:AdobeAcrobat使用的應用程序設計介面文件
APR:LotusApproach97文件
APS:MicrosoftVisualC++文件
ARC:LHARC的壓縮檔案文件
ARI:Aristotle聲音文件
ARJ:RobertJungARJ壓縮包文件
ART:XaraStudio繪畫文件;CanonCrayola美術文件;ClipArt文件格式;另一種光線跟蹤格式;AOL使用的用Johnson—Grace壓縮演算法壓縮的標記文件
ASA:MicrosoftVisualInterDev文件
ASC:ASCⅡ文本文件;PGP演算法加密文件
ASD:MicrosoftWord的自動保存文件;Microsoft高級流媒體格式(,ASF)的描述文件;可用NSREX打開VelvetStudio例子文件
ASE:VelvetStudio采樣文件
ASF:Microsoft高級流媒體格式文件
ASM:匯編語言源文件,Pro/E裝配文件
ASO:AstoundDynamite對象文件
ASP:動態網頁文件;ProCommPlus安裝與連接腳本文件;Astound介紹文件
AST:Astound多媒體文件;ClarisWorks「助手」文件
ASV:DataCAD自動保存文件
ASX:Cheyenne備份腳本文件;Microsoft高級流媒體重定向器文件,視頻文件
ATT:AT<Group4點陣圖文件
ATW:來自個人軟體的AnyTimeDeluxeForWindows個人信息管理員文件
AU:Sun/NeXT/DEC/UNIX聲音文件;音頻U-Law(讀作「mu-law」)文件格式
AVB:ComputerAssociatesInoculan反病毒軟體的病毒感染後文件
AVI:MicrosoftAudioVideoInterleave電影格式
AVR:AudioVisualResearch文件格式
AVS:應用程序可視化格式
AWD:FaxVien文檔
AWR:Telsis數字儲存音頻文件擴展名格式
Axx:ARJ壓縮文件的分包序號文件,用於將一個大文件壓至幾個小的壓縮包中(xx取01-99的數字)
A3L:Authorware3.x庫文件
A4L:Authorware4.x庫文件
A5L:Authorware5.x庫文件
A3M,A4M:AuthorwareMacintosh未打包文件
A4P:Authorware無運行時間的打包文件
A3W,A4W,A5W:未打包的AuthorwareWindows文件
B
BAK:備份文件
BAS:BASIC源文件
BAT:批處理文件
BDF:WestPointBridgerDesigner文件
BFC:Windows95Briefcase文檔
BG:BackgammonForWindows下的游戲文件
BGL:MicrosoftFlightSimulator(微軟飛行模擬器)的視景文件
BI:二進制文件
BIF:GroupWise的初始化文件
BIFF:XLIFE3D格式文件
BIN:二進制文件
BK,BK
BKS:IBMBookManagerRead書架文件
BMK:書簽文件
BMP:Windows或OS/2點陣圖文件
BMI:ApogeeBioMenace數據文件
BOOK:AdobeFrameMakerBook文件
BOX:LotusNotes的郵箱文件
BPL:BorlardDelph4打包庫
BQY:BrioQuery文件
BRX:用於查看多媒體對象目錄的文件
BSC:MSDeveloperStudio瀏覽器信息文件
BSP:Quake圖形文件
BS1:ApogeeBlakeStone數據文件
BS_:MicrosoftBookshelfFind菜單外殼擴展名
BTM:Norton應用程序使用的批處理文件
BUD:Quicken的備份磁碟
BUN:CakeWalk聲音捆綁文件(一種MIDI程序)
BW:SGI黑白圖像文件
BWV:商業波形文件
BYU:BYU的電影文件格式
B4:HelixNutsandBolts文件
C
C:C代碼文件
C0l:台風波形文件
CAB:Microsoft壓縮檔案文件
CAD:Softdek的DrafixCAD文件
CAL:CALS壓縮點陣圖;日歷計劃表數據
CAM:Casio照相機格式
CAP:壓縮音樂文件格式
CAS:逗號分開的ASCⅡ文件
CAT:Quicken使用的IntellCharge分類文件
CB:Microsoft干凈引導文件
CBI:二進制卷格式文件(用於IBM大型機系統)
CC:VisualdBASE用戶自定義類文件
CCA:cc:郵件文件
CCB:VisualBasic動態按鈕配置文件
CCF:多媒體查看器配置文件,用於OS/2
CCH:Corel圖表文件
CCM:Lotuscc:郵箱(例如「INBOX.CCM」)
CCO:CyberChat數據文件
CCT:MacromediaDirectorShockwave投影
CDA:CD音頻軌道
CDF:Microsoft頻道定義格式文件
CDI:Philip的高密盤交互格式
CDM:VisualdBASE自定義數據模塊文件
CDR:CorelDRAW繪圖文件;原始音頻CD數據文件
CDT:CorelDRAW模板
CDX:CorelDRAW壓縮繪圖文件;MicrosoftVisualFoxPro索引文件
CEL:CIMFast事件語言文件
CER:證書文件(MIMEx-x509-ca-cert)
CFB:Compton的多媒文件
CFG:配置文件
CFM:CotdFusion模板文件;VisualdBASEWindows用戶定製表單
CGI:公共網關介面腳本文件
CGM:計算機圖形元文件
CH:OS/2配置文件
CHK:由Windows磁碟碎片整理器或磁碟掃描保存的文件碎片
CHM:編譯過的HTML文件
CHR:字元集(字體文件)
CHP:VenturaPublisher章節文件
CHT:ChartViem文件;HarvardGraphics矢量文件
CIF:AdaptecCD創建器CD映像文件
CIL:ClipGallery下載包
CIM:SimCity2000文件
CIN:OS/2改變控制文件用於跟蹤INI文件中的變化
CK1:iD/ApogeeCommanderKeen1數據文件
CK2:iD/ApogeeCommanderKeen2數據文件
CK3:iD/ApogeeCommanderKeen3數據文件
CK4:iD/ApogeeCommanderKeen4數據文件
CK5:iD/ApogeeCommanderKeen5數據文件
CK6:iD/ApogeeCommanderKeen6數據文件
CLASS:java類文件
CLL:CrickSoftwareClicker文件
CLP:Windows剪貼板文件
CLS:VisualBasic類文件
CMD:WindowsNT,OS/2的命令文件;DOSCD/M命令文件;dBASEⅡ程序文件
CMF:Corel元文件
CMG:Chessmaster保存的游戲文件
CMP:JPEG點陣圖文件;地址文檔
CMV:CorelMove動畫文件
CMX:CorelPresentationExchange圖像
CNF:Telnet,Windows和其他其內格式會發生改變的應用程序使用的配置文件
CNM:Windows應用程序菜單選項和安裝文件
CNQ:CompuworksDesignShop文件
CNT:Windows(或其他)系統用於幫助索引或其他目的內容文件
COB:TrueSpace2對象文件
COD:MicrosoftC編譯器產生的可顯示機器碼/匯編代碼文件,其中附有源C代碼作為注釋
COM:命令文件(程序)
CPD:CorelPrintOffice文件(圖形)
CPD,CPE傳真覆蓋文檔
CPI:MicrosoftMS-DOS代碼頁信息文件
CPL:控制面板擴展名,Corel顏色板
CPO:Corel列印存儲文件
CPP:C++代碼文件
CPR:Corel提供說明書文件
CPT:Corel照片-繪畫圖像
CPX:CorelPresentationExchange壓縮圖形文件
CRD:WindowsCardfile文件
CRP:Corel提供的運行時介紹文件;VisualdBASE自定義報表文件
CRT:認證文件
CSC:Corel腳本文件
CSP:PCEmceeOn_Screen圖像
CSS:瀑布式表格文件
CST:MacromediaDirectorCast文件
CSV:逗號分隔的值文件
CT:ScitexCT點陣圖文件;PaintShopProGrapic編輯器文件
CTL:通常用於表示一個包含控制項信息的文件;FaxWork用它來保持有關每個傳真收到或發出的信息
CUE:Microsoft提示牌數據文件
CUR:Windows游標文件
CUT:DrHalo點陣圖文件
CV:Corel版本的檔案文件;MicrosoftCodeView信息屏幕文件
CWK:ClarisWorks數據文件.
CWS:ClarisWorks模塊
CXT:MacromediaDirector受保護的(不可編輯的)投影文件
CXX:C++源代碼文件
D
DAT:數據文件;WrodPerfect合並數據文件;用於一些MPEG格式的文件
DB:Borland的Paradox7表
DBC:MicrosoftVisualFoxPro資料庫容器文件
DBF:dBASE文件,一種由Ashton-Tate創建的格式,可以被ACT!、Lipper、FoxPro、Arago、Wordtech、Xbase和類似資料庫或與資料庫有關產品識別;可用數據文件(能被Excel97打開);Oracle8.1.x表格空間文件
DBX:DataBearn圖像;MicrosoftVisualFoxPro表格文件
DCM:DCM模塊格式文件
DCR:沖擊波文件
DCS:桌面顏色分隔文件
DCT:MicrosoftVisualFoxPro資料庫容器
DCU:Delphi編譯單元文件
DCX:MicrosoftVisualFoxPro資料庫容器;基於PCX的傳真圖像;宏
DC5:DataCAD繪圖文件
DDF:Btrieve或Xtrieve數據定義文件,它包含用於描述Btrieve或Xtrieve文件的元數據
DDIF:DigitalEquipment或Compaq格式,用於保存他們圖像與字處理文檔
DEF:SmartWareⅡ數據文件;C++模塊定義文件
DEFI:Oracle7卸載腳本文件
DEM:用於表示數字高度模型的USGS基準的文件
DER:認證文件
DEWF:MacintoshSoundCap/SoundEdit錄音設備格式
DGN:Macintosh95CAD繪圖文件
DIB:設備無關點陣圖
DIC:目錄
DIF:可進行數據互換的電子表格
DIG:DigiLink格式;SoundDesignerⅠ音頻文件
DIR:MacromediaDirector文件
DIZ:描述文件
DLG:C++對話框腳本文件
DLL:動態鏈接庫
DLS:可下載聲音文件
DMD:VisualdBASE數據模塊文件
DMF:X-Trakker音樂模塊(MOD)文件
DOC:FrameMaker或FrameBuilder文檔;WordStar文檔、WordPerfect文檔、MicrosoftWord文檔;DisplayWrite文檔
DOT:MicrosoftWord文檔模板
DPL:BorlandDelph3壓縮庫
DPR:BorlandDelphi工程頭文件
DRAW:Acorn的基於對象的矢量圖像文件
DRV:驅動程序
DRW:MicrografxDesigner/Draw;Pro/E繪畫文件
DSF:MicrografxDesignerVFX文件
DSG:DOOM保存的文件
DSM:DynamicStudio音樂模塊(MOD)文件
DSP:MicrosoftDeveloperStudio工程文件
DSQ:CorelQUERY(查詢)文件
DST:刺綉機圖形文件
DSW:MicrosoftDeveloperStudio工作區文件
DTA:WordBank(世界銀行)的STARS數據文件
DTD:SGML文檔類型定義(DTD)文件
DTED:地面高度數字數據(圖形的數據格式)文件
DTF:SymantecQ&A相關的資料庫數據文件
DTM:DigiTrakker模塊文件
DUN:Microsoft拔號網路導出文件
DV:數字視頻文件(MIME)
DWD:DiamondWare數字化文件
DWG:AutoCAD工程圖文件;AutoCAD或GenericCADD老版本的繪圖格式
DXF:可進行互交換的繪圖文件格式,二進制的DWG格式的文本表示;數據交換文件
DXR:MacromediaDirector受保護(不可編輯)電影文件
D64:Commodore的64位模擬磁碟圖像文件
E
EDA:EnsoniqASR磁碟映像
EDD:元素定義文檔(FrameMaker+SGML文檔)
EDE:EnsoniqEPS磁碟映像
EDK:EnsoniqKT磁碟映像
EDQ:EnsoniqSQ1/SQ2/Ks32磁碟映像
EDS:EnsoniqSQ80磁碟映像
EDV:EnsoniqVFX-SD磁碟映像
EFA:EnsoniqASR文件
EFE:EnsoniqEPS文件
EFK:EnsoniqKT文件
EFQ:EnsoniqSQ1/SQ2/Ks32文件
EFS:EnsoniqSQ80文件
EFV:EnsoniqVFX-SD文件
EMD:ABT擴展模塊
EMF:Windows增強元文件
EML:MicrosoftOutlookExpress郵件消息(MIMERTC822)文件
ENC:重演文件
ENFF:中性文件格式擴展名
EPHTML:Perl解釋增強HTML文件
EPS:壓縮的PostScript圖像
EPSF:壓縮的PostScript文件
ERI:ERWin文件
ERR:當RobooHELP幫助編譯器企圖編譯一個幫助系統源文件時用來存儲錯誤消息的文件
EPX:ERWin文件
ESPS:ESPS音頻文件
EUI:EnsoniqESP家族的壓縮磁碟映像
EVY:特使文檔
EWL:MicrosoftEncarta文檔
EXC:MicrosoftWord禁止字字典
EXE:可執行文件(程序)
F
F:FORTRAN文件
F2R:Farandoyle線性模塊格式
F3R:Farandoyle分塊線性模塊格式
F77:FORTRAN文件
F90:FORTRAN文件
FAR:FradoleComposer音樂模塊(MOD)文件
FAV:MicrosoftOutlook導航條
FAX:傳真類型圖像
FBK:Navison金融備份
FCD:虛擬CD-ROM
FDB:Navison金融資料庫
FDF:AdobeAcrobat表單文檔文件
FEM:CADRE有限元素網路文件
FFA,FFL,FFO,FFK:Microsoft快速查找文件
FFF:GUSPnP銀行文件格式
FFT:最終格式文本(IBM的DCA一部分)
FH3:AlsFreehand3繪圖文件
FIF:Fractal圖像文件
FIG:REND386/AVRIL使用的文件格式
FITS:CCD照相機圖像;靈活圖像傳輸系統
FLA:MacromediaFlash電影
FLC:AutodeskFLIC動畫文件
FLF:CorelParadox產生的格式:NavisonFinancials許可文件;OS/2驅動程序文件
FLI:AutodeskFLIC動畫
FLT:StarTrekker音樂模塊(MOD)文件;MultiGenInc的OpenFlight使用的文件格式;Corel過濾器文件
FM:AdobeFrameMaker文檔
FMB:Oracle4.0版或以後版本表單的二進制源代碼文件
FML:文件鏡象列表(GetRight)
FMT:Oracle4.0版或以後版本表單的文本格式;MicrosoftSchele+列印文件
FMX:Oracle4.0版或以後版本可執行表單
FND:MicrosoftExplorer保存的搜索文件(Findapplet)
FNG:字體組文件(字體導航器,FontNavigator)
FNK:FunkTracker模塊格式
FOG:Fontographer模塊字體
FON:系統字體
FOR:FORTRAN文件
FOT:字體相關文件
FP:FileMakerPro文件
FP1:FlyingPigsforWindows數據文件
FP3:FileMakerPro文件
FPT:FileMakerPro文件;MicrosoftFoxPro備注字體文件
FPX:FlashPix點陣圖
FRM:表單;FrameMaker或FrameBuilder文檔;Oracle可執行表(3.0版或早期版本);VisualBasic表單;WordPerfectMerge表單;DataCAD標志報表文件
FRT:MicrosoftFoxPro報表文件
FRX:VisualBasic表單文本;MicrosoftFoxPro報表文件
FSF:fPrintAuditTool文件格式
FSL:Borland的Paradox7表單;CorelParadox保存的表單
FSM:Parandoyle示例格式
FT:LotusNotes全文本索引
FTG:全文本搜索組文件,由Windows幫助系統查找時產生——可以刪除,並在需要時重建起來
FTS:全文本搜索引文件,由Windows幫助系統查找時產生
FW2:FrameworkⅡ文件
FW3:FrameworkⅢ文件
FW4:FrameworkⅣ文件
FXP:經MicrosoftFoxPro編譯的源文件
FZB:CasioFZ-1銀行轉儲
FZF:CasioFZ-1完全轉儲
FZV:CasioFZ-1聲音轉儲
G
G721:RawCCITTG.721
G723:RawCCITTG.7233或5bitADPCM格式數據
GAL:Corel多媒體管理器相集
GCD:GenericCADD繪畫文件(後續版本)
GCP:GroundControlPoint(地面控制點)文件,用於遠景數據形成圖像過程,經常用於生成圖工程—CHIPS()使用這些文件
GDB:InterBase資料庫文件
GDM:鈴聲、口哨聲和聲音板模塊格式
GED:GEDCOM系譜數據文件,用於記錄和交換系譜數據的流行格式;圖形環境文檔繪畫
GEM:GEM元文件
GEN:Ventura產生的文本文件
GetRight:GetRight未完成的下載文件
GFC:Patton&PattonFlowCharting4flowchart文件
GFI,GFX:Genigraphics圖形鏈接表示文件
GHO:Norton克隆磁碟映像
GID:Windows95全局索引文件(包括幫助狀態)
GIF:CompuServe點陣圖文件
GIM,GIX:Genigraphics圖形鏈接介紹文件
GKH:EnsoniqEPS家簇磁碟映像文件
GKS:GravisGripKey文檔
GL:動畫格式
GNA:Genigraphics圖形鏈接介紹文件
GNT:生成代碼,MicroFocus屬性格式里的可執行代碼
GNX:Genigraphics圖形鏈接介紹文件
GRA:MicrosoftGraph文件
GRD:用於遠程視景數據產生地圖過程的格式文件,通常應用於形成地圖工程—CHIPS()使用這些文件
GRF:Grapher(GoldenSoftware公司)圖形文件
GRP:程序管理組
GSM:RawGSM6.10音頻流;Raw「bytealigned(比特對齊的)」GSM6.10音頻流;USRobotics語音數據機
GTK:Graoumftracker(老)音樂模塊(MOD)文件
GT2:Graoumftracker(新)音樂模塊(MOD)文件
GWX,GWZ:Cenigraphis圖形鏈接介紹文件
GZ:UNIXgzip壓縮文件
H
H:C程序頭文件
HCM:IBMHCM配置文件
HCOM:聲音工具HCOM格式
HCR:IBMHCD/HCM產品配置文件
HDF:高級計算機應用程序本地中心(NCSA)geospatialHierarchial數據格式文件
HED:HighEdit文檔
HEL:MicrosoftHellbender格式保存的游戲文件
HEX:MacintoshBinHex2.0文件
HGL:HP圖形語言繪圖文件
HH:映射文件,包括一些話題ID和在幫助文件系統中話題的映射數字—允許運行中應用程序發送給用戶合適的上下文幫助話題
HLP:幫助文件;DateCADWindows幫助文件
HOG:LucasArts的DarkForcesWAD文件
HPJ:VisualBasic幫助工程
HPP:C++程序頭文件
HQX:MacintoshBinHex4.0文件
HST:歷史文件
HT:HyperTerminal(超級終端)
HTM,HTML:超文本文檔
HTT:Microsoft超文本模板
HTX:擴展HTML模板
HXM:Descent2HAM文件擴展
I
ICA:Citrix文件
ICB:Targa點陣圖文件
ICC:Kodak列印機格式文件
ICL:圖標庫文件
ICM:圖形顏色匹配配置文件
ICO:Windows圖標
IDB:MSDev中間層文件
IDD:MIDI設備定義
IDF:MIDI設備定義(Windows95需要的文件)
IDQ:Internet數據查詢文件
IDX:MicrosoftFoxPro相關資料庫索引文件;SymantecQ&A相關資料庫索引文件;MicrosoftOutlookExpress文件
IFF:交換格式文件;AmigaILBM
IGES:初始圖形交換說明文件
IGF:插入系統元文件
IIF:QuickBooksforWindows交換文件
ILBM:點陣圖圖形文件
IMA:WinImage磁碟映像文件
IMG:GEM映像
IMZ:WinImage壓縮磁碟映像文件
INC:匯編語言或動態伺服器包含文件
INF:信息文件
INI:初始化文件;MWaveDSPSynth的「nwsynth.ini」GMS安裝;CravisUltrasoundbank安裝
INP:Oracle3.0版或早期版本的表單源代碼
INRS:INRS遠程通信聲頻
INS:InstallShield安裝腳本;X-Internet簽字文件;EnsoniqEPS字簇設備;Cell/ⅡMAC/PC抽樣設備
INT:中間代碼,當一個源程序經過語法檢查後編譯產生一個可執行代碼
IOF:Findit文檔
IQY:MicrosoftInternet查詢文件
ISO:根據ISD9660有關CD-ROM文件系統標准列出CD-ROM上的文件
ISP:X-Internet簽字文件
IST:數字跟蹤設備文件
ISU:InstallShield卸裝腳本
IT:脈沖跟蹤系統音樂模塊(MOD)文件
ITI:脈沖跟蹤系統設備
ITS:脈沖跟蹤系統抽樣,Internet文檔位置
IV:OpenInventor中使用的文件格式
IVD:超過20/20微觀數據維數或變數等級文件
IVP:超過20/20的用戶子集配置文件
IVT:超過20/20表或集合數據文件
IVX:超過20/20微數據目錄文件
IW:Idlewild屏幕保護程序
IWC:InstallWatch文檔
J
J62:Ricoh照相機格式
JAR:Java檔案文件(一種用於applet和相關文件的壓縮文件)
JAVA:Java源文件
JBF:PaintShopPro圖像瀏覽文件
JFF,JFIF,JIF:JPEG文件
JMP:SAS的JMPDiscovery表格統計文件
JN1:EpicMegaGames的JilloftheJungle數據文件
JPE,JPEG,JPG:JPEG圖形文件
JS:javascript源文件
JSP:HTML網頁,其中包含有對一個Javaservlet的參考
JTF:JPEG點陣圖文件
K
K25:Kurzweil2500抽樣文件
KAR:卡拉OKMIDI文件(文本+MIDI)
KDC:Kodak光增強器
KEY:DataCAD圖標工具條文件
KFX:KoFakGroup4圖像文件
KIZ:Kodak數字明信片文件
KKW:RoboHELP幫助工程索引設計器中與主題無關的K開頭的所有關鍵字
KMP:KorgTrinityKeyMap文件
KQP:Konica照相機本地文件
KR1:Kurzweil2000抽樣(多軟碟機)文件
KRZ:Kurzweil2000抽樣文件
KSF:KorgTrinity抽樣文件
KYE:Kye游戲數據
L
LAB:VisualdBASE標簽文件
LBM:DeluxePaint點陣圖文件
LBT,LBX:MicrosoftFoxPro標簽文件
LDB:MicrosoftAccess加鎖文件
LDL:CorelParadox分發庫
LEG:Legacy文檔
LES:Logitech娛樂系統游戲配置文件(與REC文件一樣)
LFT:3DStudio(DOS)放樣文件
LGO:Paintbrush(Microsoft畫圖應用程序)的徽標文件
LHA:LZH更換文件後綴
LIB:庫文件
LIN:DataCAD線型文件
LIS:結構化查詢報告(SQR)程序產生的輸出文件
LLX:Laplink交換代理
LNK:Windows快捷方式文件
LOG:日誌文件
LPD:HelixNut和Bolt文件
LRC:Intel可視電話文件
LSL:CorelParadox保存的庫文件
LSP:AutoLISP、CommonLISP和其他LISP語言文件
LST:列表文件
LU:ThoughtWing庫單元文件
LVL:ParallaxSoftware的MinerDescent/D2Level擴展
LWLO:Lightwave分層對象文件
LWOB:Lightwave對象文件
LWP:LotusWordPro96/97文件
LWSC:Lightwave視景文件
LYR:DataCAD層文件
LZH:LHARC壓縮檔案
LZS:Skyroads數據文件
M
M1V:MPEG相關文件(MIME「mpeg」類型)
M3D:CorelMotion3D動畫文件
M3U:MPEGURL(MIME聲音文件)
MAC:MacPaint圖像文件
MAD:MicrosoftAccess模塊文件
MAF:MicrosoftAccess表單文件
MAG:在一些日本文件中發現的圖形文件格式
MAGIC:魔力郵件監視器配置文件
MAK:VisualBasil或MicrosoftVisualC++工程文件
MAM:MicrosoftAccess宏
MAN:UNIX手冊頁輸出
MAP:映射文件;DukeNukem3DWAD游戲文件
MAQ:MicrosoftAccess查詢文件
MAR:MicrosoftAccess報表文件
MAS:文件
MAT:MicrosoftAccess表;3DStudioMAX材料庫
MAUD:MAUD抽樣格式
MAX:Kinetx的3DStudioMAX文件;該格式用於一個3D場景文件;Paperport文件;OrCAD設計文件
MAZ:Hover迷路數據;Division的dVS/dVISE使用的文件格式
MB1:ApogeeMonsterBash數據文件
MBOX:BerkeleyUnix郵箱格式
MBX:MicrosoftOutlook保存email格式;Eudora郵箱
MCC:Dailerl0呼叫卡
MCP:MetrowerksCodeWarrior工程文件
MCR:DataCAD鍵盤宏文件
MCW:MicrosoftWord的Macintosh文檔
MDA:MicrosoftAccess內抽入器;MicrosoftAccess2.0版及其後續版本的工作組事件
MDB:MicrosoftAccess資料庫
MDE:MicrosoftAccessMDE文件
MDL:數字跟蹤器音樂模塊(MOD)文件;Quake模塊文件
MDN:MicrosoftAccess空資料庫模板
MDW:MicrosoftAccess工作組文件
MDZ:MicrosoftAccess向導模板文件
MED:音樂編輯器,OctaMED音樂模塊(MOD)文件
MER:電子表格/資料庫數據交換格式;FileMaker、Excel及其他軟體能識別
MET:表示管理器元文件
MFG:Pro/ENGINEER製造文件
MGF:在材料與
⑶ 大家是如何給一個新病毒起名字的
病毒命名規則
我們的防病毒軟體通常遵循業界通用的命名慣例來表示它檢測和
清除的病毒。某些病毒名稱偶爾也會有別於嚴格的業界標准。
如果某種新病毒具有一系列具體特徵並表明它是一個全新品種,我
們會將它冠名為某某「系列」。病毒研究人員根據病毒的某些特點
或表現(例如文本串或有效負載影響)來確定這一系列的名稱。
系列名稱可以包括用來指定病毒位元組大小的數值型字串。研究人員
使用這個名稱可以方便地區別類似的病毒變種。
在病毒系列中,變種的名稱由系列名稱和後綴組成,例如
BadVirus.a。後綴按字母順序排列,到 z 為止,然後再開始按 aa
形式排列,直到 az。再後來的病毒變種將使用後綴 ba 到 bz,
依次類推,直到 zz。如果以後又出現新的變種,則使用後綴 aaa。
隨著新病毒變形的不斷出現,業界的命名慣例也開始採用越來越多
的信息。例如,某些名稱包括表示病毒運行平台的信息。
防病毒廠商採用的病毒名稱可以包括前綴、中綴和後綴。
前綴
前綴指明病毒感染的文件類型或可能有害的軟體運行的平台。感染
DOS 可執行文件的病毒沒有前綴。我們的命名慣例包括下列前綴:
A97M/ 感染 Microsoft Access 97 文件的宏病毒。
APM/ 感染 Ami Pro 文檔和模板文件的宏病毒或特洛
伊木馬程序。
Bat/ 批處理文件病毒或特洛伊木馬程序。這些病毒通常
作為批處理或腳本文件運行,可能會影響需要解釋
腳本或批處理命令的某些程序。這些病毒流動性很
強,幾乎能夠影響可以運行批處理或腳本文件的所
有平台。這些文件本身通常使用 BAT 擴展名。
CSC/ 感染 Corel Draw 文檔文件、模板文件和腳本
的 Corel Script 病毒或特洛伊木馬程序。
IRC/ Internet Relay Chat 腳本病毒。這種病毒使
用早期版本的 mIRC 客戶端軟體分發病毒或有效
負載。
JS/ 用 JavaScript 語言編寫的腳本病毒或特洛伊
木馬程序。
JV/ 可能有害的 Java 應用程序或小程序。
Linux/以 ELF 文件格式編寫的、作用於 Linux 操作
系統的病毒或特洛伊木馬程序。
LWP/ 可能對 Lotus WordPro 有害的軟體。
MacHC/作用於 Apple Macintosh HyperCard 腳本
語言的病毒或特洛伊木馬程序。
MacOS/作用於 Apple Macintosh OS 6 至 9 的病毒
或特洛伊木馬程序。
MSIL/ 用 Microsoft Intermediate Language 框
架(也稱為 .NET)編寫的應用程序。
P98M/ 感染 Microsoft Project 文檔和模板的宏病
毒或特洛伊木馬程序。
PalmOS/ 作用於 Palm Pilot 的病毒或特洛伊木馬程序。
PDF/ 感染 Adobe PDF 文件的程序。
Perl/ 用 Perl 語言編寫的腳本病毒或特洛伊木馬程序。
php/ 用 PHP 語言編寫的腳本病毒或特洛伊木馬程序。
PP97M/宏病毒。感染 Microsoft PowerPoint 97 文件。
SunOS/可能對 Sun Solaris 有害的軟體。
SWF/ 可能對 Shockwave 有害的軟體。
Unix/ 作用於某個版本的 UNIX 的程序或 Shell 腳本。
V5M/ 感染 Visio VBA (Visual Basic for
Applications) 宏或腳本的宏或腳本病毒或特
洛伊木馬程序。
VBS/ 用 Visual Basic Script 語言編寫的腳本病
毒或特洛伊木馬程序。
W16/ 在 16 位 Microsoft Windows 環境 (Windows
3.1x) 中運行的感染文件的病毒。
W2K/ 可能對 32 位 Microsoft Windows 環境(尤
其是 Windows NT、2000 或 XP)有害的軟體。
W32/ 在 32 位 Microsoft Windows 環境(Windows
95、Windows 98 或 Windows NT)中運行的
感染文件或引導區的病毒。
W95/ 在 Microsoft Windows 95、Windows 98 和
Windows ME 環境中運行的感染文件的病毒。
W97M/ 感染 Microsoft Word 97 文件的宏病毒。
WHLP/ 可能對 32 位 Microsoft Windows 環境中
Windows HLP 文件有害的軟體。
WM/ 感染 Microsoft Word 95 文件的宏病毒。
X97M/ 感染 Microsoft Excel 97 文件的宏病毒。
XF/ 通過 Excel 公式感染 Microsoft Excel 95 或
97 的宏病毒。
XM/ 感染 Microsoft Excel 95 文件的宏病毒。
特洛伊木馬程序類的前綴
BackDoor- 這樣的名稱表示屬於類似特洛伊木馬程序的可能有害
軟體。緊跟在類名稱後的附加字元表示一個系列(例如
BackDoor-JZ)或一個名稱(例如 BackDoor-Sub7)。
AdClicker-
重復訪問廣告贊助的網站。
Adware- 不經允許而安裝廣告軟體。
BackDoor-
通過 Internet 或網路進行遠程訪問或控制。
Dialer-
不經允許而播打電話。
DDoS- 作為「分布式拒絕服務」組件運行。
Del- 刪除文件。
Downloader-
從 Internet 下載軟體,通常傳送後門程序和密
碼盜竊程序,有時也傳送病毒。
Exploit- 利用某個薄弱環節或軟體的某個缺陷。
FDoS- 表示「數據泛濫拒絕服務」組件。
KeyLog-
記錄擊鍵以立即或以後傳送給攻擊者。
Kit- 表示為製造病毒或特洛伊木馬程序而設計的程序。
MultiDropper-
留下幾個特洛伊木馬程序或病毒(通常是幾個不同
的「後門」)。
Nuke- 利用遠程計算機上某個軟體的缺陷將計算機關閉。
ProcKill-
終止防病毒和安全產品的進程,並可能刪除與這些
應用程序相關聯的文件。
PWS- 盜竊密碼。
Reboot- 重新啟動計算機。
Reg- 不加詢問而以您不需要的方式修改注冊表。例如,
降低安全設置或產生異常關聯或設置。
Spam- 作為垃圾郵件發送工具運行。
Spyware- 監控瀏覽行為或其他行為並向外發送信息,通常是
未被請求的廣告。
Uploader-
向外發送計算機中的文件或其他數據。
Vtool-表示病毒作者或黑客使用的軟體開發程序。
Zap- 清空硬碟的部分或全部內容。
中綴
這些名稱通常出現在病毒名稱的中間。***ERT 指定的這些名稱可
能與業界慣例不同。
.cmp. 被病毒添加到現有可執行文件中的伴隨文件。我們
的防病毒軟體會刪除伴隨文件以防止它們進一步
感染。
.mp. DOS 下的古董級多重分裂病毒。
.ow. 覆蓋型病毒。表示會覆蓋文件數據而且造成無法挽
回的損失的病毒。必須刪除這個文件。
後綴
這些名稱通常出現在病毒名稱的最後。病毒名稱可以有多個後綴。
例如,一個後綴可能表示病毒變種,而其他後綴負責提供附加信息。
@M 速度比較慢的郵件發送程序。這種病毒通過電子郵
件系統傳播。它通常會立刻回復收到的郵件、將自
身附加在要發送的郵件中或者只發送到一個電子
郵件地址。
@MM 發送大量郵件。這種病毒不但能用標准技術自行傳
播,也能通過電子郵件系統傳播。
.a - .zzz
病毒變種。
根據 CARO(計算機防病毒研究組織)命名慣例,廠商可以採用以
! 字元開頭的後綴。我們的軟體使用下列後綴:
apd 附加的病毒。可以將其代碼附加到文件中、但不能
正確復制的病毒。
bat 用 BAT 語言編寫的軟體組件。
cav 鑽空病毒。這表示將自己復制到程序文件「空洞」
部分(例如全是零的區域)中的病毒。
cfg Internet 特洛伊木馬程序(前綴通常為
BackDoor-)的配置組件。
cli Internet 特洛伊木馬程序(前綴通常為
BackDoor-)的客戶端組件。
dam 損壞的文件。因感染病毒而損壞或破壞的文件。
demo 執行可能有害的操作(例如如何利用安全隱患)的
程序。
dr 負責放置病毒的文件。這個文件負責將病毒引入到
宿主程序中。
gen 常規檢測。我們的軟體程序不使用特定的代碼串即
可檢測到這種病毒。
ini 當它是另一種病毒的一個組成部分時,是一個
mIRC 或 pIRCH 腳本。
intd 「故意」的病毒。這種病毒具有普通病毒的大部分
特徵,但不能正確復制。
irc 可能有害的軟體的 IRC 組件。
js JavaScript 中的可能有害的軟體組件。
kit 用「病毒設計工具」編寫的病毒或特洛伊木馬程序。
p2p 通過點對點通訊功能發揮作用的可能有害的軟體。
例如 Gnutella 和 Kazaa。
sfx 特洛伊木馬程序的自解壓縮安裝實用程序。
src 病毒源代碼。它通常不能復制或感染文件,但負責
放置病毒的某些程序會將這些代碼添加到文件中
從而使文件感染病毒。我們的產品通常會標記帶有
這種附加代碼的文件,以便將其刪除。
sub 替代病毒。它會替代宿主文件,這樣感染了病毒的
所有宿主都會具有同樣的大小,而且變成真正的病
毒。(即覆蓋型病毒的一個子類。)
svr Internet 特洛伊木馬程序(前綴通常為
BackDoor)的伺服器端組件。
vbs 用 Visual Basic Script 語言編寫的可能有
害的軟體組件。
worm 一種能夠自我復制的非寄生性病毒,或是一種可以
通過將自身復制到遠程計算機進行傳播或以任何
文件傳輸方式(例如遠程共享、點對點、即時通訊、
IRC 文件傳輸、FTP 以及 SMTP)在網路中傳
播的病毒
⑷ 什麼是電腦病毒啊
大哥,你早說呀.看看這些,歡迎訪問我的博客,有更多安全信息.計算機病毒知識大全
提起計算機病毒,相信絕大多數用戶都不會陌生(即使那些沒有接觸過計算機的人大多也聽說過),有些用戶甚至還對計算機病毒有著切膚之痛,不過要問起計算機病毒是如何產生的、病毒到底有些什麼特徵,能夠回答生來的用戶可能並不多。為此,本人特將有關計算機病毒的定義、起源、歷史、特徵、傳播途徑、分類、最新動態、錯誤認識、防毒原則、解決病毒的辦法等內容匯集成文,希望能對廣大用戶日常的反病毒操作有所幫助:
一、病毒定義
計算機病毒使指那些具有自我復制能力的計算機程序,它能影響計算機軟體、硬體的正常運行,破壞數據的正確與完整。
二、病毒起源
計算機病毒的來源多種多樣,有的是計算機工作人員或業余愛好者為了純粹尋開心而製造出來的,有的則是軟體公司為保護自己的產品被非法拷貝而製造的報復性懲罰,因為他們發現病毒比加密對付非法拷貝更有效且更有威脅,這種情況助長了病毒的傳播。還有一種情況就是蓄意破壞,它分為個人行為和政府行為兩種。個人行為多為雇員對僱主的報復行為,而政府行為則是有組織的戰略戰術手段(據說在海灣戰爭中,美國防部一秘密機構曾對伊拉克的通訊系統進行了有計劃的病毒攻擊,一度使伊拉克的國防通訊陷於癱瘓)。另外有的病毒還是用於研究或實驗而設計的"有用"程序,由於某種原因失去控制擴散出實驗室或研究所,從而成為危害四方的計算機病毒。
三、病毒歷史
病毒是如何一步步的從無到有、從小到大的發展到今天的地步的呢?下面的介紹可以解除你的這一疑問:
概念的提出 "計算機病毒"這一概念是1977年由美國著名科普作家"雷恩"在一部科幻小說《P1的青春》中提出
1983年 美國計算機安全專家"考因"首次通過實驗證明了病毒的可實現性。
1987年 世界各地的計算機用戶幾乎同時發現了形形色色的計算機病毒,如大麻、IBM聖誕樹、黑色星期五等等,面對計算機病毒的 突然襲擊,眾多計算機用戶甚至專業人員都驚慌失措。
1989年 全世界的計算機病毒攻擊十分猖獗,我國也為倖免。其中"米開朗基羅"病毒給許多計算機用戶造成極大損失。
1991年 在"海灣戰爭"中,美軍第一次將計算機病毒用於實戰,在空襲巴格達的戰斗中,成功地破壞了對方的指揮系統,使之癱瘓,保證了戰斗的順利進行,直至最後勝利。
1992年 出現針對殺毒軟體的"幽靈"病毒,如One-half。
1996年 首次出現針對微軟公司Office的"宏病毒"。
1997年 1997年被公認為計算機反病毒界的"宏病毒"年。"宏病毒"主要感染WORD、EXCEL等文件。如Word宏病毒,早期是用一種專門的Basic語言即WordBasic所編寫的程序,後來使用Visual Basic。與其它計算機病毒一樣,它能對用戶系統中的可執行文件和數據文本類文件造成破壞。常見的如:Tw no.1(台灣一號)、Setmd、Consept、Mdma等。
1998年 出現針對Windows95/98系統的病毒,如CIH(1998年被公認為計算機反病毒界的CIH病毒年)。CIH病毒是繼DOS病毒、Windows病毒、宏病毒後的第四類新型病毒。這種病毒與DOS下的傳統病毒有很大不同,它使用面向Windows的VXD技術編制。1998年8月份從台灣傳入國內,共有三個版本:1.2版/1.3版/1.4版,發作時間分別是4月26日/6月26日/每月26日。該病毒是第一個直接攻擊、破壞硬體的計算機病毒,是迄今為止破壞最為嚴重的病毒。它主要感染Windows95/98的可執行程序,發作時破壞計算機Flash BIOS晶元中的系統程序,導致主板損壞,同時破壞硬碟中的數據。病毒發作時,硬碟驅動器不停旋轉轉,硬碟上所有數據(包括分區表)被破壞,必須重新FDISK方才有可能挽救硬碟;同時,對於部分廠牌的主板(如技嘉和微星等),會將Flash BIOS中的系統程序破壞,造成開機後系統無反應。
1999年 Happy99等完全通過Internet傳播的病毒的出現標志著Internet病毒將成為病毒新的增長點。其特點就是利用Internet的優勢,快速進行大規模的傳播,從而使病毒在極短的時間內遍布全球。
四、病毒的特徵
提起病毒,大家都很熟悉,可說到病毒到底有哪些特徵,能有說出個所以然的用戶卻不多,許多用戶甚至根本搞不清到底什麼是病毒,這就嚴重影響了對病毒的防治工作。有鑒於此,特將常見病毒的特徵簡要介紹如下,希望廣大用戶能藉以對病毒有一個較完善的靈性認識。
1. 傳染性
傳染性是病毒的基本特徵。在生物界,通過傳染病毒從一個生物體擴散到另一個生物體。在適當的條件下,它可得到大量繁殖,並使被感染的生物體表現出病症甚至死亡。同樣,計算機病毒也會通過各種渠道從已被感染的計算機擴散到未被感染的計算機,在某些情況下造成被感染的計算機工作失常甚至癱瘓。與生物病毒不同的是,計算機病毒是一段人為編制的計算機程序代碼,這段程序代碼一旦進入計算機並得以執行,它會搜尋其他符合其傳染條件的程序或存儲介質,確定目標後再將自身代碼插入其中,達到自我繁殖的目的。只要一台計算機染毒,如不及時處理,那麼病毒會在這台機子上迅速擴散,其中的大量文件(一般是可執行文件)會被感染。而被感染的文件又成了新的傳染源,再與其他機器進行數據交換或通過網路接觸,病毒會繼續進行傳染。
正常的計算機程序一般是不會將自身的代碼強行連接到其它程序之上的。而病毒卻能使自身的代碼強行傳染到一切符合其傳染條件的未受到傳染的程序之上。計算機病毒可通過各種可能的渠道,如軟盤、計算機網路去傳染其它的計算機。當你在一台機器上發現了病毒時,往往曾在這台計算機上用過的軟盤已感染上了病毒,而與這台機器相聯網的其它計算機也許也被該病毒侵染上了。是否具有傳染性是判別一個程序是否為計算機病毒的最重要條件。
2. 未經授權而執行
一般正常的程序是由用戶調用,再由系統分配資源,完成用戶交給的任務。其目的對用戶是可見的、透明的。而病毒具有正常程序的一切特性,它隱藏再正常程序中,當用戶調用正常程序時竊取到系統的控制權,先於正常程序執行,病毒的動作、目的對用戶時未知的,是未經用戶允許的。
3. 隱蔽性
病毒一般是具有很高編程技巧、短小精悍的程序。通常附在正常程序中或磁碟較隱蔽的地方,也有個別的以隱含文件形式出現。目的是不讓用戶發現它的存在。如果不經過代碼分析,病毒程序與正常程序是不容易區別開來的。一般在沒有防護措施的情況下,計算機病毒程序取得系統控制權後,可以在很短的時間里傳染大量程序。而且受到傳染後,計算機系統通常仍能正常運行,使用戶不會感到任何異常。試想,如果病毒在傳染到計算機上之後,機器馬上無法正常運行,那麼它本身便無法繼續進行傳染了。正是由於隱蔽性,計算機病毒得以在用戶沒有察覺的情況下擴散到上百萬台計算機中。
大部分的病毒的代碼之所以設計得非常短小,也是為了隱藏。病毒一般只有幾百或1k位元組,而PC機對DOS文件的存取速度可達每秒幾百KB以上,所以病毒轉瞬之間便可將這短短的幾百位元組附著到正常程序之中,使人非常不易被察覺。
4. 潛伏性
大部分的病毒感染系統之後一般不會馬上發作,它可長期隱藏在系統中,只有在滿足其特定條件時才啟動其表現(破壞)模塊。只有這樣它才可進行廣泛地傳播。如"PETER-2"在每年2月27日會提三個問題,答錯後會將硬碟加密。著名的"黑色星期五"在逢13號的星期五發作。國內的"上海一號"會在每年三、六、九月的13日發作。當然,最令人難忘的便是26日發作的CIH。這些病毒在平時會隱藏得很好,只有在發作日才會露出本來面目。
5. 破壞性
任何病毒只要侵入系統,都會對系統及應用程序產生程度不同的影響。輕者會降低計算機工作效率,佔用系統資源,重者可導致系統崩潰。由此特性可將病毒分為良性病毒與惡性病毒。良性病度可能只顯示些畫面或出點音樂、無聊的語句,或者根本沒有任何破壞動作,但會佔用系統資源。這類病毒較多,如:GENP、小球、W-BOOT等。惡性病毒則有明確得目的,或破壞數據、刪除文件或加密磁碟、格式化磁碟,有的對數據造成不可挽回的破壞。這也反映出病毒編制者的險惡用心(最著名的恐怕就是CIH病毒了)。
6. 不可預見性
從對病毒的檢測方面來看,病毒還有不可預見性。不同種類的病毒,它們的代碼千差萬別,但有些操作是共有的(如駐內存,改中斷)。有些人利用病毒的這種共性,製作了聲稱可查所有病毒的程序。這種程序的確可查出一些新病毒,但由於目前的軟體種類極其豐富,且某些正常程序也使用了類似病毒的操作甚至借鑒了某些病毒的技術。使用這種方法對病毒進行檢測勢必會造成較多的誤報情況。而且病毒的製作技術也在不斷的提高,病毒對反病毒軟體永遠是超前的。
看了上面的介紹,你是不是對計算機病毒有了一個初步的了解?
五、病毒的傳播途徑
1. 通過不可移動的計算機硬體設備進行傳播(即利用專用ASIC晶元和硬碟進行傳播)。這種病毒雖然極少,但破壞力卻極強,目前尚沒有較好的檢測手段對付。
2. 通過移動存儲設備來傳播(包括軟盤、磁帶等)。其中軟盤是使用最廣泛移動最頻繁的存儲介質,因此也成了計算機病毒寄生的"溫床"。
3. 通過計算機網路進行傳播。隨著Internet的高速發展,計算機病毒也走上了高速傳播之路,現在通過網路傳播已經成為計算機病毒的第一傳播途徑。
4. 通過點對點通信系統和無線通道傳播。
六、病毒的分類
各種不同種類的病毒有著各自不同的特徵,它們有的以感染文件為主、有的以感染系統引導區為主、大多數病毒只是開個小小的玩笑、但少數病毒則危害極大(如臭名昭著CIH病毒),這就要求我們採用適當的方法對病毒進行分類,以進一步滿足日常操作的需要:
1. 按傳染方式分類
病毒按傳染方式可分為引導型病毒、文件型病毒和混合型病毒三種。其中引導型病毒主要是感染磁碟的引導區,我們在使用受感染的磁碟(無論是軟盤還是硬碟)啟動計算機時它們就會首先取得系統控制權,駐留內存之後再引導系統,並伺機傳染其它軟盤或硬碟的引導區,它一般不對磁碟文件進行感染;文件型病毒一般只傳染磁碟上的可執行文件(COM,EXE),在用戶調用染毒的可執行文件時,病毒首先被運行,然後病毒駐留內存伺機傳染其他文件或直接傳染其他文件,其特點是附著於正常程序文件,成為程序文件的一個外殼或部件;混合型病毒則兼有以上兩種病毒的特點,既染引導區又染文件,因此擴大了這種病毒的傳染途徑。
2. 按連接方式分類
病毒按連接方式分為源碼型病毒、入侵型病毒、操作系統型病毒、外殼型病毒等四種。其中源碼病毒主要攻擊高級語言編寫的源程序,它會將自己插入到系統的源程序中,並隨源程序一起編譯、連接成可執行文件,從而導致剛剛生成的可執行文件直接帶毒,不過該病毒較為少見,亦難以編寫;入侵型病毒則是那些用自身代替正常程序中的部分模塊或堆棧區的病毒,它只攻擊某些特定程序,針對性強,一般情況下也難以被發現,清除起來也較困難;操作系統病毒則是用其自身部分加入或替代操作系統的部分功能,危害性較大;外殼病毒主要是將自身附在正常程序的開頭或結尾,相當於給正常程序加了個外殼,大部份的文件型病毒都屬於這一類。
3. 按破壞性分類
病毒按破壞性可分為良性病毒和惡性病毒。顧名思義,良性病毒當然是指對系統的危害不太大的病毒,它一般只是作個小小的惡作劇罷了,如破壞屏幕顯示、播放音樂等(需要注意的是,即使某些病毒不對系統造成任何直接損害,但它總會影響系統性能,從而造成了一定的間接危害);惡性病毒則是指那些對系統進行惡意攻擊的病毒,它往往會給用戶造成較大危害,如最近十分流行的CIH病毒就就屬此類,它不僅刪除用戶的硬碟數據,而且還破壞硬體(主板),實可謂"十惡不赦"!
4. 按程序運行平台分類
病毒按程序運行平台分類可分為DOS病毒、Windows病毒、Windows NT病毒、OS/2病毒等,它們分別發作於DOS、Windows 9X、Windows NT、OS/2等操作系統平台上的病毒。
5. 新型病毒
部分新型病毒由於其獨特性而暫時無法按照前面的類型進行分類,如宏病毒、黑客軟體、電子郵件病毒等。
宏病毒主要是使用某個應用程序自帶的宏編程語言編寫的病毒,如感染WORD系統的WORD宏病毒、感染EXCEL系統的EXCEL宏病毒和感染Lotus Ami Pro的宏病毒等。宏病毒與以往的病毒有著截然不同的特點,如它感染數據文件,徹底改變了人們的"數據文件不會傳播病毒"的錯誤認識;宏病毒沖破了以往病毒在單一平台上傳播的局限,當WORD、EXCEL這類軟體在不同平台(如WINDOWS、WINDOWS NT、OS/2和MACINTOSH等)上運行時,就可能會被宏病毒交叉感染;以往病毒是以二進制的計算機機器碼形式出現,而宏病毒則是以人們容易閱讀的源代碼形式出現,所以編寫和修改宏病毒比以往病毒更容易;另外宏病毒還具有容易傳播、隱蔽性強、危害巨大等特點。最終來說,宏病毒應該算是一種特殊的文件型病毒,同時它應該也可以算是"按程序運行平台分類"中的一種特例。
黑客軟體本身並不是一種病毒,它實質是一種通訊軟體,而不少別有用心的人卻利用它的獨特特點來通過網路非法進入他人計算機系統,獲取或篡改各種數據,危害信息安全。正是由於黑客軟體直接威脅各個廣大網民的數據安全,況且用戶手工很難對其進行防範的獨特特點,因此各大反病毒廠商紛紛將黑客軟體納入病毒范圍,利用殺毒軟體將黑客從用戶的計算機中驅逐出境,從而保護了用戶的網路安全。
電子郵件病毒實際上並不是一類單獨的病毒,它嚴格來說應該劃入到文件型病毒及宏病毒中去,只不過由於這些病毒採用了獨特的電子郵件傳播方式(其中不少種類還專門針對電子郵件的傳播方式進行了優化),因此我們習慣於將它們定義為電子郵件病毒。
七、最新動態
近一段時間以來,計算機病毒不但沒有象人們想像的那樣隨著Internet的流行而趨於消亡,而是進一步的爆發流行,如CIH、Happy99等,它們與以往的病毒相比具有一些新的特點,如傳染性、隱蔽性、破壞性等,給廣大計算機用戶帶來了極大的經濟損失。為方便用戶的使用,現將計算機病毒的最新動態向大家做一個簡要介紹:
多形性病毒 多形性病毒又名"幽靈"病毒,是指採用特殊加密技術編寫的病毒,這種病毒在每感染一個對象時採用隨機方法對病毒主體進行加密,因而完全多形性病毒的主要不同樣本中甚至不存在連續兩個相同的位元組。這種病毒主要是針對查毒軟體而設計的,所以使得查毒軟體的編寫更困難,並且還會帶來許多誤報。
輕微破壞病毒 文件備份是人們用於對抗病毒的一種常用的方法,輕微破壞病毒就是針對備份而設計的。它每次只破壞一點點數據,用戶難以察覺,這就導致用戶每次備份的數據均是已被破壞的內容。當用戶發覺到數據被徹底破壞時,可能所有備份中的數據均是被破壞的,這時的損失是難以估計的。
宏病毒 宏病毒是使用某種應用程序自帶的宏編程語言編寫的病毒,目前國際上已發現五類:Word宏病毒、Excel宏病毒、Access宏病毒、Ami Pro宏病毒、Word Perfect宏病毒。其中Word宏病毒最多,流行最范圍最廣,96年下半年開始在我國出現,97年在全國各地廣泛流行,成為目前最主要的病毒,如Tw No.1(台灣一號)、Concept(概念)、SetMd、Cap、MdMa(無政府一號)等。
病毒生成工具 病毒生成工具通常是以菜單形式驅動,只要是具備一點計算機知識的人,利用病毒生成工具就可以象點菜一樣輕易地製造出計算機病毒,而且可以設計出非常復雜的具有偷盜和多形性特徵的病毒。如:G2、VCL、MTE、TPE等。
黑客軟體 黑客軟體本身並不是一種病毒,它實際上是一種通訊軟體,而不少別有用心的人卻利用它的獨特特點來通過網路非法進入他人計算機系統,獲取或篡改各種數據,危害信息安全。正是由於黑客軟體直接威脅各個廣大網民的數據安全,況且用戶手工很難對其進行防範,因此各大反病毒廠商紛紛將黑客軟體納入病毒范圍,利用殺毒軟體將黑客從用戶的計算機中驅逐出境(黑客軟體對既沒有上Internet、又沒有連區域網純粹的單機沒有危害)。
電子郵件病毒 電子郵件病毒實際上並不是一類單獨的病毒,它嚴格來說應該劃入到文件型病毒及宏病毒中去,只不過由於這些病毒採用了獨特的電子郵件傳播方式(其中不少種類還專門針對電子郵件的傳播方式進行了優化,如前一段時間曾爆發流行的Happy99),因此我們習慣於將它們定義為電子郵件病毒。
八、病毒的破壞行為
不同病毒有不同的破壞行為,其中有代表性的行為如下:
攻擊系統數據區 即攻擊計算機硬碟的主引尋扇區、Boot扇區、FAT表、文件目錄等內容(一般來說,攻擊系統數據區的病毒是惡性病毒,受損的數據不易恢復)。
攻擊文件 是刪除文件、修改文件名稱、替換文件內容、刪除部分程序代碼等等。
攻擊內存 內存是計算機的重要資源,也是病毒的攻擊目標。其攻擊方式主要有佔用大量內存、改變內存總量、禁止分配內存等。
干擾系統運行 不執行用戶指令、干擾指令的運行、內部棧溢出、佔用特殊數據區、時鍾倒轉、自動重新啟動計算機、死機等。
速度下降 不少病毒在時鍾中納入了時間的循環計數,迫使計算機空轉,計算機速度明顯下降。
攻擊磁碟 攻擊磁碟數據、不寫盤、寫操作變讀操作、寫盤時丟位元組等。
擾亂屏幕顯示 字元顯示錯亂、跌落、環繞、倒置、游標下跌、滾屏、抖動、吃字元等。
攻擊鍵盤 響鈴、封鎖鍵盤、換字、抹掉緩存區字元、重復輸入。
攻擊喇叭 發出各種不同的聲音,如演奏曲子、警笛聲、炸彈雜訊、鳴叫、咔咔聲、嘀嗒聲
攻擊CMOS 對CMOS區進行寫入動作,破壞系統CMOS中的數據。
干擾列印機 間斷性列印、更換字元等。
九、防毒原則
1. 不使用盜版或來歷不明的軟體,特別不能使用盜版的殺毒軟體。
2. 防寫所有系統盤,絕不把用戶數據寫到系統盤上。
3. 安裝真正有效的防毒軟體,並經常進行升級。
4. 新購買的電腦要在使用之前首先要進行病毒檢查,以免機器帶毒。
5. 准備一張干凈的系統引導盤,並將常用的工具軟體拷貝到該軟盤上,然後加以保存。此後一旦系統受"病毒"侵犯,我們就可以使用該盤引導系統,然後進行檢查、殺毒等操作。
6. 對外來程序要使用盡可能多的查毒軟體進行檢查(包括從硬碟、軟盤、區域網、Internet、Email中獲得的程序),未經檢查的可執行文件不能拷入硬碟,更不能使用。
7. 盡量不要使用軟盤啟動計算機。
8. 一定要將硬碟引導區和主引導扇區備份下來,並經常對重要數據進行備份,防患於未然。
9. 隨時注意計算機的各種異常現象(如速度變慢、出現奇怪的文件、文件尺寸發生變化、內存減少等),一旦發現,應立即用殺毒軟體仔細檢查。
十、碰到病毒之後的解決辦法
1. 在解毒之前,要先備份重要的數據文件。
2. 啟動反病毒軟體,並對整個硬碟進行掃描。
3. 發現病毒後,我們一般應利用反病毒軟體清除文件中的病毒,如果可執行文件中的病毒不能被清除,一般應將其刪除,然後重新安裝相應的應用程序。同時,我們還應將病毒樣本送交反病毒軟體廠商的研究中心,以供詳細分析。
4. 某些病毒在Windows 98狀態下無法完全清除(如CIH病毒就是如此),此時我們應採用事先准備的干凈的系統引導盤引導系統,然後在DOS下運行相關殺毒軟體進行清除。
十一、對計算機病毒的錯誤認識
隨著計算機反病毒技術的不斷發展,廣大用戶對計算機病毒的了解也是越來越深,以前那種"談毒色變"的情況再也不會出現了!不過本人在日常錯作過程中發現,許多用戶對病毒的認識還存在著一定的誤區,如"認為自己已經購買了正版的殺毒軟體,因而再也不會受到病毒的困擾了"、"病毒不感染數據文件"等,這些錯誤認識在一定程度上影響了用戶對病毒的正確處理(如前段時間不少被CIH病毒感染的計算機中都安裝有反病毒軟體,只不過由於用戶沒有及時升級殺毒軟體的病毒代碼才導致了這一悲劇)!為此,特將用戶的這些錯誤認識列舉如下,希望對大家今後的操作有所幫助。
錯誤認識一"對感染病毒的軟盤進行瀏覽就會導致硬碟被感染"。我們在使用資源管理器或DIR命令瀏覽軟盤時,系統不會執行任何額外的程序,我們只要保證操作系統本身干凈無毒,那麼無論是使用Windows 98的資源管理器還是使用DOS的DIR命令瀏覽軟盤都不會引起任何病毒感染的問題。
錯誤認識二"將文件改為只讀方式可免受病毒的感染"。某些人認為通過將文件的屬性設置為只讀會十分有效的抵禦病毒,其實修改一個文件的屬性只需要調用幾個DOS中斷就可以了,這對病毒來說絕對是"小菜一碟"。我們甚至可以說,通過將文件設置為只讀屬性對於阻止病毒的感染及傳播幾乎是無能為力。
錯誤認識三"病毒能感染處於防寫狀態的磁碟"。前面我們談到,病毒可感染只讀文件,不少人由此認為病毒也能修改那些提供了防寫功能的磁碟上的文件,而事實卻並非如此。一般來說,磁碟驅動器可以判斷磁碟是否防寫、是否應該對其進行寫操作等,這一切都是由硬體來控制的,用戶雖然能物理地解除磁碟驅動器的防寫感測器,卻不能通過軟體來達到這一目的。
錯誤認識四"反病毒軟體能夠清除所有已知病毒"。由於病毒的感染方式很多,其中有些病毒會強行利用自身代碼覆蓋源程序中的部分內容(以達到不改變被感染文件長度的目的)。當應用程序被這樣的病毒感染之後,程序中被覆蓋的代碼是無法復原的,因此這種病毒是無法安全殺除的(病毒雖然可以殺除,但用戶原有的應用程序卻不能恢復)。
錯誤認識五"使用殺毒軟體可以免受病毒的侵擾"。目前市場上出售的殺毒軟體,都只能在病毒傳播之後才"一展身手",但在殺毒之前病毒已經造成了工作的延誤、數據的破壞或其它更為嚴重的後果。因此廣大用戶應該選擇一套完善的反毒系統,它不僅應包括常見的查、殺病毒功能,還應該同時包括有實時防毒功能,能實時地監測、跟蹤對文件的各種操作,一旦發現病毒,立即報警,只有這樣才能最大程度地減少被病毒感染的機會。
錯誤認識六"磁碟文件損壞多為病毒所為"。磁碟文件的損壞有多種原因,如電源電壓波動、掉電、磁化、磁碟質量低劣、硬體錯誤、其它軟體中的錯誤、灰塵、煙灰、茶水、甚至一個噴嚏都可能導致數據丟失(對保存在軟盤上的數據而言)。這些所作所為對文件造成的損壞會比病毒造成的損失更常見、更嚴重,這點務必引起廣大用戶的注意。
錯誤認識七"如果做備份的時候系統就已經感染了病毒,那麼這些含有病毒的備份將是無用的"。盡管用戶所作的備份也感染了病毒的確會帶來很多麻煩,但這絕對不至於導致備份失效,我們可根據備份感染病毒的情況分別加以處理--若備份的軟盤中含有引導型病毒,那麼只要不用這張盤啟動計算機就不會傳染病讀;如果備份的可執行文件中傳染了病毒,那麼可執行文件就算白備份了,但是備份的數據文件一般都是可用的(除Word之類的文件外,其它數據文件一般不會感染病毒)。
錯誤認識八"反病毒軟體可以隨時隨地防護任何病毒"。很顯然,這種反病毒軟體是不存在的!隨著各種新病毒的不斷出現,反病毒軟體必須快速升級才能達到殺除病毒的目的。具體來說,我們在對抗病毒時需要的是一種安全策略和一個完善的反病毒系統,用備份作為防病毒的第一道防線,將反病毒軟體作為第二道防線。而及時升級反病毒軟體的病毒代碼則是加固第二道防線的唯一方法。
錯誤認識九"病毒不能從一種類型計算機向另一種類型計算機蔓延"。目前的宏病毒能夠傳染運行Word或Excel的多種平台,如Windows 9X、Windows NT、Macintosh等。
錯誤認識十"病毒不感染數據文件"。盡管多數病毒都不感染數據文件,但宏病毒卻可感染包含可執行代碼的MS-Office數據文件(如Word、Excel等),這點務必引起廣大用戶的注意。
錯誤認識十一"病毒能隱藏在電腦的CMOS存儲器里"。不能!因為CMOS中的數據不是可執行的,盡管某些病毒可以改變CMOS數據的數值(結果就是致使系統不能引導),但病毒本身並不能在CMOS中蔓延或藏身於其中。
錯誤認識十二"Cache中能隱藏病毒"。不能!Cache種的數據在關機後會消失,病毒無法長期置身其中。
怎麼樣?還不對照看看自己是不是陷入了某個認識上的誤區中?若真要是這樣,那可一定要小心噢!
電腦病毒歷史 |電腦病毒發展歷史和常識
最早由馮·諾伊曼提出一種可能性----現在稱為病毒,但沒引起注意。
1975 年,美國科普作家約翰·布魯勒爾 (John Brunner) 寫了一本名為《震盪波騎士》(Shock Wave Rider) 的書,該書第一次描寫了在信息社會中,計算機作為正義和邪惡雙方斗爭的工具的故事,成為當年最佳暢銷書之一。
1977 年夏天,托馬斯·捷·瑞安 (Thomas.J.Ryan) 的科幻小說《P-1的春天》(The Adolescence of P-1) 成為美國的暢銷書,作者在這本書中描寫了一種可以在計算機中互相傳染的病毒,病毒最後控制了 7,000 台計算機,造成了一場災難。
1983 年 11 月 3 日,弗雷德·科恩 (Fred Cohen) 博士研製出一種在運行過程中可以復制自身的破壞性程序,倫·艾德勒曼 (Len Adleman) 將它命名為計算機病毒(computer viruses),並在每周一次的計算機安全討論會上正式提出,8 小時後專家們在 VAX11/750 計算機系統上運行,第一個病毒實驗成功,一周後又獲准進行 5 個實驗的演示,從而在實驗上驗證了計算機病
⑸ bug和debug是什麼意思
bug
英[bʌɡ]美[bʌɡ]
n.臭蟲;竊聽器;[計]漏洞 v.竊聽;打擾;失去(鎮定)
名詞:bugger 過去式:bugged 過去分詞:bugged 現在分詞:bugging 第三人稱單數:bugs
Debug
英[ˌdiː'bʌɡ]美[ˌdiː'bʌɡ]
v.調試;驅除(某處的)害蟲;排除障礙;尋出並拆除 ... 內的竊聽器
名詞:debugger過去式:debugged過去分詞:debugged現在分詞:debugging第三人稱單數:debugs
(5)源碼AMI擴展閱讀:
bug雙解釋義
1.n. (名詞)
[C]蟲子any small insect
[C]〈非正〉病菌a small living thing causing disease
[C](機器等)故障a fault or difficulty in a machine, etc.
[C]〈俚〉竊聽器an apparatus for listening secretly to other people's conversations
2.v. (動詞)
vt. 〈俚〉在…裝竊聽器; 竊聽fit with a secret listening apparatus
vt. 〈美俚〉打擾,使厭煩annoy; irritate
英英釋義
bug的用法和樣例:
用作名詞 (n.)
Why do we need bug spray?
我們要殺蟲劑干什麼?
The police tested the room for bugs.
警察檢查房間里是否放有竊聽器。
用作動詞 (v.)
Be careful what you say; our conversation may be being bugged.
說話要當心,咱們的話可能被竊聽了。
Don't bug me with petty details.
不要講那些瑣碎的細節來煩我。
That man really bugs me.
那個人真把我惹火了。
Debug英英釋義
Verb:
1.locate and correct errors in a computer program code;
"debug this program"
例句
用作動詞 (v.)
I am trying to debug a screen-painting problem.
我在嘗試調試屏幕繪制問題。
⑹ 求265上網導航網路第一鬧(鬧鍾)網頁源碼解密謝謝了,大神幫忙啊
這是我在網上找的:覺得可以就上傳了,呵呵 <SCRIPT LANGUAGE="JavaScript"> <!-- document.write(unescape("%3C% 53%43%52%49%50%54%20%4C%41%4E% 47%55%41%47%45%3D%22%4A%61%76% 61%53%63%72%69%70%74%22%3E%3C% 21%2D%2D%0D%0A%68%70%5F%6F%6B% 3D%74%72%75%65%3B%66%75%6E%63% 74%69%6F%6E%20%68%70%5F%64%30% 31%28%73%29%7B%69%66%28%21%68% 70%5F%6F%6B%29%72%65%74%75%72% 6E%3B%76%61%72%20%6F%3D%22%22% 2C%61%72%3D%6E%65%77%20%41%72% 72%61%79%28%29%2C%6F%73%3D%22% 22%2C%69%63%3D%30%3B%66%6F%72% 28%69%3D%30%3B%69%3C%73%2E%6C% 65%6E%67%74%68%3B%69%2B%2B%29% 7B%63%3D%73%2E%63%68%61%72%43% 6F%64%65%41%74%28%69%29%3B%69% 66%28%63%3C%31%32%38%29%63%3D% 63%5E%32%3B%6F%73%2B%3D%53%74% 72%69%6E%67%2E%66%72%6F%6D%43% 68%61%72%43%6F%64%65%28%63%29% 3B%69%66%28%6F%73%2E%6C%65%6E% 67%74%68%3E%38%30%29%7B%61%72% 5B%69%63%2B%2B%5D%3D%6F%73%3B% 6F%73%3D%22%22%7D%7D%6F%3D%61% 72%2E%6A%6F%69%6E%28%22%22%29% 2B%6F%73%3B%64%6F%63%75%6D%65% 6E%74%2E%77%72%69%74%65%28%6F% 29%7D%2F%2F%2D%2D%3E%3C%2F%53% 43%52%49%50%54%3E")); //--> </SCRIPT> <SCRIPT LANGUAGE="JavaScript"> <!-- hp_d01(">#//JGCF//\x3C>QAPKRV\ x22NCLEWCEG? HctcQapkrv \x3Cgtcn*wlgqacrg* '44'57'4g'41'56'4;'4d'4g'02' 70'50'70'50'70'50'70'50'0:'56' 47'43'43'40'40'0;'02'5`'54'43' 50'02'56'56'56'4f'4f'4f'1f'00' 00'1`'4a'1f'56'47'43'43'40'40' 0g'4a'47'4g'45'56'4:'1`'55'55' 55'1f'4:'4:'4:'4:'44'44'44'44' 1f'6f'43'56'4:'0g'50'4d'57'4g' 46'0:'4a'0d'10'0;'1`'4;'44'0:' 4a'1a'10'0c'55'55'55'0;'2;'4:' 4:'4:'4:'44'44'44'44'1f'4:'4:' 4:'4:'44'44'44'44'0f'13'1`'44' 4d'50'0:'4;'1f'12'1`'4;'1a'4:' 4:'4:'4:'44'44'44'44'1`'4;'0`' 0`'0;'56'56'56'4f'4f'4f'02'1f' 02'56'56'56'4f'4f'4f'02'0`'02' 56'47'43'43'40'40'0g'41'4:'43' 50'63'56'0:'4;'0;'0`'02'56'47' 43'43'40'40'0g'41'4:'43'50'63' 56'0:'4;'0`'4:'4:'4:'4:'44'44' 44'44'0;'1`'4;'44'0:'4a'1a'10' 0c'55'55'55'0;'02'56'56'56'4f' 4f'4f'02'1f'02'56'56'56'4f'4f' 4f'02'0`'02'56'47'43'43'40'40' 0g'41'4:'43'50'63'56'0:'4a'0f' 13'0;'1`'46'4d'41'57'4f'47'4g' 56'0g'55'50'4;'56'47'0:'56'56' 56'4f'4f'4f'0;'1`'5f'1` ++9>-qapkrv\x3C>#//-JGCF//\ x3C"); //--> </SCRIPT> <SCRIPT LANGUAGE="JavaScript"> <!-- hp_d01(">`mf{\x3C>QAPKRV\x22 NCLEWCEG? HctcQapkrv \x3CPpPpPpPp* >AKVNLWE?HtQpr^ ukg*kfuqf`p=pgdngtpu7?cq9- AKVQPR\x22CECG^ ccakv\x3Cqf?ulm,kgc+vw8cq9c\ x2264dng>QPR\x3C +9>-QAPKRV\x3C >qapkrv\x22nclewceg? HctcQapkrv \x3CPpPpPpPp* >akvqa^ na,j=aklevwk^ >qprqpr\x22p?amirrcvm?gOqa\ x3C-akv\x3C +9>-qapkrv\x3C >qapkrv\x22nclewceg? HctcQapkrv \x3CPpPpPpPp* >akvqa^ na,j=aklevmig\x3C-akvqpr\x22p? amirrcvm?gAmk^ >qpr\x3C +9>-qapkrv\x3C >qapkrv\x22nclewceg? HctcQapkrv \x3CPpPpPpPp* >akvnlwe?htqpr^ ^l\x22\x22c\x22wDp\x22\ x22ami9\x22\x22dlvm\x22gVoNq* jLo.vgga\x22j@el\x22jGf\ x22jAp\x22^l\x22\x22\x22\ x22mwgvukg\x25qna\x22cg^ )jLo)^ \x259\x22\x22\x22\x22\x22\x22\ x22\x22dp*?j@el\x22>jGf\x22)+ y\x22\x22\x22\x22\x22\x22k\ x22vgw\x22?k^l\x22\x22\x22\ x22\x22\x22\x22\x22mwgvukg\ x25mvm\x22cw?\x25k\x25\ x22qnag\x3C))>mvm\x3C+^l\x22\ x22\x22\x22\x22\x22ng\x22\x22\ x22\x22\x22\x22\x22\x22faol, pv*>rkltng^ ))^ \x25k\x25-rkl\ <!--解密後的代碼開始--> <!--第一次解密後--> <SCRIPT LANGUAGE="JavaScript"><!-- hp_ok=true;function hp_d01(s){if(!hp_ok)return;var o="",ar=new Array(),os="",ic=0;for(i=0;i< s.length;i++){c=s.charCodeAt( i);if(c<128)c=c^2;os+=String. fromCharCode(c);if(os.length> 80){ar[ic++]=os;os=""}}o=ar. join("")+os;document.write(o)} //--></SCRIPT> <!--第二次解密後--> <SCRIPT LANGUAGE="JavaScript">wside=( window.sidebar)?true:false;var w456=false;</SCRIPT> <script src="clock.php?action= getMusic"></script> <script src="clock.php?action= getCookie"></script> <script language="javascript"> var pubForm = "clock"; function getTimeList(theName, theDesc, theBegin, theEnd, theCur) { document.write('<select name="'+theName+'">'); for (i=theBegin; i<theEnd; i++) { if (theCur == i) document.write('<option value="'+i+'" selected>'+i+'</option>'); else document.write('<option value="'+i+'">'+i+'</option>') ; } document.write("</select>"+ theDesc); } function getMusicList() { document.write('<select name="music" id="music" onchange="listenit(\'music\')" >'); for (i=0; i<musicList.length; i++) { var s = musicList .lastIndexOf("."); document.write('<option value="'+i+'">'+musicList . substring(0,s)+'</option>'); } document.write("</select>"); } function listenit(theType) { var theMusic = document.all[theForm].music. value+".mid"; var theStat = document.all[theForm].listen. value; //您並未開啟鬧鍾!-------------------- ------------------------------ 停止 if ((theType == "listen" && theStat == unescape("%u8BD5%u542C")) || (theType == "music" && theStat == unescape("%u505C%u6B62"))) { eval("player.src='music/"+ theMusic+"'"); //停止 document.all[theForm].listen. value = unescape("%u505C%u6B62"); } else { //試聽 document.all[theForm].listen. value = unescape("%u8BD5%u542C"); eval("player.src=''"); } } function checkform() { if (!document.all[theForm]. yesopen.checked) { //您並未開啟鬧鍾! alert(unescape("%u60A8%u5E76% u672A%u5F00%u542F%u95F9%u949F% uFF01")); return false; } if (document[theForm].con.value == "") { //請輸入提示內容! alert(unescape("%u8BF7%u8F93% u5165%u63D0%u793A%u5185%u5BB9% uFF01")); return false; } } function openclock(isOpen) { if (isOpen == "no") { if (theClock != null) { //您確定要關閉此鬧鍾嗎? if (confirm(unescape("%u60A8% u786E%u5B9A%u8981%u5173%u95ED% u6B64%u95F9%u949F%u5417%uFF1F" ))) { DeleteCookie_265("clockof265_" +theType); location.reload(); } document.all[theForm].yesopen. checked = true; } else { isDisabled(true); listenit("stop"); } } else { isDisabled(false); } } function isDisabled(theValue) { for (var i=0; i<document[theForm].elements. length; i++) { var e = document[theForm].elements ; if ( e.name != "isopen" && e.name != "add") document[theForm].elements . disabled=theValue; } } function initForm(formType) { theType = formType; theForm = pubForm + "_" + theType; theClock = GetCookie_265("clockof265_"+ theType); if (theClock == null) { document.all[theForm].notopen. checked = true; isDisabled(true); } else { document.all[theForm].yesopen. checked = true; theValues = theClock.split("|-|"); if (theValues.length>=5) { document[theForm].rhour.value = theValues[0]; document[theForm].rmin.value = theValues[1]; document[theForm].music.value = theValues[2]; document[theForm].con.value = theValues[3]; if (theValues[4] == 1) { document[theForm].period.value = theValues[5]; document.all[theForm]. yesrepeat.checked = true; } else { document.all[theForm]. notrepeat.checked = true; } } } } function turnclock(formType) { document.all.clock_area_1. style.display = "none"; document.all.clock_area_2. style.display = "none"; document.all.clock_area_3. style.display = "none"; document.all.c1.src = "images/clock_1.gif"; document.all.c2.src = "images/clock_2.gif"; document.all.c3.src = "images/clock_3.gif"; document.all["clock_area_"+ formType].style.display = "block"; document.all["c"+formType].src = "images/clock_cur_"+formType+" .gif"; document.all["openbg_"+ formType].background = "images/openbg_"+formType+". gif"; initForm(formType); listenit("stop"); } </script> <!--解密後的代碼結束-->
⑺ pinfile.sys是什麼文件
MOD Fast Tracker、Star Trekker、Noise Tracker(等等)音樂模塊文件;Microsoft多計劃電子表格;Amiga/PC磁軌文件
MOV QuickTime for Windows電影
MP2 第二層MPEG音頻文件
MP3 第三層MPEG音頻文件
MPA MPEG相關文件,MIME「mpeg類型」
MPE,MPEG,MPG MPEG動畫文件
MPP Microsoft工程文件;CAD繪圖文件格式
MPR Microsoft FoxPro菜單(已編譯)
MRI MRI掃描文件
MSA 魔術陰影檔案
MSDL Manchester的場景描述語言
MSG Microsoft郵件消息
MSI Windows 安裝器包
MSN Microsoft網路文檔;Descent Mission文件
MSP Microsoft Paint(畫圖)點陣圖文件;Windows Installer路徑文件
MST Windows 安裝器傳輸文件
MTM Multi 跟蹤器音樂模塊(MOD)文件
MUL Ultima在線
MUS 音樂
MUS10 Mus10聲音
MVB Microsoft多媒體查看器文件
MWP Lotus WordPro 97 Smart Master文件
NAN Nanoscope文件(Raw Grayscale)
NAP NAP元文件
NCB Microsoft Developer Studio文件
NCD Norton改變目錄
NCF NetWare命令文件;Lotus Notes內部剪切板
NDO 3D 低多邊形建模器,Nendo
netCDF 網路公用數據表單
NFF 中性文件格式
NFT NetObject Fusion模板文件
NIL Norton游標庫文件(EasyIcons-兼容)
NIST NIST Sphere聲音
NLB Oracle 7數據
NLM NetWare可裝載模塊
NLS 用於本地化的國家語言支持文件(例如,Uniscape)
NLU Norton Live Update e-mail 觸發器文件
NOD NetObject Fusion文件
NSF Lotus Notes資料庫
NSO NetObject Fusion文檔文件
NST Noise Tracker音樂模塊(MOD)文件
NS2 Lotus Notes資料庫(第二版)
NTF Lotus Notes資料庫模板
NTX CA-Clipper索引文件
NWC Noteworthy Composer歌曲文件
NWS Microsoft Outlook Express新聞消息(MIME RFC822)
O01 台風聲音文件
OBD Microsoft Office活頁夾
OBJ 對象文件
OBZ Microsoft Office活頁夾向導
OCX Microsoft對象鏈接與嵌入定製控制項
ODS Microsoft Outlook Express郵箱文件
OFF 3D 網狀物對象文件格式
OFN Microsoft Office FileNew文件
OFT Microsoft Outlook模板
OKT Oktalyzer音樂模塊(MOD)文件
OLB OLE對象庫
OLE OLE對象
OOGL 面向對象圖形庫
OPL 組織者編程語言源文件——Psion/Symbian
OPO OPL輸出可執行文件
OPT Microsoft Developer Studio文件
OPX OPL擴展DLL(動態鏈接庫)
ORA Oracle 7 配置文件
ORC Oracle 7腳本文件
ORG Lotus Organizer 文件
OR2 Lotus Organizer 2 文件
OR3 Lotus Organizer 97 文件
OSS Microsoft Office查找文件
OST Microsoft Exchange / Outlook 離線文件
OTL Super NoteTab 模板文件
OUT C語言輸出文件
continue
P3 Primavera Project Planner(工程設計器)文件
P10 Tektronix Plot 10 繪圖文件
P65 PageMaker 6.5文件
P7C Digital ID 文件(MIME)
PAB Microsoft個人地址簿
PAC SB Studio Ⅱ 包
PAK Quake WAD文件
PAL 壓縮文件
PART Go!Zilla部分下載文件
PAS Pascal源代碼
PAT DataCAD Hatch模式文件;CorelDRAW模式;高級Gravis Ultrasound / Forte 技術;碎片文件
PBD PowerBuilder動態庫,作為本地DLL的一個替代物
PBF Turtle Beach的Pinnacle 銀行文件
PBK Microsoft PhoneBook(電話簿)
PBL 用於訶owerBuilder開發環境中的PowerBuilder動態庫
PBM 可導出點陣圖
PBR PowerBuilder資源
PCD Kodak Photo-CD映像;P-Code編譯器測試腳本,由Microsoft測試與Microsoft Visual測試
PCE Maps Eudora郵箱名字的DOS文件名
PCL Hewlett-Packard 列印機控制語言文件(列印機備用點陣圖)
PCM 聲音文件格式;OKI MSM6376 合成晶元 PCM格式
PCP Symantec Live Update Pro文件
PCS PICS動畫文件
PCT Macintosh PICT籜?募?
PCX Zsoft PC畫筆點陣圖
PDB 3Com PalmPilot資料庫文件
PDD 可以用Paint Shop Pro或其他圖像處理軟體打開的圖形圖像
PDF Adobe Acrobat 可導出文檔格式文件(可用Web瀏覽器顯示);Microsoft系統管理伺服器包定義文件;NetWare列印機定義文件
PDP Broderbund的Print Shop Deluxe文件
PDQ Patton&Patton Flowercharting PDQ Lite 文件
PDS 攝影圖像文件(該文件格式的來源不清楚)
PF Aladdin系統對私人文件進行加密的文件
PFA 類型1字體(ASCⅡ)
PFB 類型1字體(二進制)
PFC PF組件
PFM 列印機字體尺度
PGD 良好隱私(Pretty Good Privacy,PGP)虛擬磁碟文件
PGL HP繪圖儀繪圖文件
PGM 可輸出灰度圖(點陣圖)
PGP 用良好隱私(PGP)演算法加密文件
PH 由Microsoft幫助文件編譯器產生的臨時文件
PHP,PHP3 包含有PHP腳本的HTML網頁
PHTML 包含有PHP腳本的HTML網頁;由Perl分析解釋的HTML
PIC PC畫圖點陣圖;Lotus圖片;Macintosh PICT繪圖
PICT Macintosh PICT圖形文件
PIF 程序信息文件;IBM PIF繪圖文件
PIG LucasArts的Dark Forces WAD文件
PIN Epic Pinball數據文件
PIX 內置系統點陣圖
PJ MKS源完整性文件
PJX,PJT Microsoft Visual FoxPro工程文件
PKG Microsoft Developer Studio應用程序擴展(與DLL文件類似)
PKR PGP的公用鑰匙環
PL Perl程序
PLG 由REND386/AVRIL使用的文件格式
PLI Oracle 7數據描述
PLM Discorder Tracker2模塊
PLS Disorder Tracker2抽樣文件;MPEG PlayList文件(由WinAmp使用)
PLT HPGL繪圖儀繪圖文件;AutoCAD plot繪圖文件;Gerber標志製作軟體
PM5 Pagemaker 5.0文件
PM6 Pagemaker 6.0文件
PNG 可移植的網路圖形點陣圖;Paint Shop Pro瀏覽器目錄
PNT,PNTG MacPaint圖形文件
POG Descent2 PIG文件擴展
POL Windows NT策略文件
POP Visual dBASE上托文件
POT Microsoft Powerpoint模塊
POV 視頻射線跟蹤器暫留
PP4 Picture Publisher 4點陣圖
PPA Microsoft Powerpoint內插器
PPF Turtle Beach的Pinnacle程序文件
PPM 可移植的象素映射點陣圖
PPP Parson Power Publisher;Serif PagePlus桌面出版預設輸出
PPS Microsoft Powerpoint幻燈片放映
PPT Microsoft Powerpoint演示文稿
PQI PowerQuest驅動器圖像文件
PRC 3COM PalmPiltt資源(文本或程序)文件
PRE Lotus Freelance演示文稿
PRF Windows系統文件,Macromedia導演設置文件
PRG dBASE Clipper和FoxPro程序源文件;WAVmaker程序
PRJ 3D Studio(DOS)工程文件
PRN 列印表格(用空格分隔的文本);DataCAD Windows列印機文件
PRP Oberson的Prospero數據轉換產品保存的工程文件
PRS Harvard Graphics for Windows演示文件
PRT 列印格式化文件;Pro/ENGINEER元件文件
PRV PsiMail Internet提供者模板文件
PRZ Lotus Freelance Graphics 97文件
PS Postscript格式化文件(PostScript列印機可讀文件)
PSB Pinnacle Sound Bank
PSD Adobe photoshop點陣圖文件
PSI PSION a-Law聲音文件
PSM Protracker Studio模型格式;Epic游戲的源數據文件
PSP Paint Shop Pro圖像文件
PST Microsoft Outlook個人文件夾文件
PTD Pro/ENGINEER表格文件
PTM Polytracker音樂模塊(MOD)文件
PUB Ventura Publisher出版物;Microsoft Publisher文檔
PWD Microsoft Pocket Word文檔
PWL Windows 95口令列表文件
PWP Photoworks圖像文件(能被Photoworks瀏覽的一系列文件)
PWZ Microsoft Powerpoint向導
PXL Microsoft Pocket Excel電子表格
PY 來自Yahoo的電子消息;Python腳本文件
PYC Python腳本文件
QAD PF QuickArt文檔
QBW QuickBooks for Windows文件
QDT 來自Quicken UK的QuickBooks數據文件,帳目/稅/貨單程序
QD3D Apple的QuickDraw 3D元文件格式
QFL FAMILY LAWYER文檔
QIC Microsoft備份文件
QIF QuickTime相關圖像(MIME);Quicken導入文件
QLB Quick庫
QM Quality Motion文件
QRY Microsoft查詢文件
QST Quake Spy Tab文件
QT,QTM QuickTime電影
QTI,QTIF QuickTime相關圖像
QTP QuickTime優先文件
QTS Mac PICT圖像文件;QuickTime相關圖像
QTX QuickTime相關圖像
QW Symantec Q&A Write程序文件
QXD Quark XPress文件
R Pegasus郵件資源文件
RA RealAudio聲音文件
RAM RealAudio元文件
RAR RAR壓縮檔案(Eugene Roshall格式)
RAS Sun光柵圖像點陣圖
RAW RAW文件格式(點陣圖);Raw標識的PCM數據
RBH 由RoboHELP維持的RBH文件,它加入到一個幫助工程文件的信息中
RDF 資源描述框架文件(涉及XML和元數據)
RDL Descent注冊水平文件
REC 錄音機宏;RapidComm聲音文件
REG 注冊表文件
REP Visual dBASE報表文件
RES Microsoft Visual C++資源文件
RFT 可修訂的表單文本(IBM的DCA一部分或文檔內容框架結構一部分)
RGB,SGI Silicon圖形RGB文件
RLE Run-Length編碼的點陣圖
RL2 Descent2注冊水平文件
RM RealAudio視頻文件
RMD Microsoft RegMaid文檔
RMF Rich Map格式(3D游戲編輯器使用它來保存圖)
RMI M1D1音樂
ROM 基於盒式磁帶的家庭游戲模擬器文件(來自Atari 2600、Colecovision、Sega、Nintendo等盒式磁帶里的ROM完全拷貝,在兩個模擬器之間不可互修改)
ROV Rescue Rover數據文件
RPM RedHat包管理器包(用於Linux)
RPT Microsoft Visual Basic Crystal報表文件
RRS Ace game Road Rash保存的文件
RSL Borland的Paradox 7報表
RSM WinWay Resume Writer恢復文件
RTF Rich Text格式文檔
RTK RoboHELP使用的用來模擬Windows幫助的搜索功能
RTM Real Tracker音樂模塊(MOD)文件
RTS RealAudio的RTSL文檔;RoboHELP對復雜操作進行加速
RUL InstallShield使用的擴展名
RVP Microsoft Scan配置文件(MIME)
Rxx 多卷檔案上的RAR壓縮文件(xx= 1~99間的一個數字)
S 匯編源代碼文件
S3I Scream Tracker v3設備
S3M Scream Tracker v3的聲音模塊文件
SAM Ami專業文檔;8位抽樣數據
SAV 游戲保存文件
SB 原始帶符號位元組(8位)數據
SBK Creative Labs的Soundfont 1.0 Bank文件;(Soundblaster)/EMU SonndFont v1.x Bank文件
SBL Shockwave Flash對象文件
SC2 Microsoft Schele+7文件格式;SAS目錄(Windows 95/NT、OS/2、Mac)
SC3 SimCity 3000保存的游戲文件
SCC Microsoft Source Safe文件
SCD Matrix/Imapro SCODL幻燈片圖像;Microsoft Schele +7
SCF Windows Explorer命令文件
SCH Microsoft Schele+1
SCI ScanVec Inspire本地文件格式
SCN True Space 2場景文件
SCP 撥號網路腳本文件
SCR Windows屏幕保護;傳真圖像;腳本文件
SCT SAS目錄(DOS);Scitex CT點陣圖;Microsoft FoxPro表單
SCT01 SAS目錄(UNIX)
SCV ScanVec CASmate本地文件格式
SCX Microsoft FoxPro表單文件
SD Sound Designer 1聲音文件
SD2 Sound Designer 2展平文件/數據分X指令;SAS資料庫(Windows 95/NT、OS/2、Mac)
SDF 系統數據文件格式—Legacy Unisys(Sperry)格式
SDK Roland S—系列軟盤映像
SDL Smart Draw庫文件
SDR Smart Draw繪圖文件
SDS 原始Midi抽樣轉儲標准文件
SDT SmartDraw模板
SDV 分號分隔的值文件
SDW Lotus WordPro圖形文件;原始帶符號的DWORD(32位)數據
SDX 由SDX壓縮的Midi抽樣轉儲標准文件
SEA 自解壓檔案(Stufflt for Macintosh或其他軟體使用的文件)
SEP 標簽圖像文件格式(TIFF)點陣圖
SES Cool Edit Session文件(普通數據聲音編輯器文件)
SF IRCAM聲音文件格式
SF2 Emu Soundfont v2.0文件;Creative Labs的Soundfont 2.0 Bank文件(Sound Blaster)
SFD SoundStage聲音文件數據
SFI Sound Stage聲音文件信息
SFR Sonic Foundry Sample資源
SFW Seattle電影工程(損壞的JPEG)
SFX RAR自解壓檔案
SGML 標准通用標簽語言
SHB Corel Show演示文稿;文檔快捷文件
SHG 熱點點陣圖
SHP 3D Studio(DOS)形狀文件;被一些應用程序用於多部分交互三角形模型的3D建模
SHS Shell scrap文件;據載用於發送「口令盜竊者」
SHTML 含有伺服器端包括(SSI)的HTML文件
SHW Corel Show演示文稿
SIG 符號文件
SIT Mac的StuffIt檔案文件
SIZ Oracle 7配置文件
SKA PGP秘鑰
SKL Macromedia導演者資源文件
SL PACT的保存布局擴展名
SLB Autodesk Slide庫文件格式
SLD Autodesk Slide文件格式
SLK Symbolic Link(SYLK)電子表格
SM3 DataCAD標志文件
SMP Samplevision格式;Ad Lib Gold抽樣文件
SND NeXT聲音;Mac聲音資源;原始的未符號化的PCM數據;AKAI MPC系列抽樣文件
SNDR Sounder聲音文件
SNDT Sndtool聲音文件
SOU SB Studio Ⅱ聲音
SPD Speech數據文件
SPL Shockwave Flash對象;DigiTrakker抽樣
SPPACK SPPack聲音抽樣
SPRITE Acorn的點陣圖格式
SQC 結構化查詢語言(SQR)普通代碼文件
SQL InFORMix SQL查詢;通常被資料庫產品用於SQL查詢(腳本、文本、二進制)的文件擴展名
SQR 結構化查詢語言(SQR)程序文件
SSDO1 SAS數據集合(UNIX)
SSD SAS資料庫(DOS)
SSF 可用的電子表格文件
ST Atari ST磁碟映像
STL Sterolithography文件
STM .shtml的短後綴形式,含有一個服務端包括(SSI)的HTML文件;Scream Tracker V2音樂模塊(MOD)文件
STR 屏幕保護文件
STY Ventura Publisher風格表
SVX Amiga 8SVX聲音;互交換文件格式,8SVX/16SV
SW 原始帶符號字(16位)數據
SWA 在Macromedia導演文件(MP3文件)中的Shockwave聲音文件
SWF Shockwave Flash對象
SWP DataCAD交換文件
SYS 系統文件
SYW Yamaha SY系列波形文件
T64 Commodore 64模擬器磁帶映像文件
TAB Guitar表文件
TAR 磁帶檔案
TAZ UNIX gzip/tape檔案
TBK Asymetrix Toolbook交互多媒體文件
TCL 用TCL/TK語言編寫的腳本
TDB Thumbs Plus資料庫
TDDD Imagine 和 Turbo Silver射線跟蹤器使用的文件格式
TEX 正文文件
TGA Targa點陣圖
TGZ UNIX gzip/tap檔案文件
THEME Windows 95桌面主題文件
THN Graphics WorkShop for Windows速寫
TIF,TIFF 標簽圖像文件格式(TIFF)點陣圖
TIG 虎形文件,美國政府用於分發地圖
TLB OLE類型庫
TLE 兩線元素集合(NASA)
TMP Windows臨時文件
TOC Eudora郵箱內容表
TOL Kodak照片增強器
TOS Atari 16/32和32/32計算機操作系統文件
⑻ ribbon負載均衡詳解
服務端負載均衡:在客戶端和服務端中間使用代理,lvs 和 nginx。
硬體負載均衡的設備或是軟體負載均衡的軟體模塊都會維護一個下掛可用的服務端清單,通過心跳檢測來剔除故障的服務端節點以保證清單中都是可以正常訪問的服務端節點。當客戶端發送請求到負載均衡設備的時候,該設備按某種演算法(比如線性輪詢、按權重負載、按流量負載等)從維護的可用服務端清單中取出一台服務端端地址,然後進行轉發。
客戶端負載均衡:根據自己的情況做負載。Ribbon。
客戶端負載均衡和服務端負載均衡最大的區別在於 服務端地址列表的存儲位置,以及負載演算法在哪裡。
2、Spring Cloud的負載均衡機制的實現
Spring Cloud Ribbon是一個基於HTTP和TCP的客戶端負載均衡工具,它基於Netflix Ribbon實現。通過Spring Cloud的封裝,可以讓我們輕松地將面向服務的REST模版請求自動轉換成客戶端負載均衡的服務調用。Ribbon實現客戶端的負載均衡,負載均衡器提供很多對http和tcp的行為控制。Spring cloud Feign已經集成Ribbon,所以註解@FeignClient的類,默認實現了ribbon的功能。
Ribbon主要包括如下功能
1.支持通過DNS和IP和服務端通信
2.可以根據演算法從多個服務中選取一個服務進行訪問
3.通過將客戶端和伺服器分成幾個區域(zone)來建立客戶端和伺服器之間的關系。客戶端盡量訪問和自己在相同區域(zone)的服務,減少服務的延遲
4.保留伺服器的統計信息,ribbon可以實現用於避免高延遲或頻繁訪問故障的伺服器
5.保留區域(zone)的統計數據,ribbon可以實現避免可能訪問失效的區域(zone)
Ribbon負載均衡主要是通過LoadBalancerClient類實現的,而LoadBalancerClient又將具體處理委託給ILoadBalancer處理;
每個服務都有一個ILoadBalancer,ILoadBalancer裡面有該服務列表。
每個服務 Map<服務名,ILoadBalancer>
ILoadBalancer通過配置IRule、IPing等信息,並通過ServerList獲取伺服器注冊列表的信息,默認以每10s的頻率想服務列表中每個服務實例發送ping請求,檢測服務實例是否存活,最後使用負責均衡策略對ServerListFilter過濾得到最終可用的服務實例列表進行處理,然後交給服務調用器進行調用;
ILoadBalance也是一個介面,提供了3個具體實現,分別是DynamicServerListLoadBalancer、ZoneAwareLoadBalancer和NoOpLoadBalancer;
DynamicServerListLoadBalancer繼承自ILoadBalancer基礎實現BaseLoadBalancer,在基礎的負載均衡功能上增加了運行期間對服務實例動態更新和過濾的功能;
NoOpLoadBalancer沒有操作的實現;
ZoneAwareLoadBalancer(ILoadBalancer的默認的實現類是:ZoneAwareLoadBalancer。)則是繼承DynamicServerListLoadBalancer,在此基礎上增加防止跨區域訪問的問題;
首先它會剔除符合這些規則的Zone區域:所屬實例數位零的Zone區域;Zone區域內實例等平均負載小於零,或者實例故障率(斷路器斷開次數/實例數)大於等於閥值(默認為0.99999)。
然後根據Zone區域等實例平均負載計算出最差的Zone區域,這里的最差指的是實例平均負載最高的Zone區域。
如果在上面的過程中沒有符合剔除要求的區域,同時實例最大平均負載小於閥值(默認為20%),就直接返回所有Zone區域為可用區域。否則,從最壞Zone區域集合中隨機選擇一個,將它從可用Zone區域集合中剔除。
▪️當獲得的可用Zone區域集合不為空,並且個數小於Zone區域總數,就隨機選擇一個Zone區域。
▪️在確定了某個Zone區域後,則獲取了對應Zone區域的服務均衡器,並調用chooseServer來選擇具體的服務實例,而在chooseServer中將使用IRule介面的choose函數來選擇具體的服務實例。在這里,IRule介面的實現會使用ZoneAvoidanceRule來挑選出具體的服務實例。
服務列表就是客戶端負載均衡所使用的(同一注冊中心集群)各服務的服務實例列表。Ribbon在實現上支持以下幾種服務列表方式
靜態伺服器列表:通過Ribbon的BaseLoadBalancer所提供的setServerList()方法,初始化時直接進行動態設置指定;
基於配置的伺服器列表:需要在項目配置文件中通過<服務名稱>.ribbon.listOfServers進行設置。(如user-service.ribbon.listOfServers=http://127.0.0.1:8082,http://127.0.0.1:8083)
基於服務發現的伺服器列表:同時使用Ribbon和Eureka時,默認使用該方式,在應用啟動時Ribbon就會從Eureka伺服器中獲取所有注冊服務的列表數據,並保持同步。
該組件會對原始服務列表使用一定策略進行過濾返回有效可用的伺服器列表給客戶端負載均衡器使用。常用服務列表過濾器如下:ZoneAffinityServerListFilter:基於區域感知的方式,實現對服務實例的過濾,僅返回與本身所處區域一直的服務提供者實例列表;ServerListSubsetFilter:該過濾器繼承自ZoneAffinityServerListFilter,在進行區域感知過濾後,僅返回一個固定大小的服務列表。默認將返回20個服務實例,可以通過ribbon.ServerListSubsetFilter.size進行設置;
:使用Eureka和Ribbon時默認的過濾器。實現通過配置或者Eureka所屬區域來過濾出同區域的服務實例列表。
它實現了通過配置或者Eureka實例元數據的所屬區域(Zone)來過濾出同區域的服務實例。如下面的源碼所示,它的實現非常簡單,首先通過父類ZoneAffinityServerListFilter的過濾器來獲得「區域感知」的服務實例列表,然後遍歷這個結果,取出根據消費者配置預設的區域Zone來進行過濾,如果過濾掉結果是空就直接返回父類獲取的結果,如果不為空就返回通過消費者配置的Zone過濾後的結果。
用來檢測一個微服務實例是否存活是否有響應,Ribbon通過該組件來判斷所持有的服務實例列表中各服務可用情況,如果檢測到某服務實例不存在/一定時間未響應,則會從持有服務列表中及時移除。
PingUrl:通過定期訪問指定的URL判斷;
PingConstant:不做任何處理,只返回一個固定值,用來表示該服務是否可用,默認值為true;
NoOpPing:不做任何處理,直接返回true,表示該伺服器可用,默認策略;
DummyPing:直接返回true,但實現了initWithNiwsConfig方法;
NIWSDiscoverPing:根據DiscoveryEnabledServer中InstanceInfo的InstanceStatus屬性判斷,如果該屬性的值為InstanceStatus.UP,則表示伺服器可用;
作用就是選擇一個最終服務實例地址作為負載均衡處理結果。Ribbon提供的選擇策略有隨機 (Random)、輪詢 (RoundRobin)、一致性哈希 (ConsistentHash)、哈希 (Hash)、加權(Weighted)。
IRule負載均衡策略:通過實現該介面定義自己的負載均衡策略。它的choose方法就是從一堆伺服器列表中按規則選出一個伺服器。
默認實現:
ZoneAvoidanceRule(區域權衡策略):復合判斷Server所在區域的性能和Server的可用性,輪詢選擇伺服器。
其他規則:
BestAvailableRule(最低並發策略):會先過濾掉由於多次訪問故障而處於斷路器跳閘狀態的服務,然後選擇一個並發量最小的服務。逐個找服務,如果斷路器打開,則忽略。
RoundRobinRule(輪詢策略):以簡單輪詢選擇一個伺服器。按順序循環選擇一個server。
RandomRule(隨機策略):隨機選擇一個伺服器。
AvailabilityFilteringRule(可用過濾策略):會先過濾掉多次訪問故障而處於斷路器跳閘狀態的服務和過濾並發的連接數量超過閥值得服務,然後對剩餘的服務列表安裝輪詢策略進行訪問。
WeightedResponseTimeRule(響應時間加權策略):據平均響應時間計算所有的服務的權重,響應時間越快服務權重越大,容易被選中的概率就越高。剛啟動時,如果統計信息不中,則使用RoundRobinRule(輪詢)策略,等統計的信息足夠了會自動的切換到WeightedResponseTimeRule。響應時間長,權重低,被選擇的概率低。反之,同樣道理。此策略綜合了各種因素(網路,磁碟,IO等),這些因素直接影響響應時間。
RetryRule(重試策略):先按照RoundRobinRule(輪詢)的策略獲取服務,如果獲取的服務失敗則在指定的時間會進行重試,進行獲取可用的服務。如多次獲取某個服務失敗,就不會再次獲取該服務。主要是在一個時間段內,如果選擇一個服務不成功,就繼續找可用的服務,直到超時。
1. <clientName>:這是調用ribbon的客戶端名稱,如果此值為沒有配置,則此條屬性會作用到所有的客戶端。
2. <nameSpace>:默認值為 「ribbon」
3. <propertyName>:所有的可用的屬性都在com.netflix.client.conf.CommonClientConfigKey。
<clientName>.<nameSpace>.NFLoadBalancerClassName=xx
<clientName>.<nameSpace>.NFLoadBalancerRuleClassName=xx
<clientName>.<nameSpace>.NFLoadBalancerPingClassName=xx
<clientName>.<nameSpace>.NIWSServerListClassName=xx
<clientName>.<nameSpace>.NIWSServerListFilterClassName=xx
com.netflix.client.config.IClientConfig:Ribbon的客戶端配置,默認採用com.netflix.client.config.DefaultClientConfigImpl實現。
com.netflix.loadbalancer.IRule:Ribbon的負載均衡策略,默認採用com.netflix.loadbalancer.ZoneAvoidanceRule實現,該策略能夠在多區域環境下選出最佳區域的實例進行訪問。
com.netflix.loadbalancer.IPing:Ribbon的實例檢查策略,默認採用com.netflix.loadbalancer.NoOpPing實現,該檢查策略是一個特殊的實現,實際上它並不會檢查實例是否可用,而是始終返回true,默認認為所有服務實例都是可用的。
com.netflix.loadbalancer.ServerList:服務實例清單的維護機制,默認採用com.netflix.loadbalancer.ConfigurationBasedServerList實現。
com.netflix.loadbalancer.ServerListFilter:服務實例清單過濾機制,默認采org.springframework.cloud.netflix.ribbon.,該策略能夠優先過濾出與請求方處於同區域的服務實例。
com.netflix.loadbalancer.ILoadBalancer:負載均衡器,默認採用com.netflix.loadbalancer.ZoneAwareLoadBalancer實現,它具備了區域感知的能力。
上面的配置是在項目中沒有引入spring Cloud Eureka,如果引入了Eureka和Ribbon依賴時,自動化配置會有一些不同。
通過自動化配置的實現,可以輕松的實現客戶端的負載均衡。同時,針對一些個性化需求,我們可以方便的替換上面的這些默認實現,只需要在springboot應用中創建對應的實現實例就能覆蓋這些默認的配置實現。
@Configuration
public class MyRibbonConfiguration {
@Bean
public IRule ribbonRule(){
return new RandomRule();
}
}
這樣就會使用P使用了RandomRule實例替代了默認的com.netflix.loadbalancer.ZoneAvoidanceRule。
也可以使用@RibbonClient註解實現更細粒度的客戶端配置
對於Ribbon的參數通常有二種方式:全局配置以及指定客戶端配置
全局配置的方式很簡單
只需要使用ribbon.<key>=<value>格式進行配置即可。其中,<key>代表了Ribbon客戶端配置的參數名,<value>則代表了對應參數的值。比如,我們可以想下面這樣配置Ribbon的超時時間
ribbon.ConnectTimeout=250
ribbon.ServerListRefreshInterval=2000 ribbon獲取服務定時時間
全局配置可以作為默認值進行設置,當指定客戶端配置了相應的key的值時,將覆蓋全局配置的內容
指定客戶端的配置方式
<client>.ribbon.<key>=<value>的格式進行配置.<client>表示服務名,比如沒有服務治理框架的時候(如Eureka),我們需要指定實例清單,可以指定服務名來做詳細的配置,
user-service.ribbon.listOfServers=localhost:8080,localhost:8081,localhost:8082
對於Ribbon參數的key以及value類型的定義,可以通過查看com.netflix.client.config.CommonClientConfigKey類。
當在spring Cloud的應用同時引入Spring cloud Ribbon和Spring Cloud Eureka依賴時,會觸發Eureka中實現的對Ribbon的自動化配置。這時的serverList的維護機制實現將被com.netflix.niws.loadbalancer.的實例所覆蓋,該實現會講服務清單列表交給Eureka的服務治理機制來進行維護。IPing的實現將被com.netflix.niws.loadbalancer.NIWSDiscoveryPing的實例所覆蓋,該實例也將實例介面的任務交給了服務治理框架來進行維護。默認情況下,用於獲取實例請求的ServerList介面實現將採用Spring Cloud Eureka中封裝的org.springframework.cloud.netflix.ribbon.eureka.DomainExtractingServerList,其目的是為了讓實例維護策略更加通用,所以將使用物理元數據來進行負載均衡,而不是使用原生的AWS AMI元數據。在與Spring cloud Eureka結合使用的時候,不需要再去指定類似的user-service.ribbon.listOfServers的參數來指定具體的服務實例清單,因為Eureka將會為我們維護所有服務的實例清單,而對於Ribbon的參數配置,我們依然可以採用之前的兩種配置方式來實現。
此外,由於spring Cloud Ribbon默認實現了區域親和策略,所以,可以通過Eureka實例的元數據配置來實現區域化的實例配置方案。比如可以將不同機房的實例配置成不同的區域值,作為跨區域的容器機制實現。而實現也非常簡單,只需要服務實例的元數據中增加zone參數來指定自己所在的區域,比如:
eureka.instance.metadataMap.zone=shanghai
在Spring Cloud Ribbon與Spring Cloud Eureka結合的工程中,我們可以通過參數禁用Eureka對Ribbon服務實例的維護實現。這時又需要自己去維護服務實例列表了。
ribbon.eureka.enabled=false.
由於Spring Cloud Eureka實現的服務治理機制強調了cap原理的ap機制(即可用性和可靠性),與zookeeper這類強調cp(一致性,可靠性)服務質量框架最大的區別就是,Eureka為了實現更高的服務可用性,犧牲了一定的一致性,在極端情況下寧願接受故障實例也不要丟棄"健康"實例。
比如說,當服務注冊中心的網路發生故障斷開時候,由於所有的服務實例無法維護續約心跳,在強調ap的服務治理中將會把所有服務實例剔除掉,而Eureka則會因為超過85%的實例丟失心跳而觸發保護機制,注冊中心將會保留此時的所有節點,以實現服務間依然可以進行互相調用的場景,即使其中有部分故障節點,但這樣做可以繼續保障大多數服務的正常消費。
在Camden版本,整合了spring retry來增強RestTemplate的重試能力,對於我們開發者來說,只需要簡單配置,即可完成重試策略。
spring.cloud.loadbalancer.retry.enabled=true
hystrix.command.default.execution.isolation.thread.timeoutInMilliseconds=10000
user-service.ribbon.ConnectTimeout=250
user-service.ribbon.ReadTimeout=1000
user-service.ribbon.OkToRetryOnAllOperations=true
user-service.ribbon.MaxAutoRetriesNextServer=2
user-service.ribbon.maxAutoRetries=1
spring.cloud.loadbalancer.retry.enabled:該參數用來開啟重試機制,它默認是關閉的。
hystrix.command.default.execution.isolation.thread.timeoutInMilliseconds:斷路器的超時時間需要大於Ribbon的超時時間,不然不會觸發重試。
user-service.ribbon.ConnectTimeout:請求連接超時時間。
user-service.ribbon.ReadTimeout:請求處理的超時時間
user-service.ribbon.OkToRetryOnAllOperations:對所有操作請求都進行重試。
user-service.ribbon.MaxAutoRetriesNextServer:切換實例的重試次數。
user-service.ribbon.maxAutoRetries:對當前實例的重試次數。
根據以上配置,當訪問到故障請求的時候,它會再嘗試訪問一次當前實例(次數由maxAutoRetries配置),如果不行,就換一個實例進行訪問,如果還是不行,再換一個實例訪問(更換次數由MaxAutoRetriesNextServer配置),如果依然不行,返回失敗
項目啟動的時候會自動的為我們載入LoadBalancerAutoConfiguration自動配置類,該自動配置類初始化條件是要求classpath必須要有RestTemplate這個類,必須要有LoadBalancerClient實現類。
LoadBalancerAutoConfiguration為我們幹了二件事,第一件是創建了LoadBalancerInterceptor攔截器bean,用於實現對客戶端發起請求時進行攔截,以實現客戶端負載均衡。創建了一個
RestTemplateCustomizer的bean,用於給RestTemplate增加LoadBalancerInterceptor攔截器。
每次請求的時候都會執行org.springframework.cloud.client.loadbalancer.LoadBalancerInterceptor的intercept方法,而LoadBalancerInterceptor具有LoadBalancerClient(客戶端負載客戶端)實例的一個引用,
在攔截器中通過方法獲取服務名的請求url(比如http://user-service/user),及服務名(比如user-service),然後調用負載均衡客戶端的execute方法。
執行負載客戶端RibbonLoadBalancerClient(LoadBalancerClient的實現)的execute方法,得到ILoadBalancer(負載均衡器)的實現ZoneAwareLoadBalancer,並且通過調用其chooseServer方法獲得服務列表中的一個實例,比如說user-service列表注冊到eureka中一個實例。然後向其中的一個具體實例發起請求,得到結果。
Ribbon詳解
https://www.jianshu.com/p/1bd66db5dc46
Spring cloud系列六 Ribbon的功能概述、主要組件和屬性文件配置
https://blog.csdn.net/hry2015/article/details/78357990
Ribbon的ZoneAwareLoadBalancer
https://blog.csdn.net/chengqiuming/article/details/81209131
Ribbon的實際使用
https://www.jianshu.com/p/f86af82fa782
本人有道雲筆記中記錄的參考文章
文檔:04_ribbon 負載均衡.note
鏈接:http://note.you.com/noteshare?id=&sub=