Rendszer DLL-ek Windows 7-ben

Elindult az új félév az Operációs Rendszerek tantárgyból, és, hogy legalább én is tanuljak valamit belőle, a demo-kat Windows 7 Beta-n mutatom. Okozott azért pár meglepetést:) Rögtön a bevezető előadásban, amikor megnéztük, hogy egy egyszerű parancssori program milyen rendszer DLL-eket használ, a Vistától elég eltérő kép fogadott.

Dependency Walker-ben (depends.exe) Vista alatt így néznek ki a programunk függőségei:

image

Szép, tiszta kép fogad minket. A Simple.exe hivatkozik a windowsos alrendszer DLL-jére, a kernel32.dll-re, míg az hivatkozik a kernel belső API-jának csonkjait tartalmazó DLL-re, az ntdll.dll-re. (A Dependency Walkerben a bal oldali részen a hívási fát látjuk, jobb felül azokat a függvényeket, amiket a hívó modul importál a kiválasztott DLL-ből, jobb középen az összes, a kiválasztott modulból exportált függvény látszik, lent pedig a fában szereplő modulok részletes adatai láthatóak. A Dependeny Walker súgója egyébként nagyon jó, könnyen érthető!)

Windows 7 esetén ugyanez a program így néz ki:

image

A helyzet kicsit megváltozott:), pl. megjelent a kernelbase.dll, meg egy csomó microsoft-windows-system-*.dll formájú DLL. A kernel32.dll néhány függvénye például most már csak egyszerűen továbbhív a megfelelő microsoft-windows-system dll-be, a kernel32-ben csak kompatibilitás miatt maradt benne:

image

Nem találtam még túl sok leírást róla MSDN-en (itt csak annyi van, hogy átszervezték az alacsonyszintű binárisokat), de ez gondolom a Windows 7-hez kapcsolódó átszervezések eredménye, hogy modulárisabb legyen az operációs rendszer. Szépen szétszedték modulokra a főbb funkciókat, így finomabb függőséget lehet majd megadni.

Reklámok
Kategória: Opre | Közvetlen link a könyvjelzőhöz.

Vélemény, hozzászólás?

Adatok megadása vagy bejelentkezés valamelyik ikonnal:

WordPress.com Logo

Hozzászólhat a WordPress.com felhasználói fiók használatával. Kilépés / Módosítás )

Twitter kép

Hozzászólhat a Twitter felhasználói fiók használatával. Kilépés / Módosítás )

Facebook kép

Hozzászólhat a Facebook felhasználói fiók használatával. Kilépés / Módosítás )

Google+ kép

Hozzászólhat a Google+ felhasználói fiók használatával. Kilépés / Módosítás )

Kapcsolódás: %s