Reali mašina
Reali mašina – tai kompiuteris, kuriam kuriama operacinė sistema.
Realios mašinos schema
[pic]
Realios mašinos komponentės
Centrinis procesorius
Centrinio procesoriaus paskirtis – paeiliui skaityti komandas iš atminties
ir jas vykdyti. Procesorius gali dirbti dviem režimais: supervizoriaus ir
vartotojo. Supervizoriaus režime komandos betarpiškai interpretuojamos
aukšto lygio kalbos procesoriaus HLP, vartotojo režime HLP interpretuoja
„mikroprogramą“ supervizorinėje atmintyje tik skaitymui, kuri imituoja
virtualios mašinos procesorių ir prieina prie vartotojo atmintyje esančių
virtualios mašinos programų per puslapiavimo mechanizmą.Centinio procesoriaus registrai:
• 1 baito loginis trigeris C,
• 2 baitų virtualios mašinos programos skaitiklis IC,
• 4 baitų bendrojo naudojimo registras R,
• 4 baitų puslapių lentelės registras PTR,
• Procesoriaus darbo režimo požymis MODE,
• Programinių pertraukimų registras PI,
• Supervizorinių pertraukimų registras SI,
• Taimerio registras TI.
Atmintis
Atmintis skirstoma į supervizorinę ir vartotojo. Supervizorinė atmintis yra
skirta pačiai operacinei sistemai. Ten laikomi sisteminiai kintamieji,
sisteminiai procesai, resursai ir mikroprogramos. Supervizorinė atmintis
apibrėžiama tokio dydžio, kokio reikia MOS. Vartotojo atmintis yra skirta
vartotojo programų poreikiams, t.y. atmintyje laikomos virtualių mašinų
puslapių lentelės ir jų atmintis.Vartotojo atmintis susideda iš 300 žodžių, kurių ilgis 4 baitai, nuosekliai
adresuojamų nuo 000 iki 299. Atmintis suskirstyta į 30 blokų po 10 žodžių
(40 baitų).
Įvedimo ir išvedimo įrenginiai
Realios mašinos įvedimo įrenginys yra klaviatūra, o išvedimo – monitorius.
Išorinė atmintis
Išorinė atmintis realizuojama failu kietajame diske. Jame bus laikomos
vartotojo programos. Išorinę atmintį sudaro 1000 takelių, kiekviename
takelyje 10 blokų (0-9999) po 10 žodžių, kurių kiekvieno ilgis 4 baitai.
Kanalų įrenginys
Kanalų įrenginys skirtas darbui su atmintimis ir išvedimo, įvedimo
įrenginiais. Priklausomai nuo nustatytų registrų kanalų jis gali vykdyti
apsikeitimą duomenimis visomis kryptimis pavaizduotomis realios mašinos
modelio schemoje. Veiksmai su kanalų įrenginiu gali būti atliekami tik
supervizoriniame rėžime. Kanalų įrenginys turi komandą XCHG, tačiau neturi
procesoriaus kuris ją galėtu vykdyti. Todėl šis įrenginys nėra lygiagrečiai
su procesoriumi veikianti aparatūra.
Kanalų įrenginio registrai:
• SB – takelio, iš kurio kopijuosime numeris,
• DB – takelio, į kurį kopijuosime numeris,
• ST – objekto, iš kurio kopijuosime numeris,
1. Vartotojo atmintis
2. Supervizorinė atmintis
3. Išorinė atmintis
4. Įvedimo srautas
• DT – Objekto į kurį kopijuosime numeris
1. Vartotojo atmintis
2. Supervizorinė atmintis
3. Išorinė atmintis
4. Išvedimo srautas
Puslapiavimo mechanizmas
Virtualios mašinos atmintis yra 10 blokų. Šie blokai vartotojo atmintyje
gali būti išdėstyti bet kokia tvarka, tai reikiamu momentu būtu sunku
nustatyti kur realioje atmintyje rasti virtualios mašinos atmintį. Šiai
problemai spręsti naudojamas puslapiavimo mechanizmas. Pradėjus darbą
virtualiai mašinai yra padaroma puslapių lentelė, kurioje nurodama kuris
realios atminties blokas atitinka virtualios atminties bloką. Puslapių
lentelei yra skiriamas vienas realios atminties blokas. Taigi pirmame
puslapių lentelės elemente esantis skaičius rodo kur realioje atmintyje yra
pirmas virtualios atminties blokas. Taip puslapiavimo mechanizmas
naudodamasis PTR registro reikšme išsprendžia šią problemą (susieja
virtualią atmintį su realia).
Pertraukimu mechanizmas
Pertraukimas – tai signalas apie įvykusį įvykį. Sistema turi jį aptikti ir
atitinkamai sureaguoti. Kiekvienas pertraukimas turi savo identifikaciją
(sistema turi turėti galimybę atskirti pertraukimų tipus). Galima sakyti,
kad pertraukimas, tai pakeista kompiuterio būsena. Pertraukimus aptinka
procesoriaus komanda test, kuri apklausia reikalingus registrus. Ir tik
sistemai aptikus pertraukimą, yra nutraukiamas vartotojo programos
vykdymas. Tai atliekama pasinaudojant pertraukimų vektorių lentele (kur yra
nuorodos į pertraukimus apdorojančias programas). Valdymas yra perduodamas
pertraukimą apdorosiančiai programai, kuri dažniausiai yra atmintyje su
požymiu “tik skaitymui”. Įvykdžiusi savo darbą, pertraukimo apdorojimo
programa valdymą gražina operacinei sistemai pertraukimo vietoje. Ką daryti
toliau, sprendžia OS.
OPERACINĖS SISTEMOS PROJEKTAS
Bendrosios sąvokos
Skiriami du procesų prioritetai – vartotojiški ir sisteminiai. Aptarnaujant
pirmenybė skiriama sisteminiams procesams.Užduotys į sistemą patenka „iš išorės“, t.y. vartotojo aplinkai tiesiogiai
sukuriant resursą „Užduotis supervizorinėje atmintyje“.Įvedimas/išvedimas atliekamas taip pat tiesiogiai per vartotojo aplinką,