Rekomenduojama, 2024

Redaktoriaus Pasirinkimas

Loginio ir fizinio adreso skirtumas operacinėje sistemoje

Adresas vienareikšmiškai identifikuoja vietą atmintyje. Turime dviejų tipų adresus, kurie yra loginis adresas ir fizinis adresas. Loginis adresas yra virtualus adresas ir jį gali peržiūrėti vartotojas. Naudotojas negali tiesiogiai peržiūrėti fizinio adreso. Kad galėtumėte pasiekti fizinį adresą, loginis adresas naudojamas kaip nuoroda. Esminis skirtumas tarp loginio ir fizinio adreso yra tas, kad loginis adresas generuojamas CPU programos vykdymo metu, o fizinis adresas reiškia vietą atminties vienete.

Yra ir kitų skirtumų tarp loginio ir fizinio adreso. Aptarkime juos žemiau pateiktoje palyginimo diagramoje.

Palyginimo diagrama

Palyginimo pagrindasLoginis adresasFizinis adresas
PagrindinisTai virtualus CPU sukurtas adresasFizinis adresas yra vieta atminties vienete.
Adresų erdvėVisų loginių adresų, kuriuos generuoja CPU, rinkinys, susijęs su programa, yra vadinamas logine adreso erdve.Visų fizinių adresų rinkinys, susietas su atitinkamais loginiais adresais, vadinamas fiziniu adresu.
MatomumasVartotojas gali peržiūrėti loginį programos adresą.Vartotojas niekada negali peržiūrėti fizinio programos adreso
PrieigaNaudotojas naudoja loginį adresą fiziniam adresui pasiekti.Vartotojas negali tiesiogiai pasiekti fizinio adreso.
KartaLoginį adresą generuoja CPUFizinis adresas apskaičiuojamas MMU

Loginio adreso apibrėžimas

Adresas procesorius, kai programa veikia, vadinama loginiu adresu . Loginis adresas yra virtualus, nes jis fiziškai neegzistuoja. Todėl jis taip pat vadinamas virtualiuoju adresu . Šis adresas naudojamas kaip nuoroda norint pasiekti fizinės atminties vietą. Visų programų perspektyvoje sukurtų loginių adresų rinkinys vadinamas „ Logical Address Space“ .

Loginį adresą priskiria atitinkamam fiziniam adresui aparatūros įrenginys, vadinamas atminties valdymo bloku . MMU naudojamų adresų susiejimo metodai generuoja identišką loginį ir fizinį adresą kompiliavimo metu ir įkėlimo metu . Tačiau, nors vykdymo laikas, adresų susiejimo metodai sukuria skirtingą loginį ir fizinį adresą.

Fizinio adreso apibrėžimas

Fizinis adresas identifikuoja fizinę vietą atmintyje. MMU ( atminties valdymo blokas) apskaičiuoja atitinkamo loginio adreso fizinį adresą. MMU taip pat naudoja loginį adreso skaičiavimo fizinį adresą. Naudotojas niekada nesprendžia fizinio adreso. Vietoj to, fizinis adresas pasiekiamas pagal atitinkamą vartotojo loginį adresą. Vartotojo programa generuoja loginį adresą ir mano, kad programa veikia šiame loginiame adresu. Tačiau programai vykdyti reikia fizinės atminties. Todėl loginis adresas turi būti priskirtas prie fizinio adreso prieš juos naudojant.

Loginis adresas susietas su fiziniu adresu naudojant aparatūrą, vadinamą atminties valdymo bloku . Visų fizinių adresų, atitinkančių loginius adresus erdvėje, rinkinys vadinamas fizine adreso erdve .

Pagrindiniai skirtumai tarp loginio ir fizinio adreso OS

  1. Pagrindinis skirtumas tarp loginio ir fizinio adreso yra tas, kad loginis adresas sukuriamas pagal CPU perspektyvą. Kita vertus, fizinis adresas yra vieta, esanti atminties vienete.
  2. Programos procesoriaus sukurtų visų loginių adresų rinkinys vadinamas logine adreso erdve. Tačiau visų fizinių adresų rinkinys, susietas su atitinkamais loginiais adresais, vadinamas fizinės adresų erdvės.
  3. Loginis adresas taip pat vadinamas virtualiuoju adresu, nes loginis adresas atmintyje nėra fiziškai. Fizinis adresas yra vieta atminties įrenginyje, prie kurio galima pasiekti fiziškai.
  4. Identiškus loginius adresus ir fizinius adresus generuoja kompiliavimo ir įkelties laiko adresai.
  5. Loginis ir fizinis adresas, sukurtas vykdant prijungimo laiką, skiriasi.
  6. Loginį adresą generuoja CPU, kai programa veikia, o fizinius priedus apskaičiuoja MMU (atminties valdymo blokas).

Išvada:

Loginis adresas yra nuoroda, naudojama norint pasiekti fizinį adresą. Naudodamas šį loginį adresą vartotojas gali pasiekti fizinį adresą atminties vienete.

Top