Escolar Documentos
Profissional Documentos
Cultura Documentos
2005
: ..
..
, : .
:
, 2005. 281 .
,
.
: Windows (Microsoft), OS/2 (IBM), QNX
(QNX Software Systems Limited), Unix, Linux .
010502 (351400)
( ).
..,
2005
, 2005
...........................................................................................7
1.
............................................10
1.
.................................................10
1.1 .....................10
1.2 . ......................................16
1.3 () .....................................................................26
1.4 ...........................................................................32
1.5 ...............................39
.......................................................43
2. .............................................................44
2.1 .........................44
2.2 ..........46
2.2.1 ....................................46
2.2.2 ......................................57
2.2.3 ..........................................60
.......................................................63
3. ..............................................................64
3.1 ................................................................64
3.1.1 -
............................................................................64
3.1.2 , , , ...................................65
3.1.3 , ..............................67
3.1.4 ............69
3.1.5 ....................69
3.1.6 ................................................................................70
3.2 ...................................71
3.2.1 MS DOS ........71
3.2.2 Microsoft
Windows.........................................................................85
3.3 ..............................................95
3.3.1 ...........95
3.3.2 ...............96
3.3.3
.........................................................................100
3.3.4 ..................................................102
.....................................................106
4. ........107
4.1 ...................107
4.1.1 ...........107
4.1.2
..........................................................................108
4.1.3
.......................................................112
4.2 .............................................117
4.2.1 ................................................117
4.2.2 .................................................118
4.3 .............................................................124
4.3.1 ...............................124
4.3.2 FAT ..............................................127
4.3.3 NTFS ............................................133
4.3.4 HPFS ............................................142
4.3.5 UNIX......................................151
4.3.6 CD-ROM .............................157
.....................................................158
5.
.......................................159
5.1 ..159
5.2 ...........................170
5.3 ...............................173
5.4
........................................................174
5.4.1 ...........177
5.4.2 API ....179
5.4.3 - POSIX .....186
.....................................................188
2. .....190
6. Microsoft..........................190
6.1 MS DOS.......................................190
6.1.1 MS DOS .................................................190
6.1.2
6.1.3
6.1.4
6.1.5
6.1.6
6.1.7
MS DOS...........................................191
MS DOS....................193
MSDOS CONFIG.SYS.............194
COMMAND.COM .195
AUTOEXEC.BAT....196
MS DOS
....................................................................198
6.2 Windows 95 .................................202
6.3 Windows 98 .................................207
6.4 Windows Millennium Edition..............................................209
6.5 Windows NT....................................................212
6.5.1 ..........................................................212
6.5.2 Windows NT Server 4.0 ...............................................212
6.5.3 Windows NT Workstation 4.0.....................................214
6.6 Windows 2000 .................................................215
6.6.1 Windows 2000 Server ..................................................215
6.6.2 Windows 2000 Professional .........................................217
6.7 Windows XP ................................219
6.8 Windows 2003 Server ..........................................................222
.....................................................226
7. OS/2 Warp ..................228
7.1 OS/2 Warp .....................................228
7.2 OS/2 Warp..............................231
7.3 OS/2 Warp................................233
7.4 OS/2 Warp 4.5...............235
.....................................................237
8. UNIX.........................238
8.1 UNIX.....................238
8.2 UNIX ..........................239
8.3 UNIX .................................244
8.4 UNIX .........................247
8.5 Linux ............................................251
.....................................................253
9. .
QNX ...............................................255
9.1 QNX.......255
9.2 QNX........................257
9.3 QNX...............................................262
.....................................................265
...................................................................266
...................................................................................271
.................................................................273
.
.
. ,
(). , .
: ,
(), .
: ( , , , , ),
(, , ),
, .
.
IBM PC- - .
1945 . - , ,
(,
). ,
, - .
.
7080- . 90- ,
.
,
.
,
, .
( 69) .
,
, ,
, ,
.
, ,
, .
: - ; ;
; ;
; .
.
, , , , :
FAT (File Allocation Table), FAT32, NTFS (New Technology File
System), HPFS (High Performance File System),
UNIX,
- CD-ROM (Compact Disk
Read Only Memory) CDFS (Compact Disk File System), UDF
(Universal Disk Format).
, -
, -
POSIX (Portable Operating System
Interface for Computer Environments).
Microsoft,
Windows MS DOS (Microsoft Disk Operation System)
Windows 2003 Server.
IBM OS/2 Warp,
OS/2
Warp 4.5.
Unix . Unix; Unix-
Linux.
, QNX (Queue
Nicks), QNX SoftWare System. QNX
.
10
1.
1.
1.1
() , .
,
.
, , , ,
[1]:
- ;
- ;
- .
.
1.
, ,
,
,
[2].
.
[2]:
- ,
11
() ( ) (, ), ;
- ,
, ;
- ;
-
,
;
- ;
- ,
,
;
- /;
- ( );
- ,
;
-
;
- ;
- ;
- ;
- , ;
-
();
- ().
, , ,
12
,
[2].
, . , ,
.
,
() , ,
.
. , / , , . ,
( ,
, , ..), / ( , , / ..).
/, .
/ ,
/ .
, ,
,
(, ,
13
). .
,
,
. (), , ,
. , , ,
.
,
, . . ,
[2], , ( ,
), . , ,
, ,
.
.
. . -
14
X Windows UNIX,
PM Shell Object Desktop OS/2
Presentation Manager;
Windows Microsoft,
Explorer , , UNIX, OS/2 MAC OS. ,
Microsoft , Explorer (
system.ini, Windows,
SHELL=EXPLORER.EXE), ,
, ( ). , API
(Application Program Interface),
, /.
, , . , OS/2
, MS DOS Windows3.x.
. , Linux
,
Windows 95/98/Me.
, ,
Windows NT. , MS DOS, OS/2,
Windows3.x.
, - .
, WMWARE,
Linux , Windows.
, , ,
Windows, , -
15
,
Linux.
( ). ,
,
,
, , .
,
, ,
.
Symantec,
(
IBM PC). ,
.
2. , ,
, , , , .
, , . ,
,
, .
,
C/C++ Watcom OS/2
OS/2, DOS
Windows. ,
,
-. , i80x86 ,
.
3. , ,
,
16
,
, . , , ,
, ..
1.2 .
( ) . . , ,
[3]. ,
70- , (task) ,
. ,
. . : -,
, -, () ,
.
(): , . - ,
, , .
-
,
, , , , , , .
. -
17
.
, , , . , , [2]. ,
(
) ( ), (. 1.1).
. 1.1
, , / [4].
. ,
,
.
,
. ,
,
, .
18
.
,
,
.
, / .
,
,
.
()
. - , /.
() . ,
( )
/, ( , ) .
, ,
, ,
. , .
.
,
19
.
, ,
, ,
.
. -
( , /,
..)
( ,
, /, , ,
..) (, ) . , , (,
,
,
).
, , . ,
, - ..
, , [2]:
- ,
;
-
;
- ( ).
,
,
, , ,
, (). , .
20
, ,
- . , ,
, .
.
,
, .
. ,
,
.
,
. , .
, :
, [3].
,
, : ,
, . ,
()
. [5]:
- , () ;
21
- ;
- .
. , .
. . . ,
(. 5.2)
, (
QNX Quantum
Software Systems) [6]. UNIX- , .
, , , , ,
: .
,
, ,
/ .
[2]:
: .
, ;
: , ;
22
:
, /.
,
, , , - .
, ,
- . ( ) , () (). .
.
(), .
, (, , , , , ..). , . ,
() .
. , , , ,
/, . . 1.2 [2].
.
:
23
- ().
,
,
( );
- (
, );
- (
, , , , );
- 1
( );
- .
, , .
(
)
(
)
. 1.2
, ,
, - ,
1
,
.
24
. ,
.
[2]:
- ,
. ( ), (,
, , , ).
:
(
, ),
;
-
;
- ( ) /,
, , ,
( ),
.
(
/, ,
..)
. ,
, , . .
25
, .
, ( , ). :
- PID (Process Identificator);
- ( ) , ;
- , .
;
- , , ( , , / ..);
- ( ),
,
, . ;
- , /
( , / ..);
- ( ) ;
- ( , , );
- ,
,
( - , ).
, ,
,
()
. (
26
)
, .
, , .
, / , /
.
(
, ),
. , OS/2
CONFIG.SYS, Windows NT .
, , ,
, , .
( )
. , ,
Intel 80x86, 80286, TR (Task Register),
TSS (Task State Segment),
[7]. ,
TSS. , ,
TSS, , , , , ..
1.3 ()
.
-
27
. .
, ,
, ().
(process) ,
: ;
, ,
.. ,
, ,
,
. , .
, . ,
. ,
, ,
.
, .
, , . , ,
( ),
(, ),
(). ,
.
, -
28
, ,
, .
, ,
. ()
, , , - .
, ,
. (
,
, ) ,
, , . ,
,
.
; ,
. , OS/2, , ,
.
,
.
, ,
. , , .
29
( )
.
. , , , , [2].
. ,
, -,
. ( ,
), . (
), .
, , .
,
.
, . , , -, , -, .
,
. . ,
, , ,
, ..
, , , -, .
, , ,
, -
30
,
. , , ,
, .
, ,
(). (task).
.
, . , , , , (process) , ,
. ,
,
, . ,
, . , , ( ) .
[8].
1.
,
.
, ,
31
.
,
/,
.
2. . , , /.
, .
, ,
, , .
3.
, . .
,
, . , .
4. , .
,
.
,
.
5. , . ,
,
.
,
.
,
- (. 3).
6. , - , -
32
, .
,
. , ,
.
. .
7. .
, .
,
.
1.4
,
, [2]. ,
, ,
.
50-
, .
.
.
, .
[2]:
33
1) ( ) ( 4);
2) , , , ( , , , i80x86 CS IP- ), (, ) [7];
3) . ,
.
, i80286
32- , i80386,
;
4) , 2 .
;
5) . ,
3, ;
6) ,
(, 4);
7) .
13 , 47 .
(. 1.3). ( , ) ,
34
. . .
.
,
,
...
...
N
,
. 1.3
:
1) ;
2) ;
3) .
. ,
.
, system stack.
,
, : (
) ().
35
, , :
- ;
- ( /);
- ;
- ;
- .
,
.
:
- ( ,
);
-
;
- ;
- ;
- ,
.
, .
, ,
. , , .
.
, . ,
,
. ,
36
,
, . .
, , ; .
, .
, ( , ).
, ,
- . , ,
.
.
: , ()
. ,
,
.
.
,
, .
, , , .
, . -
37
( )
:
- , . .
;
- , .
.
,
.
;
- ,
.
.
.
, . , ,
() . ,
,
. ,
, .
, , ,
38
(. 1.4). ,
.
, .
,
.
1
2
...
...
N
,
, ()
, ,
(
)
. 1.4
, , ,
,
. , .
/ . ,
-
39
, ( ,
) ,
.
1.5
(, , ),
,
, .
[1]: , ;
; ,
.
.
:
1) (MS DOS, MSX);
2) (OS/2, UNIX, Windows).
, . , , .
, ,
, , , , .
.
: (MS DOS, Windows3.x, OS/2); (UNIX, Windows NT). -
40
. , , .
.
.
. Solaris Sun, Oen Server
Santa Crus Oerations, OS/2 IBM, Windows NT
Microsoft NetWare Novell.
: .
,
. ,
.
:
- (OC EC),
- (UNIX, Windows),
- (QNX).
, . , .
:
, ;
, .
41
, , ; , ,
-. ,
, ,
. ,
.
, , , - -. ,
. , , , , , -,
. ,
. .
- . , .
,
, . ,
,
, , . , , ,
42
, , , , , .
, .
(, , ) , , , .. , , , :
; , , ; . ,
(
). ,
.
, .
, , , .
.
.
,
QNX, -
43
Windows 9x Linux.
Windows , ()
. Linux , ,
, ,
, .
1. .
2. ?
3. ,
.
4. : task (),
process (), thread (, ). ?
5. ? , ,
()?
6. . ? ?
7. :
? ?
8. ;
, .
9.
, ?
10. ?
44
2.
2.1
. , :
- ;
- ;
- , .
.
. . , , , . , .
, - , [2]. , , .
, , , . ,
. , . ,
, .
,
, , , (- -
45
),
. , , ..
.
,
.
.
( ) ,
,
.
.
,
, .
: ,
, 30 100 ; ( ).
,
, ,
. , ( ) ,
/, , .
,
, .
.
46
2.2
2.2.1
. ,
, . ,
. , ,
[2]:
- ( ) , ;
- ;
- ( ) ,
.
, .
,
, ,
().
, , , , ().
,
(). , .
() , ()
. ( ) .
47
.
. . 2.1.
:
- ;
- .
:
- ;
-
.
. 2.1
[2]:
- , , ( );
- ( ).
, () . , -
48
.
,
.
FCFS
(first come first served), , . , (
- , , -
/),
, . , (. 2.2):
,
, .
,
. .
:
(preemptive) (nonpreemptive). . ,
, (Windows NT, OS/2, Linux),
. ,
.
,
,
.
,
, ,
, ,
49
. SJN SRT.
. 2.2 FCFS
50
.
SJN ,
, . ,
(, /), . ,
, , , .
SRT (Shortest Remaining Time), , .
, :
. , ,
,
. ,
, , , ,
, . (, ,
). . , RR (Round Robin, ,
), .
RR ,
( ). q
, -
51
. ,
(. 2.3). ,
.
. 2.3 RR
q
, . ,
() ,
, ,
, . q ,
. q ,
. q
, .
RR . , . , ,
( -
52
, ) [9].
,
. ,
,
.
,
, , ,
. ,
, ,
. ,
. , , , . , .
, .
OS/2 Windows NT.
, - , , ,
, , () -
. , , ,
.
-
53
,
. .
.
,
. ,
, .
, , UNIX, , , . [10]. -,
p_nice
p_cpu. . ( ) . , ,
: ,
, (nice
number nice).
( ) UNIX. ,
.
. , 0 ( )
127 ( ). , , , . 065,
66 95 ( ). , 96 127, , -
54
,
.
, , ,
2, . ,
.
, ,
. , , , , ,
.
,
.
, , , .
p_priuser nice number p_cpu:
p_priuser = a*p_nice b*p_cpu.
.
.
. , ,
.
, 2
, , .
55
(
65), .
, . , .
: _cpu =
_cpu/2.
. ,
, , _u,
_u. , ( nice
number) . UNIX _u : p_cpu =
=p_cpu*(2*load)/(2*load+l).
load , ,
. p_cpu = _cpu/2,
_u
.
, ,
.
(). , , , , , -
56
( ).
(, )
. ,
, _u , , .
,
OS/2 Windows NT [2]. , . , Windows NT
() , , . ,
.
, . , . .
, .
(preempts) , () . .
Windows NT 32 . : . , 16
31 , , (
Microsoft).
,
. , , ..
, . , ,
, -
57
. , , 0.
( )
1 15.
(variable priority), .
,
. , . , , , ( ).
,
() .
, ,
, . , , , , , /,
.
16.
2.2.2
, (nonpreemptive multitasking)
,
, , ,
, . FCFS, SJN, SRT .
, -
58
(preemptive multitasking) ,
, [2]. ,
, ,
. :
, ,
, . RR , , .
. ,
,
. , ,
, (, ) .
, .
, ,
, ,
[11]. , - (, ), (,
). ,
59
.
, , ,
. ,
.
, .
,
.
,
Windows 3.x .
,
.
, . , , , , -,
, -,
. ,
, , [11].
, .
, :
60
61
, .
, - .
[2]:
1) , , ,
. , 20 %
10 , 40 % 2 10 % 5 () ;
2)
, ;
3)
, .
[2]:
- () (CPU
uti-lization). 23 %, 100 %. , ,
, 1540 %
90100 %
;
- (CPU throughput) ,
,
;
- (turnaround time). ,
.
. ,
,
,
/;
62
- (waiting time) ;
- (response time). ,
.
,
,
. .
, :
- . , ,
( ,
, );
- , , .
(
).
:
- , ()
( );
- ,
,
,
;
63
- . ,
Mach (hints)
[2]:
, ,
.
1. ,
.
2. ?
3. ?
.
4. ?
5.
Windows NT UNIX. ?
6. .
64
3.
3.1
3.1.1 -
65
3.1.2 , , ,
,
0 1. ,
( ).
. () ,
. ( ) , ,
, 8 3.
(word) 16 ,
(double word) 32 ,
(quad word) 64 .
LH- :
L (Low),
(High) , .
,
. , Intel,
. (8
) (nible): (7:4)
(3:0).
, :
, 8 (, 5, 7, 9, ...),
, PC . ( )
.
, 8 , .
66
(binary)
(0 1), ,
b. . , 1010 0101b;
(hexadecimal)
0...9, , , ..., F.
-. h
(, A5h). 05, 0A5h, . (0) ,
, ;
(decimal) (,
) ,
( d) . 165.
,
;
(octal) ( ) 07,
.
245. ,
, .
. 3.1
(4 ). 16- ,
16
. :
A5h = 10 * l6 + 5 = 165.
: 16, ,
.
67
3.1
0000
0001
0010
0011
0100
0101
0110
0111
1000
1001
1010
1011
1100
1101
1110
1111
0
1
2
3
4
5
6
7
8
9
A
B
C
D
E
F
0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
0
1
2
3
4
5
6
7
10
11
12
13
14
15
16
17
3.1.3 ,
,
. . , , . -, ,
- . ,
, .
, ,
, . , .
68
( , )
[12], . 86 PC- . : , .
32 36 , 4 64
. -
16 , 65384
. PC , . ,
. 86
, - . ( )
, ,
. -
, , ,
.
, ,
-:
; , , , ,
, .
-,
[12]. , , , -.
, , . , , ( !) , .
69
3.1.4
8086/88
seg:offset, : (seg segment)
(offset).
Addr = 16 * seg + offset.
20- 16-
8086/88
86. 16- . , 16
(4 ). ,
. , BIOS (Base
Input Output System) 00400h 0000:0400,
0040:0000 ( ).
, .
,
PC, Intel 8086/88
( 8080). LSB (Least Significant Bit)
0, MSB (Most Significant Bit) 7,
15, 31.
, .
3.1.5
. . . , .
.
,
70
( ). , (
).
( , ) .
, PC
[12]:
()
, ;
,
,
. ( ) ,
;
, ,
.
, , . () ,
.
,
, , .
, ,
RAM (Random Access Memory) ROM (Read Only Memory).
3.1.6
, ESP ( ) SS ( ) [12, 13]. ,
71
.
PUSH (),
POP ().
PUSH POP,
, ,
, .
:
- , ;
- ,
;
- .
, SS:ESP
( , , ). , , .
,
, , .
3.2
3.2.1 MS DOS
86. 8086/88,
PC, 1
(20 ). ,
. () , . 3.1.4.
Addr = 00000 FFFFFh 16- .
, Seg = FFFFh Offset = FFFFh
72
10FFEFh, 20-
0FFEFh. , . 80286, 24 , ( 386DX, 486 ) 32 36 (P64).
, DOS,
1 , . , 80286 8086 :
20,
8086/88, ,
10FFEFh. (64
16 ), ,
. (100000h 10FFEFh), HMA (High Memory Area),
. c 8086/88 PC 20
GateA20, , 20
. , 16- . 1 8042,
PC,
AT. ,
. , ,
, (. . 3.4.2),
V86,
.
4
P6 , Pentium Pro .
73
, (, 92h).
,
,
. CMOS Setup ,
, , ,
.
32- ,
,
,
4 .
, ,
.
.
POST () ,
. (),
.
PC,
, [12, 14] (.
3.1).
00000h-9FFFFh () (Conventional (Base) Memory) 640 DOS
. MDA AFFFFh (704
). 128 (
80000h-9FFFFh) Extended Conventional Memory.
A0000h-FFFFFh UMA (Upper Memory
Area) 384 ,
.
(, ) (BIOS ). , ,
-
74
() , .
100000h ()
Extended Memory,
( ) 286 .
100000h-10FFEFh
, 286+ Gate A20.
16 M
16 M
15 M
15 M
1 M
1 M
FFFFFF
FFFFFF
( B IO S )
(B IO S )
XMS - EMS
HM A
100000 - 10FFEF
100000 - 10FFEF
B IO S
F0000 - FFFFF
F0000 - FFFFF
UM A
A0000
A0000
640 K
640 K
9FFFF
9FFFF
C o n v e n tio n a l M e m o r y
00000
00000
0
. 3.1
-. Extended Memory
Extended
Memory
Specification.
Expanded Memory Specification (
Extended, Expanded ).
, ,
,
1 ,
75
.
Extended Memory xxxxx Kbyte ,
POST, CMOS Setup.
MS DOS. ( Windows 9x/NT/2000)
, - EMS XMS, . UMA, ,
.
-286 24-
FDFFFFh ( 15,9 ). FE0000h-FFFFFFh
BIOS (ROM BIOS Area), ROM BIOS 0E0000h-0FFFFFh.
386+ 32-
4 , 6 64 (36-
). 32-
BIOS FFFE0000hFFFFFFFFh, 6 . BIOS FE0000hFFFFFFh, 16 ,
. 32- BIOS 16 ,
CMOS Setup. ISA, 16-
, Memory Hole At
1516 M+.
16 .
5122048 ,
. ,
( ), PCI, 32 .
76
,
SMM (System Management Mode),
,
SMRAM.
SMI5. SMRAM
DRAM (Dynamic Random Access Memory), ,
32 ( SMM) 4 . SMRAM , SMIBASE ( 30000h), SMIBASE :
- FE00h-FFFFh (3FE00h3FFFFh) . SMI
, FPU ;
- (SMI Handler) 8000h (38000h);
- 0-7FFFh (30000h-37FFFh).
SMRAM
. SMIACT# SMI, .
SMRAM ,
( )
SMI#.
3.2.1.1 Conventional
memory
MS DOS
PC. 5
77
( 640 )
BIOS, , .
[12]:
00000h-003FFh Interrupt Vectors
(256 );
00400h-004FFh BIOS Data Area BIOS;
00500h-00xxxh DOS Area DOS;
00xxxh-9FFFFh User RAM ,
( 638 ); PS/2 Mouse
9FC00h-9FFFFh BIOS
Data Area, User RAM .
:
list of list ( 3.2) memory
control block ( 3.3). .
3.2
2
. . 1 MCB memory control block
2
0
4
. 1 DPB disk parametr blokout
+4
4
.
+8
4
. DOS (CLOCK$)
3.3
+0
1
'M'(4dH)
'Z'(5aH)
+1
2
; (
FreeMem); 0 =
+3
2
,
+5
0Bh
+10h
?
(*10H)
78
:
-
( );
- M-: (
+ ):0000;
- Z-: ( + ):0000 =
(a000H=640K).
MCB
PSP . PSP
, .
, ( PSP )
.
MCB
.
, DS:0000 ES:0000 PSP . PSP , , ..
.
32K . 2cH PSP
.
''
ASCIIZ ( ASCIIZ,
DOS C, ASCII, 00H),
( ), . '' , .
,
COMMAND.COM. ''
COMSPEC ''
DOS , DOS 4bH .
79
,
SET.
. , '' DICTIONARY ''
.
TECH Help!
3.2.1.2 UMA
, , .
- .
( 386 )
,
UMB (Upper Memory
Block). DOS EMM386, .
[12]:
A0000h-BFFFFh Video RAM (128 )
( );
C0000h-DFFFFh Adapter ROM, Adapter RAM (128 )
, ROM
BIOS / , ;
E0000h-EFFFFh (64 ), System BIOS;
F0000h-FFFFFh System BIOS (64 ) BIOS;
FD000h-FDFFFh ESCD (Extended System Configuration
Data) ,
Plug and Play.
80
PnP BIOS,
.
UMA .
:
- MDA RAM B0000h-B0FFFh;
- CGA RAM B8000h-BBFFFh;
- EGA ROM C0000h-C3FFFh/C7FFFh;
- VGA ROM C0000h-C7FFFh;
- EGA, VGA RAM A0000h-BFFFFh,
:
- Graphics A0000h-AFFFFh;
- Color Text B8000h-BFFFFh;
- Mono Text B0000h-B7FFFh.
UMA ROM BIOS, , (Boot ROM) . C8000h
CBFFFh/C9FFFh/C8FFFh ( ), .
, ROM BIOS, 8 PC/XT 128 , 64 .
ROM - 1 (128*8),
UMA .
F0000h-FFFFFh (64 ), .
, ROM BIOS
.
UMB
BIOS, .
, , ( ).
( ) ,
81
128 ,
, , , . , , . ,
. UMA (Unified Memory Architecture).
, , , . UMA .
,
UMA, . AGP
(Accelerated Graphic Port, )
, UMA.
3 . 2 . 1 . 3
EMS XMS
EMS (Expanded Memory Specification) DOS- . LIM EMS Lotus, Intel,
Microsoft EMS. , UMA. 4 16 , , D0000h (
UMA). EMS -
82
,
Int 67h. , ,
,
16- . , ,
EMS (EMS handler),
.
, UMA.
, ,
, , .
. EMS 4.0,
386+,
UMA,
.
EMS
. 386 EMS, MS DOS 5+ EMM386.EXE.
EMS .
,
16 . EMS
Lotus . , , .
XMS (Extended Memory Specification)
DOS-,
83
84
85
, , . ,
, : . , ().
,
,
ISA, .
CMOS Setup 16 ,
(Shadow ROM
Shadow RAM). (, EMM386).
BIOS , .
BIOS (Video BIOS Shadowing) Windows
.
3.2.2 Microsoft
Windows
3.2.2.1 Microsoft Windows 9x
Windows 9 32-,
. .
MS DOS 7.,
MSDOS.SYS [Options] BootGUI = 0,
.
MS DOS 7.X ,
DOS. GUI-
Windows 95/98
86
.
,
, , , , , , ,
.
(, i) , , , .
,
. small () . 32- ,
, .
, , ,
4 . (,
, ,
) ,
.
. , 16 Windows. , , , ( , , ) ,
.
Windows 95/98 32- -
87
, 32 . . ,
, . 32-
. 16-
Windows , ,
Windows 3.X.
Windows 95 2
. 2 3 DLL (Dynamic Link Library
), . , 32-
i80x86 ,
0 3. 0
, . Windows 95, 0,
3
4 .
Windows, , (VxD).
2 4 32- 32- .
API ,
. , , ,
DLL, .
2 3 16- Windows.
, , Windows 3.x.
88
4
,
, ,
. 64
32-
, , 16- , , ,
, .
. 3.2.
4
3
,
DLL.
Win16
(,
16- ).
DLL
Win32
(,
32- )
4
64
2 4 ,
Win16
4 2
.
64 4 ,
0
. 3.2 Windows 9x
Windows 95 4 , , . -
89
, ,
Windows .
, .
(. 3.3)
,
,
(.. ).
:
; SYSTEM.INI
[386Enh] , :
PagingDrive=C:
PagingFi1e=C:\PageFi1e.sys
MinPagingFi1eSize=65536
MaxPagingFileSize=262144
,
( ).
SysMon (
) ,
, , ,
.
3.2.2.2 Microsoft Windows NT
Windows NT
. , Windows NT 4,0 Server
Windows NT 4.0 Workstation;
, .
90
Windows NT
Windows 95/98. ,
Windows 95/98 Win NT ,
,
.
-,
,
.
.
-, ,
(), , .
. 3.3.
4
(
0)
DLL Win32
Win32 (
)
Win16
DLL,
64
0
. 3.3 Windows NT
91
2
() ()
64 2 ( 64
).
,
(clipboard) : DDE (Dynamic Data Exchange);
- OLE (Object Linking and Embedding).
2-
DLL 3,
, , - (server process),
, . -
, . 2 4 Windows NT 0,
, . ,
.
, .
16- Windows-
Windows NT Windows on Windows (WOW).
Windows 95/98 Windows NT
16- Windows
. 16- 32 Windows
, OLE, , . WOW -
92
, . 16-
Windows W0W . Windows
NT
DOS. Windows NT 32 , GDI
(Graphics Device Interface) USER.
. . ()
(),
. ,
. () ,
.
;
.
, .
, ,
Windows NT VMM (Virtual Memory Manager).
,
.
, ,
(page frame).
,
93
( VMM) , . , 2,
.
,
.
,
,
. ,
, . ,
, .
(page fault).
, (paging),
. , Windows NT, ,
FIFO , LRU LFU.
, ,
Pagefile.sys .
,
. Pagefile.sys , , ,
. ,
, ;
. , . 12
,
.
. Windows NT 4.0 , -
94
, (memory pools).
, . ,
, ,
. (paged pool) ,
.
(nonpaged pool) , .
, , , ,
. , Windows NT.
.
Windows NT
: (reserved), (committed)
(available).
,
(VMM) ,
, . , . , , .
, VMM
Pagefile.sys ,
. .
.
(commit limit) , -
95
. ,
.
, , , . , ( ), ,
(standby list), ,
.
3.3
3.3.1
(,
), ( -
). ,
( ) .
: ,
.
,
. , () .
,
. 86, , , (386) , (
), .
, -
96
. , ,
. ( -),
, . , ,
, , , - .
, 86 23- [12].
3.3.2
( ), .
,
.
-, , . . .
, . ,
.
- , .
, ,
(
).
,
.
97
,
, . ,
. , , . ,
. , ( )
.
, . i80x86 64 , - 1 . , .
(Virtual Memory) -
,
[12, 13].
. 80286,
32-
(80386 ). -, 64-
4 . ,
(paging). ( ) ,
,
(
).
, -
98
.
, ,
().
.
- : , , . ( )
, ,
,
, .
, . ,
, ,
,
, . : .
.
,
, .
, .
[12]:
- , , , , .
, (
),
;
- , ,
;
- , ,
, .
99
.
.
. ,
. , ,
, .
.
.
:
. ,
,
, . ,
.
( ).
,
, , , .
,
, ,
.
, .
[12]:
100
- , .
,
;
-
.
,
, ;
-
,
. , , .
3.3.3
86 -.
(Memory Space)
, (24 ).
. (Paging) 4
, . 5- ,
4 .
. .
. -
101
.
.
: , .
32- ,
(. 3.4) [12, 13].
31
INDEX
BASE
DISPLACEMENT
SCALE
1,2,4,8
32-
+
2 1 0
15
R
P
L
32-
14-
14-
()
32-
32-
. 3.4 32-
, , Seg (
) ,
(Offset).
Seg:Offset. 14
(CS, DS, ES, SS, FS GS), . , , . base, index, displacement
102
scale.
16 (214), , , 4 ,
64 .
.
32- .
. 16 ( 8086).
, , ,
.
32- .
.
. 4 ( 2 4 ).
36 .
.
. 32/36 4/64 , 1 , .
3.3.4
32-
:
(L1 Cache L2 Cache); -
103
(TLB)
. ( ,
) 486, Pentium 6. 80386
(Intel) TLB, -, , .
. . ,
, (cache
thrashing). , 6
CPUID(2). , .
-
.
.
(Snoop Cycle
Inquire Cycle), .
, , .
, :
;
, () , , . 6
,
104
.
, .
, Pentium,
MESI, (Modified),
E (Exclusive), S (Shared), I (Invalid).
SI, . [13]:
-
, ; ;
-
, (
); -,
;
S- ( );
, ;
I- ,
;
.
. [13]:
U (Uncacheable).
,
,
. . -,
.
;
105
WC (Write Combining).
,
. , , ( CPUID , .). ,
, ( );
WT (Write-through). , , . , - .
.
, , ,
, ,
;
WB (Write-back).
, -. , . . ,
, ;
WP (Write protected). , , .
().
. (
) ,
MTRR (Memory Type
Range Registers ,
106
107
4.
4.1
4.1.1
, ( ).
, ,
.
:
- ;
- ;
- - -;
- () .
(, )
( )
. , , , , . ,
2. ,
(). ,
().
( ) [12]. (direct
access)
. ,
108
, (disk device), . , ,
- ,
.
(tape device), . ,
(),
. ,
, ( ) . ,
.
.
4.1.2
(capaci-ty), (),
(), () (), KB, MB, GB, . ,
, -, -, -, -
103, 106, 109 1012 . , ,
, 210, 220, 230 240 , 1 1024 , 1 1024
, 1 1024 , 1 1024 [12].
109
, . -, -, -, - , , ,
. ,
528 () 504 ().
. (remo-vable media)
, ,
. , (JukeBox).
-. CD-ROM (CD-changer), .
, ,
, .
(access time)
.
.
,
, . (seek time )
(latency
). ,
.
,
110
.
, . ( ), - .
-
(linear transfer rate read/write) .
-
(random transfer rate read/write)
, .
,
.
(Transfer Speed, Transfer Rate)
.
, 6
. ( )
.
,
( ). ,
,
. ,
,
, .
,
, .
111
.
, , .
. 4.1 .
4.1
,
FDD 3,5"
1,44
HDD IDE
HDD SCSI
CD-ROM Ix
650
CD-ROM 48x
650 (700)
,
100*
7,510
7,510
240500
75
,
/
0,055
220+
240+
0,15
7,2 (.)
150
: 4,8
(.)
: 0,6
: 4,8
(.)
: 1,2
130 (.)
: 1,22
: 0,62
: 3,67,
: 1,2
: 4,5,
: 1,5
0,10,5
1,4
2,4
7,5
7,5
1,4
CD-RW 8/8/32
(SCSI)
650 (700)
150
DVD-ROM 12x
MOD 3,5"
4,717,08
230
200
50
MOD 3,5"
540/640
28
MOD 3,5"
1,
28
LS-120
Iomega Zip 100
Iomega Zip 250
Iomega Jaz
Iomega Jaz
SyQuest EZ135
120
100
250
1
2
135
70
29
29
16
16
21
112
. 4.1
SyQuest EZFlyer
SyQuest SparQ
SyQuest Syjet
Compact Flash
,
230
1
1,5
32
,
13,5
12
12
0,001
,
/
2,4
3,76,9
3,76,9
: 20
4.1.3
(),
HDD (Hard Disk Drive), .
( ),
HDD [12].
. ( ),
( ),
( ), ,
. : 10- XT , . , .
[12].
(formatted capacity), (), ( ). (unf formatted
capacity) ,
, ( , ).
113
( ),
, , (512 ). ,
103 106 .
.
(spindle speed),
RPM (Revolutions Per Minute),
( ).
3600
/ ;
4500 5400 /, 7200 . , ,
10000 15000 /.
(interface) . , IDE SCSI,
USB, FireWire Fibre
Channel, LPT-.
:
(disks) (data surfaces), .
(12) .
;
- (read/write
heads), , . ,
. ,
,
;
114
(cylinders),
, , ;
(Bytes Per Sector),
512 .
(Sectors Per Track) ;
(servo head),
(dedicated servo), (embe-ded servo) (hybrid
servo);
- (recording
method data encoding sheme): MFM (FM ); RLL (ARLL); PRML,
.
:
(track-to-track seek),
,
.
0,52 , , (
);
(average seek time),
.
810 , 45 . , :
; , ;
(maximum
seek time, full seek time), .
.
(average latency)
( 3600 / 8 ,
7200 4 , 15000 2 );
115
(internal transfer
rate) , . : (Mb/s), , ,
. 15000 /
500 /.
(MB/s) ,
8 ( ) . 5400 /
815 /, 7200 / 1535 /c.
, ;
(external transfer rate),
() , ,
,
;
(sustained throughput),
(,
).
: , , , . 5400 /
825 /, 7200 /
1030 / 15000 / 3545 /.
:
MTBF (Mean Time Before
Failure), , .
(100000 10 ) , , . ,
- ;
116
117
(7200 /) , 35 ; , , 25 .
4.2
4.2.1
. . , , , ,
() .
, . (sec-tor), . (track)
/. ()
(
).
.
() ,
,
(cylinder).
, ( ), , .
, . ( )
. DOS
512 [1]. BIOS
118
119
. primary ,
(hidden).
extended-, , , (logical).
primary;
, .
extended.
primary- ,
, ,
-
. ,
[c-h-s].
(),
. ,
,
, [12]:
: ;
D: ;
: .
(
, :
: ( );
D: ();
: (, D:);
F:
(, :).
120
,
(G:, :, ...).
, , .
(:) , (
SCSI, ).
[0-0-1]
MBR (Master Boot Record,), NSB (Non-System Bootstrap)
PT (Partition Table) [2].
,
0:7C00h, ,
. , ()
boot record, , a master boot record.
MBR
, BIOS. MBR
:
1) ( ). BIOS
MBR. 512 ,
, ,
,
;
2) ,
MBR OxlBE 64 ;
3) MBR. MBR AA55h. BIOS , .
. , ,
.
MBR . 4.3.
121
4.3 MBR
(Offset)
0
(Sise),
446
+ 1BEh
+ 1CEh
+ 1DEh
+1EEh
+1FEh
16
16
16
16
2
(Contents)
Partition Table
System Bootstrap
Partition 1 entry ( )
Partition 2 entry
Partition 3 entry
Partition 4 entry
(AA55h)
partition table . ,
. ,
( , ),
, , .
. 4.3 ,
.
partition table MBR, 16 .
boot indicator (0 , 128 (80) ).
,
.
.
, . ,
, . System ID , -
122
.
, .
(. 4.4).
4.4
Partition Table
1
1
2
1
1
2
. 4.5 .
MBR . MBR, partition table, BIOS.
, .
MS DOS
, . .
123
() . .
4.5
System
ID, 00
01
02
03
04
05
06
Empty ( )
FAT 12
XENIX root
XENIX usr
FAT16 (<32 )
Extended
FAT 16
07
08
09
0
0B
0
0
0F
10
11
12
14
16
17
18
1B
1
1E
24
3
40
HPFS/NTFS
AIX
AIX bootable
OS/2 Boot Manager
Win95 FAT32
Win95 FAT32 LBA
Win95 FAT16 LBA
Win95 Extended
OPUS
Hidden FAT12
Compaq diagnost
Hidden FAT16 (<32 )
Hidden FAT 16
Hidden HPFS/NTFS
AST Windows swap
Hidden Win95 Fat
Hidden Win95 Fat
Hidden Win95 Fat
NEC DOS
Partition Magic
Venix 80286
System
ID,
41
42
4D
4E
4F
50
51
52
53
54
55
56
5C
61
64
65
75
80
82
83
84
85
86
A5
A6
A7
EB
PPC PreP Boot
SFS
QNX 4.x
QNX 4.x 2nd part
QNX 4.x 3nd part
OnTrack DM
OnTrack DM6
Aux
CP/M
OnTrack DM6
OnTrack DM6
EZ Drive
Golden Bou
Priam Edisk
Speed Stor
Novell Netware
Novell Netware
PC/IX
Old Minix
Linux swap
Linux native
OS/2 hidden C:
Linux Extended
NTFS volume set
BSD/386
Open BSD
Next Step
Be OS
124
DOS -
.
DOS
SMBR (Secondary MBR), partition table
LDT (Logical Disk Table),
. LDT , ,
SMBR. , DOS , SMBR,
. ( )
.
MS DOS, Windows
9x fdisk.exe, Windows NT
Control Panel, Administrative Tools,
Computer Management. ,
, Partition
Magic ( Power Quest), . , ,
, , , ..
4.3
4.3.1
, .
.
, , .
,
, , , , , ,
,
125
, [2]. -
.
FAT (File Allocation Table),
,
.
,
.
, . -,
. , . -,
:
- , , ( )
( ) ,
;
-
;
- , ,
( );
- ;
- .
, . , , , ,
API (Application Program Interface). ,
126
API .
,
, ;
. , , , , . ,
. , .. ,
.
,
. ,
FAT . , ,
, FAT ( FAT12). , .
,
FAT-16.
MS DOS. OS/2, FAT, superFAT, .
FAT Windows
9x, Windows NT .. , ,
, -
127
, , ; ,
, .
4.3.2 FAT
4.3.2.1 FAT16
FAT16 MS DOS Microsoft .
(File Allocation
Table)
,
(
), 4095 .
MS DOS 4-
(
2040 ),
[15].
FAT 12- 16- .
384 12 .
(512 ).
FAT12
.
, FAT16, .
512 64 .
. 4.6 . ,
, ,
. 4.6 [15].
128
4.6
FAT16
,
032
3364
65128
129255
256511
5121023
10242047
20484095
1
2
4
8
16
32
64
128
0,5 (512 )
1
2
4
8
16
32
64
FAT16
511 ,
: 1 64 . FAT16
4 .
. 4.1 , FAT16.
FAT 1
FAT 2
. 4.1 FAT16
.
FAT1 FAT2. FAT
FAT. ,
. FAT2 FAT1.
FAT16 FAT .
129
,
. . ,
512
100 ,
412 (512100).
,
. 4.7.
4.7
,
11
1
1
3
2
2
2
2
2
2
4
FAT
, .
FAT, , .
FAT16 :
(0)000h
,
(F)FF0h (F)FF6h ,
(F)FF7h
,
(F)FF8h (F)FFFh ,
(0)002h (F)FEFh .
130
File2(0005)
0003
0004
4
FFF
File3(0007)
0006
0008
7
FFF
8
FFF
. 4.2 FAT16
, .
, , .
, : (archive), (system), (hidden),
(read-only).
FAT16
[15]:
- MS DOS, Windows 95, Windows 98, Windows NT,
Windows 2000,
UNIX;
131
- ,
;
- -;
-
256 .
FAT16
[15]:
- 512 . ;
- FAT16 65536 ,
,
65524.
.
32
4-
Windows 2000.
MS DOS, Windows 95 Windows 98 FAT16
2 ;
- ;
- FAT16
;
-
, .
, .
4.3.2.2 FAT32
Microsoft Windows 95 OEM Service Release 2
(OSR2) Windows 32- FAT.
Windows NT
Microsoft Windows 2000. FAT16
4 , FAT32 4 . FAT32
1 (512 ) 64 (32 ).
132
FAT32 4 (32
, 16, FAT16). , , , FAT16, FAT32.
FAT32 FAT16
. FAT16 2-
32 , FAT32 4
512 8 (.
4.8) [15]. ,
, ,
.
4.8
FAT32
,
8
8 16
16 32
32
4
8
16
32
FAT32
4 2 .
FAT16 512, FAT32
65 535.
FAT32
65527 .
, FAT 16
64 /4 4 . .
, FAT16 FAT32, .
Windows -
133
8.3 ( 13 ).
Unicode. , , .
, MS
DOS, 8.3 ( , ).
FAT32
[15]:
-
, ;
- FAT32
.
-
(4 8 ) 1015 % , FAT16;
- FAT32 .
, FAT. ,
.
FAT32 [15]:
- FAT32 Windows
2000 32 ;
- FAT32 , FAT;
- ;
- FAT32
.
4.3.3 NTFS
NTFS (New Technology File
System) . ,
NTFS -
134
, . ,
Windows. NTFS,
FAT,
:
; , ; /
.
NTFS
:
.
()
, NTFS. ,
;
. NTFS
.
:
; ; ; ; , ;
- POSIX (Portable
Operating System Interface for Computer Environments). ,
POSIX, NTFS.
POSIX
,
( , );
135
.
NTFS . 512 64 ;
,
. NTFS , Unicode
8.3 FAT.
FAT,
NTFS . . 4.9 [15].
4.9
NTFS
,
512
5131024
(1)
10252048
(2)
2049
1
2
0,5 (512 )
1
NTFS
232,
. .
232 .
, 512 . , 2 ( 2 32 512 = 2 41 ).
, 2 NTFS.
. NTFS
. , -
136
. , , , , , ,
. NTFS
, . ( , , )
. FAT16
FAT32 ,
. NTFS, Windows 2000, .
. Windows 2000 , NTFS.
Windows-.
.
, Double-Space (MS DOS 6.0)
DriveSpace (MS DOS 6.22),
MS DOS ,
NTFS .
NTFS
4 .
4 , NTFS .
NTFS. NTFS
. NTFS , NTFS, . (commit), (rollback). NTFS- , . , , NTFS -
137
, , .
, . , NTFS .
. NTFS ,
. cluster remapping.
NTFS
MFT (Master File Table)
.
NTFS . 16
MFT NTFS.
$Mft SMftMirr
. MFT , NTFS
. . , MFT, . 4.10 [15].
4.10 MFT
$Mft
MFT
0
$MftMirr
Log file
$LogFile
Volume
$Volume
Attribute definitions
$AttrDef
MFT
NTFS
MFT. MFT ,
,
NTFS
138
. 4.10
MFT
5
$Bitmap
$Boot
$BadClus
Security file
$Secure
Upcase table
$Upcase
10
NTFS extension
file
$Extend
11
Boot sector
Bad cluster file
12-15
MFT
Unicode-
:
,
MFT
, .
MFT,
,
.
, , . ( 1500 )
.
NTFS-
.
. NTFS ( )
. , ,
139
, . .
,
. . , ,
MFT-, .
. NTFS Attribute
List.
NTFS
.
NTFS
. ,
, .
, , ,
, . , ,
.
NTFS ,
/ : Read (), Write (),
eXecute (), Delete (), Change Permissions ( ) Take Ow-nership ( ).
, , , . , ,
,
, ,
- (
140
) . ,
.
, , ,
,
Everyone (). , ,
, , ..
. ,
, ,
: .
,
,
. , ,
,
, . , , ,
, .
, NTFS.
NTFS,
. ,
NTFS , ( ) .
,
NTFS:
1) NTFS ;
2) ( ,
NTFS) ;
141
3) NTFS FAT
NTFS .
FAT NTFS
, , FAT NTFS .
FAT , , 1 .
FAT . NTFS ,
FAT. , 2 .
,
1500 .
NTFS -. 50100 .
, 25 %
.
.
FAT 2 , FAT32 4 .
- FAT
200 .
NTFS - 2 .
FAT
. , NTFS Windows NT,
NTFS. ,
, () NTFSDOS NTFS , MS DOS. NTFS
Windows NT .
142
FAT ,
NTFS , . FAT , .
. NTFS . NTFS
,
. , ,
.
, Windows NT CONVERT.EXE, FAT NTFS,
NTFS FAT .
, FAT, NTFS . ,
NTFS FAT
NTFS. , FAT
.
, , 8,4
, FAT. ,
3 .
Windows-
FAT32, NTFS. , , ,
Windows 98
Windows Millennium
Edition.
4.3.4 HPFS
HPFS (High Performance File System) OS/2 1.2
143
144
/
. ,
HPFS FAT :
- ;
- ;
- ,
;
-
.
HPFS.
.
HPFS :
, , band).
8
, , , .
. 1, , 0 .
,
, : , , , ,
, ..
16
.
HPFS ,
FAT, .
,
. , . ,
256 . ,
, . , FAT
145
512 1024 16 . ,
8 (8192 ) ,
HPFS 256 . ,
8 .
HPFS .
(boot block),
(super block) () (spare block). (boot block) 0 15;
, ,
BIOS .
OS2LDR, , ,
, OS/2 OS2KRNL,
OS2KRNL CONFIG.SYS .
(super block) (bitmap block list). , , .
(bad block list), (directory
band), (F-node) ,
CHKDSK.
() . , . , super
block .
HPFS 8 . super
block 16 ,
HPFS.
(spare block)
(hotfix map hotfix-areas),
c (directory emergency free
146
block list),
, . 17 . HPFS .
HPFS
, F-Node [2].
HPFS FAT .
F-Node. F-Node (
). F-Node 15 , , ,
( ), ..
F-node
. HPFS .
;
. , .
HPFS ,
. , -Tree , : ; ; , , ,
; ; .
HPFS (). , , FAT. (-
147
, F-node), , .
.
, , , 4096
, FAT
64 ,
HPFS 24
( ) . HPFS FAT. , , 40 1640 , 65640 .
, 65640 .
FAT, 4000 .
,
HPFS, 2 .
, , .
13 ( 8.3),
2 40 .
, , .
. ,
. , - ,
.
HPFS ,
. .
SpareBlock.
. HPFS ,
148
,
.
,
. HPFS ,
,
. FAT, ,
. HPFS , , ,
.
/ .
, HPFS
4 . ,
. HPFS ,
. , HPFS 4
/ .
,
, .
. , - ,
HPFS, , , ,
. , , , . -
149
() ,
, -
. , HPFSOPT Gamma-Tech , , ,
, - 2
3 .
,
8 . ,
2 , . , , 3 %.
. HPFS. , . HPFS
(hotfix) [2].
HPFS
, . HPFS , ,
,
. HPFS.
HPFS
.
. , 32- .
,
,
.
, ,
. , , -
150
. , ,
, .
CHKDSK HPFS. ()
, , .
,
. CHKDSK , HPFS, .
.
HPFS, , , 32- . , ,
.
HPFS
CHKDSK , , . , CHKDSK ,
. CHKDSK . , ,
. HPFS . , , .
151
4.3.5 UNIX
UNIX
, . ,
.
, ;
. ,
, .
UNIX, .
:
1) ( 0), ;
2) ( 1), ,
i- ;
3) i- ,
. I- .
i- ;
4) , ( ), ( ).
:
- ,
( );
- , i-;
- ;
- ;
- ;
- (back up);
- ;
- i-.
UNIX . 4.3.
152
i-
i-
. 4.3 UNIX
i-, , .
i-
, .
i- UNIX
. 4.4. i- 13 .
10
. 512 ,
5120 (512 10).
5120 , 11- i-, 128
. 70656 (512
(10 + 128)).
, 12-
i-, ,
128 .
8459264
153
------------i- ------->-----
--->-----
-----------
-----
-----
------>-----
-------
-----
----- --> 128 --+
:
---------
-----
---- 1
+-
: ------- --->----- --->---
----------
-------
---
2
+------
+-->---
----------
-----
------- +-->---
:
-----
128 --
---
:
-->-----
-->------- --->---
----------
-------
------- --->---
10
+-----
--------> 128 --
---
----------
------- +-->---
11
+-----------
.
+-->---
----------
--------
.
---
12
+--------------->----- 128---+
.
--->---
----------
--------
.
---
13
+---
.
--->---
-----------
---
.
+--> :
--->-----
128 --
---
-----
->------- --->---
-----
---
-----------------
:
->------ --->---
128 --+
-----
128 --
---
-->------- --->-----
------- +-->---
-----
.
-----
->128-
.
--->-----
+-->---
-----
.
-----
---
.
-------
-----
--->---
---+---
--> 128 --+
-----
---- 128 +-+
.
-------
:
---+---
--->-----
.
--->-----
-------
:
.
128 -+
-->-------
-----
-----
.
--->-----
-->128-
.
--->-----
-----
.
-----
-------
-----
--> 128 -+
-----
-------
:
--->-----
-------
. 4.4 i- UNIX
154
155
, umount, /etc :
umount <>
,
:
umount /dev/fl0
, .
, , (umount :
device busy), .
,
i-, , ,
. .
:
- , .. ,
;
- i-,
;
- ,
;
- ,
.
,
( ),
. :
- , ,
i-; - i-, -
156
, i- ,
;
- , , - ;
i-
, , ;
- , , , ; .
, fsck (file
system check). : icheck, dcheck,
ncheck. fsck.
fsck ,
:
- i- ( ,
i-);
- , i-, ;
- , ;
- ;
-
; ,
, ,
; .
: ,
/etc/checklist.
fsck,
,
***** BOOT UNIX (NO SYNC!) *****,
sync.
,
,
.
157
sync.
fsck
/lost+found .
fsck , ,
/lost+found .
4.3.6 CD-ROM
4.3.6.1 CDFS
Windows 2000 CDFS (Compact Disk File System),
ISO'9660, CDROM.
ISO'9660 Level 2 [15].
CD-ROM Windows 2000
:
-
32 ;
-
;
- 8
;
- .
4.3.6.2 UDF
UDF (Universal Disk Format)
Windows 2000. UDF , ISO'13346
CD-ROM DVD. UDF 1.02
1.50 [15].
158
1.
?
2. .
3. .
4. (
). ?
?
5.
, ?
6.
?
7. FAT16?
? ?
8. FAT32.
9. NTFS.
10. HPFS. HPFS ?
11. UNIX?
12. CDFS UDF?
159
5.
5.1
. [2].
5.1.1.1
, .
.
,
.
(
).
, 7 ,
. ,
,
,
.
, .
7
(, ; ) () .
160
, ,
.
5.1.1.2
,
.
, .
. , ,
, , , . , ,
,
, , ,
. ,
, , .
.
-.
5.1.1.3
() ( ),
161
.
.
,
. . .
. .
Linux. UNIX- -
, () , . Linux , , , , ,
.
, .
5.1.1.4
. ( , -
162
),
. ,
, ,
.
5.1.1.5
, .
()
.
. , ,
, , .
, , , .
,
.
,
.
, , ,
, ,
163
. ,
:
-
.
.
;
- ,
. , ,
;
- ,
,
, . , , .
, .
, .
.
,
,
, , - ,
.
,
164
. ,
.
, . VDM- (Virtual DOS Machine) , MS DOS
MS DOS-.
VDM. VDM- Microsoft
Windows, OS/2.
5.1.1.6
. , /. ,
UNIX.
. , ,
, . , , .
. , , , ,
. , , - , .
165
5.1.1.7
,
,
.
.
, .
,
,
, .
, . .
, .
(, IBM PC
Macintosh Apple), , . 680x0 ( PowerPC)
, i80x86. 80x86 , .
680x0 80x86, , , ,
, , 680x0. 680x0
, - , 80x86,
.
, 680x0, , -
166
, 80x86.
. ,
, ,
,
,
, .
POSIX,
UNIX,
.
5.1.1.8
, , . (, ) , ,
.. , .
- .
(). ,
. . , , UNIX , , Linux.
167
5.1.1.9 ()
,
( ),
. ,
,
.
, . -,
, ,
. , , ,
, , . ,
, . -, , ,
, .
. . , , . -
. , -
.
,
, .
, , .
POSIX
.
168
5.1.1.10
.
,
, , ,
.
. , 2 .
. , NCSC (National
Computer Security Center) 1983 ,
.
,
,
, , , , .
, , D, .
D ,
.
,
, ,
, . () 2 : 1,
,
169
, 2. 2
:
- , ,
, ;
- , ,
.
;
- (auditing),
,
, , ;
- , , .
B
,
. ,
.
. , , . (, ) , , 2. ,
,
. ,
2 . , ,
. -
90 % , , ,
.
, ,
170
. , Solaris
( UNIX) , - .
5.2
[2]. ,
.
: , ,
; ,
,
; (, UNIX)
. , ,
,
, , .
. ,
.
, .
, , . ,
( ) , -,
.
171
,
, .
,
. Mach .
, .
,
.
:
1) ;
2) ;
3) IPC (InterProcess Communication);
4) / ;
5) 8 .
, , ,
. .
, -
Host ; , IP-.
8
172
: . , , .
,
.
,
, . , - . ,
, .
. ,
.
. ,
.
, , ,
. ,
,
. ,
.
173
174
.
,
,
.
. -
- ,
.
, , , , ,
.
,
,
. -,
; - .
, , . .
, - , .
Windows NT, , .
5.4
.
,
:
175
, :
- , ;
- ;
- ( , , , ,
);
- RPC
(Remote Procedure Call);
:
- ;
- ;
- (,
);
- ( );
/:
- .
, / ,
;
- (
, , ).
,
.
,
, (, )
. . , ,
MS DOS COMMAND.COM.
, , ,
176
, ,
API. , GUI (Graphical
User Interface), .
() - , ,
/ .. ,
.
, GUI /,
,
GUI API.
, . ,
-, ,
.
API
,
. API
.
, , MS DOS,
( i8086 ), .
API int 21h.
, API. , . (, -
177
RTL , .
RTL , .
178
, ,
, .
API ,
,
. API
, .
. API
,
, , . API:
- ;
- ;
-
.
API .
API
.
API
[2]:
- API, , ;
- ;
- .
API, ,
, .
179
API ,
.
API
API.
,
.
, .
5.4.2 API
5.4.2.1 API
API . ,
, (
), , .
[2].
. API
API.
API
, .
,
,
, . ,
API, ,
.
180
,
.
API . .
() API, . API
, Microsoft Windows WinAPI (Windows API). , API ,
Windows. API MS DOS, .
5.4.2.2 API
API , .
RTL.
, [2].
, API ,
. , API RTL .
181
RTL .
,
.
.
.
.
. RTL.
RTL .
RTL
.
,
Pascal. malloc,
realloc free ( new delete C++), Pascal
new dispose.
,
. , .
,
,
. ,
(, malloc new
Pascal )
. -
182
.
, , , .
API. , . , . , , ,
, ,
. API.
, malloc, realloc free
.
, - , . . , ,
, Pascal .
5.4.2.3 API
API
, [2].
.
-
183
. , .. .
API , , RTL .
RTL.
,
, . . , -
,
.
, , POSIX
(. . 5.5.3), , , .
XLib,
X Window.
. ,
. MFC (Microsoft Foundation
Classes) Microsoft VCL (Visual Controls Library)
Borland, Windows.
- ,
.
, : , -
184
185
malloc
API Alloc
LPVOID 11(
HANDLE hHeap,
//
DWORD dwFlags, //
DWORD dwBytes
//
,
. ,
, API
.
unsigned char * ptr = (LPVOID) HeapAlloc(
GetProcessHeap(). 0. 256).
, , ,
, , . , API
. API
. API,
.
, API . API , ,
.
,
.
, ,
POSIX. ,
. , POSIX, API,
, , ( ).
.
186
API
Microsoft, WinAPI. : Win16, Win32s, Win32, WinCE. WinAPI,
, . , WinAPI
.
,
POSIX.
5.4.3 - POSIX
- POSIX (Portable Operating System Interface
for Computer Environments) IEEE10,
, ,
[16]. , POSIX,
, , , .
UNIX-, . POSIX
IEEE UNIX-
, - .
POSIX UNIX-; ,
, IEEE
Standard 1003.1-1990 (POSIX.1). , QNX ,
, UNIX , .
VMS (Virtual Memory System,),
10
187
(MultiProcess Executing)
CTOS (An Operating System produced Convergent
Technology ). , POSIX , POSIX.I
POSIX.12. . 5.1 , . ,
POSIX. 1
API.
5.1 POSIX
ISO
POSIX.0
.
,
POSIX.1
POSIX.2
API ( )
, IEEE
POSIX.3
POSIX.4
POSIX.5
POSIX.6
POSIX.7
POSIX.8
POSIX.9
ADA
POSIX.1
RPC (Remote Procedure
Calls)
FORTRAN
POSIX.1
POSIX.10
POSIX.11
POSIX.12
GUI
188
, ,
,
POSIX- .
. , .
POSIX, . POSIX-
. , ,
, ,
POSIX.
POSIX API
. UNIX- IEEE Standard
1003.1-1990, WinAPI POSIX-. MS
Windows NT POSIX API,
.
,
Win API. , WinAPI, POSIX / (stdin, stdout).
1.
.
2. .
?
3.
.
189
4.
(API)?
5. API?
?
6. ?
7. POSIX?
,
, POSIX?
190
2.
6. MICROSOFT
6.1 MS DOS
6.1.1 MS DOS
MS DOS (Microsoft Disk Operation
System) , , 16- IBM C. MS
DOS
, Seattle Computer Products 1980 .
1980 . , QDOS, 86-DOS. 86-DOS
Microsoft, IBM
JC ,
. IBM PC (1981 .),
86DOS, PC DOS, 1.0.
IBM PC
, . , Microsoft
, , PC DOS MS DOS 1.0.
,
MS DOS. , . , ,
.
191
PC DOS MS
DOS .
1982 1.1.
( 1.0
),
. 1983
2.0. ,
,
. MS DOS 3.0,
1984 .,
. , 3.3,
1987 ., . MS
DOS 5.0 , 1M. MS DOS 6.0 ,
1M, Memmaker
DoubleSpace. ScanDisk Defrag.
6.1.2 MS DOS
MS DOS [1]:
BIOS (Base Input Output System Data Area) -, , ( ). BIOS . ,
, . BIOS, , MS DOS,
, MS DOS .
BIOS,
-
192
2- 4-
.
193
, .;
CONFIG.SYS, AUTOEXEC.BAT, ,
. CONFIG.SYS .
6.1.3 MS DOS
MS DOS
[1]:
- ;
- Reset
( );
- Ctrl-Alt-Del .
MS DOS
OST, . . .
BootRecord.
. ,
, -, BootRecord ( MS DOS IO.SYS
MSDOS.SYS) .
CONFIG.SYS , , . CONFIG.SYS , . ,
, (
COMMAND.) .
AUTO-EXEC.BAT,
194
, . AUTOEXEC.BAT
, . , , .
AUTOEXEC.BAT , , MS DOS
.
AUTOEXEC.BAT MS DOS .
6.1.4 MSDOS CONFIG.SYS
BIOS . BIOS ,
. BIOS MS DOS, ,
. BIOS ,
.
,
CONFIG.SYS.
:
1) , MS DOS (DEVICE=HIMEM.SYS);
2) Ctrl-Break (CtrlC) (BREAK=ON);
3) , (FILES=200);
4) (BUFFERS=5);
5) ,
COMMAND.COM
(SHELL=4DOS.COM).
195
6.1.5 COMMAND.COM
. :
- ,
;
- MS DOS,
COMMAND.COM;
- MS DOS
;
- AUTOEXEC.BAT.
MS DOS
,
, ,
. COM EXE
, BAT .
MS DOS ,
, , .
,
,
.
.
MS DOS . -
, MS DOS,
, . MS DOS:
1 N /1 /N
. 1
N , ,
. -
196
() 1
N. , : , ,
, . .
6.1.6 AUTOEXEC.BAT
AUTOEXEC.BAT
,
. ,
AUTOEXEC.BAT.
1
@ECHO OFF
ATH C:\;C:\ARC;\C:\WORK
ROMT $$G
VER
DATE /T
ECHO OFF
BAT-. @
ECHO OFF .
, ,
.
ATH
.
ROMT MS DOS.
, . ( $), .
:
$ ;
$T ;
$D ;
197
$G - >.
$$G
ROMT :
C:\WORK>.
$T$D$B$$G,
:
8:50:01.01 Mon 01-01-02 | :\WORK>.
VER
.
DATE /T .
.
,
. . AUTOEXEC.BAT
,
, ,
.
2
AUTOEXEC.BAT ,
, , ,
:
@ECHO OFF
ATH C:\;C:\ARC;\C:\WORK
ROMT $$G
VER
IF EXIST MAIL TYE MAIL
:BEGIN
ECHO
ECHO 1 2 3 4
CHOICE /C:1234
IF ERRORLEVEL 4 GOTO WORK
IF ERRORLEVEL 3 GOTO IVAN
198
MS DOS , .
MS DOS, , .
MS DOS Teach Help, -
199
, , /? .
( ) ASCII, MS
DOS.
.
. (BATch).
.
, .. , Enter.
. ,
,
AEND.
, .
( ).
MS DOS , , ,
, .
MS DOS : <> /?,
fasthelp, help. : <_>. : (). a: b: .
MS DOS.
(+) () () () :
ATTRIB <+/-()> <> < ()>
:
r (read only);
a (archive);
h (hidden);
s (system).
BACKUP -
.
CALIBRATE <:> <> .
200
CD (cd\
; cd kat KAT ; cd ..
).
CHECKDISK .
CLS .
COPY <> <> <> <> () .
:
CON ( ;
);
LPT ;
COM AUX ;
PRN .
:
/a ;
/b ;
/v .
COPY :
COPY __1 __n __.
DATE < > .
DEFRAG < > <> , : /f ; /u
.
DEL < > .
DIR<> <>
, :
/p ;
/w ;
/a: ,
: :
r ;
h ;
s ;
201
a :
d :
/o: , :
:
n ;
e ;
s ;
d ;
g ,
;
a ;
/s ;
/b ;
/l ;
/v ;
/4 ( /V).
DISKCOPY < > < >
<>
, .
EDIT .
ERASE < > .
FDISK <> .
FC <> < () ()> < () ()> .
FORMAT <:> <> .
HELP <-> .
LABEL <:> < ( 11 )>
.
MD < >
.
MEM (mem
/c /p ).
202
203
Windows 3.1 ,
, Windows 3.0.
Windows 95 ,
[17]. Windows 95 , , .
Windows 95 Windows
3.1 32-
. MS DOS. Windows 95
MS DOS ,
IBM PC. Windows 95
.
, ,
. BIOS, , ,
MS
DOS.
Plug and Play, Microsoft, Intel, Phoenix Technologies, Compaq
. [17]. , . Plug and Play ,
.
32- [17]:
- 32- Windows API (Application Programming Interface),
API, Microsoft Windows
204
NT, , ;
- , Windows. .
, 32- , :
- (preemption). Win32 . ,
,
.
, , ,
, , -
;
- . Win32
, ,
;
- (Thread support). , ,
, . Windows
3.1
, , .
Windows 95 .
WIN.INI SYSTEM.INI. ,
Windows,
WIN.INI. WIN.INI SYSTEM.INI
:
205
- ?
- ?
- , , ?
- - ,
?
,
, Windows 95 ,
Windows NT. ,
Windows NT ,
registry', ,
,
. registry
.
API.
, . Windows 95 ,
Windows NT, Windows 95,
.
Windows 95
[17]:
-
OLE 2 (Object Linking and Embedding),
-
. Windows 95 OLE
2 Drag and Drop ( Windows 95 );
- ;
- ;
206
- ,
,
;
- MS DOS,
. Windows 95
, -
MS DOS Windows 95 . MS DOS, ,
MS DOS True Type;
- , - NetWare . Windows 95 , ,
, ,
.
Windows 95
- :
- Novell, Banyan, Microsoft ;
-,
, Novell WAN (Wide Area Network), TCP/IP;
, ;
, MAPI
(Message Applica-tion Programming Interface), , ;
207
,
. Windows
.
Windows 95 : 486
25 ; 8
(); 4045 ; VGA ; Microsoft Mouse .
6.3 Windows 98
Microsoft Windows 98 Windows, . Internet, ,
.
Windows 98 ,
Windows 95.
USB (Universal Serial Bus)
, .
Microsoft Windows 98
Windows 98, Internet,
, . Windows 98 Internet [17]:
- Internet Explorer 5. , Microsoft, , Internet;
208
209
; 260
,
FAT16 ( ,
210 400 ); VGA ; Microsoft Mouse
.
6.4 Windows Millennium Edition
Windows Millennium Edition (Windows Me) ,
:
1) [17]:
. Windows Movie Maker , Internet;
. , , .
,
Web- ;
. Windows
Media Internet
-, , , -.
,
Internet;
.
Di-rectX 7,
210
;
2)
I n t e r n e t , , :
. Web-
Internet Explorer 5.5 Web- , ;
Internet,
ADSL ;
Outlook Express;
MSN
Messenger, ,
, ;
.
, NetMeeting 3.1;
(, , , );
3) :
.
Internet ,
Windows;
.
;
, ;
211
. ,
,
;
4)
:
. System Restore ,
;
. ;
Web- Windows
Update. ( ) Web- Windows Update, ;
;
5) :
.
,
;
UPnP (Universal Plug and Play),
;
, Internet, , ;
. ,
(
, );
.
,
, Web-, USB.
212
6.5 Windows NT
6.5.1
Windows 95,
Windows 98, Windows Me ,
( ) Windows 9.
Microsoft Windows 9 Windows NT,
Microsoft, Intel,
. , Microsoft
Windows NT MIPS R4000, DEC Alpha, Power PC . Intel,
Windows MS DOS
Windows NT Intel. , Windows NT
MS DOS, Windows NT 16- .
6.5.2 Windows NT Server 4.0
Windows NT Server 4.0,
Option Pack, Windows NT 4.0,
[17]. . Windows NT Server 4.0
-. Option Pack Windows
NT Server 4.0 Web-, , ,
. Windows NT Server 4.0
Option Pack Web-, , .
213
214
TCP/IP .
Windows NT Server 4.0
:
Intel
486/33 M , Pentium Pentium PRO; 125
;
RISC- RISC-,
Microsoft Windows NT Server 4.0; 160
;
Intel- RISC-: 32
; ; VGA, Super VGA , Windows NT Server 4.0.
6.5.3 Windows NT Workstation 4.0
Windows NT Workstation 4.0 . Windows NT
Workstation 4.0 , Windows 95: , . Windows NT
Workstation 4.0 [17]:
-
16- , , ;
- , .
-
;
-
,
.
Windows NT Workstation 4.0 :
- Intel Pentium ;
215
- RISC-
Alpha AXP, MIPS R4X00 PowerPC; 32 ;
- 110 M ;
VGA ;
- Microsoft Mouse .
6.6 Windows 2000
6.6.1 Windows 2000 Server
Windows 2000
, NT
Internet. Windows 2000 Server Windows NT Server 4.0,
,
. Windows 2000 Server
, Web, , ,
,
Internet.
[17]:
- .
. ;
- , ;
- , , ,
216
RAID 5 ;
- ,
, ;
, ;
- FRS
. FRS
;
- , (
);
- ,
;
- ,
, Windows 2000 Professional;
- XML.
, -
XML12 Microsoft Internet Explorer,
, XML;
- FTP,
, ;
- .
IPSec
12
217
. Active Directory
, ;
- ,
, ;
- Active
Directory,
. , ;
- Windows,
;
- , ;
- ,
,
;
- ,
,
,
, ,
.
6.6.2 Windows 2000 Professional
Windows 2000
Professional
Notebook, . Microsoft
218
Windows 98 ( Plug and Play,
, ). , ,
, Windows NT.
Windows 2000 Professional ,
.
Windows 2000 Professional ,
[17]:
- . Windows File Protection . Windows 2000
, Windows;
-
;
- ;
- , Windows NT 4.0
Windows 9x. ;
- 25%
Windows 9x 64 ;
- 32- , , Windows 95
Windows 98;
- 4 (RAM)
;
-
Windows , , , ;
219
220
- Windows XP Windows NT
Windows 2000, 32- ;
-
Windows XP, Windows 2000 ;
-
,
. ;
- , Windows;
- IP-;
-
Windows 2000,
; , ;
Windows 2000
;
-
Windows XP,
.
Windows XP Home Edition :
- ;
- ;
- , , ,
;
- ;
-
;
221
- , ,
;
-
.
Windows XP Professional ,
Windows XP Home Edition.
:
- ,
;
-
;
- ;
- Microsoft Windows
Server ;
-
.
:
- 300
; 233 (
); Intel Penti-um/Celeron, AMD K6/Athlon/Duron
;
- 128 (
64 , );
- 1,5 ;
- Super VGA 800600 . -
DVD;
- Microsoft Mouse
.
222
13
223
;
- ,
, ,
;
-
;
- Microsoft 2003
Enterprise Server.
:
- ;
- - XML (SOAP,
WSDL, UDDI);
- Microsoft Visual Studio 2003, ;
- Visual Studio 2003;
- ;
- .
Microsoft Windows 2003 Server
:
1) Windows 2003 Web Server ,
-,
.
,
15
224
.
,
, -
. Windows 2003 Enterprise
Server ,
,
, ,
, ,
32 .
64- ;
4) Windows 2003 Datacenter Server , ,
.
,
, ERP (En-terprise Resource Planning),
225
.
, - Microsoft.
32 . , . Windows 2003
Datacenter Server 64- .
Windows 2003 Server , Microsoft Windows NT.
Windows 2003
Server
Windows Windows
2003
2003
Web- Standard
Server
133
133
550
550
Windows 2003
Enterprise
Server
Windows 2003
Datacenter
Server
133
x86
400
x86
733
Itanium
733
733
Itanium
733
226
Windows Windows
2003
2003
Web- Standard
Server
128
128
Windows 2003
Enterprise
Server
Windows 2003
Datacenter
Server
128
512
256
256
256
1 2
1 2
32
x86
64
Itanium
8
64
x86
128
Itanium
8
32
1,5
1,5
1,5
x86
1,5
x86
2,0
Itanium
2,0
Itanium
1. MS DOS.
2. MS DOS.
3. BIOS?
4. BootRecord?
5. MS DOS.
6. MS DOS.
7. MS DOS CONFIG.SYS
. -
227
AUTOEXEC.BAT.
8. .
MS DOS.
9. Windows Plug and Play?
10. Windows API ?
11. , ?
12. Windows?
13. Windows?
14. Windows
?
15. OLE2 Drag and Drop?
16. C Windows USB?
17. Windows
Universal Plug and Play?
18. Windows 9x
Windows NT?
19. Windows NT Server Windows NT
Workstation?
20. Windows RAID 5?
21.
Windows XP.
22. Microsoft
Windows 2003 Server?
228
7. OS/2
WARP
7.1 OS/2 Warp
OS/2 Warp,
IBM,
.
,
.
,
[2].
-, IBM , ,
.
,
,
IBM , , .
-, IBM
, . IBM [2]. , , . ,
OS/2. , ,
, Windows N, .
32- I- OS/2
229
2.0 1992 . , ,
.
Warp,
. OS/2 Warp 4.0 OS/2
Warp 3.0, 1994 , DS-
- . OS/2 Warp 4.0 :
- (preemptive multitasking)
DOS- Windows-;
- ;
- OpenDoc;
- OpenGL;
- Java;
- rue (TTF);
-
( Voice );
- , CompuServe (
);
-
IBM LAN Server, Windows, Lantastic, Novell Netware
4.1, ;
-
;
- Mobile File System ;
- Plugand-Play;
- ( ,
, , , , / , );
- MultiMedia-, , WGuid.
230
,
, ,
.
OS/2 Warp (API), , .
OS/2 LAN Server, OS/2 Warp
OS/2 Warp Server 4.5, ,
,
.
,
IBM (FixPak). , .
irsft
,
,
, .
, ,
Windows icrsft
6 (ServicePak),
OS/2 Warp 3.0, 1994 , IBM
FixPak. OS/2 Warp 4.0
15 FixPax.
,
Rexx,
. ,
, ,
(batch) DOS, . . , OS/2
231
. Rexx
Visual Rexx. - Rexx .
,
OS/2, - ,
DOS-.
7.2 OS/2 Warp
OS/2
. 32- 16 OS/2
DDE16 OS/2. DOS Win16
. DDE
OLE 2.0 DDE 32- OS/2. , Win16 Win16,
,
Windows 3.x.
API OS/2,
SOM (System Object Model),
DLL, . OS/2 API,
,
. DOS16
232
233
.
. ,
, , . ,
. .
,
.
. . , , .
.
- ,
.
.
. , ,
. ,
, ,
.
, , .
7.3 OS/2 Warp
OS/2 Warp WPS (Workplace Shell), , Windows-
234
. Workplace Shell
- SOM IBM-, ,
.
Workplace Shell SOM, , , Rexx.
GUI Windows, , WPS , (shadow WPS),
.
shadow- shadow- . shadow-
, .
GUI Windows. WPS
, shadow- , GUI Windows ,
.
SOM ,
-
, . . OS/2
, SOM
. , , OS/2 90-
, Windows
Whistler. - ()
,
, , .
235
, -
. SOM
. SOM CORBA
(Common Object Request Broker Architecture) ,
.
, OS/2, FileBar, , 4
, Object Desktop,
OS/2
.
, OS/2,
, . ,
, Xfree86 OS/2 X
Window, X- UNIX-, ,
UNIX OS/2. ,
, UNIX- , , , Xfree86/OS2.
7.4 OS/2 Warp 4.5
IBM, 1999 , OS/2 WarpServer for e-Business,
,
(Aurora), .
, OS/2
512
32- .
. , ,
, . -
236
512 .
, 3 (, Windows NT 4.0
2 ).
16- , , 32-
, .
, 32- (IFS),
32bit>l6bit>32bit.
32- 16 API.
JFS (Journaling File
System). JFS
OS/2 Warp. JFS
, .
.
, , .
. ,
. , JFS , ,
.
LVM (Logical Volume Manager).
LVM. LVM , .
.
237
. LVM JFS
.
1. 32-
IBM? ? .
2. VDM- DMA OS/2 Warp?
3.
OS/2 Warp ?
4. OS/2 Warp
4.5 ?
238
8. UNIX
8.1 UNIX
UNIX17 . . UNIX ,
. ,
, . C ,
. UNIX :
1) . ;
2) , , , .;
3) ,
, 17
239
. UNIX ( pipe).
UNIX-
, , , (, ++, , Perl,
Fortran .), , , .
8.2 UNIX
.
,
: , , ,
. , [2]:
- ;
- ;
- ;
- .
. UNIX
, - ( , ).
:
1) , ;
2) ,
;
3) , .
. ,
(account name) (password).
.
.
, .
240
, .
, .
,
, .
. UNIX 18. . .
UNIX
shell (),
. 19, ,
.
,
,
(shell scripts).
Shell , :
- ;
- ( if);
- ( );
- ;
- .
.
UNIX (kernel).
UID (User
Identifier), , . , 18
UNIX XWindows.
19
, $, .
241
:
/etc/passwd ;
/etc/group .
242
UID.
UID (superuser) root.
.
. , . , ,
, ..
. , .
:
1) ;
2) , ;
3) , .
3 :
1) (r) read
() ( -l ls);
2) (w) write
(
);
3) (x) execute UNIX .
(9 )
: rwx rwx rwx 777.
,
, , .
, : r--r--r-
444
$ ls -l /bin
-r-xr-xr-x 1bin 1986 Nov.26 12:00 ar
243
...
.
, . , chmod (change mode).
4000, 2000 1000 :
4000 ; , ()
, ,
;
2000 ; ,
()
, ;
1000 ; , () , .
,
(, mail /usr/spool/mail). , ,
.
. UNIX ,
. , .
, , .
. :
Standard Input (S.I.) ;
Standard Output (S.O.) ;
Diagnostic Output (D.O.) .
244
, .. .
D.O. S.O.
,
: < ; > .
, | ( ).
,
, .
. : ls
lpr .
. (foreground), ..
.
, ()
(background).
, &. UNIX ,
. 2042
(PID).
, .
8.3 UNIX
UNIX, , ,
. , , .
, , , main. ,
245
,
( main) ..
I [2]:
1) fork()
2) (__).
fork ,
,
.
.
fork ()
.
, ( ) , fk : 0
( )
.
, ,
, , , , ,
,
main . ,
,
main. , , fork, , .
. , . ,
,
.
, shell,
shell ls -
246
.
main()
{if(fork()==0) wait(0); /*
*/
ls ("ls", "ls",0); /*
*/
}
,
UNIX ,
fork(). ,
(),
fork(). , . ()
,
. 1
. 1, init,
. fork() .
.
.
.
, .
.
. ,
, . , ,
,
. .
247
UNI- ,
. ,
. . .
, , , , , .
.
8.4 UNIX
UNIX -.
, . , , ,
-.
, , UNIX [2]:
- ;
- ;
- ;
- ;
- ;
- .
. , , , . :
248
- ;
- ;
- ( ).
UNIX
, ,
(). , , ,
.
, , .
, -
.
. ,
UNIX, , . ,
() :
- , ;
- P, . , ;
- V, .
0, ,
P, ;
- P, CP (conditional
P), ,
.
,
249
.
.
FIFO (First-In-First-Out). , , . UNIX , ,
.
UNIX .
, .
.
. :
-
;
- (,
);
- (, );
- .
(),
.
.
:
- ;
-
;
- ;
- ,
250
.
,
, .
. -.
()
, , .. .
,
. UNIX , . .
, . .
,
.
RPC
(Remote Procedure Call) , , .
, ,
,
. .
:
- - , (stub). ,
251
.
(ling);
- ,
(unmarshalling),
. .
8.5 Linux
Linux SI21- UNI
. Linux UNI, 90-
(Linus Torvalds) .
, ,
.
Linux UNI-
.
,
. Linux
.
Linux UNIX IM
i80386. Linux ,
.
21
252
Linux , . .
Linux , UNIX, , ,
UNIX.
Linux UNIX , IEEE
POSIX.l, System V BSD.
.
UNI Linux . ,
Linux, , , , , . Linux :
SI, csh bash; pty; , .
Linux
. , ext2fs, Linux. ,
Minix-l Xenix. FAT FAT32, ,
. ISO 9660 CDROM CD-ROM. HPFS NTFS, ,
.
Linux, UNIX-,
TCP/IP .
TCP/IP, FTP, telnet, NNTP
SMTP. ,
Linux, DNS-, WWW-
(ache),
, , DHCP.
253
UNIX?
UNIX?
Shell?
Kernel?
UID GID?
254
8. UNIX?
9. UNIX?
10. UNIX.
?
11. . ?
12. UNIX Reference Manual?
13. UNIX. .
14. .
15. Fork Exec.
16. Init.
17. UNIX?
18.
UNIX ?
19. OC Linux?
? ?
20. WWW- OC Linux?
21.
Linux?
255
9.
. QNX
9.1
QNX
() [2],
, ,
QNX.
QNX , .
. POSIX-.
QNX .
QNX , , () .
API
UNIX. QNX UNIX, - .
, ,
QNX Software Systems Limited 1989 . , , UNIX.
QNX , .
, , ( ), . [18]:
256
,
. QNX , , (, )
. UNIX , .
UNIX ( Windows NT);
, (embedded) ; /dev , .
( , ) ,
. , , ;
,
, .
( ) 3,
, . 1 , . , ;
FLEET, , , (. 9.3);
Photon, ,
, GUI
( Motif), POSIX 4 , i80386 .
257
258
,
, , . QNX ,
.
( 10 , 32
),
. [19]:
- (IPC);
- redirect () ;
- ;
- ( Net).
,
, , . QNX
(065535 ) .
.
, .
, ,
.
,
, , . ,
, ,
, , .
, , . , , QNX, -
259
, . QNX (Proxy)
(Signal).
,
, .
qnx_proxy_attach() .
, . , , Trigger(), . Trigger() , . , 65535 .
UNIX. QNX
, POSIX,
,
UNIX.
, QNX . QNX
, QNX. , , , , . , superuser,
.
. .
Redirect
.
,
. ,
, . .
260
,
, . ,
,
.
, .
.
,
( ) .
QNX
,
, ,
.
:
- - ;
- ,
CPU;
- - .
,
0 () 31 ().
, .
. QNX :
261
1) FIFO ( );
2) round-robin, ;
3) , .
, , , .
, .
, , , ,
,
.
, , QNX
. ,
1, ,
.
,
1; ,
.
.
QNX. , , . . . ,
. ,
, - .
-.
QNX
. , , , -
262
. ,
,
, . .
,
,
. QNX , , , , - .
QNX,
, .
, , ,
. ,
QNX , , ,
.
9.3 QNX
QNX
.
, , Net. Net
.
.
QNX ,
Ethernet, Arcnet, Token Ring. ,
.
QNX , , -. , , , , , -
263
. , QNX . (,
, )
. QNX Ethernet, Arcnet, Serial Token Ring
- , .
,
, .
on-line,
.
.
QNX (
) ,
. , , , , .
, , .
FLEET. QNX-. ,
,
.
.
, QNX FLEET FTL (FLEET Transport Layer).
IPX NetBios ,
. -
264
FLEET [20] .
FLEET
FLEET
Fault-Tolerant Networking QNX .
Load-Balancing on the Fly
QNX
Efficient Performance
,
QSSL , .
Extensible Architecture
TransparcntDistributed
Processing
QNX . ,
RPC. , , .
QNX [6, 21, 22].
265
1. QNX?
?
2.
QNX?
3. QNX?
4. QNX?
5. QNX ?
6. QNX ?
7. QNX
?
266
- .
.
.
.
- .
.
.
.
.
.
ACPI (Advanced Configuration and Power Interface) .
AEP (Super-computing Application Environment Profile)
POSIX.
AGP (Accelerated Graphic Port)
.
API (pplication Program Interface)
.
BIOS (Base Input Output System) .
CDFS (Compact Disk File System) .
CLX (Component Library for Cross-platform, ) -
Borland.
CORBA (Common Object Request Broker Architecture) .
CPU (central processing unit) .
CTOS (An Operating System produced Convergent Technology )
.
DDE (Dynamic Data Exchange)
.
DLL (Dynamic Link Library)
.
DMA (Direct Memory Access)
.
267
DO (Diagnostic Output) .
DRAM (Dynamic Random Access Memory)
.
EMS (Expanded Memory Specification) .
ERP (Enterprise Resource Planning)
.
ESCD (Extended System Configuration Data) .
FAT (File Allocation Table) .
FCFS (First Come First Served) .
FLEET (Fault-Tolerant Networking, Load-Balancing on the Fly,
Efficient Performance, Extensablc Architecture, Transparcnt Distributed Processing) QNX.
FTL (FLEET Transport Layer)
(. FLEET).
GDI (Graphics Device Interface)
.
GDT (Global Descriptor Table) .
GID (Group Identifier) .
GUI (Graphical User Interface) .
HDD (Hard Disk Drive) .
HMA (High Memory Area) .
HPFS (High Performance File System)
.
ICS (Internet Connection Sharing) Internet
.
IDT (Interrupt Descriptor Table) .
IEEE (Institute Electrical and Electronic Engineers)
IEEE 1394 ,
.
IFS (Installing File System) .
268
269
270
271
1. . .
. 3- ., . .: , 1990. 272 .
2. .. / ..
, .. . .: , 2002. 736 .
3. . . . .: , 1985. 295 .
4. . / . , . . .: , 1978. 792 .
5. . / . , . .
.: ; : BHV, 2004. 800 .
6. . QNX / . , .
, . . .: ,
2004. 432 .
7. IA-32 Intel Architecture Software. Developer's Manual, Volume 14.
8. . .
http://www.webmachine.ru/delphi.
9. ..
: / .. ,
.. . .: , 1988. 76 .
10. .. UNIX.
.: BHV-, 1997. 528c.
11. .. / ..
, .. . .: , 2001.
12. .. IBM PC: .
2- . .: , 2002. 928 .
13. . Pentium III, Athlon / . , .
. .: , 2000. 480.
14. . . IBM PC : .
.: -, 2003. 480 .
15. . Microsoft Windows //
. 2000. 7. . 5460.
16. http://standards.ieee.org/regauth/posix/index.html
17. http://www.microsoft.ru/rus/
272
18. QNX: .
http://www.lgg.ru/~nigl/QNX/doc
19. . QNX: / PC Week Re. 1998. 7.
20. http://support.qnx.com
21. . QNX:
. .: -, 2004. 192 c.
22. . QNX/Neutrino 2. .: , 2002. 512 c.
273
1
1. Windows .
,
PEEK.COM ( HELP F1,
F8 F6).
(
lol.com),
1 MCB (. .3.2.1,
THelp).
, (F8).
.
.
2. .
1
1. ?
2. .
2
1. ,
.
2. Windows NT.
3
1. : task (),
process (), thread (, ).
?
2. Windows 9x.
274
4
1. ? , ,
()?
2. - .
5
1. . ?
?
2. .
6
1. : ? ?
2. Windows
NT UNIX. ?
7
1. ; , .
2.
?
8
1. , ?
2. ? .
9
1. ?
2. ?
275
10
1. .
2. , .
2
1. FAT.
,
(. 4.3.2)
THelp.
DE.EXE (Norton Utilites).
DOS (, , BOOT, FAT, ROOT DIR).
.
.
.
.
MS-DOS, , .
.
, UNDELETE, .
2. .
1
.
276
2
.
?
3
.
4.
(API)?
5
API? ?
6
?
7
POSIX? , ,
POSIX?
8
( ). ? ?
9
UNIX?
10
HPFS. HPFS ?
277
3
1.
.
, , (
) .
THelp.
2.
.
1
1. , ,
, ,
/n , /c , /d.
2. MS DOS.
2
1. , ( /b /e).
2. BootRecord?
3
1. ,
run.log (, ..)
13 .
2. MS DOS.
4
1. , , ,
.
2. MS DOS CONFIG.SYS . -
278
AUTOEXEC.BAT.
5
1. ,
- .
2. .
MS DOS.
6
1. ,
- , , , .
2. Windows API ?
7
1.
. ,
( ) - ( ) . , .
2. Windows?
8
1. ( tail Unix).
. 10 . , .
2. OLE2 Drag and Drop?
9
1. , ,
, , /n , /c , /d.
2. Windows RAID 5?
279
10
1. ,
,
C:\Temp.
2. MS DOS.
4
1. Windows,
Windows.
Windows (, , , , , , , ).
Windows.
Internet Explorer Outlook
Express.
.
2.
1
1. 32- IBM?
? .
2. UNIX?
3.
QNX?
2
1. VDM- DMA OS/2 Warp?
2. UNIX?
280
3. QNX ?
3
1. OS/2
Warp ?
2. UNIX. ?
3. Init UNIX.
4
1. OS/2 Warp 4.5
?
2. UNIX?
3. UNIX
?
5
1. UNIX.
2. UNIX?
3. QNX?
?
6
1. UNIX.
2. Fork Exec.
3. QNX?
7
1. UNIX?
2. OC Linux? ? ?
3. QNX
?
281
8
1. Shell?
2.
Linux?
3. QNX
?
9
1. Kernel?
2. WWW- OC Linux?
3. QNX?
10
1. . ?
2. QNX .
3. - SOM, IBM.