Send patches - preferably formatted by git format-patch - to patches at archlinux32 dot org.
summaryrefslogtreecommitdiff
path: root/floppy/doc/www.drdobbs.com_80386-protected-mode-initialization_184408010.txt
blob: d0cf894b992b0ca1206e4682022f03743844d144 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
   #[1]Dr. Dobb's All Articles [2]Dr. Dobb's All Articles

   [tr?id=832000476880185&ev=PageView&noscript=1]

   (BUTTON) Informa

   Dr. Dobb's is part of the Informa Tech Division of Informa PLC
     * [3]Informa PLC
     * [4]About us
     * [5]Investor relations
     * [6]Talent

   This site is operated by a business or businesses owned by Informa PLC
   and all copyright resides with them. Informa PLC's registered office is
   5 Howick Place, London SW1P 1WG. Registered in England and Wales.
   Number 8860726.

     * [7]Subscribe
     * [8]Newsletters
     * [9]Digital Library
     * [10]RSS

     * ________________________________________
     * Submit

   Search: (*) Site ( ) Source Code

     * [11]Home
     * [12]Articles
     * [13]News
     * [14]Blogs
     * [15]Source Code
     * [16]Webinars & Events

     * [17]Facebook
     * [18]Twitter

   Sections v
     * [19]Home
     * [20]Articles
     * [21]News
     * [22]Blogs
     * [23]Source Code
     * [24]Webinars & Events

     * [25]Cloud
     * [26]Mobile
     * [27]Parallel
     * [28].NET
     * [29]JVM Languages
     * [30]C/C++
     * [31]Tools
     * [32]Design
     * [33]Testing
     * [34]Web Dev
     * [35]Jolt Awards

   Channels v
     * [36]Cloud
     * [37]Mobile
     * [38]Parallel
     * [39].NET
     * [40]JVM Languages
     * [41]C/C++
     * [42]Tools
     * [43]Design
     * [44]Testing
     * [45]Web Dev
     * [46]Jolt Awards

   [47]RSS

   [48]Tweet
   [49][share_email_icon.gif] [50][share_print_icon.gif] [51]Permalink

80386 Protected Mode Initialization

   By Neal Margulis, October 01, 1988

   In addition to discussing how to get from real- to protected-mode and
   back, Neal shows how to define greater tan 64K segments, and provides
   some general comments on the ins and outs of developing 32-bit
   software.

   Neal Margulis is an applications engineer for Intel Corp. and can be
   reached at 2625 Walsh Ave., SC4-40, Santa Clara, CA 95051.
     __________________________________________________________________

   The 32-bit mode of the Intel 80386 and the 80386SX provides significant
   architectural advantages over the 80286. ln addition, software that
   takes advantage of these advanced features has significant performance
   improvements. An application program running in the 80386's native
   32-bit mode typically executes from two to six times faster than the
   equivalent application written for the 80286. Furthermore, programs
   that manipulate large data structures are easier to write when you use
   the 32-bit mode of the 80386. Among the features that the 80386
   provides over the 80286 are support for large segment sizes, 32-bit
   data operations, and paged memory management.

   The program presented here shows how to initialize the 80386 into
   protected mode, how to define segments greater than 64K in size, and
   how to return to real mode. You can use this program as a template for
   coding applications that use the 80386 features. Although the 80386SX
   has a reduced physical addressing space of 16 Mbytes (the maximum
   address space of AT architecture), its programming model is the same as
   that of the 80386. Thus the template can be used with it as well.

   This article explains how the code works and briefly describes how to
   adapt the template to suit your individual needs. You may also find it
   helpful to refer to one of many 80386 programming articles, such as
   "Programming on the 80386" (DDJ, October 1986). Additional information
   can be found in the Intel 80386 Programmers Reference Guide and the
   80386 Data Sheet, as well as the book Programming the 80386 by Crawford
   and Gelsinger (Sybex Books).

32-Bit Data Operations

The ability to operate on 32 bits of data adds power to arithmetic and
logical instructions. While the 80286 generates only 16-bit data, the 80386
contains eight general-purpose 32-bit registers. Segments for 80386 protected
mode are set to either use16 or use32, which indicates the default sizes for
data and addressing. in real mode, the 80386 is limited to only use16
segments. An override prefix must be designated in order to perform 32-bit
operations within a protected mode use16 segment. This results in greater
program length and a possible decrease in performance. The 80386 in protected
mode allows for both use16 and use32 segments. No override prefixes are
necessary for 32-bit data operations or 32-bit addressing in a use32 segment.
In the program shown in [52]Listing One, page 84, CSEG and C3 are use16 code
segments because they must be executable from real mode, and PMODE segment is
a use32 code segment.

Large Segments

The 64K limit on the segment size of the 80286 and the real mode 80386 hinder
the addressing of large data arrays and of long sequences of code. Reloading
segments is time consuming, disrupts the task at hand, and causes an
unnatural breakup of procedures and data. The 80386 protected mode allows for
segments up to 4 gigabytes in size. The base, limit, and granularity fields
of segment descriptors specify the segment size and location in memory. The
base represents a linear address and the segment size is determined by the
limit and the granularity (G) bit. When the G bit is a zero, the actual limit
is the 20-bit limit field of the descriptor (Maximum size 2^20 = 1 Mbyte). If
the G bit is a one, then the limit field page granularity is multiplied by
4K. This gives a maximum limit of 4 gigabytes (2^20 * 2^12). The base's
linear address is 32-bits long, thus allowing it to be specified anywhere
within the 4-gigabyte address space.

Segmentation is the basis for protection. Data and code segments can reside
in separate, nonoverlapping areas of memory. In addition, privilege levels
assigned to different segments provide a mechanism for limiting access to
certain data or privileged instruction sequences (for both). The 80386
provides four privilege levels. In the program presented in [53]Listing One,
all segments are of the highest privilege level (0). You can change this by
modifying the segment descriptors and the selectors.

4-Gigabyte Addressing

To use the increased segment sizes, the 80386 has expanded the instruction
pointer to 32-bits and added new addressing modes. As a result, segment loads
and stores within a procedure can be eliminated and the entire physical
address space can be accessed as one segment. The template program sets up a
data segment that starts at the base of video memory 0B8000H. The entire
address space is accessible through a segment that begins at zero.

The effective address of a memory operand can be obtained through an absolute
address or through one of the register-base methods of the following form:

[base register] + [(index register *           scale) + displacement]

The 80386 also has page translation by which linear addresses can be resolved
to physical addresses. Page translation occurs when the PG bit in CR0 is set.
Two levels of tables are used to address each page of memory. The
higher-level table is the page directory, which addresses up to 1K
second-level page tables. These second-level page tables address up to 1K
pages, each being 4K.

Because all pages are of equal size, page translation can reduce the memory
fragmentation that occurs when using segmentation for on-demand memory
allocation. The template program does not use paging, so all linear addresses
are treated as the physical address.

Setting Up the Descriptor Tables

Before entering protected mode, you must set up descriptor tables and load
the 80386 with pointers to these tables. While in real mode, the program in
[54]Listing One sets up a global descriptor table (GDT) and does not require
a local descriptor table.

Starting at the memory location designated by the label GDT__table,
successive 8-byte descriptor entries make up the GDT. MASM's STRUC feature
makes coding of the entries much easier. Because DOS determines the memory
location of the program at run time, the absolute addresses must also be
calculated at run time.

The template program determines the bases for each of the segments and the
pointer to the descriptor table. This table pointer consists of a 32-bit
linear address and a 16-bit limit.

Such 48-bit (6-byte) objects are sometimes referred to as a PWORD or FWORD
data type. Using a QWORD (8 bytes), as in this program, helps to maintain
portability between assemblers.

The Type field of the descriptor determines whether segments that use this
descriptor contain code or data. Descriptors to specify gates, task state
segments, and local descriptor tables are also available, but are not used in
this example.

Entering Protected Mode

Having set up the descriptor table, it is simple to enter protected mode. The
PE bit of Control Register Zero (CR0) is set to one, and then a jump is
executed. The jump flushes the prefetch queue, which contains instructions
that were decoded for execution in real mode. Either a near or a far jump
will flush the prefetch queue. By using a far jump, the 80386 reloads the
code segment register (CS) and the internal segment descriptor cache. The far
jump instruction uses selector 08H, which is GDT entry 1. This is the PMODE
segment entry. Execution in this segment allows native 32-bit operations.
(Bits 15 through 3 of the selector determine the GDT table entry. Bit 2 is
Table indicator, and bits 1 and 0 are the privilege level.)

The Jump instructions are handcoded by using the define byte (DB) assembler
directive. Opcode 0EAH specifies an intersegment jump, with the next two
fields of the instruction being the offset and the segment selector operands.
In this example, all of the offsets are zero because the jump targets are at
the start of their respective segments. The offset size is either a 16-bit or
32-bit field. This is determined by the code segment type size in which the
jump instruction occurs. The segment selector field of the jump instruction
determines which descriptor table entry is the target segment for the jump.

Returning to Real Mode

Returning to real mode on the 80286 requires that you reset the processor. On
an PC AT, this means saving the required processor contents, placing a reset
code in the CMOS RAM, storing a return address in memory, and using the
keyboard controller to reset the processor. Although 386 based ATs support
this reset scheme, a much simpler and far faster way to return the 386 to
real mode is available. In the C3 segment of the example program, the 80386
is returned to real mode by clearing the PE bit then executing a jump
instruction to flush the instruction queue. To assure proper operation after
returning to real mode, the segment registers must be loaded with real mode
type selectors while still in protected mode. Entry 4 in the GDT represents
what should be in the segment descriptor caches during real mode. They have a
64K limit with the base at zero and the top 2 bytes set to zero.

Other Considerations

In the early days of PCs, some programs took advantage of addresses wrapping
around to zero after the limit of the 8088 was exceeded. When the 80286-based
AT was introduced, it was necessary to emulate this address wrapping. An
enable gate was added to address line 20. To prevent unwanted wrapping, you
must enable this gate. The code for doing this is located in the IBM
Technical References for the AT and PS/2. The procedures are different
because the AT uses the keyboard controller to enable the address line. The
programming example indicates where to insert the procedures for enabling and
disabling of the address line.

[LISTING ONE]
<a name="01ca_000c">
_80386 PROTECTED MODE INITIALIZATION_
by
Neal Margulis

comment #*****************************
Program by  Neal Margulis -- Use MASM 5.0
#*************************************

descriptor STRUC
    limit_0_15  dw  0      ;  lowest 16 bits of segment limit
    base_0_15   dw  0      ;  lowest 16 bits of base
    base_16_23  db  0      ;  base bits 16-23
    access      db  0      ;  Present bit, priv. level, type
    gran        db  0      ;  G bit, D/B bit , limit bits 16-19
    base_24_31  db  0      ;  base bits 24-31
descriptor ENDS

code_seg_access equ 09AH   ; Present, DPL=0, non-conforming,read/exec
data_seg_access equ 092H   ; Present, DPL=0, Expand-Up,writeable

; have screenbase equal B8000H for EGA or B0000H for monochrome
screenbase   EQU  0B8000H
screenseg    EQU  0B800H

CSEG segment word  use16 'code'
assume  cs:CSEG,ds:CSEG

       mov ax,CSEG
       mov ds, ax

; Make entries in GDT for PMODE segment as code or data
       mov ax, seg PMODE
       and eax, 0FFFFh
       shl eax, 4H
       mov ebx, eax
       shr eax, 16
       mov gdt_PM_1.base_0_15, bx
       mov gdt_PM_2.base_0_15, bx
       mov gdt_PM_1.base_16_23,al
       mov gdt_PM_2.base_16_23,al

; Make entry in GDT for C3 segment as code
       mov ax,seg C3
       and eax, 0FFFFH
       shl eax, 4H
       mov ebx, eax
       shr eax, 16
       mov gdt_c3_5.base_0_15, bx
       mov gdt_c3_5.base_16_23,al

; Set up gdtr for lgdt instruction
       mov ax, cs
       and eax, 0FFFFH
       shl eax, 4H
       add eax, offset gdttbl
       mov dword ptr gdtaddr+2,eax
       lgdt  gdtaddr               ; set GDT address
A20_ON:

       cld                         ; Clear direction flag
       cli                         ; Disable interrupts

; Enter Protected Mode
        mov     eax,cr0
        or      eax,1
        mov     cr0,eax            ; Enable protected mode

              ;flush prefetch queue
        DB 0EAH,0H,0H,08H,0H       ; jmp to PMODE and execute

gdtaddr label   qword
        dw      48
        dd      ?
        dw      0

; global descriptor table

gdttbl   label   dword
gdt_null  descriptor <,,,,,>  ;   GDT entry 0 (null descriptor)
gdt_PM_1  descriptor <0FFFFH,,,code_seg_access,0C0H,0>  ;  D bit
ON
gdt_PM_2  descriptor <0FFFFH,,,data_seg_access,08FH,>  ;
gdt_3     descriptor <0FFFFH,0,0,data_seg_access,08FH,0>
gdt_rm_4  descriptor <0FFFFH,0,0,data_seg_access,08fH,0>
gdt_c3_5  descriptor <0FFFFH,,,code_seg_access,080H,0>  ;  D bit
OFF

CSEG ends

PMODE segment para public use32 'code'
    assume cs:PMODE
        mov ax, 18h         ;selector 18H is 4 Gigabyte data
segment with
                                                          ;
base at 0
        mov es, ax
        mov fs, ax
        mov ax, 10h         ;  Data segment with base at 'c2seg'
        mov ds, ax
        mov cx, 025h
        mov     edi,screenbase  ;  Addressing screen memory from
protected mode
display:mov byte ptr es:[edi],'P'
        add     edi,2
        mov     byte ptr es:[edi],'M'
        add     edi,2
        mov     byte ptr es:[edi],' '
        add     edi,2
        loopne display

        db      0eah, 0h, 0h, 0h, 0h,28h, 0h ; jmp to c3 and
execute

align 16

                pdat  db 0ach
lastpm  label dword
PMODE ends

c3 segment para public use16 'code'
    assume cs:c3

        mov ax, 20h         ; Change segments back to have valid
        mov es, ax          ;  real mode attributes.
        mov ds, ax
        mov fs, ax
        mov eax,cr0
        and eax, 07ffffffeh
        mov cr0,eax               ; enter real mode
        jmp far ptr flushrl       ; flush queue
 flushrl:
         mov ax, screenseg        ; Address screen memory from real mode
         mov ds, ax
         sub edi, 0b8000h
         mov si,di
        mov byte ptr ds:[si],'C'    ;  Write to screen
        add si,2
        mov byte ptr ds:[si],'3'

A20_off:

        mov ah, 04ch                    ;  DOS termination
        mov al, 01h
        int 21h
c3 ends

end









  Related Reading

     * [55]News
     * [56]Commentary

News

     * [57]Tools To Build Payment-Enabled Mobile Apps
     * [58]Parasoft DevTest Shifts To Continuous
     * [59]A Datacenter Operating System For Data Developers
     * [60]XMind 6 Public Beta Now Available[61]More News»

Commentary

     * [62]biicode 2.0 Is Buzzing
     * [63]Things That Go Boom
     * [64]Application Intelligence For Advanced Dummies
     * [65]Devart dbForge Studio For MySQL With Phrase Completion[66]More
       Commentary»

     * [67]Slideshow
     * [68]Video

Slideshow

     * [69]Jolt Awards: The Best Books
     * [70]Developer Reading List
     * [71]The Most Underused Compiler Switches in Visual C++
     * [72]Jolt Awards: Coding Tools[73]More Slideshows»

Video

     * [74]Verizon App Challenge Winners
     * [75]IBM Mobile Developer Challenge
     * [76][email protected] Showcase
     * [77]Connected Vehicles[78]More Videos»

     * [79]Most Popular

Most Popular

     * [80]RESTful Web Services: A Tutorial
     * [81]Lambda Expressions in Java 8
     * [82]Developer Reading List: The Must-Have Books for JavaScript
     * [83]An Algorithm for Compressing Space and Time[84]More Popular»
     __________________________________________________________________

  More Insights

White Papers

     * [85]Maximize the Human Potential of Your SOC
     * [86]Real-time Endpoint Security with Automated Incident Response

   [87]More >>

Reports

     * [88]Proven Success Factors for Endpoint Security
     * [89]Intel 471 Breach Report

   [90]More >>

Webcasts

     * [91]4 Tips for Enabling Collaboration Among Remote Designers
     * [92]Why We're Still Stuck on Passwords

   [93]More >>
     __________________________________________________________________

   INFO-LINK
     *
     *
     *
     *

   [dobbs_disqus_logo.gif]

Currently we allow the following HTML tags in comments:

Single tags

   These tags can be used alone and don't need an ending tag.

   <br> Defines a single line break
   <hr> Defines a horizontal line

Matching tags

   These require an ending tag - e.g. <i>italic text</i>

   <a> Defines an anchor
   <b> Defines bold text
   <big> Defines big text
   <blockquote> Defines a long quotation
   <caption> Defines a table caption
   <cite> Defines a citation
   <code> Defines computer code text
   <em> Defines emphasized text
   <fieldset> Defines a border around elements in a form
   <h1> This is heading 1
   <h2> This is heading 2
   <h3> This is heading 3
   <h4> This is heading 4
   <h5> This is heading 5
   <h6> This is heading 6
   <i> Defines italic text
   <p> Defines a paragraph
   <pre> Defines preformatted text
   <q> Defines a short quotation
   <samp> Defines sample computer code text
   <small> Defines small text
   <span> Defines a section in a document
   <s> Defines strikethrough text
   <strike> Defines strikethrough text
   <strong> Defines strong text
   <sub> Defines subscripted text
   <sup> Defines superscripted text
   <u> Defines underlined text

   Dr. Dobb's encourages readers to engage in spirited, healthy debate,
   including taking us to task. However, Dr. Dobb's moderates all comments
   posted to our site, and reserves the right to modify or remove any
   content that it determines to be derogatory, offensive, inflammatory,
   vulgar, irrelevant/off-topic, racist or obvious marketing or spam. Dr.
   Dobb's further reserves the right to disable the profile of any
   commenter participating in said activities.

   Disqus Tips To upload an avatar photo, first [94]complete your Disqus
   profile. | [95]View the list of supported HTML tags you can use to
   style comments. | Please read our [96]commenting policy.

Recent Articles

     * [97]Dr. Dobb's Archive
     * [98]Farewell, Dr. Dobb's
     * [99]Jolt Awards 2015: Coding Tools
     * [100]Thriving Among the APIs
     * [101]The Long Death of Project Hosting Sites

Most Popular

   [102]Stories [103]Blogs
     * [104]RESTful Web Services: A Tutorial
     * [105]Lambda Expressions in Java 8
     * [106]Developer Reading List: The Must-Have Books for JavaScript
     * [107]An Algorithm for Compressing Space and Time
     * [108]Why Build Your Java Projects with Gradle Rather than Ant or
       Maven?
     *
     *

     * [109]Read/Write Properties Files in Java
     * [110]Coding the JavaFX TableView
     * [111]Easy DOM Parsing in Java
     * [112]C++11: unique_ptr
     * [113]Making HTTP Requests From Java
     *
     *

This month's Dr. Dobb's Journal

                [114]Dr. Dobb's Digital Digest - October 2014

   [115]This month, Dr. Dobb's Journal is devoted to mobile programming.
   We introduce you to Apple's new Swift programming language, discuss the
   perils of being the third-most-popular mobile platform, revisit SQLite
   on Android , [116]and much more!
   [117]Download the latest issue today. >>

Upcoming Events

   [118]Live Events [119]WebCasts
     * [120][FREE Virtual Event] The Identity Crisis -

     [121]4 Tips for Enabling Collaboration Among Remote Designers

     [122]Tips for Keeping Your Enterprises' Password Stores Safe

     [123]Why We're Still Stuck on Passwords

     [124]Tools for Better Network Monitoring and Observability

     [125]The ROI Story: Identifying & Justifying Disruptive Technology

   [126]More Webcasts>>

Featured Reports



   [127]What's this?
     * [128]AI-Driven Testing: Bridging the Software Automation Gap
     * [129]2021 Digital Transformation Report
     * [130]Increased Cooperation Between Access Brokers, Ransomware
       Operators Reviewed
     * [131]SANS 2021 Cloud Security Survey
     * [132]The Infoblox Q1 2021 Cyberthreat Intelligence Report

   [133]More >>
   [smartbox.PNG]

Featured Whitepapers



   [134]What's this?
     * [135]Maximize the Human Potential of Your SOC
     * [136]Modernize your Security Operations with Human-Machine
       Intelligence
     * [137]AI in Cybersecurity: Using artificial intelligence to mitigate
       emerging security risks
     * [138]Avoid Unplanned Downtime From Ransomware
     * [139]Real-time Endpoint Security with Automated Incident Response

   [140]More >>
   [smartbox.PNG]

Most Recent Premium Content

   [141]Digital Issues
   2014
       Dr. Dobb's Journal
     * [142]November - Mobile Development
     * [143]August - Web Development
     * [144]May - Testing
     * [145]February - Languages
       Dr. Dobb's Tech Digest
     * [146]DevOps
     * [147]Open Source
     * [148]Windows and .NET programming
     * [149]The Design of Messaging Middleware and 10 Tips from Tech
       Writers
     * [150]Parallel Array Operations in Java 8 and Android on x86: Java
       Native Interface and the Android Native Development Kit
       2013
     * [151]January - Mobile Development
     * [152]February - Parallel Programming
     * [153]March - Windows Programming
     * [154]April - Programming Languages
     * [155]May - Web Development
     * [156]June - Database Development
     * [157]July - Testing
     * [158]August - Debugging and Defect Management
     * [159]September - Version Control
     * [160]October - DevOps
     * [161]November- Really Big Data
     * [162]December - Design
       2012
     * [163]January - C & C++
     * [164]February - Parallel Programming
     * [165]March - Microsoft Technologies
     * [166]April - Mobile Development
     * [167]May - Database Programming
     * [168]June - Web Development
     * [169]July - Security
     * [170]August - ALM & Development Tools
     * [171]September - Cloud & Web Development
     * [172]October - JVM Languages
     * [173]November - Testing
     * [174]December - DevOps

    IFRAME: [175]https://www.googletagmanager.com/ns.html?id=GTM-MMJM4JC

   Discover more from Informa Tech
     * [176]InformationWeek
     * [177]Interop
     * [178]Dark Reading
     * [179]Data Center Knowledge
     * [180]Network Computing
     * [181]IT Pro Today

   Working With Us
     * [182]Contact Us
     * [183]About Us
     * [184]Advertise
     * [185]Reprints

   Follow Dr. Dobb's on Social
     *
     *
     *
     *

   alt text of the logo
     * [186]Home
     * [187]Cookie Policy
     * [188]CCPA: Do not sell my personal info
     * [189]Privacy
     * [190]Terms

   Copyright © 2022 Informa PLC. Informa PLC is registered in England and
   Wales with company number 8860726 whose registered and head office is 5
   Howick Place, London, SW1P 1WG.

References

   Visible links:
   1. https://www.drdobbs.com/rss/all
   2. https://www.drdobbs.com/rss/all
   3. https://informa.com/
   4. https://informa.com/About-Us/
   5. https://informa.com/Investors/
   6. https://informa.com/Talent/
   7. https://www.drdobbs.com/subscribe/
   8. https://www.informationweek.com/profile.asp?update_newsletter=t
   9. https://www.informationweek.com/whitepaper/topic/developer
  10. https://www.drdobbs.com/rss/
  11. https://www.drdobbs.com/
  12. https://www.drdobbs.com/articles
  13. https://www.drdobbs.com/news
  14. https://www.drdobbs.com/blogs
  15. https://www.drdobbs.com/sourcecode
  16. http://www.informationweek.com/events/d/d-id/898857
  17. https://www.facebook.com/pages/Dr-Dobbs/17631669579
  18. https://twitter.com/dr_dobbs
  19. https://www.drdobbs.com/
  20. https://www.drdobbs.com/articles
  21. https://www.drdobbs.com/news
  22. https://www.drdobbs.com/blogs
  23. https://www.drdobbs.com/sourcecode
  24. http://www.informationweek.com/events/d/d-id/898857
  25. https://www.drdobbs.com/cloud
  26. https://www.drdobbs.com/mobile
  27. https://www.drdobbs.com/parallel
  28. https://www.drdobbs.com/windows
  29. https://www.drdobbs.com/jvm
  30. https://www.drdobbs.com/cpp
  31. https://www.drdobbs.com/tools
  32. https://www.drdobbs.com/architecture-and-design
  33. https://www.drdobbs.com/testing
  34. https://www.drdobbs.com/web-development
  35. https://www.drdobbs.com/joltawards
  36. https://www.drdobbs.com/cloud
  37. https://www.drdobbs.com/mobile
  38. https://www.drdobbs.com/parallel
  39. https://www.drdobbs.com/windows
  40. https://www.drdobbs.com/jvm
  41. https://www.drdobbs.com/cpp
  42. https://www.drdobbs.com/tools
  43. https://www.drdobbs.com/architecture-and-design
  44. https://www.drdobbs.com/testing
  45. https://www.drdobbs.com/web-development
  46. https://www.drdobbs.com/joltawards
  47. https://www.drdobbs.com/rss
  48. https://twitter.com/share
  49. javascript:emailLauncher('/email?articleUrl=','/80386-protected-mode-initialization/184408010')
  50. https://www.drdobbs.com/article/print?articleId=184408010&siteSectionName=
  51. https://www.drdobbs.com/80386-protected-mode-initialization/184408010
  52. https://www.drdobbs.com/80386-protected-mode-initialization/8810c.htm#01ca_000b
  53. https://www.drdobbs.com/80386-protected-mode-initialization/8810c.htm#01ca_000b
  54. https://www.drdobbs.com/80386-protected-mode-initialization/8810c.htm#01ca_000b
  55. https://www.drdobbs.com/80386-protected-mode-initialization/184408010#toc-news
  56. https://www.drdobbs.com/80386-protected-mode-initialization/184408010#toc-commentary
  57. https://www.drdobbs.com/cloud/tools-to-build-payment-enabled-mobile-ap/240169446?cid=SBX_ddj_related_news_default_80386_protected_mode_initialization&itc=SBX_ddj_related_news_default_80386_protected_mode_initialization
  58. https://www.drdobbs.com/tools/parasoft-devtest-shifts-to-continuous/240169403?cid=SBX_ddj_related_news_default_80386_protected_mode_initialization&itc=SBX_ddj_related_news_default_80386_protected_mode_initialization
  59. https://www.drdobbs.com/database/a-datacenter-operating-system-for-data-d/240169391?cid=SBX_ddj_related_news_default_80386_protected_mode_initialization&itc=SBX_ddj_related_news_default_80386_protected_mode_initialization
  60. https://www.drdobbs.com/tools/xmind-6-public-beta-now-available/240169385?cid=SBX_ddj_related_news_default_80386_protected_mode_initialization&itc=SBX_ddj_related_news_default_80386_protected_mode_initialization
  61. https://www.drdobbs.com/news?cid=SBX_ddj_related_news_default_80386_protected_mode_initialization&itc=SBX_ddj_related_news_default_80386_protected_mode_initialization
  62. https://www.drdobbs.com/cpp/biicode-20-is-buzzing/240169447?cid=SBX_ddj_related_commentary_default_80386_protected_mode_initialization&itc=SBX_ddj_related_commentary_default_80386_protected_mode_initialization
  63. https://www.drdobbs.com/embedded-systems/things-that-go-boom/240169445?cid=SBX_ddj_related_commentary_default_80386_protected_mode_initialization&itc=SBX_ddj_related_commentary_default_80386_protected_mode_initialization
  64. https://www.drdobbs.com/tools/application-intelligence-for-advanced-du/240169443?cid=SBX_ddj_related_commentary_default_80386_protected_mode_initialization&itc=SBX_ddj_related_commentary_default_80386_protected_mode_initialization
  65. https://www.drdobbs.com/tools/devart-dbforge-studio-for-mysql-with-phr/240169414?cid=SBX_ddj_related_commentary_default_80386_protected_mode_initialization&itc=SBX_ddj_related_commentary_default_80386_protected_mode_initialization
  66. https://www.drdobbs.com/articles?cid=SBX_ddj_related_commentary_default_80386_protected_mode_initialization&itc=SBX_ddj_related_commentary_default_80386_protected_mode_initialization
  67. https://www.drdobbs.com/80386-protected-mode-initialization/184408010#toc-slideshow
  68. https://www.drdobbs.com/80386-protected-mode-initialization/184408010#toc-video
  69. https://www.drdobbs.com/joltawards/jolt-awards-the-best-books/240169070?cid=SBX_ddj_related_slideshow_default_80386_protected_mode_initialization&itc=SBX_ddj_related_slideshow_default_80386_protected_mode_initialization
  70. https://www.drdobbs.com/architecture-and-design/developer-reading-list/240168591?cid=SBX_ddj_related_slideshow_default_80386_protected_mode_initialization&itc=SBX_ddj_related_slideshow_default_80386_protected_mode_initialization
  71. https://www.drdobbs.com/cpp/the-most-underused-compiler-switches-in/240166599?cid=SBX_ddj_related_slideshow_default_80386_protected_mode_initialization&itc=SBX_ddj_related_slideshow_default_80386_protected_mode_initialization
  72. https://www.drdobbs.com/joltawards/jolt-awards-coding-tools/240165725?cid=SBX_ddj_related_slideshow_default_80386_protected_mode_initialization&itc=SBX_ddj_related_slideshow_default_80386_protected_mode_initialization
  73. https://www.drdobbs.com/slideshows?cid=SBX_ddj_related_slideshow_default_80386_protected_mode_initialization&itc=SBX_ddj_related_slideshow_default_80386_protected_mode_initialization
  74. https://www.drdobbs.com/mobile/verizon-app-challenge-winners/240166966?cid=SBX_ddj_related_video_default_80386_protected_mode_initialization&itc=SBX_ddj_related_video_default_80386_protected_mode_initialization
  75. https://www.drdobbs.com/mobile/ibm-mobile-developer-challenge/240166310?cid=SBX_ddj_related_video_default_80386_protected_mode_initialization&itc=SBX_ddj_related_video_default_80386_protected_mode_initialization
  76. https://www.drdobbs.com/architecture-and-design/researchintel-showcase/240157932?cid=SBX_ddj_related_video_default_80386_protected_mode_initialization&itc=SBX_ddj_related_video_default_80386_protected_mode_initialization
  77. https://www.drdobbs.com/architecture-and-design/connected-vehicles/240148293?cid=SBX_ddj_related_video_default_80386_protected_mode_initialization&itc=SBX_ddj_related_video_default_80386_protected_mode_initialization
  78. https://www.drdobbs.com/video/archives?cid=SBX_ddj_related_video_default_80386_protected_mode_initialization&itc=SBX_ddj_related_video_default_80386_protected_mode_initialization
  79. https://www.drdobbs.com/80386-protected-mode-initialization/184408010#toc-most-popular
  80. https://www.drdobbs.com/web-development/restful-web-services-a-tutorial/240169069?cid=SBX_ddj_related_mostpopular_default_80386_protected_mode_initialization&itc=SBX_ddj_related_mostpopular_default_80386_protected_mode_initialization
  81. https://www.drdobbs.com/jvm/lambda-expressions-in-java-8/240166764?cid=SBX_ddj_related_mostpopular_default_80386_protected_mode_initialization&itc=SBX_ddj_related_mostpopular_default_80386_protected_mode_initialization
  82. https://www.drdobbs.com/tools/developer-reading-list-the-must-have-boo/240148421?cid=SBX_ddj_related_mostpopular_default_80386_protected_mode_initialization&itc=SBX_ddj_related_mostpopular_default_80386_protected_mode_initialization
  83. https://www.drdobbs.com/jvm/an-algorithm-for-compressing-space-and-t/184406478?cid=SBX_ddj_related_mostpopular_default_80386_protected_mode_initialization&itc=SBX_ddj_related_mostpopular_default_80386_protected_mode_initialization
  84. https://www.drdobbs.com/?cid=SBX_ddj_related_mostpopular_default_80386_protected_mode_initialization&itc=SBX_ddj_related_mostpopular_default_80386_protected_mode_initialization
  85. https://www.informationweek.com/whitepaper/security-management-and-analytics/cybersecurity/maximize-the-human-potential-of-your-soc/439363?cid=SBX_ddj_well_wp_default_80386_protected_mode_initialization&itc=SBX_ddj_well_wp_default_80386_protected_mode_initialization
  86. https://www.informationweek.com/whitepaper/cybersecurity/security/real-time-endpoint-security-with-automated-incident-response/435543?cid=SBX_ddj_well_wp_default_80386_protected_mode_initialization&itc=SBX_ddj_well_wp_default_80386_protected_mode_initialization
  87. https://www.drdobbs.com/whitepaper/all/more.html?cid=SBX_ddj_well_wp_default_80386_protected_mode_initialization&itc=SBX_ddj_well_wp_default_80386_protected_mode_initialization
  88. https://www.informationweek.com/whitepaper/cybersecurity/endpoint-security/proven-success-factors-for-endpoint-security/429043?cid=SBX_ddj_well_Analytics_default_80386_protected_mode_initialization&itc=SBX_ddj_well_Analytics_default_80386_protected_mode_initialization
  89. https://www.informationweek.com/whitepaper/cybersecurity/risk-management-security/intel-471-breach-report/429143?cid=SBX_ddj_well_Analytics_default_80386_protected_mode_initialization&itc=SBX_ddj_well_Analytics_default_80386_protected_mode_initialization
  90. https://www.drdobbs.com/analytics/all/more.html?cid=SBX_ddj_well_Analytics_default_80386_protected_mode_initialization&itc=SBX_ddj_well_Analytics_default_80386_protected_mode_initialization
  91. https://informationweek.tradepub.com/c/pubRD.mpl?secure=1&sr=pp&_t=pp:&qf=w_defa2717&ch=sbx&cid=SBX_ddj_well_Webcast_default_80386_protected_mode_initialization&itc=SBX_ddj_well_Webcast_default_80386_protected_mode_initialization&K=SBX_DDJ_WL
  92. https://interop.com/july19-event?keycode=sbx&cid=SBX_ddj_well_Webcast_default_80386_protected_mode_initialization&itc=SBX_ddj_well_Webcast_default_80386_protected_mode_initialization&K=SBX_DDJ_WL
  93. https://www.drdobbs.com/webcast/all/more.html?cid=SBX_ddj_well_Webcast_default_80386_protected_mode_initialization&itc=SBX_ddj_well_Webcast_default_80386_protected_mode_initialization
  94. https://disqus.com/dashboard/
  95. https://www.drdobbs.com/80386-protected-mode-initialization/184408010
  96. https://www.drdobbs.com/80386-protected-mode-initialization/184408010
  97. https://www.drdobbs.com/architecture-and-design/dr-dobbs-archive/240169474
  98. https://www.drdobbs.com/architecture-and-design/farewell-dr-dobbs/240169421
  99. https://www.drdobbs.com/joltawards/jolt-awards-2015-coding-tools/240169420
 100. https://www.drdobbs.com/architecture-and-design/thriving-among-the-apis/240169441
 101. https://www.drdobbs.com/web-development/the-long-death-of-project-hosting-sites/240169394
 102. https://www.drdobbs.com/80386-protected-mode-initialization/184408010
 103. https://www.drdobbs.com/80386-protected-mode-initialization/184408010
 104. https://www.drdobbs.com/web-development/restful-web-services-a-tutorial/240169069
 105. https://www.drdobbs.com/jvm/lambda-expressions-in-java-8/240166764
 106. https://www.drdobbs.com/tools/developer-reading-list-the-must-have-boo/240148421
 107. https://www.drdobbs.com/jvm/an-algorithm-for-compressing-space-and-t/184406478
 108. https://www.drdobbs.com/jvm/why-build-your-java-projects-with-gradle/240168608
 109. https://www.drdobbs.com/jvm/readwrite-properties-files-in-java/231000005
 110. https://www.drdobbs.com/jvm/coding-the-javafx-tableview/240001874
 111. https://www.drdobbs.com/jvm/easy-dom-parsing-in-java/231002580
 112. https://www.drdobbs.com/cpp/c11-uniqueptr/240002708
 113. https://www.drdobbs.com/jvm/making-http-requests-from-java/240160966
 114. https://www.drdobbs.com/digital/20141022?k=ddjtm&cid=onedit_ds_ddjtm
 115. https://www.drdobbs.com/digital/20141022?k=ddjtm&cid=onedit_ds_ddjtm
 116. https://www.drdobbs.com/digital/20141022?k=ddjtm&cid=onedit_ds_ddjtm
 117. https://www.drdobbs.com/digital/20141022?k=ddjtm&cid=onedit_ds_ddjtm
 118. https://www.drdobbs.com/80386-protected-mode-initialization/184408010#tab_live-events
 119. https://www.drdobbs.com/80386-protected-mode-initialization/184408010#tab_webcasts
 120. https://www.interop.com/july19-event?keycode=sbx&cid=SBX_ddj_fture_LiveEvent_default_80386_protected_mode_initialization&itc=SBX_ddj_fture_LiveEvent_default_80386_protected_mode_initialization
 121. https://informationweek.tradepub.com/c/pubRD.mpl?secure=1&sr=pp&_t=pp:&qf=w_defa2717&ch=sbx&cid=SBX_ddj_fture_Webcast_default_80386_protected_mode_initialization&itc=SBX_ddj_fture_Webcast_default_80386_protected_mode_initialization&K=SBX_DDJ_FT
 122. https://interop.com/july19-event?keycode=sbx&cid=SBX_ddj_fture_Webcast_default_80386_protected_mode_initialization&itc=SBX_ddj_fture_Webcast_default_80386_protected_mode_initialization&K=SBX_DDJ_FT
 123. https://interop.com/july19-event?keycode=sbx&cid=SBX_ddj_fture_Webcast_default_80386_protected_mode_initialization&itc=SBX_ddj_fture_Webcast_default_80386_protected_mode_initialization&K=SBX_DDJ_FT
 124. https://networkcomputing.tradepub.com/c/pubRD.mpl?secure=1&sr=pp&_t=pp:&pc=w_defa2542&ch=sbx&cid=SBX_ddj_fture_Webcast_default_80386_protected_mode_initialization&itc=SBX_ddj_fture_Webcast_default_80386_protected_mode_initialization&K=SBX_DDJ_FT
 125. https://webinar.informationweek.com/5876?keycode=sbx&cid=SBX_ddj_fture_Webcast_default_80386_protected_mode_initialization&itc=SBX_ddj_fture_Webcast_default_80386_protected_mode_initialization&K=SBX_DDJ_FT
 126. https://www.drdobbs.com/webcast/all/more.html?cid=SBX_ddj_fture_Webcast_default_80386_protected_mode_initialization?itc=SBX_ddj_fture_Webcast_default_80386_protected_mode_initialization
 127. https://www.drdobbs.com/80386-protected-mode-initialization/184408010
 128. https://www.informationweek.com/whitepaper/operating-systems/application-acceleration/ai-driven-testing-bridging-the-software-automation-gap/436523?keycode=sbx&cid=SBX_ddj_fture_Analytics_default_80386_protected_mode_initialization&itc=SBX_ddj_fture_Analytics_default_80386_protected_mode_initialization
 129. https://www.informationweek.com/whitepaper/executive-insights-and-innovation/it-strategy/2021-digital-transformation-report/428703?cid=SBX_ddj_fture_Analytics_default_80386_protected_mode_initialization&itc=SBX_ddj_fture_Analytics_default_80386_protected_mode_initialization
 130. https://www.informationweek.com/whitepaper/cybersecurity/risk-management-security/increased-cooperation-between-access-brokers,-ransomware-operators-reviewed/429153?cid=SBX_ddj_fture_Analytics_default_80386_protected_mode_initialization&itc=SBX_ddj_fture_Analytics_default_80386_protected_mode_initialization
 131. https://www.informationweek.com/whitepaper/cybersecurity/cloud-security/sans-2021-cloud-security-survey/429583?cid=SBX_ddj_fture_Analytics_default_80386_protected_mode_initialization&itc=SBX_ddj_fture_Analytics_default_80386_protected_mode_initialization
 132. https://www.informationweek.com/whitepaper/network-and-perimeter-security/cloud-infrastructure/the-infoblox-q1-2021-cyberthreat-intelligence-report/429503?cid=SBX_ddj_fture_Analytics_default_80386_protected_mode_initialization&itc=SBX_ddj_fture_Analytics_default_80386_protected_mode_initialization
 133. https://www.drdobbs.com/analytics/all/more.html?cid=SBX_ddj_fture_Analytics_default_80386_protected_mode_initialization?itc=SBX_ddj_fture_Analytics_default_80386_protected_mode_initialization
 134. https://www.drdobbs.com/80386-protected-mode-initialization/184408010
 135. https://www.informationweek.com/whitepaper/security-management-and-analytics/cybersecurity/maximize-the-human-potential-of-your-soc/439363?cid=SBX_ddj_fture_wp_default_80386_protected_mode_initialization&itc=SBX_ddj_fture_wp_default_80386_protected_mode_initialization
 136. https://www.informationweek.com/whitepaper/security-management-and-analytics/cybersecurity/modernize-your-security-operations-with-human-machine-intelligence/438993?cid=SBX_ddj_fture_wp_default_80386_protected_mode_initialization&itc=SBX_ddj_fture_wp_default_80386_protected_mode_initialization
 137. https://www.informationweek.com/whitepaper/security-management-and-analytics/cybersecurity/ai-in-cybersecurity-using-artificial-intelligence-to-mitigate-emerging-security-risks/438983?cid=SBX_ddj_fture_wp_default_80386_protected_mode_initialization&itc=SBX_ddj_fture_wp_default_80386_protected_mode_initialization
 138. https://www.informationweek.com/whitepaper/cybersecurity/security/avoid-unplanned-downtime-from-ransomware/435553?cid=SBX_ddj_fture_wp_default_80386_protected_mode_initialization&itc=SBX_ddj_fture_wp_default_80386_protected_mode_initialization
 139. https://www.informationweek.com/whitepaper/cybersecurity/security/real-time-endpoint-security-with-automated-incident-response/435543?cid=SBX_ddj_fture_wp_default_80386_protected_mode_initialization&itc=SBX_ddj_fture_wp_default_80386_protected_mode_initialization
 140. https://www.drdobbs.com/whitepaper/all/more.html?cid=SBX_ddj_fture_wp_default_80386_protected_mode_initialization?itc=SBX_ddj_fture_wp_default_80386_protected_mode_initialization
 141. https://www.drdobbs.com/digitaledition/
 142. https://www.drdobbs.com/digital/20141022
 143. https://dc.ubm-us.com/i/350594
 144. https://dc.ubm-us.com/i/300036/
 145. https://dc.ubm-us.com/i/245989
 146. https://www.drdobbs.com/digital/20140813
 147. https://www.drdobbs.com/digital/20140626
 148. https://www.drdobbs.com/digital/20140514/
 149. https://www.drdobbs.com/digital/012914/
 150. https://www.drdobbs.com/digital/022614
 151. https://www.drdobbs.com/digital/121712/?cid=ddj_premium_January2013
 152. https://www.drdobbs.com/digital/012213/?cid=ddj_premium_February2013
 153. https://www.drdobbs.com/digital/022513/?cid=ddj_premium_March2013
 154. https://www.drdobbs.com/digital/032513/?cid=ddj_premium_April2013
 155. https://www.drdobbs.com/digital/042213/?cid=ddj_premium_May2013
 156. https://www.drdobbs.com/digital/052013/?cid=ddj_premium_June2013
 157. https://www.drdobbs.com/digital/062413/?cid=ddj_premium_July2013
 158. https://www.drdobbs.com/digital/072213/?cid=ddj_premium_August2013
 159. https://www.drdobbs.com/digital/082613
 160. https://www.drdobbs.com/digital/092313/
 161. https://www.drdobbs.com/digital/102113
 162. https://www.drdobbs.com/digital/111113?k=ddjtm&cid=onedit_ds_ddjtm
 163. https://www.drdobbs.com/digital/121911/?cid=ddj_premium_January2012
 164. https://www.drdobbs.com/digital/011912/?cid=ddj_premium_February2012
 165. https://www.drdobbs.com/digital/021912/?cid=ddj_premium_March2012
 166. https://www.drdobbs.com/digital/031912/?cid=ddj_premium_April2012
 167. https://www.drdobbs.com/digital/042312/?cid=ddj_premium_May2012
 168. https://www.drdobbs.com/digital/052112/?cid=ddj_premium_June2012
 169. https://www.drdobbs.com/digital/061812/?cid=ddj_premium_July2012
 170. https://www.drdobbs.com/digital/072312/?cid=ddj_premium_August2012
 171. https://www.drdobbs.com/digital/082012/?cid=ddj_premium_September2012
 172. https://www.drdobbs.com/digital/092412/?cid=ddj_premium_October2012
 173. https://www.drdobbs.com/digital/102212/?cid=ddj_premium_November2012
 174. https://www.drdobbs.com/digital/111912/?cid=ddj_premium_December2012
 175. https://www.googletagmanager.com/ns.html?id=GTM-MMJM4JC
 176. https://www.informationweek.com/
 177. https://www.interop.com/
 178. https://www.darkreading.com/
 179. https://www.datacenterknowledge.com/
 180. https://www.networkcomputing.com/
 181. https://www.itprotoday.com/
 182. https://informationweek.com/about-us/d/d-id/705542
 183. https://informationweek.com/document.asp?doc_id=705542
 184. https://informationweek.com/document.asp?doc_id=1334603
 185. https://info.wrightsmedia.com/informa-licensing-reprints-request
 186. https://tech.informa.com/
 187. https://tech.informa.com/cookie-policy
 188. https://privacyportal-eu-cdn.onetrust.com/dsarwebform/c1f53e84-9f05-4169-a854-85052b63c50b/5f26b553-52cc-4973-a761-295d5634a6b6.html
 189. https://tech.informa.com/privacy-policy
 190. https://tech.informa.com/terms-and-conditions

   Hidden links:
 192. https://www.addthis.com/bookmark.php?v=250&winname=addthis&pub=Dr.Dobbs&source=tbx-250&lng=en-US&s=stumbleupon&url=https://www.drdobbs.com/80386-protected-mode-initialization/184408010&title=80386%20Protected%20Mode%20Initialization&ate=AT-Dr.Dobbs/-/fs-0/4d4fc3809f4d8545/1&sms_ss=1&at_xt=1&CXNID=2000001.5215456080540439074NXC&pre=http%3A%2F%2Fwww.drdobbs.com%2F&tt=0
 193. https://www.drdobbs.com/80386-protected-mode-initialization/184408010#disqus_thread
 194. https://www.drdobbs.com/
 195. https://www.drdobbs.com/
 196. https://www.drdobbs.com/
 197. https://www.drdobbs.com/
 198. https://www.facebook.com/informationweek
 199. https://twitter.com/InformationWeek
 200. https://www.linkedin.com/company/3930/admin/
 201. https://www.drdobbs.com/rss/
 202. https://www.omniture.com/