Upravnik objektov


Objekti izvajalnika

Primeri objektov v Windows NT/2000 so lahko procesi, niti, datoteke, dogodki in podobno.

Atributi objektov so podatkovna polja, ki definirajo stanje takega objekta. Pri objektu tipa sklad je na primer eden bolj pomembnih atributov kazalec na sklad.

Servisi objekta omogočajo rokovanje s temi atributi. V primeru objekta sklad je imamo na primer na voljo servis push.

Koncept objektov omogoča delitev (sharing) resursov in podatkov med različnimi procesi in ščitenje teh resursov pred nepooblaščenim dostopom.

Komponenta izvajalnika  je upravnik objektov (Object manager). Z njim je zagotovljen poenoten, standardiziran mehanizem uporabe sistemskih resursov, centralizirana zaščita vseh objektov, urejeno pa je tudi poimenovanje sistemskih objektov (kot so naprave, datoteke, direktoriji..).

Izvajalnik  predvideva dve vrsti objektov:
 
 
Objekti izvajalnika (executive objects) so kot ščiteni podsistemi na voljo uporabniškemu režimu, uporablja pa jih lahko tudi sam izvajalnik. 

  Objekti jedra (kernel objects) so bolj preprosti in so na voljo le izvajalniku. Nekateri objekti izvajalnika imajo vgrajenih tudi po več objektov jedra. 


 

Oglejmo si pregled objektov izvajalnika:
 
Tip objekta Definira ga: To je:
Proces
(process)
Upravnik procesov Potek programa vključno z njegovim naslovnim prostorom in drugimi potrebnimi resursi
Nit
(thread)
Upravnik procesov Izvedljiva entiteta znotraj procesa
Sekcija
(section)
Upravnik pomnilnika Območje souporabnega (shared) pomnilnika
Datoteka
(file)
Upravnik vhoda - izhoda Instanca odprte datoteke ali vhodno/izhodne naprave
Vrata
(port)
LPC 
(klic lokalne procedure)
Naslov za sporočila, ki potujejo med procesi
Dostopni ľeton
(Access token)
Varnostni sistem Zanesljiv ID, ki vsebuje informacijo o logiranem uporabniku
Dogodek
(event)
Servisi izvajalnika Najava sistemskega dogodka
Dogodkovni par
(event pair)
Servisi izvajalnika Najava, da je nit danega odjemalca kopirala obvestilo (message) strežniku Win32 ali obratno
Semafor
(semaphore)
Servisi izvajalnika Števec, ki pove, koliko niti uporablja nek resurs
Mutant Servisi izvajalnika Mehanizem za medsebojno izobčenje zmoľnosti v okoljih Win32 in OS/2
Časovnik
(timer)
Servisi izvajalnika Števec iztečenega časa
Direktorij objektov
(object directory)
Upravnik objektov Shramba imen objektov
Simbolični link
(symbolic link)
Upravnik objektov Mehanizem za indirektno naslavljanje imena objekta
Profil
(profile)
Jedro Mehanizem za merjenje porazdelitve časa izvajanja znotraj bloka kode
Ključ
(key)
Upravnik konfiguracije Indeksni ključ za naslavljanje zapisov v konfiguracijski podatkovni bazi Windows NT

Vsi procesi, ki delujejo v uporabniškem režimu in želijo, da bodo imele njihove niti dostop do objektov , morajo imeti ročaj (handle) na objekt. Ročaje lahko tvori le upravnik objektov, ki prej preveri pravice take niti in seveda lahko tako ščiti objekte.

Ročaji na vse različne objekte izvajalnika NT so enaki, kar poenostavlja programiranje. Ni razlike med ročajem datoteke, ročajem procesa, ročajem dogodka,..