,,,
-
:
“. . . . ”
: 637 1
637001 Cruel Angel
: .
:
. - , 1998 .
.
:...............................................................................................3
16- .........................................................7
1.1. i8086/88...........................................................................8
1.1.1. 8086/88............................................................8
1.1.2. -...................................................................9
1.1.3 ..................................................................................9
1.2. 80186/80188.....................................................................10
1.2.1. 8087.................................................10
1.3. 80286..................................................................................10
1.3.1. 80286...............................................................11
1.3.2. -........................................................................................12
1.3.3. .........................12
1.3.4. .................................................................................................13
2. 32- .............................14
2.1.1. ............................................................................15
2.1.2. ..................................................................18
2.1.3. ................................................19
2.1.4. -...........................................................................................19
2.1.5. SMM..................................................19
2.1.6. ................................................................................21
2.1.7. ..................................................................................22
2.2. 80386......................................................................................24
2.3. 80486......................................................................................25
2.4. Pentium...................................................................................25
2.5. Celeron....................................................................................29
2.6. PENTIUM II XEON.........................................................30
................................................................................................32
................................................................................34
1979 , Intel i4004. 4 , 640 , 108 0.06 MIPS. . 2300 10 . 8- “” i8008, 16 .
1974 8- i8080, . 2 64 . 6000 6- . (+5, +12 5) . , Altair. 8086 58080 58080, 80- “ ” .
i8085 (5 , 0.37 MIPS, 6500 , 3- ). 8080 , , ( ) . +5.
8080 8085 Z80 Zilog. 8080, , . Sinclair, Z80, , PC 16 286.
16 8086 Intel 1978 . 5 , 0.33 MIPS, 16- ( 8 10 ). 3 , 29 . . 1 . 8080, . 8088 , 8- . IBM PC, Intel. PC , , -. ( ) , PC , , . , . PC “”, , . Intel 32 “ ”, “” BIOS PC. , PC.
80286, , 1982 . 134 . ( 1.5 ) 16 . 1 , 8088.
32- 1985 80386 (275 . , 1,5 ). ( ) 23 , - 4 . , 32- , , V86, . PC, “ ” MS Windows . “ ”: , . , “” . . “” , , , , (, , ) , . Sinclair ZX-Spectrum, 8- 64 (128) . PC , Pentium 200 32 .
386 8086: 32 ( 386DX) 386 SX 16 . PC AT, 286.
Intel486DX 1989 . 1,2 ., 1. 386- ( x87 ). , CISC- ( ) RISC-. , , , . ( SMM), 386 ( Intel386SL).
19993 Pentium 60 66 32 64- . 3,1 , 0,8 , 5 . 486- (, , ). PC . , . Intel ( ), - .
Pentium 75, 90 100, 1994 , Pentium. 0,6 , . , . (75 ) ( ). Pentium PC. 1995 120 133 , 0,35 ( 120 0,6 ). 1996- Pentium 150, 166 200 , Pentium PC .
Pentium Pentium Pro, “ ”. , , 256 . 16- , Windows 95 . 5,5 , 15,5 256 . 150 1995 ( 0,6 ), 166, 180, 200 ( 0,35 ), 512 .
1997 Pentium MMX. . , . , -. MPEG-2, 80- . , Pentium, , , Pentium Pr, Pentium . Pentium 4,5 -,35 . 1997 . 166, 200 233 .
Pentium Pro 1997 Pentium II. Pentium Pro , . , , -. . 233, 266 300 .
, . , 86. (DEC? Motorola, Texas Instruments ) , ; Intel. , RISC, CISC . Pentium , .
, 86, Intel. AMD , , Intel. Cyrix .
, RISC CISC.
RISC Reduced (Restricted) Instruction Set Computer () . , . ( 1) .
CISC Complete Instruction Set Computer () , 86. , , . .
, 486-, CISC- RISC-.
8086 Intel 16- 8086. , 32- (386-, 486-, Pentium, Pentium Pro) 64- , , .
1
16-
16- . “” , .
1.1. i8086/8088
8086, Intel 1978 , 16- . 1088. 8/86- , , -. 20- , 1 . 8086 16-, 8088 8 . , , : 8086 20-60% , 8088 . , , 8- 16- . , - . - 8086 : 86. ( , DMA) . 8087, .
, . . 8086 6- . 2 , . 8088 4 , . . , . -, .
14 16 , 8 16 - . 24 . 12 , 2 ( ). 8088, , 4,77 , 8 10 ( Turbo XT).
1. 1. 1. 8086/88
8086/8088 . ( ) MEMWR# (Memory Write) MEMRD# (Memory Read) . 1 20- . 65 . ( 20 ) 16- Seg (executive address), 4 ( 2.1).
0000
. 2.1. 8086/8088
, , . , , (Low), (High). (Even), (Odd) . , ( L, H), ( ). L, H Intel.
16 , . , ( ).
1.1.2. -
- IN OUT, IORD# (Input/ Output Write) . AL AX . - 16 ( ), 64 -. ( , ), DX ( 16- ).
1.1.3.
8086/88 :
;
;
;
;
, 1, 2 4 . CS;, DS;, ES;, SS;, , REP, , LOCK, . , 16- 8086/88 32- 8086.
. 80186/80188
i80186/80188 80186/80188 : 8085/8088, 16- 8086 - 20 , 80186 16 , 80188 8 . , , . , . 80186/80188 , . , IBM - . , 100% IBM ( MS DOS).
1.2.1. 8087
8087, ( Intel) NPX (Numeric Processor eXtension), (CPU) 8086/8088, 80186/80188. 8086 68 , , , .
80286, 1982 , 16- . . 8086/88 , . (Task switching). , 8086 . :
8086 Real Address Mode ( - Real Mode), 8086. 1 ( , “” , 64 ).
Protect Virtual Address Mode ( - Protect Mode). 16 , 1 . 8086, . ( ) . .
80286 8086/88. 8086, 80286 16- 6 . : 20286 12,5 6 8086 5 . 80287, 8087.
MSDOS 80286 . XENIX, UNIX, OS/2, NetWare286 MS Windows. ( 8086), “” .
1.3.1. 80286
8086/8088, ( ) MEMWR# (Memory Write) MEMRD# (Memory Read) . 24 16 , 1 , . , .
8086, 16- 1 . , 80286 , “” . , 20- . , Seg=FFFFh EA=FFFF, , PA=16*Seg+EA=10FFEF, 8086 0FFEF , . 20 80286 , . 8086 Gate A20, 20 . , - 8042. , “” , (64-16 ) , (Gate A20 Fast Control).
8086 80286 , . , FFFh ( ), , , 13 (0Dh) Segment Overrun Exception. ES-CAPE , , 9 Processor Extension Segment Interrupt.
, 8086 80286. :
CS, DS, SS ES , , , , ;
, (1-64 ) ;
24 , 16 .
, 16- , :
RPL ( 0, 1), TI ( 2) INDEX ( 3-15):
RPL (Requested Privilege Level) ;
TI (Table Indicator) GDT (TI=0) LDT (TI=1) ;
INDEX .
(8 ). ( ) . -. , .
1.3.2. -
8086, 80286 64 32 , ( - IORD#, IOWR#). - 00F8-00FF . - ( [16:20]) . ( , ), DX ( 16- ). REP INSB/INSW, REP OUTSB/OUTSW - , DMA.
- . , , IOPL . 13 ( “General Protection Error”).
1.3.3.
RESET . , FFFF0h. ( !) .
[20:23] . , RESET BIOS FFFFF0-FFFFFFh, 8086/88 ROM BIOS 0FFFFFh. BIOS “” , , BIOS, 0-0FFFFh (0-10FFEF Gate A20). , /AT 80286 ( ) ROM BIOS , .
MSW (Protect Enable). IDT GDT, IDT GDT (24-) . LMSW, , JMP , .
, , JMP TSS . , LDT, . TR TSS, .
1.3.4.
80286 HLT, , , . :
(, ); , GDT LDT;
;
, CPL IOPL ( 13 14 ).
2
32-
32- Intel386. 16- 8086/88 80286 . 64 . 32- 4 , - “ “. 64 , (Paging). -, . , 8086, 80286. , :
Real Address Mode , 8086. 1 ( 64 ).
Protected Virtual Address Mode . 4 , 16 . Virtual 8086 Mode 8086. , 8086. . . , - .
8, 16 32- , , , .
, 32- : 386, 486, Pentium, Pentium Pro Pentium II.
2.1.1.
8086 (8 ), (16 ), (32 ). , . . .
. ( ). . , 4 (Paging), . . , . .
: , . 32- , .
, , ( ) . (base, index, disp) . 16 , , , 4 , 64 . ( ‘” ).
32- . . 16 ( 8086). , , , .
32- . ( ) . () 4 . .
8086/8088, ( ) MEMWR# (Memory Write) MEMRD (Memory Read) . 32 4 , 1 , .
8086, 16- 1. 80286 32- , , . , 20 . 10FFEF Seg=FFFFh EA=FFFFh. 8086 Gate A20, 20 . - 8042 (Gate A 20 Fast Control), .
8086, 64 (FFFFh). , , 32- 13. 16- 16 , “ ” ( 8086). “” . , FFFFh, FFFDh-FFFh ( ), , , 13 (0Dh) Segment Overrun Exception. ESCAPE , , 9 Processor Extension Segment Overrun Interrupt ( 386).
8 32- 11 . :
-, 8, 16 32- .;
(8, 16 32-), .
(. 3.1.) .
:
(Displacement Disp) 8-, 16- 32- , .
(Base) . .
(Index) . .
(Scale) (1, 2, 4 8), . . 32- .
EA=Base+Index*Scale+Disp.
. . 3.1.
|
EA=Disp |
Register Index Mode | EA=Base |
Based Mode | EA=Base+Disp |
Index Mode | EA=Index+Disp |
Scaled Index Mode |
EA=Scalex*Index+Disp* |
- Based Index Mode | EA=Base+Index* |
- Based Scaled Index Mode | EA=Base+Scale* Index |
- Based Index Mode with Displacement | EA=Base+Index+Disp |
- Based Scaled Index with Displacement | EA=Base+Scale*Index+Disp* |
16- , 6 (Address Length Prefix) 32- . (), 64- 13 General Protection Fault.
D : D=0 15 , D=1 32 . .
3.2.
|
16- |
32- |
BX BP | 32- | |
SI DI | 32- , ESP | |
( 1) | 1, 2, 4 8 | |
0, 8 16 | 0, 8 32 |
(. 3.3.). , (CS:; DS:; ES:; SS:; FS: GS) .
3.3.
|
||
|
|
|
CS | ||
SS | ||
- | ES | |
, BP, EBP ESP | DS |
CS,ES,SS FS,GS |
, BP, EBP ESP | SS |
CS,DS,ES, FS,GS |
2.1.2.
.
( ), , , INT xx. .
. , .
INTR (Interrupt Request) (IF=1). , IF (back to back) , INTA# (Interrupt Acknowledge). INTR . , , . , . , IF, .
IF NMI (Non Mascable Interrupt). () 2, , . NMI IRET.
(Exceptions) , .
(fault) , , . ( ), . , , , , .
(trap) , , . , . .
(abort) , , . , .
. Intel 0-31 , BIOS DOS.
2.1.3.
RESET . , FFFFFFF0h. :
FLAGS = 0002h VM RF ;
CR0 PG, TS, EM, MP ;
CS = F000h ( FFFF0000h, 0FFFFh);
DS = ES = SS = FS = GS = 0000h
DH Component Id (03-386, 04-486, 05-Pentium, 06-Pentium Pro Pentium II), DL (Revision Id).
A[20:31] . , RESET BIOS FFFFFFF0-FFFFFFFFh, , 8086/88 16- (FFFFFFh). BIOS , , BIOS, 0-0FFFFFh (0-10FFEF) Gate A20).
RESET , BIST (Built-In Self-Test). 386- 486- 2 20- , . , , EAX . .
2.1.4. -
8086, 32- 64 32 , . 32- . - A[16:31] . ( , ), DX ( 16- ). - IORD#, IOWR#. - , DMA. - 0F8-0FF ( 386 31 , ).
- . , , IOPL - (I/O Remission Bitmap), . 13 ( “General Protection Error ”).
2.1.5. SMM
32- ( 386- 486-), , V86, - SMM (System Management Mode). . , .
SMM SMI# (System Management Interrupt), SMM APIC. . ( ) SMI#, SMM, SMIACT#. SMM SMRAM. , ( ) SMIAKT#. SMI, SMRAM. , , . SMM ( ) , SMI. RSM, , SMRAM, .
SMM , ( SMM ). -, , , SMI. - , SMI HALT: , . -, , Pentium ( Enhanced 486 AMD), ( ) -, SMI#.
- SMM. , , ( ) - , “” . SMI# RDY#, -. SMI “” , - , ( ) “ ”, . , BIOS , “” ( ). SMM :
SMM,
SMM ,
SMRAM,
,
SMM.
SMRAM 32 ( SMM) 4 . SMRAM , SMIBASE ( 30000h), SMIBASE :
FE00h-FFFFh (3FE00h-3FFFFh) (, ). SMI , CR1, CR2 CR4, CS, DS, ES, FS, GS SS. DR5-DR0, TR7-TR3 FPU;
8000h (38000h) (SMI Handler);
0-7FFFh (30000h-37fffh) .
2.1.6.
, 2D 3D- . MMX SIMD (single Instruction Multiple Data).
64- :
(Packed byte) ;
(Packed word) ;
(Packed doubleword) ;
(Quadword) .
0-7, 80- FPU. FPU, , FPU FPU .
(saturating arithmetic). (wraparound mode) , , . . ( ) . , , .
57 . 64- , 8 , 4 2 . :
(Arithmetic Instructions), , ;
(Comparison Instructions) ;
(Conversion Instructions);
(Logical Instructions) , -, , 64- ;
(Shift Instructions) ;
(Data Transfer Instructions) ;
(Empty MMX State) .
.
, FPU, TOS. , TOS FPU. “11”, . . [79:64] FPU , FPU .
. ( ). FPU , . .
. , FPU.
FPU FPU.
2.1.7.
, 486-. , .
486 Pentium , Pentium Pro Pentium II . , . . - .
- , 486 Write Through ( ) -. 486- Write Back ( ).
- 486, . 3.1.7. (Valid bit) , “ ”.
- : , , , .
. , , . - ( cache hit), -, . , ( ), ( ).
4 Ru
. . .
. . .
. . .
. . .
. . .
1
4
3.1.7. 486
(Cache Miss) , . , 16 (32 Pentium) , . , . 32- (64- Pentium ).
, . , , ( ), . , , . LRU (Least Recently Used) “-LRU”. ( ) (- ).
, - , . , . ; , -.
- ( ) FLUSH# (, , RESET). , INVD WBINVD. INVD , . WBINVD ( INVD). . , , , .
, , . - . ( ) , AHOLD. A[31:4], , EADS#. , ( ). .
. . KEN# . . PCD (Page Cache Disable) . WB- PWT (Page Write Through) . CR0:CD (Cache Disable) NW (No Write Through). :
CD=1, NW=1 , . , , “” ;
CD=1, CW=0 , . KEN# () . , ;
CD=0, NW=1 ( );
CD=0, NW=0 .
CD=1 NW=1, (Flush). .
486 PCD PWT, () ( ). , (, ), PCD PWT CR3, PCD PWT , PCD PWT . , CD NW CRO.
WB/WT#, .
, (, ) . , (, ) , . , , , , . .
( ), PCD PWT CR3, , , CD NW CR0.
( KEN#) ( ) .
2.2. 80386
80386 : , , . , 80386 8086, , , 32- . 80386 , 8086, 32- . , 8086 80386 . . 80386 () (CR) (MOV to CR). 80286 LMSW. , CR.
80386 . , 8086. 8086 (.. ). 80386 8086 - . 8086 , 80386.
2.3. 80486
1989 . Intel Intel-80486. 486 32- , - 8 ( DX4 -16 ). SX . DX2 (, 486DX2-66 33- ), , - 90 . DX4 - 486DX4-75 486DX4-100 25- 33- . DX2-66 Pentium-60/66, 486DX4-100 Pentium 60. 3,3 , . 486DX4-75 , , Notebook, 486DX4-100 - .
2.4. Pentium
1993 . Intel Pentium. Pentium . , -. 64- ( ), 16 - - 8 , . OverDrive. , SX. OverDrive Pentium ( P24T Pentium SX), . . , 486 24, , , , , Intel . Intel , , . Pentium , Intel - iCOMP (Intel COmparative Microprocessor Performance), , , ( Pentium , 486DX2-66, , ).
iCOMP |
|
486SX2-50 |
180 |
486DX2-50 | 231 |
486DX2-66 | 297 |
486DX4-75 | 319 |
486DX4-100 | 435 |
Pentium 60 |
510 |
Pentium 66 | 567 |
Pentium 90 | 735 |
Pentium 100 | 815 |
, iCOMP Intel Pentium. , 735\90 815\100 90 100 . Intel, , 486 Pentium. AMD (Advanced Micro Devices) 486DX-40, 486DX2-50, 486DX2-66. 486DX2-80 486DX4-120 Intel , Intel ( ). , , 40 , Intel, 486DX-33, 20 . Cyrix 6 7 ( 486SX2 4860DX2) 33 40 , DX2-50 DX2-66. - 8 . , Intel, - . , . 486 Cyrix , Intel AMD. Intel, Pentium 70 , Cyrix 90, 1 "": 32 8 . 1 Intel. 486 - 486SX-33,486SX-40, 486SX-80, 486DX-40 UMC. Intel. - . Pentium - 586 - NexGen. 64- 60 66 , RISC86 8086. - 3,3 . , Pentium. Texas Instruments , 486DLC, , 80386 80486 ( 386 , 80486 80386. - 486SXL 8 - 486 . - Power PC 601 (IBM, Apple, Motorola), Intel ( - Power IBM - 32 ). , Power PC Pentium . Power PC 601 , Pentium, Pentium , . 601 6000 IBM PowerMac Apple. Power PC, , , , .
, , . , - . - . , . . . Intel-80386, .. 32 .
5 (Pentium Pentium MMX) :
CMPXCHG8B (compare and exchange 8 bytes)
CPUID (CPU identification)
RDTSC (read time-stamp counter)
RDMSR ( read model-specific register)
WRMSR (write model-specific register)
RSM (resume from SSM)
MOV, , 5 . MSR (Model Specific Register). CR4. EFLAGS :
VIF (virtual interrupt flag)
VIP (virtual interrupt pending)
ID (identification flag)
1. EFLAGS 5
31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 | 23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 | 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | ID | VIP | VIF | AC | VM | RF | 0 | IIT | IOPL | IOPL | OF | DF | IF | TF | SF | ZF | 0 | AF | 0 | PF | 1 | CF |
:
#GP .
#PG .
#18 Machine Check Exception. . . MSR-.
Pentium , . . Pentium MMX . P5 (U V ). , . , U- , V . U V .
(PF pre fetch) . (F fetch). , . (F) (D1) FIFO . . FIFO , .. , . (F) FIFO . ( ) FIFO (D1). , FIFO . , FIFO , (PF) (F), , ( FIFO ) . , , , , . , , (EX), . V , - U . (EX), . U (EX), V , , .. . . P5.
PF .
F .
D1 .
D2 .
EX : INT , , .
MMX , Mex.
FPU , X1, , (FST).
WB .
Mex MMX . .
Wb/M2 . .
M3 .
Wmul .
X1 , .
X2 FPU .
WF .
, (EX), , . FPU , , FPU (X1), . , Fmul, Fmul. Mul, (EX), .
6 (Pentium Pro Pentium II) :
CMOVcc (Conditional Move)
FCMOVcc (Floating point Conditional Move) FPU- [ST(0)]
FCOMI (Floating point Compare and set EFLAGS) FPU EFLAGS .
RDPMC (Read Performance Monitoring Counters) .
UD2 (Undefined) ).
6 5. 6 . . , (out-of-order execution), . 6 :
In-Order Issue Front End. .
Out-of-Order Core. . .
In-Order Retirement unit. .
, 5 :
Pentium , FDIV.
Pentium Pentium MMX F0, .. F0, 0F, C7, C8.
2.5. Celeron
7 1998 Intel Celeron 300 266 . , , , Celeron, .
Tom’s Hardware Guide , Celeron . . Celeron , 0.25 Deschutes. , Pentium II, 333, 350 400 ( Pentium II Klamath 0.35 ). , , , , Celeron Pentium II. , Celeron ( , , ). Celeron , , . Celeron Mendocino , , .
Celeron, BX, 100 , ... . -, Celeron EX, Pentium II. , , . , . BX, Intel, , 100 . Celeron, , , , 66 . , .. , , BX, . Celeron ?
Intel : Celeron 20 ( Pentium II 233 24 ). micro ATX, Celeron , , , , , . iXBT (ixbt.stack.net), PC: iXBT. Celeron, , 4*112=450 . 5 , , - Quake 2, Xwing Vs TieFighter, Die by Sword 3D 3-4 .
Intel Celeron? , , Pentium II 233 266 . , Celeron AMD K6-2.
2.6. PENTIUM II XEON
Pentium II Xeon 450
6 1998 . Intel Pentium II Xeon 450 , () . , Pentium II Xeon. () , Pentium II Xeon, , . Intel Pentium II Xeon 450 , , Compaq, Dell, Fijutsu, Gateway, HP, IBM, Intergraph, NEC, Siemens Nixdorf (SNI) UMAX, Pentium II Xeon 450 .
" , Intel, , - (Olivier Riviere), Intel , . - Pentium II Xeon Intel , Pentium II Xeon 450 ".
Pentium II Xeon, 450 - 2- (L2), , , 100 . Pentium II Xeon "/" , . 440GX AGPset , , 2 AGP.
Pentium II Xeon 450 - 2- 512 1.000 824 . Pentium II Xeon 450 1999 .
|
1.
70-
4004 |
8008 |
8080 |
8086 |
8088 |
|
|
15/11/71 | 1/4/72 | 1/4/74 | 8/6/78 | 1/6/79 |
|
108 | 108 | 2 | 5 , 8 , 10 | 5 , 8 |
|
4 | 8 | 8 | 16 | 8 |
|
2
300 |
3 500 |
6
000 |
29
000 |
29
000 |
|
640 | 16 | 64 | 1 | 1 |
|
-- | -- | -- | -- | -- |
|
, | 10- 8008 | 10- 8080 | 8086, 8- |
.2. 80-
80286 |
|
|
|
|
|
1/2/82 | 17/10/85 | 16/6/88 | 10/4/89 |
|
6 , 8 , 10 , 12.5 | 16 , 20 , 25 , 33 | 16 , 20 , 25 , 33 | 25 , 33 , 50 |
|
16 | 32 | 16 | 32 |
|
134
000 |
275
000 |
275
000 |
1,2
|
.2. |
16 | 4 | 4 |
4 |
|
1 | 64 | 64 | 64 |
|
3-6 8086 | X86, 32- | 32- 16- | - 1- |
.3. 90-
Intel486TM SX |
Pentium |
Pentium Pro |
Pentium II |
|
|
22/4/91 | 22/3/93 | 01/11/95 | 07/5/97 |
|
16
, 20 , |
60 , 66 , | 150 , 166 , 180 , 200 | 200 , 233 , 266 , 300 |
75 , 90 , | ||||
100 , 120 , | ||||
133 , 150 , | ||||
166 | ||||
|
32 | 32 | 64 | 64 |
|
1,185
|
3,1
|
5,5
|
7,5 |
|
4 | 4 | 64 | 64 |
|
64 | 64 | 64 | 64 |
|
Intel486TM DX, |
Intel486TM DX 33- |
, , Intel MMXTM |
. . intel 8086 Pentium; - -“ ” 1997.
.. ; MMX; Ȼ - 1998.
.. IBM PC ; 5 ; -
Computer World ;N 46(111); 9 1997
Computer World ; N 47(112); 16 1997
1994.
; 1995.
; N 23 (251); 16 1998
* 32-
Copyright (c) 2024 Stud-Baza.ru , , , .