
 10  樠

 i486  室 ४, 뢠 RESET, १  ᪠ 樠  ⥬.   ᨣ   ४  ॣ  i486 ⠭    ﭨ.   ﭨ, ਬ, ﭨ ॣ EIP,   ࠡ ணࠬ ᯥ祭 .  ணࠬ ᯥ祭  ந    , ਬ, ⠡ GDT  IDT, ᯮ㥬  ⥬  ਪ ணࠬ ᯥ祭.
⭮ ᯥ祭  ᨣ RESET  祭 ⠭ ⥬. ⭮  ᨣ     㣨 ᯮᮡ. ਬ,  稥 ᯥ樠쭮   믮 樠樨  .    ⠪ 믮  ᯥ祭  ⢥  祭 ᨣ  宦  ० ⠭   ⥬.
᫥ 樠樨  ॣ DH ᮤন ᫮, 饥 ⨯ .  ꥪ    ᤥ ᮢ⨬  稬 ࠬ Intel ⥬ ᯮ짮 ⮣ ᫠  롮 ࠢ쭮 ணࠬ ᯥ祭 樠樨. ⬥⨬,   i486  ᪮쪮 ࠡ ०.  稭 ࠡ  ०, 㫨饬  8086,  뢠 ० ॠ쭮 樨. ᫨  ᯮ짮 饭 ० (०,  ஬ 㯥  32-ࠧ來 ),  ணࠬ ᯥ祭 樠樨  ⠭  ०  ॣ CR0.

10.1  ﭨ  ᫥ 

 祭 ⠭   襭 ஢.  ஢ 믮 १ 室 AHOLD   ஭ ᨣ RESET. ⢥⢥   ஢   ࠧࠡ稪 ⭮ ᯥ祭 ⥬.  롮 ஢    2**20 ⠪⮢ ਮ. (Intel ⠢  ᮡ ࠢ  ᫮ ⠪⮢ ਮ ஢  ।०).
᫨  i486 襫  ଠ쭮,  ॣ EAX 頥. 㫥 祭 ॣ EAX ᫥ 襭 ஢ 㪠뢠  ࠢ . ᫨ ஢  訢, ᮤন ॣ EAX ᫥ 樠樨   । (, -㫥).  DX ᫥ 樠樨  ᮤন 䨪 ⨯    ᨨ ,    㭪 10-1.  DH ᮤন ᫮ 4, 饥  i486.  DL ᮤন 㭨 䨪  ᨨ.
ﭨ ॣ CR0 ᫥ 祭 ⠭   㭪 10-2.  ﭨ ⠭   ० ॠ쭮 樨   ⪫祭 堭 窨 ࠭.
᫥ 祭 ⠭ ﭨ ॣ஢ EBX, ECX, ESI, EDI, EBP, ESP, GDTR, LDTR, TR, ⫠ ॣ஢ (஬ DR7)  ⥪  ࠭  饩 窮 ।. ணࠬ ᯥ祭     । -   ॣ஢. ﭨ 䫠  ⠫ ॣ஢ ᫥ 祭 ⠭    10-1.


|<----------------------  EDX  ------------------------->|

                               |<------  DX ------------>|

31                           16 15           8 7
-----------------------------------------------------------------
|                              | 䨪 |           |
|      ࢨ஢           |   ன⢠  |       ᨨ   |
|                              |               |      |
-----------------------------------------------------------------

       㭮 10-1. ন ॣ EDX ᫥ 



   --------0 襭    -------0 ஫ ࠢ ⬥
  |          窠    |
  |          ࠭     |     --0    ⬥
  |   -----0 襭   |    |
  |  |       ஢ |    |
  |  |   --0 襭   |    |
  |  |  |          |    |
 31 30 28               18   16                 5  4  3  2  1  0
-----------------------------------------------------------------
| P| C| N|             | A| | W|              | N| E| T| E| M| P|
|  |  |  |             |  | |  |              |  |  |  |  |  |  |
| G| D| W|             |  | | P|              | E| T| S| M| P| E|
-----------------------------------------------------------------
                                                |  |  |  |  |  |
                                                |  |  |  |  |  |
0 譥 ᮮ饭  訡  饩 窮   |  |  |  |  |
                             0 ( ᯮ)---   |  |  |  |
                       0  ४祭  -----   |  |  |
        0  ESC  㦨 誮---------   |  |
       0  WAIT  㦨 誮------------   |
                                0  ०---------------

       㭮 10-2. ন ॣ CR0 ᫥ 

⬥⨬,    ᥣ ॣ஢ CS  DS 樠 祭ﬨ, 騬  믮, ᬮ  ,   ᥣ  뫨 ।.    ᥣ ⠭  64  設 䨧᪮ ᭮ ࠭⢠,     ⨢  ணࠬ ᯥ祭 樠樨.   ᥣ⮢  ⠭    䨧᪮ ᭮ ࠭⢠ ( 0),  稭 ⨢ .  ।࠭  ᮢ  , 㦠 ᥣ ॣ,   믮   ,   㤥 । ⠡ ਯ஢,      ࠭ 㦥  ॣ GDTR. ᫨  ॠ쭮 ० ந १㧪 CS,   ॣ 㤥 㪠뢠  訩  䨧᪮ .

10.2  ணࠬ 樠  ० ॠ ᮢ

᫥ 樠樨  ணࠬ ᯥ祭 ⠭  , 室   믮  ⥬ 㭪権, ⠪  ࠡ⪠ 뢠. ᫨  ⠥  ० ॠ ᮢ, ணࠬ ᯥ祭 ࣠    ଥ, ᯮ㥬 ஬ 8086. ᫨   ࠡ  饭 ०,  ணࠬ ᯥ祭 ࣠    ଥ, ᯮ㥬 ࠬ 80286  i486,  ⥬ ४砥 ०. . 㭮 10-7,  ਢ ਬ. 

    10-1. ﭨ  ᫥ 祭 ⠭

-----------------------------------------------------------------
                             ﭨ (⭠筮)
-----------------------------------------------------------------
   EFLAGS                           00000002H  1)
   EIP                              0000FFF0H
   CS                               0F000H  2)
   DS                               0000H   3)
   SS                               0000H
   ES                               0000H   3)
   FS                               0000H
   GS                               0000H
   IDTR ()                      00000000H
   IDTR (࠭)                   03FFH
   DR7                              0000H
-----------------------------------------------------------------
         権  饩 窮  4)
-----------------------------------------------------------------
    ࠢ                 037FH
    ﭨ                  0000H
    ⥣                       0FFFFH
   饭 IP                      00000000H
   饭 ࠭          00000000H
    CS                      0000H
    ࠭                0000H
    樨                     000H
-----------------------------------------------------------------

ਬ砭:  ।  १ࢨ஢. ணࠬ ᯥ祭     ﭨ -   ⮢.

1. 訥 ୠ ⮢ ॣ EFLAGS ᫥ 祭 ⠭  ।.   .
2.   ॣ CS ᮤন   0FFFF0000H  ࠭ 0FFFFH.
3.   ॣ஢ DS  ES ᮤন   0  ࠭ 0FFFFH.
4.   権  饩 窮  樠  ᪠ ஥ ஢.

10.2.1  ⥬ ⠡

 ० ॠ ᮢ ਯ ⠡  ᯮ.  ஢ 뢠, 稭   0,   㦥 㪠⥫ﬨ  ࠡ稪 ᪫祭  뢠, ० 祬  뢠   ࠧ襭. ᪨㥬 뢠 ࠧ襭 ᥣ. ᫨ ⠡ ஢ 뢠  ࠡ稪 ᪨㥬 뢠 ॡ 㧪  ⨢ ,  㤥 ⢮  ਮ ६ ᫥ 樠樨 ,  祭 ண ᪨㥬 뢠    ࠡ⠭.

10.2.2  ᪨㥬 뢠

⭮ ᯥ祭 ॠ 堭, ।騩  ᪨㥬 뢠  ,  ணࠬ ᯥ祭    ࠡ. ਬ, ⠡ ஢ 뢠  ࠡ稪 ᪨㥬 뢠  室  .   믮 ࠡ ᪨㥬 뢠 ।⢥ ᫥ 樠樨 . 㣮 襭 ⮨  ⮬, ⮡ ᯥ 堭, ।騩 ᨣ ᪨㥬 뢠 १  , ࠢ塞 ⮬   /뢮. ⭮ ᯥ祭       ,  ணࠬ ᯥ祭  ⠭ ,  㤥 ⮢  ࠡ⪥ ᪨㥬 뢠. ࠡ稪 ⥬ ணࠬ ᯥ祭   堭, ᯮ㥬  ᯥ祭   ணࠬ ᯥ祭  ᪨㥬 뢠 ᫥ .

10.2.3  ࢠ 

믮 稭 , 㥬 室 ᮤন ॣ஢ CS  IP. ⮡ ࠧ ணࠬ ᯥ祭 樠樨    孥  ᭮ ࠭⢠, 訥 12 ⮢ ᮢ, 뤠   ᥣ, ⠭,   㤥 믮 ࢠ , 㦠 ॣ CS, ਬ 쭨 室  맮.  १ 롮ઠ  稭   0FFFFFFF0H. ᪮ ࠧ  ⥭,  ࢠ  ࠧ㬥 室  砫 ணࠬ ᯥ祭 樠樨. ᫨   ᯮ짮 饭 ०,     室  ॠ쭮 ०,   । -१⭮ ணࠬ ᯥ祭  믮 ⮫쪮  室. ᫥ 믮 쭥 室 , 뤠   ᥣ,   12  ⮢.

10.2.4  襭 ஢

஢ ࠧ蠥  ⪥ ⮢ CD  NW  ॣ CR0.  ﭨ  ⮢ ᪠ 横 ஢, ᪢   㫨஢ . ᪮  ப  ᫥ 樠樨  ⮢, । ࠧ襭 ஢    易⥫쭮.
 ,  ப    祭  ⮢, । ࠧ襭 ஢   ࠧ ஢.     १ ᯮ짮 ⮢ ॣ஢  믮 蠡 ஢  ᯮ짮 -  ⢥  ⮢  ६ ணࠬ 樠樨.

10.3  ४祭  饭 ०

। ४祭  饭 ०   ᮧ    ,  ⠪   樠஢ 쭮 ⢮ ॣ஢.

10.3.1  ⥬ ⠡

 ⮣, ⮡ ணࠬ ᯥ祭 饭 ०    ணࠬ  ,   ᮧ    ਯୠ ⠡, GDT,   ਯ. ਯ 室   ᥣ  ᥣ . ⥪   饭  筮 ᥣ   㯮  ⥭/,  ᯥ樠쭮 ਯ  ⥪ ⮣  ॡ. ० 祬 GDT   ᯮ짮,    ࠭  GDT   㦥  ॣ GDTR    LGDT.

10.3.2  ᪨㥬 뢠

᫨ ⭮ ᯥ祭   ᪨㥬 뢠, ॡ ᮧ IDT    ࠡ稪 뢠. ० 祬 IDT   ᯮ짮,  ॣ IDTR    LIDT   㦥    ࠭ IDT.

10.3.3   PE

室  饭 ० 믮 ⠭  PE  ॣ CR0.  ⠭ ⮣    ᯮ짮  LMSW  MOV CR0 (ॣ MSW   ॣ CR0). ᪮ 樨 ᪮쪨   i486 ४뢠, 室 ⬥ ,  㦥 뫨 ⠭ ஬.  JMP ।⢥ ᫥  LMSW  ᫥⥫쭮 믮,     䥪,   饭   ࠭  ஢ .
᫥ 室  饭 ० ᥣ ॣ ࠭ ᮤন, ஥    ० ॠ ᮢ. ணࠬ ᯥ祭  १㧨  ᥣ ॣ. 믮  饭 ० 稭  CPL ࠢ 0.

10.4  ணࠬ 樠  饭 ०

 , 室  饭 ०, । ᯮ㥬묨 ᢮⢠ ࣠樨  .  ন  ᥣ樨    ⢥, ࠢ  ࠭⢮ (᪠ )  ᮪஢   ᪮쪨 ᨬ묨, 饭묨 묨 ࠭⢠    (ᥣ⭠ ). 窠 ࠭     訬 ࠬ , 筮 室騬  ,  筮  ᪥.    ࠭樨  ॡ  , ⠭ 樮 ⥬  ᯮ㥬  ᯥ祭, ⢥騬  ࣠ .

10.4.1  

᪠   窨 ࠭ ॡ ⮫쪮 GDT   ਯ஬  ᥣ   ਯ஬ ᥣ . ᪠   窮 ࠭ ॡ ਯ஢     ० 㯥ࢨ,  㣮  ਯ஢     ० 짮⥫.   ॡ ⠫ ࠭     ⠡ ࠭ ண ஢.
ᥣ⭠   ॡ ⥫ ᥣ⮢  樮 ⥬,  ⠪ ᥣ⮢  ⠡ LDT   ਪ ணࠬ. LDT ॡ ᥣ ਯ஢  GDT. 設⢮ 樮 ⥬, ⠪  OS/2, ।  ᥣ  LDT   室.  ᯥ稢 ᨬ   ࠡ⪥ ᪮ ணࠬ ।, ਬ   ࠡ ⠭権. ⥬, ⠪  ⥬ ࠢ ᠬ,  ।। 䨪஢ ᫮ ᥣ⮢  LDT  䨪஢ ᫠ ਪ ணࠬ.  ⮩  䥪⨢ ᯮᮡ ஢ ணࠬ । ⥬, ॡ饩 襣 த⢨  ० ॠ쭮 ६.

10.4.2  窠 ࠭

 ⫨稥  ᥣ樨, 窠 ࠭ ࠢ ⮬ ०. ᫨  PG  ॣ CR0 饭 (  ﭨ ᫥ 樠樨 ), 堭 窨 ࠭  㡨ࠥ  ⥪ ⥬,  ணࠬ.
᫨  PG ⠭,  窠 ࠧ襭.     ⠭    MOV CR0. । ⠭  PG   믮 ᫥騥 ᫮:
- ணࠬ ᯥ祭 ᮧ   ࠭ ⠡, ⠫ ࠭     ࠭ ⠡ ண ஢.
-  ॣ PDBR ( ,   ॣ CR3) 㦥   ⠫ ࠭.
-  室  饭 ० ( ० ॠ ᮢ 窠 ࠭  ࠡ⠥). ᫨  稥 ࠭祭 믮,  PG  PE   ⠭ ६.
    PE,  ⠭  PG   ᫥  JMP. ஬ ⮣, , ⠭騩  PG,  室  ࠭  ⥬  䨧᪨ ᮬ, ᫥ ⮣,  窠 ࠭ ࠧ襭.

10.4.3  

᫨ 堭 ⨧筮  ᯮ,  樠 ॣ TR  易⥫쭠.
᫨ 堭 ⨧筮 ᯮ,   ᮧ TSS  ਯ TSS  ணࠬ ᯥ祭 樠樨. ਯ TSS       ᮧ: ਯ TSS   祭   ⮫쪮  ⢥ 筮 䥪  믮 ४祭 .    砥 ਯ஢  LDT, ਯ  TSS ᯮ  GDT.  LTR 㦨  㧪 ᥫ  ਯ TSS ணࠬ ᯥ祭 樠樨  ॣ TR.   砥 ਯ TSS  ,   믮 ४祭 .    㦥  믮 ࢮ ४祭 , ᪮ ४祭   ﭨ ⥪饩   TSS. ᫥ ᯮ짮  LTR ᫥騥   ॣ஬ TR 믮  ४祭 .    砥 ᥣ⮢  LDT, TSS  ਯ TSS  ।  ࠭, ⠪  ᪨  室.

10.5  ஢ TLB

 i486 ᯥ稢 堭 ஢ 樠⨢  ࠭樨 (TLB), , ᯮ㥬  ࠭樨  ᮢ  䨧᪨.  ᡮ  ⭮ ᯥ祭 TLB ࠩ ⭮, 짮⥫     TLB  ᫮  ⮢ i486, 믮塞  祭 ⠭.
ਬ砭:  堭 ஢ TLB 㭨   i486     ஢    ⠪ . ணࠬ ᯥ祭, ᯮ饥  堭,   ᮢ⨬  騬 ࠬ.

10.5.1   TLB

TLB ।⠢ ᮡ - 樠⨢ .     㭪 10-3.    室 ᥬ ஢      .    TLB ⮨  20 ⮢ 襣 浪 䨧᪮ .  20 ⮢  ஢    ࠭,   ।  12 饭 ⮢ 襣 浪.
TLB ࠭᫨    䨧᪨  ࠡ⠥ ⮫쪮  訬 20 ⠬   ; 訥 12 ⮢ (।⠢騥 ᮡ ᬥ饭  ࠭)     , ⠪   䨧᪮.
 ⮢  ᮮ⢥  ⮢ ⮢୮, ਡ⮢  ⥣ (ਧ).  ⥣ ⮨  17  ⮢  .  ࠭樨   ᯮ  12, 13  14    롮   쬨 ஢,  ⥬ ஢  ⥣  ⮣   ᮮ⢥⢨ 訬 17 ⠬  . ᫨ ᮮ⢥⢨  । ⥣ ࠭ ,  ᮮ⢥騩  ⮢୮ ࠢ 1,    ࠭᫨   20 ⮢  20 ⮢ ᮮ⢥饣  .

      ⮢୮,                          
     ਡ  ⥣                            

LRU  0123           0123
---  -------------------------          -------------------------
| |  |     |     |     |     |    0|     |     |     |     |
|-|  |-----|-----|-----|-----|          |-----|-----|-----|-----|
| |  |     |     |     |     |    1|     |     |     |     |
|-|  |-----|-----|-----|-----|          |-----|-----|-----|-----|
| |  |     |     |     |     |    2|     |     |     |     |
|-|  |-----|-----|-----|-----|          |-----|-----|-----|-----|
| |  |     |     |     |     |    3|     |     |     |     |
|-|  |-----|-----|-----|-----|          |-----|-----|-----|-----|
| |  |     |/////|     |     |<-->4|     |/////|     |     |
|-|  |-----|-----|-----|-----|  |       |-----|-----|-----|-----|
| |  |     |     |     |     |  | 5|     |     |     |     |
|-|  |-----|-----|-----|-----|  |       |-----|-----|-----|-----|
| |  |     |     |     |     |  | 6|     |     |     |     |
|-|  |-----|-----|-----|-----|  |       |-----|-----|-----|-----|
| |  |     |     |     |     |  | 7|     |     |     |     |
---  -------------------------  |       -------------------------
                                |                   ⢥
⢥ 客     \                  客
   㭪           \                  
-------------------------------    --------------   -------------
|⮢୮|ਡ|   |    |롮 |   |     |
-------------------------------    --------------   -------------
    1       3    \ 17   \   |    3   /     20 ⮢
                         \⮢ \  |           /    |           |
                          \31  15\/14      12 /      31       12
                           ------------------       -------------
                           |      |         |       |           |
                           ------------------       -------------
                                         ᪨
                                                         

       LRU =  ਧ      ᯮ짮  
              ⬠ "㤠 ਪ".

 㭮 10-3.  TLB
  ᮮ⢥   LRU:  ᫥ ᯮ㥬     ஢  室    ( ⠪ ᫥  ⮢୮  ⮢  ). ᯮ   ᥢ-LRU.

10.5.2 ⮢ ॣ

 楫 ஢ 㦠  ⮢ ॣ,    㭪 10-4.  TR6   ॣ஬ ஢ TLB,  ॣ TR7  ॣ஬  ஢ TLB.    믮 ।⢮ ࠧ⥩  MOV.  MOV ।   ० ॠ ᮢ, ⠪   饭 ०. ⮢ ॣ ⭮  ਢ஢ ᠬ ⥬:  饭 ०  MOV, ᯮ㥬  㯠  ,   믮 ⮫쪮  ஢ ਢ஢ 0 ( ਢ஢). ⪠ ⥭    ⮢ ॣ  㣨 ஢ ਢ஢ 뢠 ᪫祭 饩 .
 ⫨稥  TLB  386 DX,   TLB  i486   ⪫祭 堭 窨 ࠭. ,  ⫨稥   386 DX, TLB  i486 ᯮ  롮 ⮢,   㤠  ,  㦭 ।    ,  TLB ,    ᥢ-LRU.
 ॣ ஢ TLB (TR6) ᮤন    ⥣:
- C.    (Command).    ஢ TLB:  ⮢  TLB  믮 ᪠  TLB.  믮    TLB   ᫮  ॣ TR6, ᮤঠ騩 饭  .  ᪠ (⥭)  TLB   ᫮  ॣ TR6, ᮤঠ騩 ⠭  . 樨  TLB ᪠  믮   ॣ TR6.
-  .    TLB  TLB ।    ; ⠫쭠   TLB 砥  ᯮ짮 祭 ॣ TR7  祭, ⮫쪮  ᠭ  ॣ TR6.  ᪥  TLB  祭 ᯮ  ; ᫨ 㦨 ᮮ⢥⢨   ⮫쪮   TLB, ⠫  ॣ஢ TR6  TR7 ⠭  ᮮ⢥饣  TLB.

                                1 1 1
     31                         2 1 0 9 8 7 6 5 4 3 2 1 0
     -----------------------------------------------------
     |                           |P|P|     |   | | R |   |
     |      ᪨      |C|W|L R U|0 0|P| E |0 0| TR7
     |                           |D|T|     |   |L| P |   |
     |---------------------------------------------------|
     |                           | | |D| |U| |W|       | |
     |              |V|D|#|U|#|W|#|0 0 0 0|C| TR6
     |                           | | | | | | | |       | |
     -----------------------------------------------------

 㭮 10-4. ⮢ ॣ TLB
- V.   砥  TLB, ᮤঠ騩 ⮢ (Valid) .  TLB,  㦥 ⠬ ࠭筮 ⠡,  饭  V.   V     ॣ CR3,   䥪 ⪨,  , TLB. NLB   ᫥ 䨪樨 ࠭ ⠡, ᪮  ⨢ 砥 ஢    ᯮ짮  ࠭樨 .
- D, D#.  D (  ).
- U, U#.  U/S (짮⥫/㯥ࢨ) (  ).
- W, W#.  R/W (⥭/) (  ).
      ⢨⥫쭮 ଥ, ⠪      襩   ᪥  TLB. 祭   ⮢ ਢ   10-2.
  ஢ TLB (TR7) ᮤন , ⠭  騥   TLB:
- ᪨ .    TLB.    TLB   祭 ⠭  TLB, ।     ॣ TR6.  ᪥ (⥭)  TLB    㦠   (䨧᪨ )  TLB.
- PCD. ⢥  PCD  ࠭筮 ⠡.
- PWT. ⢥  PWT  ࠭筮 ⠡.
- LRU.  ⥭  TLB ᮮ⢥ ⠬, ᯮ㥬 ⬮  ஢ ᥢ-LRU. 頥 ﭨ ।⠢ ᮡ 祭  ⮢ । ᪮  TLB. 祭 ⮢    㤠筮 襭 ᪠     TLB.
- PL.    TLB ⠭  PL ⠢ ᯮ짮  REP ॣ TR7  롮    樠⨢   TLB  㧪. ᫨  PL 饭,   롮  㦨 ७ 㪠⥫  窨.  ७ 㪠⥫ ࠢ ⬮  ஢ ᥢ-LRU.  ᪥  TLB ( ⥭)  PL 㪠뢠  ᯥ譮 ⥭ ( PL ⠭)  ⢨ ᪮ ( PL 饭).
- REP.    TLB 롨ࠥ,    樠⨢  TLB 㤥 ᯮ짮  .  ⥭ TLB  ⠭  PL REP ᮮ頥,     樠⨢    ⥣; ᫨   PL 饭,  ᮤন ⮣  ।.
 10-2. 祭  ⮢  ॣ TR6

-----------------------------------------------------------------
    #     䥪  ᪥  TLB   䥪    TLB
-----------------------------------------------------------------
 0      0       ᮢ                     ।
 0      1       , ᫨  饭     ⪠ 
 1      0       , ᫨  ⠭ ⠭ 
 1      1       , ᫨              ।
                饭  ⠭
-----------------------------------------------------------------

10.5.3  樨 ஢

   TLB:
1. 諨  ॣ TR7  ᫮, ஥ ᮤন  䨧᪨ ,  ⠪ 祭 PCD, PWT, PL  REP.  ⠭ 祭 PL  REP 롨ࠥ 樠⨢ ,     饭 . ᫨  PL 饭,  ᯮ ७ 㪠⥫.
2. 諨  ॣ TR6  ᫮, ஥ ᮤন ᮮ⢥騩  ,  ⠪ 祭 ⮢ V, D, U  W.  C   饭.
 뢠 㡫騥 ⥣: १ ⠪ ⢨ ।.
 ᬮ (⥭)  TLB:
1. 諨  ॣ TR6  ᫮, ஥ ᮤন ᮮ⢥騩    ਡ.     ⠭.
2. ⠩ ॣ TR7. ᫨  PL ॣ TR7 ⠭,  ⠫쭠  ᮤন ॣ ᮮ頥  ᮤন TLB. ᫨  PL 饭,  ⠫쭠  ॣ TR7,  ᪫祭 ⮢ LRU, ।.
 楫 ஢  V ࠡ⠥     .  V   ᪠ ᥣ   ⠭,  ᪫砥 ᮢ ᪠  樠஢ ⥣.   饭  V  稨 樠஢ ⥣ ।᪠㥬.

10.6  ஢ 

 i486 ᯥ稢 堭 ஢ , ᯮ㥬    .  ⪠ ⭮ ᯥ祭 ஢ ࠩ ⥭, 짮⥫   ஢ ࠢ   ᫮ ⮢, 믮塞 ⮬᪨  祭 ⠭.
ਬ砭: 堭 ஢  㭨   i486    ন  筮 ᫥騬 ﬨ ஢  . ணࠬ ᯥ祭, ᯮ饥  堭,   ᮢ⨬  ᫥騬 ࠬ  .
 믮 ஢  ᠬ ஢   ⪫祭.

10.6.1   

 ।⠢ ᮡ 媠 樠⨢  ࠬ  .  砥,      樨     ᠭ     権 . 媠쭠 樠 -  ஬  ᪮ ᪠     ⮡ࠦ  ᮪ ᮮ⭮襭 㤠 宦  ᪥   樠⨢ .   ⢫      宦 , ᯥ稢  ⮬ ᮪ ய 宦   .

                                         
-        ⥣                               
୮/
LRU    0123           0123
-----  -------------------------          -------------------------
| | |  |     |     |     |     |    0|     |     |     |     |
|-|-|  |-----|-----|-----|-----|          |-----|-----|-----|-----|
| | |  |     |     |     |     |    1|     |     |     |     |
|-|-|  |-----|-----|-----|-----|          |-----|-----|-----|-----|
| | |  |     |     |     |     |    2|     |     |     |     |
|-|-|  |-----|-----|-----|-----|          |-----|-----|-----|-----|
| | |  |     |     |     |     |          |     |     |     |     |
| | |  |     |     |     |     |          |     |     |     |     |
| | |  |     |     |     |     |          |     |     |     |     |
| | |  |     |     |     |     |          |     |     |     |     |
| | |  |     |     |     |     |          |     |     |     |     |
|-|-|  |-----|-----|-----|-----|          |-----|-----|-----|-----|
|///|  |     |/////|     |     |<-->N|     |/////|     |     |
|-|-|  |-----|-----|-----|-----|  |       |-----|-----|-----|-----|
| | |  |     |     |     |     |  |       |     |     |     |     |
| | |  |     |     |     |     |  |       |     |     |     |     |
| | |  |     |     |     |     |  |       |     |     |     |     |
| | |  |     |     |     |     |  |       |     |     |     |     |
| | |  |     |     |     |     |  |       |     |     |     |     |
|-|-|  |-----|-----|-----|-----|  |       |-----|-----|-----|-----|
| | |  |     |     |     |     |  |  |     |     |     |     |
|-|-|  |-----|-----|-----|-----|  |   126 |-----|-----|-----|-----|
| | |  |     |     |     |     |  |  |     |     |     |     |
-----  -------------------------  |   127 -------------------------
                                  |
                                  |
                                  |
-------------------  ------------ |               -----------------
|LRU|⮢୮|  |-21 | |            -->|-16 ⮢|
-------------------  ------------ |           |   -----------------
        ^                 ^             |
        |                 |      ࠢ N      |
        \/              |        롨ࠥ 
    X 1 X X               |       |           |
   ப ⮢ୠ  31  \/  11  \/       4  | 0
                     -----------------------------
                     | ⥣| |XXXX|
                     -----------------------------
                        ᪨ 

LRU = ਧ   ᯮ짮  ⬠ "㤠 ਪ"
㭮 10-5.  
 ⮨   :
-   - ᮤন  8   .      ᨢ,    ᮤন 128 ப .  ப  ᮤন   16 ᫥⥫쭮 ᯮ ᮢ , 稭  , ⭮ 16.  7-ࠧ來  ᨢ   ᮮ⢥  ப ,     ᨢ.  ப    ᮬ 뢠 ஬.
-  ⥣ - ᮤন  21-ࠧ來 ⥣   ப   .  ⥣ ⠪, ᫥⥫쭮,    ᨢ,    ᮤন 128 ⥣.  ⮨   21 ⮢ 䨧᪮  , ࠭  ᮮ⢥饩 ப .
-  ⮢୮  LRU ("ਧ   ᯮ짮, 뢠  ᪥   㤠  ") - ᮤন  7-ࠧ來 祭    128 ஢ ப .   㦠  ⮣, ⮡  ⤥쭮 ப   ⮢  ⮢. ⠫   ᫥ ᯮ짮     ஢  室  ப  (  ⮬    ப     ⮢୮).    TLB, ᯮ    ᥢ-LRU.
  믮 ⪬ ࠧ  28 ⮢ 䨧᪮    .   21 訩  ।⠢ ᮡ  ⥣  ᯮ  ࠧ祭 ஢    㣮 16-⮢ ப ,   ࠭  ⮬  . 騥 訥 7 ⮢ 뢠    । ,  ஬  ࠭ .

10.6.2  ⮢ ॣ

  㭪 10-6  ⮢ ॣ 㦠  ஢.  TR3  ॣ஬  ஢ , ॣ TR4  ॣ஬ ﭨ ஢ ,  ॣ TR5  ࠢ騬 ॣ஬ ஢ .   ⨬ ॣࠬ 믮 ࠧﬨ  MOV.  MOV ।   ० ॠ ᮢ, ⠪   饭 ०. ⮢ ॣ  ਢ஢묨 ᠬ:  饭 ०  MOV, ᯮ㥬  㯠  ,  믮  ஢ ਢ஢ 0 ( ᮪ ஢ ਢ஢).  ⪠ ⥭    ⮢ ॣ  㣮 ஢  ᪫祭 饩 .
  ஢  (TR3) ᮤন  ᫮, 뢠    ,   ᫮, 뢠   ⥭ .   ஢ ⥭      ࠭   ᫮,  । १  ॣ    ࠧ. ⭮  ᫮    ஢    2-⮢  롮  ( 2  3) ॣ TR5.

                                  2 1 0 9 8 7 6 5 4 3 2 1 0
------------------------------------------------------------
|                                    |  롮      | E | C |
|        ᯮ              |       | N | T | TR5
|                                    |             | T | L |
|----------------------------------------------------------|
|                                    | |     |⮢| |
|                                 |V|LRU  |୮ || TR4
|                                    | |(RD) |(RD)   ||
|----------------------------------------------------------|
|                                                          |
|                                                    | TR3
|                                                          |
------------------------------------------------------------

V (VALID) ⮢୮ CTL (CONTROL) ࠢ ENT (ENTRY) 
㭮 10-6.  ஢ 
 ﭨ ஢  (TR4) ᮤন  ⮢୮  LRU,  ⠪ ⥣:
- ⮢୮ ( 3..6).  ᪥      ⮢୮  ,  ஬ 믮 .
- LRU (ਧ  "㤠 ਪ").  ᪥      LRU  ,  ஬ ந室 .      :  LRU    ⬮   ᥢ-LRU.
- ⮢୮ ( 10).   ⮢୮  ⭮ ,  ஬ ந室 .  ᪥       ⮢ 3..6.        ⮬ ⮢୮  ࠭   .
-  .      ,  ⠭ ⥣.
ࠢ騩 ॣ ஢  (TR5) ᮤন 7-ࠧ來  롮  , 2-ࠧ來  롮   2-ࠧ來  ࠢ:
- ࠢ. 㭪樨, ஢ ⨬ ⠬,    10-3.
- 롮 .  ⥭     롨ࠥ    ⮢  , 㥬  롮 ;        ⥭   ⥭  롨ࠥ     ᫮  ப.
- 롮 . 롨ࠥ   128 ஢.
  TR5  ⠭ ⮬ 0  1 뢠   . TR5    ⠭.

10.6.3  樨 ஢

। ஢ :
1. ⬥ ஢, ⠭  ⮣  CD  ॣ CR0.
     :
1. 㧨 ॣ TR5 祭  롮 , ஥      ᫮    . 祭  ࠢ   ࠢ 00 (筮).
2. 㧨 ॣ TR3 묨, 騬     .    ᪠  㧪  ॣ.
3.  蠣 1  2     ⠫  ᫮    .
 10-3. ஢ ⮢ ࠢ ஢ 

-----------------------------------------------------------------
 ࠢ
 1   0               ᠭ
-----------------------------------------------------------------
     00                    ⥭ 
                      ⥭ 
     01              믮   
     10              믮 ⥭  
     11                (   
                     ⮢)
-----------------------------------------------------------------

   :
1. 㧨   ,  뫮 ᠭ .
2. 㧨 ॣ TR4 ⥣ ( 11..31)  ⮬ ⮢୮ ( 10). 稥  ॣ TR4 ( 0..9)      .
3. 㧨  ॣ TR5 祭  ࠢ, 롮   롮 . 祭   ࠢ   ࠢ 01 (筮).    ᪠  㧪  ॣ.
 ⥭  :
1. 㧨  ॣ TR5 祭  ࠢ, 롮   롮 . 祭  ࠢ   ࠢ 10 (筮). ⥭   ᪠  㧪  ॣ. ⥭   㦠  ॣ TR4 ⥣  ⠭ ,  ⠪  LRU  ⮢୮  ᥣ ⠭ . 뢠  㦠  ⥭  128 ⠬ .    ⠭   ᫥饩 楤:
 ⥭   ⥭ :
1. 㧨 ॣ TR5 祭ﬨ  ࠢ  롮 . 祭 롮       ᫮   ⥭ . 祭   ࠢ   ࠢ 00 (筮).
2. ⠩  ᫮   ⥭ , 㧨  ⮣ ॣ TR3. ⥭   ᪠  㧪 ⮣ ॣ.
3.  蠣 1  2     ⠢  ᫮   ⥭ .
 ⪨ :
1 㧨  ॣ TR5 祭  ࠢ.  祭   ࠢ 11 (筮).    祭 ⠫   ⠪ 砥 祭  . ⪠  ᪠  㧪  ॣ.   LRU  ⮢୮ .

10.7  ਬ 樠樨

騥 蠡 ணࠬ ᯥ稢 Intel  襣 㤮⢠  ࠧࠡ⪥ ணࠬ ᯥ祭   i486:

; simpinit.asm
; ਬ  樠樨  ⮩ ᪮ () 
;
; ***************************************************************
;
;  2.0
; ᪨ ࠢ Intel Corp., 1988
;   蠡          ࠧࠡ⪥  ਪ/
; ⥬ ணࠬ ।  ᯮ짮 ய஢
; ᥬ⢠ Intel i486 (TM)  Intel386(TM). Intel  
; ࠧ襭     䨪樨      ᯮ짮   
; 蠡  室.
;
;
; ***************************************************************
;
;   ਬ    樠樨,    ॢ 
; i486, 386 DX, 386 SX  376  ० ᪮  樨.
;   ᬠਢ     RAM.
; ணࠬ 뢠 . ந⥫ ᮧ  GDT 
;  IDT  頥   㬮砭  GDT[1]  GDT[2].
; ᫥ 室  饭 ०   믮 室 
; ணࠬ 砫 ⢨  ਪ ணࠬ  .
;         室  (  JMP)      
; ᮡ⢥   ᤥ  襬   C_STARTUP.

NAME simpstart           ;  ꥪ⭮ 
EXTERN c_startup:near    ;  ⪠ 室 ᫥ init_code

pe_flag     equ 1        ;  ⠭  PE
data_selc   equ 20H      ; ᬥ饭 _phantom_data_  GDT (GDT[4])
CODEMACRO   opprefx      ;    ࠧ ࠭
            db 66H       ;  㬮砭
EMDM

init_code   SEGMENT ER PUBLIC
; GDT_DESC  饥 ᨬ᪮ ,   ஥  뫪
;  䠩, ᮧ ந⥫. । LOCATION  ࠧ
; TABLE 䠩 ந⥫ 㪠뢠   ; ந⥫
; ࠭  ,  ࠭  㪠 ⠡  ⮩ 樨
; ⨢ .

PUBLIC      gdt_desc
gdt_desc    dp ?
; START      ⪠,   㪠뢠    ⨭  砫  襣
; ᯮ塞 . ࠢ ᠬ㧪 BOOTSTRAP ⠢
; ந⥫      ⪨ 室
;   ⪥ (  砥, START).
PUBLIC      start
; ᪮   樠  i486, 386 DX, 386 SX
;  376  饭 ०,      START ஢
; ⨯ .   i486,   386 DX   386  SX  
;   ॠ쭮 ०  ० ᮢ⨬:  PE 饭,
;     D    CS    ⠭.    믮    
; 16-⮢ ଥ.   376    ⠭
;  PE   D,  ⮬   믮      32-⮢
; ଥ.
    nop                   ;  NOP  樠樨 -
    nop                   ; ஢ i486  386 DS  SX
start:
    cld                   ;  䫠 ࠢ
    smsw bx               ; ஢ ⨯   
    test bl,1             ;  ᪮ ᯮ짮 SMSW,  
    inz pestart           ; MOV

; 㧪 GDTR  REALSTART  PESTART   ⮣, 頥
;  ⭮ ᯥ祭 짮⥫ READY  ⪥ 
;  
realstart:                ;   i486  386 DX 
    opprefx               ; 386 SX  16-⮢ ॠ쭮 ०,
    mov eax,offset gdt_desc  ;  祭 32-⮢ 
                          ; 㪠⥫ GDT ᯮ 䨪
                          ; ࠭
    opprefx               ;  祭  ⭮⥫쭮
    and eax,0ffffh        ;   ᯮ 䨪
                          ; ࠭
    lgdtw cs:[eax]        ; 㧪  GDTR 24 ⮢ 

    mov ax,bx             ; ஢ ᫮ ﭨ 設
    or al,pe_flag         ; ⠭  PE
    lmsw ax               ; 㧪 ᫮ ﭨ 設 
                          ; ⠭  PE
    jmp next              ; ⪠ । 롮ન 

pestart:                  ;   376  32-⮢ 饭-
                          ;  ०
mode
    mov eax,offset gdt_desc  ; 祭 32-⮢ 
                          ; 㪠⥫ GDT
    and eax,0ffffh        ; 祭  ⭮⥫쭮 
                          ; 
    lgdt cs:[eax]         ; 㧪 32 ⮢   GDTR
next:
    xor eax,eax           ; 樠 ᥫ஢ 
    mov al,data_selc      ; GDT[4]  _phantom_data_
    mov ds,ax
    mov ss,ax
    mov es,ax
    mov fs,ax
    mov gs,ax
    test bl,1
    jnz pejump

    opprefx               ; ᯮ 䨪 ࠭ 
pejump:                   ; 室   i486, 
                          ; 386 DX  386 SX
    jmp far ptr c_startup ;  쭨 室 ॢ A31-20
                          ;   ﭨ
init_code ENDS

END


; cstart.asm
;  ASM386/486  樠樨 ⥪  맮 ਪ
; ணࠬ  
;
; ***************************************************************
;
;  2.0
; ᪨ ࠢ Intel Corp., 1988
;   蠡          ࠧࠡ⪥  ਪ/
; ⥬ ணࠬ ।  ᯮ짮 ய஢
; ᥬ⢠ Intel i486 (TM)  Intel386(TM). Intel  
; ࠧ襭     䨪樨      ᯮ짮   
; 蠡  室.
;
; ***************************************************************
;
;
NAME cstart              ;  ꥪ⭮ 
EXTRN main:near          ; ⪠ 뢠 ਪ -ணࠬ
PUBLIC c_startup         ; 饥 ᨬ᪮ , ᯮ㥬 
                         ;  樠樨 

stack STACKSEG 1024

data SEGMENT RW PUBLIC
data ENDS
code32 SEGMENT ER PUBLIC

c_startup:
   mov esp,stackstart stack  ; 樠 㪠⥫ ⥪
   call main                 ; 맮 ਪ -ணࠬ
   hlt                       ; ⠭ 

code32 ENDS

/* simple.c
 ਪ ணࠬ C386/486(TM)  ਬ ⮩ ᪮


***************************************************************

 2.0
᪨ ࠢ Intel Corp., 1988
 蠡            ࠧࠡ⪥  ਪ/
⥬ ணࠬ ।    ᯮ짮  ய஢
ᥬ⢠  Intel  i486  (TM)    Intel386(TM).  Intel    
ࠧ襭   䨪樨  ᯮ짮  蠡 
室.

***************************************************************

*/
char message[]="⠥";

main ()
{
int array_count[10];
array_count[1] = 1;
array_count[2] = 2;
array_count[3] = 3;
array_count[4] = 4;
array_count[5] = 5;
array_count[6] = 6;
array_count[7] = 7;
array_count[8] = 8;
}
-- simple.bld
--  ந⥫    BLD386/486  ᮧ ਬ
-- ⮩ ᪮ 
--
-- **************************************************************
--
--  2.0
-- ᪨ ࠢ Intel Corp., 1988
--  蠡            ࠧࠡ⪥  ਪ/
-- ⥬ ணࠬ ।    ᯮ짮  ய஢
-- ᥬ⢠  Intel  i486  (TM)    Intel386(TM).  Intel    
-- ࠧ襭   䨪樨  ᯮ짮  蠡 
-- 室.
--
-- **************************************************************
--
simple; -- 䨪 㥬 
SEGMENT
    *segments      (DPL = 0),  --  ᥬ ᥣ⠬ 짮⥫
                               -- DPL ࠢ 0
    _phantom_code_ (DPL = 0),  --   ᥣ ᮧ
                               -- ந⥫  ᯮ짮
                               -- ࠢ饣 ਧ FLAT.
                               --  DPL  㬮砭 ࠢ 0.
                               --   ਢ ⮫쪮
                               --  ࠢ
    init_code                  -- 饭  樠樨 
                               --  
                 (BASE = 0ffff0900H);

TABLE
          --  GDT
    GDT                        -- GDT_DESC  饥 ᨬ᪮
                               --   㫥 樠樨
                               -- "simpstart"
         (LOCATION = gdt_desc, --  , 稭騩  GDT_DESC.
                               -- BLD386/486 頥 祭 
                               --  ࠭ GDT.   
                               --  6 ⮢.   ࠭
                               --      
                               --  ⮢ ࠭  
                               --    ଠ, ॡ㥬
                               --  ᯮ짮   GDT.
          BASE = 0ffff0100H
         ); --  GDT
TASK                           --  樠樨 
    main_task                  -- *ICD(TM)-486  ICE(TM)-386 
                               -- ICE(TM)-376
         (BASE = 0ffff0200H,
          Data = data,         -- 뢠  ᥣ,
                               -- 騩 . 祭 DS
          CODE = main,         -- main  窠 室, 
                               --   䨪 public
          STACKS = (stacks),   -- 䨪 ᥣ 㪠뢠
                               --  ᥣ ⥪. ⠭
                               -- 室 祭 SS:ESP.
          NO INTENABLED        -- ⬥ 뢠
);
TABLE
    ldt1 (NOT CREATED);        -- ந⥫  頥 LDT 
                               -- ꥪ ,  
                               -- ᮤন 뢮  ⨭
END

--
-- ਬ砭:  ICD-486    ஥   ⫠稪   業ࠫ쭮
--  i486.  த ஢  ⢥ ⠫
-- 1989 .
--


echo off
echo simple.bat
echo  䠩 DOS    樨  ᠬ㦠饩  ⮩
echo ᪮ 
echo *************************************************************
echo *                                                           *
echo *  2.0                                                *
echo * ᪨ ࠢ Intel Corp., 1988                         *
echo *  蠡            ࠧࠡ⪥     *
echo * ਪ/⥬ ணࠬ ।  ᯮ짮 *
echo * ய஢ ᥬ⢠ Intel i486(TM)  Intel386(TM)*
echo * Intel     ࠧ襭   䨪樨         *
echo * ᯮ짮  蠡  室.           *
echo *                                                           *
echo *************************************************************
REM
REM 騥  ᪠ ASM386/486 ᮧ ꥪ 㫨
REM "simpinit.obj"    "cstart.obj".  ᫥⢨  ᯮ짮  
REM 䠩    ਢ஢         ᥬ     뤠
REM ।०. ࠢ ४⨢ "debug" ⠢ ASM386/
REM 486  ⥫ ଠ,   ᨬ-
REM ᪮ ⫠.  ⨭ 뢠 "simpinit.lst" 
REM "cstart.lst"
echo *echo asm386 simpinit.asm debug mod486
asm386 simpinit.asm debug mod486
echo (1 ।० - ᯮ짮 ਢ. )
echo *
echo asm386 cstart.asm debug mod486
asm386 cstart.asm debugmod486
echo (1 ।० - ᯮ짮 ਢ. )
REM
REM  C-386/486 ᮧ ꥪ  "simple.obj".
REM ࠢ騥 ४⨢ "regallocate" ⠢ 
REM ⨬஢ ।  ॣ஢ ६.
REM ࠢ ४⨢ "code" 뢠 饭    䠩
REM ⨭   ᥢ-ᥬ୮   ⥪   ⨭.   "Debug"
REM 㪠뢠 C-386/486  室 祭 ⥫쭮
REM ଠ樨,   ᨬ᪮ ⫠.  ⨭
REM 뢠 "simple.lst".
echo *
echo c386 simple.c debug regallocate code mod486
c386 simple.c debug regallocate code mod486
REM
REM BND386/486  ꥤ 室 ᥣ  ࠧ蠥 뫪
REM 樨 ᨬ᪨ . ४⨢ ࠢ "noload"
REM 㪠뢠 ந⥫  室 ᮧ 㥬
REM (  㧮筮) 䠩. ४⨢ "debug" 㪠뢠  ,
REM  ந⥫  頥 ⫠ ଠ. "Object"
REM 㪠뢠  ,  室 䠩  뢠 "simple.
REM bnd".  ⨭ 뢠 "simple.mp1".
echo *
echo bnd386 simple.obj,simpinit.obj,cstart.obj noload debug object
(simple.bnd) mod486
bnd386 simple.obj,simpinit.obj,cstart.obj noload debug object
(simple.bnd) mod486
REM
REM   ᮫ 㦠 䠩 (  ண
REM 䨪஢      ),        㦥  
REM ஥  ⫠稪  ICD-486(TM)    ICE-386(TM),
REM  ஥  ICE-376(TM). BLD386/486 ᮧ ⠪
REM ᮫ , 室 ਯ ⠡,  ⠪
REM   樠樨 . ࠢ ४⨢
REM "buildfile"    "simple.bld"    ⢥   䠩
REM ந⥫. ࠢ ४⨢ "bootstrap" 
REM ᨬ᪮  "start"   ,   
REM  믮 室  믮 室 ᠬ㧪,
REM 室饣   0fffffff0H. ४⨢ "flat" ⠢
REM ந⥫ 䨣஢ 䠩  ᪮ ,  
REM  室  ᥣ _phantom_data_, "mod486" ⠢
REM ந⥫    뤠   ᮮ饭,   㪮騥   ᮧ
REM ꥪ⭮    i486(TM). "mod376" ⠢
REM ந⥫    뤠   ᮮ饭,   㪮騥   ᮧ
REM ꥪ⭮    376(TM).      㤠
REM       ४⨢     ᮧ  ꥪ⭮    
REM  486(TM)DX.  ⨭ 뢠 "simple.mp2".
REM 筠 ⥬ 뢠 "simple".
echo *
echo bld386  simple.bnd  buildfile  (simple.bld) bootstrap (start)
echo flat mod486
bld386  simple.bnd  buildfile  (simple.bld) bootstrap (start) flat
mod486


