2000. január 6. – Ebben a problémában:

  1. A BELSŐ RENDSZEREK ÚJDONSÁGAI

    • PsKill v1.0
    • PsList v1.1
    • WinObj v2.1
    • Contig v1.3
    • NTFSCHK v1.0
    • HandleEx v2.1
    • Ctrl2cap v2.0
    • Filemon v4.26
    • Bluescreen v2.1
    • 2.01-es alapítás
    • Openlist v1.11
    • December NT Internals
  2. BELSŐ HÍREK

    • Megjelent a Win2K DDK
    • Win2K összeomlása billentyűleütéssel
    • Írási védelemű rendszermemória-frissítés
    • Win2K API-robbanás
    • David Fogaras
  3. MI LESZ A KÖVETKEZŐ?

    • Microsoft NT-Related Szabadalmak

SZPONZOR: A TÉLI SZOFTVER

A systems internals hírlevelet a Küldő Software szponzorálja, a weben a következő webhelyen: http://www.winternals.com. A Modern szoftver az NT/2K-hez használható fejlett rendszereszközök vezető fejlesztője Windows szolgáltatója. A Téli szoftvertermékek közé tartozik a FAT32 az Windows NT 4.0, az ERD Commander Professional Edition (az Windows NT speciális rendszerindítólemez-képessége) és a távoli helyreállítás.

A Téli szoftver Win98-hoz használható NTFSDOS Professional és NTFS fájlrendszere teljes olvasási és írási hozzáférést biztosít az NTFS-meghajtókhoz a DOS, Windows 95 és Windows 98 rendszerből. Az NTFSDOS Pro lehetővé teszi az egylemezes "rendszerindítási lemez" Windows NT/2K-n. Az NTFSDOS Pro törölheti a hibás illesztőprogramokat, frissítheti a fájlokat, és általános fájlrendszer-karbantartást hajthat végre az NTFS-meghajtókon egy DOS rendszerindító hajlékonylemezből. A Win98-hoz használható NTFS transzparens hozzáférést biztosít az NTFS-meghajtókhoz Windows 95-ös Windows 98-as rendszerből. A kettős rendszerindítású környezetben könnyen megoszthat alkalmazásokat és fájlokat az NT és a Win9x között NTFS-meghajtókon. Mindkét segédprogram beépített NTFS Chkdsk képességgel is használható. Az NTFSDOS Pro elérhető ingyenes, Win98-ra pedig a csak olvasható http://www.sysinternals.com/ntfspro.htm NTFS-verzió itt érhető el:http://www.sysinternals.com/ntfs98.htm.

Üdvözlök mindenkit!

Üdvözöljük a Belső rendszerek hírlevelen. A hírlevelenek jelenleg 14 000 előfizetője van.

Biztos vagyok benne, hogy tisztában van vele, hogy a Win2K a lemezduplikátornál van. A Win2K kiadási (RTM) verziója végül a 2195-ös build lett. Az RC3 2128-as volt, és ahogy egy korábbi hírleveleben már említettem, a Microsoft minden este – hétvégenként és ünnepnapokon – növeli a buildszámot, amikor lefordítják az aktuális forrásfát.

Novemberben a Microsoftnál voltam (a hírlevele későbbi, Filemon-frissítésében láthatom, hogy miért vagyok ott), és a kernelcsapat egyik tagja a 26-os épület a Microsoft kampuszán való bemutatóján vett fel. A 26-os épület az Windows NT/2K alap kernelcsapatának ad helyt, ahol az Windows NT/2K build- és tesztlaborok találhatók. A build és a tesztlaborok mérete nagyjából egyenlő (akár 30 60-ral), de a tesztlabor számítógépállványokkal van tele, míg a buildlaborban van asztaltér és hely a szerkesztők számára. A szerkesztők minden este kinyerik a forrásfát több négyprocesszoros rendszerre, és futtatnak egy fordítást. Ha valaki kódbevallása (Az tilos) megszakítja a buildet, a rendszer az adott személyt nevezi el , függetlenül attól, hogy a probléma megoldásához milyen óra alatt kapták meg a kódot. November közepére a Win2K-t kódbefagyasztásnak tették ki, ahol az egyetlen olyan módosítást, amelyet a bizottságok jóvá kellett hagynia, és a "show-stopper" hibajavításra kellett irányítani.

A friss build előállítása után a tesztelők a tesztkörnyezetben az összes gépre telepítik azt. A tesztkörnyezet rendszerállványai a kis méretű, kézi számítógépektől a nagy méretű többprocesszoros kiszolgálókig minden jelentős számítógépgyártótól el vannak töltve. Miután a Win2K telepítése befejeződik, a rendszerek jelentős terheléstesztelési szkripteket futtatnak. A fejlesztés későbbi részében a Win2K kilencven százaléknál magasabb terhelési teszteken esett át. Az arány jóval alacsonyabb volt a Win2K számos megbízhatósági fejlesztése, például a Driver Verifier bevezetése előtt, amely egy olyan eszköz, amely segít a fejlesztőknek a problémák kivédésében a saját tesztelésük során.

Függetlenül attól, hogy egy build megfelel-e az összes tesztnek, amelyet feltöltött a Microsoft belső terjesztési kiszolgálójának, ahol a Microsoft alkalmazottai letölthetik és telepítheti. Ha egy fejlesztő jelentős problémát vezet be, akkor várja a több száz alkalmazott e-mailjeit, akik végül a következő héten szembesülnek vele. Csak akkor jelent problémát, ha a felhasználók nagy százalékában a tesztcsapat vállalati szintű figyelmeztetést küld a vállalatnak (az e-maileket több mint 25 000-nek közvetíti, nem könnyű).

Amíg ott voltam, dave Cutler, az NT vezető tervezője Windows. Milyen napokat tart? Novemberben a kernelcsapat már dolgozott a Win2K utódján (belsőleg NT 6-nak vagy Neptune-nak is nevezik), és Dave azon dolgozott, hogy a Win2K 64 bites verziójának telepítése fel legyen ható. Dave vezette a 64 bites fejlesztési erőfeszítéseket, és a 64 bites Win2K jó úton van a teljesítésig. Novembertől a kernelcsapat még mindig 64 bites munkát kezdett az alfa alfa számítógépeken, mivel az Intel csak nemrég kezdett merced processzormintákat előállítani, és csak egy volt a kampuszon.

A szokásos módon adja át a hírlevelet a barátainak, hogy érdekesnek találhatja.

Köszönjük!

-Mark (Megjelölés)

A BELSŐ RENDSZEREK ÚJDONSÁGAI

PSKILL V1.0

Az Windows NT és a Win2K Resource Kit parancssori "kill" segédprogrammal rendelkezik, de csak azért, mert az Windows NT és a Win2K nem rendelkezik ilyenekkel. A helyi folyamatokat a Resource Kit "kill" (le- és lefuttatás) gombja segítségével szüntetheti meg, távoli folyamatokat azonban nem. Ezért úgy döntöttünk, hogy egy szabadon elérhető "kill" (kill) írást írok, amely a pslistemhez hasonló távoli képességekkel rendelkezik. A PsKill egy folyamatazonosítót vagy -nevet és egy nem kötelező számítógépnevet vesz fel, és megszakítja az egyező folyamatokat a helyi vagy a távoli rendszeren. Még ügyfél-összetevőt sem kell telepítenie a távoli számítógépen. Ha a rendszerben futtatott fióknak nincs rendszergazdai jogosultsága a távoli számítógépen, bejelentkezhet a távoli rendszerbe a művelet elvégzéséhez, ha hozzáad egy fióknevet és egy jelszót a PsKill parancssorhoz.

Töltse le a PsKill v1.0-t a címről http://www.sysinternals.com/pskill.htm.

PSLIST V1.1

Néhány évvel ezelőtt kiadták a PsListet, UNIX ps-stílusú folyamattal és szálmegjelenítővel. Az Windows NT és Win2K Resource Kits hasonló eszközeivel ellentétben a PsList lehetővé teszi a folyamat- és szálinformációk megtekintését a távoli rendszereken és a helyi rendszereken is. A PsList úgy működik, hogy a Win NT/2K Teljesítmény API-információit olvassa be, ahogy a Perfmon is. Ez a PsList-változat lehetővé teszi a távoli rendszerbe való bejelentkezést azáltal, hogy megad egy fióknevet és egy jelszót a parancssorában. Ezzel a beállítással olyan távoli számítógépeket is hozzáférhet, amelyekhez a PsListet futtató fiók nem rendelkezik rendszergazdai jogosultsággal.

Töltse le a PsList v1.1-et itt: http://www.sysinternals.com/pslist.htm.

WINOBJ V2.1

A WinObj az NT/2K-Windows objektumkezelő névterének megjelenítője. Az Object Manager-névtér egy olyan névtér, amely általában nem látható a felhasználók számára, de itt található az összes Win32 ( és ) nevű név és elnevezett \BaseNamedObjects\?? kernelobjektum. Emellett a fájlrendszer névterének belépési pontjaként is szolgál (a meghajtóbetűjel szimbolikus hivatkozásai között), valamint a Beállításjegyzék névterében \?? (a kulcsobjektumon \Key keresztül).

A WinObj hasonló a Win32 Szoftverfejlesztői készlet (SDK) azonos nevű eszközéhez, de a WinObj sokkal többet tesz, mint a Microsoft verziója. Ha például megtekinti egy objektum tulajdonságait a WinObj-ban, akkor a hivatkozásokat és a számlálók számát fogja látni, nem pedig tetszőleges számokat (az SDK WinObj néhány jelentős hibát tartalmaz). A WinObj a szinkronizálási objektumok és az objektumbiztonsági információk állapotát is megjeleníti.

Ez a legújabb WinObj-frissítés kijavít egy hibát, amely megakadályozta, hogy megfelelően megjelenítsen néhány hosszú szimbolikus hivatkozásértéket a Win2K névterében. Emellett az új, felhasználóbarátabb Win2K biztonsági szerkesztő párbeszédpaneleket is használja, amikor a Win2K-n futtatja azt (NT 4-en nem dokumentált biztonsági szerkesztőfelületeket használ, amelyeket az ACLEDIT.DLL). A felhasználói felület fejlesztései közé tartozik annak felidézése, hogy melyik könyvtárat nézi meg a kilépéskor, így a WinObj következő elindítani ezt a könyvtárat választja ki, és lehetősége van rendezni a könyvtár tartalmának listview ablakát.

Töltse le a WinObj v2.1-et itt: http://www.sysinternals.com/winobj.htm.

CONTIG V1.3

A Microsoft beépített fájl töredezettségmentesítési API-kat is tartalmazott az NT 4 kiadott verziójában. Dokumentálom az API-kat, és meg vagyok biztosítanak egy mintakódot, amely az API-t használja itt: http://www.sysinternals.com/defrag.htm. A Contig nevű parancssori töredezettségmentesítő API-k használatával töredezettségmentesítőt használhat az egyes fájlok vagy könyvtárak töredezettségmentesítéséhez. A Contig első kiadása óta számos kérést kaptam egy töredezettségelemzési lehetőség hozzáadására, és végül hozzá is kaptuk a érvénybe. A Contig 1.3-as vagy újabbával láthatja, hogyan töredezetté váltak a megadott fájlok, így megállapíthatja, hogy kell-e drágább töredezettségmentesítési folyamatot végeznie.

A fájl töredezettségmentesítését a Symantec a legfejlettebb töredezettségmentesítővel, a Speedisk 5.0-ssal jelent meg. A verseny legjobbja érdekében megkerüli a töredezettség töredezettségmentesítési API-t, és manuálisan áthelyezi a blokkokat a lemez körül, hogy a rendszer online használata közben töredezettségmentesíthet könyvtárakat vagy akár az MFT-t is. Ellentétben azzal, amit a Vezetői szoftver a (4.0-s és 5.0-s verziójú) Diskeeper terméke is tartalmaz, megkerüli a töredezettségmentesítő API-t (de a töredezettségmentesítője közel sem olyan fejlett, mint a Microsoft terméke), különösen akkor, amikor rendszerindítási címtárkonszolidációt http://www.execsoft.com/diskeeper/infosheet.asp#Q9 végez. A vezetői marketing egy újabb tanulság arra, hogy miért nem hihet el mindent, amit olvasott.

Töltse le a Contig v1.3-at a címről http://www.sysinternals.com/contig.htm.

Töltse le a PageDefrag beállításjegyzéket és lapozófájl-töredezettségmentesítőt a következő ről: http://www.sysinternals.com/pagedfrg.htm.

NTFSCHK V1.0

A Win2K-t az NT 4-sel együtt a számítógépeikre telepítő energiafelhasználók gyakori bejelentése, hogy a Win2K bármely NTFS v5-re való automatikus frissítése miatt az NT 4 Chkdsk nem tudja ellenőrizni ezeket a meghajtókat. Az NTFS v5-meghajtók vizsgálata és a hibák javítása helyett az NT 4 Chkdsk egyszerűen azt jelenti, hogy nem futtatható újabb NTFS-verziókkal létrehozott meghajtókon, és nem tud kilépni. Ehhez a Win2K-ba kell rendszerindítást indítania, ha az eddig legalább ezeket a meghajtókat szeretné ellenőrizni.

Az NTFSCHK-val a Chkdsk Win2K verzióját nt 4-ről futtathatja. Hogyan? Ugyanazt a technológiát használva, mint amit az NT natív Chkdsk doS-ból való futtatásához és Windows 9x-es futtatásához fejlesztettünk az NTFSDOS Professional és a Win98 NTFSDOS részeként, az NTFSCHK a Win2K Chkdsk fájlt egy Win2K-hez hasonló környezetbe burkolta.

Töltse le az NTFSCHK v1.0-t a címről http://www.sysinternals.com/ntfschk.htm.

HANDLEEX V2.1

A HandleEx az WINDOWS NT/2K többcsomópontos diagnosztikai segédprogramja, amely bemutatja, hogy milyen DLL-folyamatok töltöttek be, és milyen objektumokat nyitottak meg (a leíróik). A HandleEx hasznos a DLL-verziószámozási problémák nyomon követéséhez, a szivárgások kezeléséhez és annak meghatározásához, hogy melyik alkalmazás fér hozzá egy adott fájlhoz, könyvtárhoz vagy beállításkulcshoz.

A HandleEx 2.1-es verziója lehetővé teszi a megnyitott objektumok tulajdonságainak megtekintését, beleértve a referenciaszámokat és a szinkronizálási objektumok állapotát. Az NT biztonsági szerkesztőivel is megtekintheti és módosíthatja az objektumbiztonsági attribútumokat.

Töltse le a HandleEx v2.1-et itt: http://www.sysinternals.com/handleex.htm.

CTRL2CAP V2.0

Ha ön már rendelkezik UNIX háttérrel, akkor beleegyezik abba, hogy a pc-s billentyűzet vezérlőkulcsa rossz helyen van: itt kell lennie a caps-lock kulcsnak. És egyébként is ki használja a caps-lock kulcsot? A Ctrl2cap egy billentyűzetszűrő-illesztőprogram, amely a caps-lock -t a bal vezérlőre módosítja, és eltávolítja a caps-lockot mellékhatásként (a szabványos bal-vezérlőt használom tűzkulcsként a Half Life lejátszásakor).

Bár a Ctrl2cap v1.0 Win2K-on is működik, a használatával letilthatja a Win2K energiagazdálkodási funkcióit, ami kissé ingerlékeny a laptopokon. Ezért frissítettem a Ctrl2cap billentyűkombinációt, hogy igazodni Windows illesztőprogram-modellhez (WDM), amely magában foglalja az energiagazdálkodást is. Teljes forráskódot és ugyanazok a forrásfájlok az NT 4- és Win2K-verziókat is buildelik.

Töltse le a Ctrl2cap v2.0-t a forráskódgal: http://www.sysinternals.com/ctrl2cap.htm.

FILEMON V4.26

Novemberben azért voltam a Microsoftnál, mert a Microsoft egy "fájlrendszerszűrő plugfestet" tartott (belső neve "Irp-olooza"). A plugfest összegyűjte az összes fő terméket, amelyek az Windows NT/2K fájlrendszerszűrő illesztőprogramja alapján vannak összepárosodva, round-robin módon párosították őket, és terhelési teszteket futtattak a különböző párosításokkal. A termékek körülbelül kilenc különböző vírusolvasót, számos fájltitkosítási eszközt és lemezkvóta-kezelőt tartalmaztak. Az év célja az volt, hogy azonosítsa a különböző szűrőkombinációkhoz kapcsolódó együttműködési problémákat, segítsen megtalálni és azonosítani a fő szűrőtermékek hibáit, és esetleg hibát is találni a Win2K-ban. Mivel a Filemon a világ egyik legszélesebb körben használt szűrője, és a Microsoft számos csoportja támaszkodik rá a fejlesztési és hibaelhárítási munkájukhoz, a plugfest szervezői meghívtak, hogy jöjjek el az eseményre, és jelentsem be.

A Filemon incidensek kivételével minden terhelési teszten áthaladt. Mivel a Filemon egy dinamikusan betöltött szűrőillesztő, amely az eseményen jelen található termékek fölé rétegű, kivéve egyet. A Filemon fölött réteges termék egy vírusolvasó, amely szintén dinamikusan betölti azt, valójában egy Filemon-alapú termék. Mivel a vírusolvasó dinamikusan betölti a terhelést, mindkét réteg permutációt kipróbáltuk, és abban, ahol a Filemon alul volt, a vírusolvasó összeomlását okozta. Amikor a Filemon grafikus felhasználói felülete kilépett, az illesztőprogram törli a szűrőeszköz objektumát. Valójában nem használható szűrőillesztők számára a szűrőeszköz-objektumok törlésére, kivéve, ha az I/O-kezelő parancsa erre initálja az iit-et ( fájlrendszerszűrőkben és P a használatával a FastIoDetachIRP_MJ_PNIRP_MN_REMOVE_DEVICE WDM-ban). Nem meglepő, hogy a Filemon-eszközobjektumok váratlan leállása miatt a vírusolvasó hozzáfért a felszabadított memóriához és összeomláshoz.

Szerencsére a Filemon összeomlása a plugfest utolsó munkamenetében történt, így minimális volt a zavarom, és mivel a tesztelés legalább egy súlyos hibát vagy együttműködési problémát talált minden egyes termékben, amely jelen volt, nem egyedül. A Filemon 4.26-os verziója javítja ki a plugfesten felfedezett hibát.

Még azelőtt is találtunk egy hibát a Filemonban, amely az NT-eszközök és a fájlrendszer-illesztőprogramok fejlesztői számára érdekes lehet. Nemrég módosítottam a Filemont, hogy a rosszul dokumentált Vezetői erőforrás (E-erőforrás) szinkronizálási mechanizmust használja. A Microsoft fájlrendszer-illesztőprogramjai széles körben használják az E-erőforrásokat, így azt hiszem, oktatási célokat kellene használniuk a Filemon forráskódjában. Az e-erőforrásokat olyan szálaknak kell be szerezniük, amelyeken le vannak tiltva az APC-k (aszinkron eljáráshívások). Ezt csak "tudni" kell, mert a DDK-dokumentumok nem árulják el. Sajnos a megvalósítási tervben kihagytam a függvények hívásait, amelyek letiltják és újra engedélyezik az APC-ket a Filemon E-Erőforrás beszerzései során. Ez a hiba csak nagyon ritka esetekben okoz problémákat, ezért addig nem észleltem, amíg a Win2K Driver Verifier nem észlelte. A probléma megoldásához hozzáadtam egy hívást a KeEnterCriticalSection számára, mielőtt az E-erőforrás kiadása után lekérte volna az E-erőforrást és a KeLeaveCriticalSection et.

Töltse le a Filemon v4.26-ot a következő címről: http://www.sysinternals.com/filemon.htm.

BLUESCREEN V2.1

A Bluescreen Screen Saver egy olyan képernyővédő, amely az NT Blue Screen of Death (BSOD) Windows szimulálja. A Win2K-kiadások megjelenése előtt megírtuk az eredeti verziót, ezért szimulálta az NT 4 BSOD-t és újraindult, és a Chkdsk lemezhibákat észlelt. Két verziót elérhetővé tettem: az egyik lemez I/O-t hajtott végre a hozzáadott realizmushoz, egyet pedig nem. A Win2K Beta 3 kiadását követően frissítettem a Bluescreent, hogy szimulálja az új Win2K BSOD-t és a rendszer újraindítását. Az RC3-ban az újraindítási képernyő megváltozott, ezért újra kellett frissítenem a Bluescreent. Ugyanakkor a lemez I/O-generációját a Bluescreen képernyővédő tulajdonságaival konfigurálhatóvá tette két verzió helyett.

Töltse le a Bluescreen v2.1-et itt: http://www.sysinternals.com/bluescrn.htm.

FUNDELETE V2.01

Hosszú várakozás után az NT-re vonatkozó Undelete Windows a következőt adja vissza: Alapelem az NT Windows számára. A Fundelete egy olyan segédprogram, amely javítja az Windows NT/2K Lomtár-t a programokból és a parancssorból, valamint az Explorerből törölt fájlok rögzítéséhez. Miért változik a név? Néhány hónappal Azután, hogy Bryce és én kiadták az Undelete-et az Windows NT-hez, az Executive Software megjelentette a Network Undelete-et, amely egy hasonló segédprogram. Egy évvel később úgy döntöttek, hogy a segédprogramunk nevét jobban kedvelik, mint a sajátjukat, ezért a sajátjukat undelete-re módosították a Windows NT esetében. Ezzel egyidőben a ügyfeleik egy levélben figyelmeztetnek minket, hogy a bejegyzett védjegyet megsértjük az 1987 óta tartott "undelete" szóval. A közmű nevét nem a meccs, hanem a közmű nevét módosította.

A fejlesztők letölthetik a forráskódot a Fundelete eszközillesztőjére, amely bemutat néhány hatékony illesztőprogram-technikát, például a felhasználó SID-azonosítóját az illesztőprogramból, a könyvtár tartalmának felsorolását egy illesztőprogramból, valamint új integrációs csomagokat hoz létre.

Töltse le az Windows NT 2.01-es vagy korábbihttp://www.sysinternals.com/fundelete.htm.

OPENLIST V1.11

Az Openlist egy Windows 9x segédprogram, amely a rendszeren megnyitott összes fájlt megjeleníti. Az 1.11-es verzió lehetővé teszi a fájlok részletes információinak megtekintését, beleértve a DLL-ek verzióinformációit is.

Töltse le az Openlist v1.11-et itt: http://www.sysinternals.com/openlist.htm.

DECEMBER "NT INTERNALS"

Az "NT Internals" oszlop a Windows NT Magazine decemberi számában a "Inside Win2K Scalability Enhancements, Part 2" (A Win2K méretezhetőségi fejlesztései, 2. rész) A kétrészes sorozat második része a Többprocesszoros skálázhatóság érdekében a Microsoft által a Win2K-ben végzett fejlesztéseket ismerteti, beleértve a Feladat objektumot, az új kvantumvezérlőket, az új ütemezési osztályokat és a felhasználói módú szálkészleteket.

Tavaly augusztusban Windows NT Magazine módosította az online cikkböngésző szabályzatát, hogy csak előfizetők férhedhetnek hozzá. A múlt hónapban a szabályzatot visszahűtötték arról, hogy hol volt augusztus előtt. A nem előfizetők mostantól szabadon megtekinthetik a négynél több problémát küldő cikkeket.

A kiadványok teljes listáját itt láthatja: http://www.sysinternals.com/publ.htm.

BELSŐ HÍREK

MEGJELENT A WIN2K DDK

A Microsoft Win2K Device Driver Development Kit (DDK) végleges kiadása a következő: http://www.microsoft.com/ddk. A csomagot ingyenesen letöltheti, vagy online is böngészheti a dokumentációt.

ÖSSZEOMLÁSI WIN2K BILLENTYŰLEÜTÉSSEL

Nem, ez nem hiba. DavidChot, az "Inside Windows NT 2nd Edition" szerzője ezt a nagyszerű tippet nyújtotta. Ha hozzáadja a Beállításjegyzék DWORD értékét, állítsa "1" értékre, és újraindítja, a Win2K a billentyűzettel HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\i8042prt\Parameters\CrashOnCtrlScroll összeomlik. A jobb vezérlőkulcs lenyomva tartási ideje alatt egymás után kétszer nyomja le a görgetőkulcsot. A görgetőkulcs második lenyomása után a rendszer kék képernyőt kap a "The end-user manually generated the crashdump" (A végfelhasználó manuálisan generálta az összeomlási csonkot) üzenettel.

A rendszer manuális összeomlásának lehetősége olyan esetekben hasznos, amikor a kernel vagy az eszközillesztő holtpontba ütközött, és a számítógép már nem válaszol. A holtpont létezik során létrehozott összeomlási memóriakép információt nyújthat a fejlesztőknek a holtpont okának jelzésére. Ez a lehetőség olyan csendben lett bevezetve, hogy még a Win2K fő kernelfejlesztői sem tudnak róla, amíg át nem mutatták, amikor a plugfestnél voltam.

ÍRÁSI VÉDELEMŰ RENDSZERMEMÓRIA-FRISSÍTÉS

Egy korábbi hírleveleben arról volt szó, hogy az írás által védett rendszermemória a Win2K új megbízhatósági funkciója. Mint kiderült, számos konfigurációban alapértelmezés szerint nincs teljes írási védelem. Ha egy számítógép legalább 128 MB fizikai memóriával rendelkezik, a Win2K 4 MB -os "nagy méretű lapokat" használ a kernelmemória leképezéséhez. 4 KB-os lapok helyett 4 MB-os használatával egy szintű oldalfordítást takaríthat meg, ezáltal javíthatja a teljesítményt. Mivel a csak olvasható kód és az olvasási/írási/írási adatok is ugyanazon a 4 MB-os lapírás-védelemen lehetnek, ezek a rendszerek le vannak tiltva, kivéve, ha a felhasználó írási védelmet kér az Illesztőprogram-ellenőrzővel. Ha a Driver Verifier írási védelmet tartat be, akkor a Win2K lassabb 4 KB-os oldalakat használ a kernelmemória különböző memóriarégióinak laphoz igazítására, ami azt jelenti, hogy az egyes kódlapok írási módban is megjelölhetőek.

Így az írásvédelem csak a 128 MB-osnál kevesebb memóriával rendelkező rendszereken aktív, és azok esetében, amelyeknél a Driver Verifier engedélyezte. Olyan rendszerek esetében, ahol a write-protection nem aktív, a Microsoft fontolóra venni egy olyan figyelő létesítmény Win2K szervizcsomagjába való felvételét, amely ellenőrzi a rendszer memóriáját, majd rendszeres időközönként ellenőrzi a memóriát az ellenőrzőummal. Bár az ellenőrzési művelet nem olyan pontos, mint a hardveres támogatású írásvédelem, észlelni fogja a hibás írásokat a csak olvasható területekre.

WIN2K API-ROBBANÁS

A Win2K kérdés nélkül jelentősen nagyobb az NT 4-esnél. Természetesen számos új szolgáltatás és integrált funkció számít a Win2K méretének (Active Directory, MMC, COM+ stb.) részeként, de még az alapvető operációs rendszer is nőtt. Az operációs rendszer méretének egyik oka az, hogy az alkalmazások számára exportált API-k száma nőtt. A Win2K alapvető operációsrendszer-DLL-jei közé tartozik az KERNEL32.DLL, GDI32.DLL, USER32.DLL és ADVAPI32.DLL (a NTDLL.DLL is egy alapvető operációsrendszer-DLL, de a KERNEL32 a Win32 API-k esetében az NTDLL-re támaszkodik). Vessünk egy rövid pillantást az API-robbanásokra. A nyers számok a következőek:

KÖNYVTÁR NT 4 SP5 WIN2K NÖVEKEDÉS
KERNEL32 681 823 21%
GDI32 401 553 38%
USER32 (FELHASZNÁLÓ32) 629 695 10%
ADVAPI32 401 557 39%

Vegye figyelembe, hogy bizonyos esetekben a növekedés mesterségesen akár 30%-kal is megnedzül, mivel egyes API-k ANSI- és széles sztringű formában is vannak, ezért a fenti számokban kétszer számoljuk őket.

A KERNEL32 az a DLL, amely az úgynevezett "alap operációs rendszer" funkcióit exportálja, beleértve a folyamat- és memória-, fájl-I/O- és területi területi kezelési API-kat. A Win2K újdonsága az új nyelvfunkciók (például ), a feladatobjektum-függvények (például ), a memóriakezelési függvények (például ), a fájlfunkciók (például ) és a EnumUILanguagesAssignProcessToJobObjectAllocateUserPhysicalPagesFindFirstVolume ToolHelp32 API-k (pl. Process32First ).

A GDI32 rajzokkal és bittérképekkel kapcsolatos rutinokat is használ. A növekedés oka többnyire olyan egyéb új függvények megjelenése, amelyek új betűtípus-kezelési API-kat tartalmaznak (pl. ), alfa blending és CreateFontIndirectEx path-object függvényeket.

A USER32 ablakokat használó függvényeket implementál, és a növekedés jelentős része az új, több monitorozást használó API-k használata. Más új USER32 API-k számos információs függvényt tartalmaznak (például GetWindowInfoGetTitleBarInfo : ).

Végül az ADVAPI32 az a DLL, amely speciális Win32 API-kat ad meg. Számos új API-csoport járul hozzá a növekedéshez: az EFS (pl. ), a CryptoAPI (pl. ), a biztonság (pl. ), az esemény-nyomkövetés (például ) és az DecryptFileCryptEnumProviders Windows Management Interface CheckTokenMembershipStartTrace (WMI) (pl. ) teszi ki az WmiOpenBlock új függvények nagy részét.

DAVID ANDRES

David Expert Aves San Franciscóba érkezik – február 21-25. Fejlesztői képzés a Microsoftnál tanító tanártól.

  • Win32 Programming by Richter (Win32-programozás) – Richter
  • Power Debugging by JohnRelins
  • Windows 2000 eszközillesztőt írta: Handrahan
  • Windows CE eszközillesztők & Doug Boling alkalmazásai

További részletek: http://www.solsem.com

MI A KÖVETKEZŐ?

A szoftverszabadalmazás kötelező időtöltéssé vált a szellemi tulajdont használni kívánó vállalatok számára. A Microsoft nem áll le a szabadalmas játékhoz, és az NT kernele rendelkezik néhány olyan mechanizmusokkal, amelyeket az EGYESÜLT Szabadalmi és védjegy-védelmi rendszer (PTO Office megfelelőnek ítélt. Annak a kernelnek a területei, amelyekhez a Microsoft szabadalmokat szerzett, az I/O-kezelő és az objektumkezelő. Legközelebb felsorolom azokat a szabadalmakat, amelyekhez az NT kernelen ástam.


Köszönjük, hogy elolvasta a Belső rendszerek hírlevelet.

Published Thursday, January 06, 2000 7:09 PM by ottoh

[Hírlevelek archívuma ^][ Volume 1, Number 5][Volume 2, Number 2 ]

[Hírlevelek archívuma ^][ Volume 1, Number 5][Volume 2, Number 2 ]

A rendszerek belső hírlevele, 2. kötet, 1. szám

http://www.sysinternals.com

Copyright © 2000 Mark Russinovich