[Archiv bulletinů ^] [< Svazek 2, číslo 1] [Svazek 2, číslo 3 >]
The Systems Internals Newsletter volume 2, Number 2
http://www.sysinternals.com
Copyright © 2000 Mark Russinovich
27. března 2000 – V tomto problému:
ÚVODNÍK
- Mark to coauthor "Inside Windows 2000, 3rd Ed." with David Solomon
CO JE NOVÉHO VE SPOLEČNOSTI SYSINTERNALS
- PsKill v1.03, PsList v1.12
- Spojení v1.0
- ElogList v1.0
- NTFrob v1.6a
- GetSid v1.1
- HandleEx v2.23
- Regmon v4.24, Filemon v4.28
- Automatické spuštění verze 1.0
- NT 4. ACL Editor
- Trička SysInternals
- Více SysInternals na microsoft.com
- Sloupce interních dat z března/dubna
- Ne tak nové věci
INTERNÍ INFORMACE
- Body rozboru
- Tabulka popisovačů jádra
- Jeden nebo více ovladačů se nepodařilo spustit
- Patenty související s Microsoft NT
CO SE CHYSTÁ
- TdiMon
SPONZOR: WINTERNALS SOFTWARE
Bulletin Internals Systems je sponzorován společností Winternals Software na webu na adrese http://www.winternals.com. Winternals Software je přední vývojář a poskytovatel pokročilých systémů nástrojů pro systém Windows NT/2K. Produkty Winternals Software zahrnují FAT32 pro systém Windows NT 4.0, ERD Commander Professional Edition (pokročilé možnosti spouštěcího disku pro systém Windows NT) a vzdálené obnovení.
Winternals Software NTFSDOS Professional a NTFS for Win98 poskytuje úplný přístup ke čtení a zápisu na jednotky NTFS z SYSTÉMU DOS, Windows 95 a Windows 98. NTFSDOS Pro přináší možnost "boot-disk" s jednou disketou systém Windows NT/2K. Pomocí systému souborů NTFSDOS Pro můžete odstranit ovladače chyb, aktualizovat soubory a provádět obecnou údržbu systému souborů na jednotkách NTFS z spouštěcí diskety DOS. Systém souborů NTFS pro Win98 poskytuje transparentní přístup k jednotkám NTFS z Windows 95 a Windows 98. Snadno sdílet aplikace a soubory mezi NT a Win9x na jednotkách NTFS ve vašem prostředí se dvěma spuštěními. Oba nástroje mají i integrovanou funkci NTFS Chkdsk. K dispozici http://www.sysinternals.com/ntfspro.htm je bezplatná verze NTFSDOS Pro jen pro čtení a k dispozici je bezplatná verze NTFS jen pro čtení pro Win98. http://www.sysinternals.com/ntfs98.htm.
Dobrý den,
Vítejte v bulletinu Systems Internals. Bulletin má aktuálně 20 000 odběratelů. Růst seznamu byl obrovský za poslední dva měsíce s více než 6 000 novými předplatiteli! Pokračujte v předávání bulletinu svým přátelům.
S radostí oznamujem, že spoluvytváření "Inside Windows 2000, 3rd Edition" s Dave Solomon (http://www.solsem.com). Pokud vás zajímá systém Windows NT interních informací, téměř jistě jste přečetli Dave 's "Inside systém Windows NT, 2nd Edition" (Microsoft Press). Vydání systému Windows 2000 přináší řadu změn jádra NT a okolních komponent, některé velké a malé a tyto změny znamenají, že Daveova kniha vyžaduje revizi.
V mnoha smyslech Dave a já jsem nezávisle pracovat na "Inside Windows 2000" za poslední tři roky, jak jsme držet krok s změnami Microsoft zavedla do Windows 2000 ve svém vývoji z NT 5.0 Beta 1 až Windows 2000 build 2195. Už nějakou dobu jsem pracoval na psaní vlastní knihy "systém Windows NT Internals", ale když jsem přišel příležitost spolupracovat s Davem na následníkovi knihy takové vysoké kvality a pomoci psát oficiální pohled Microsoftu na Windows 2000 Internals, nemohl jsem to předat.
Naše rozhodnutí o vytvoření knihy společně je poměrně nedávno, takže jsme strávili posledních pár měsíců sloučením našeho výzkumu, poznámek a článků. Z naprosto nesouvisejících důvodů se nám stane, že žijeme jen dvacet minut od sebe v vzdáleném rohu Connecticutu. Naše blízkost nám umožnila alternativní dny pracovat v domech sebe navzájem a nedávno jsme strávili mnoho pozdních nocí výzkumem a debatováním nejasných podrobností o vnitřních pracích systému Windows 2000. Můžete vidět fotku Dave a já pracuji v jeho domě http://www.sysinternals.com/inspic.jpg.
Neobvyklý aspekt našeho partnerství spočívá v tom, že Dave má úplný přístup ke zdrojovému kódu systému Windows 2000, zatímco já jsem neměl přístup k žádnému zdrojovému kódu Windows mimo to veřejně dostupné v sadě Device Driver Kit a Instalační systém souborů Kit). Dave vyhodnocuje věci procházením zdrojových souborů s kódem, zatímco jsem analyzoval výpisy vytvořené vlastním disassemblerem a prozkoumávám guts Windows 2000 v živých systémech pomocí ladicího programu v režimu jádra NuMega SoftICE. V důsledku toho každý z nich přináší do tabulky jedinečné perspektivy a na více než jednu příležitost jsme společně použili naše příslušné zdroje k tomu, abychom společně odpověděli na náročné otázky.
Nejen že aktualizujeme původní knihu tak, aby odrážela změny Windows 2000, přidáváme také více než 30 % zbrusu nového obsahu, včetně několika nových kapitol. Mezi témata, která zavádíme v nové knize, patří spouštění, vypínání, chybové ukončení, správa úložiště, interní služby, interní informace o registru a rozhraní WMI. Tato revize se dodává s CD-ROM obsahující snap-shot webu SysInternals, a půl tuct nástrojů, které jsem napsal speciálně pro knihu. Jeden z nástrojů LiveKd umožňuje spustit ladicí program jádra i386kd v živém systému, což usnadňuje prozkoumání interních jader bez potíží se sériovými kabely a několika počítači. Bez pochybností tato kniha přidává významné technické informace a přehled k již pevným základům svého předchůdce.
Kdy bude kniha k dispozici? Dave a já míří na Redmond týden od 4. dubna, aby získali konečné technické recenze komentáře od vývojářů jádra Systému Windows 2000, a Microsoft Press říká, že kniha bude na policích v červenci. Samozřejmě vás nechám publikovat v bulletinu.
Díky!
-Známka
CO JE NOVÉHO V INTERNÍCH SYSTÉMECH
PSKILL V1.03, PSLIST V1.12
PsList je nástroj, který umožňuje zobrazit podrobné informace o aktivních procesech místního nebo vzdáleného systému a PsKill umožňuje ukončovat procesy v místním nebo vzdáleném systému. Tyto nástroje mají podobnou syntaxi příkazového řádku, kde můžete zadat volitelný název počítače ve formuláři "\\computer
". Pokud zahrnete uživatelské jméno s názvem počítače, nástroje vám umožní přihlásit se k zadanému počítači v jiném uživatelském účtu než k počítači, ze kterého nástroje používáte. Tyto nejnovější verze nabízejí alternativní způsob, jak zadat heslo v prostředích, kde je spouštíte před jinými lidmi a nechcete zveřejnit hesla. Pokud teď jako možnost zahrnete účet počítače, ale vynecháte heslo, zobrazí se výzva k zadání hesla a nezobrazní váš vstup na obrazovku.
Stáhnout PsKill v1.03 na adrese http://www.sysinternals.com/pskill.htm.
Stáhnout PsList v1.12 na adrese http://www.sysinternals.com/pslist.htm.
SPOJENÍ V1.0
Forma symbolického odkazu se konečně dostala do Windows ve formě spojení systému Windows 2000 NTFS. Spojení jsou symbolické odkazy adresáře a Sada Windows 2000 Resource Kit obsahuje nástroj, který umožňuje vytvářet a odstraňovat spojení. Základní instalace systému Windows 2000 bohužel neobsahuje žádné nástroje pro vytváření spojení a dokumentace k sadě SDK platformy neobsahuje dostatečně spojovací body dokumentu. Tyto nedostatky mě vedou k implementaci Junction, nástroj, který umožňuje nejen vytvářet spojení, ale dotazovat se na soubory a zobrazit informace o jejich spojovacím bodu, pokud mají. Aby vývojářům pomohli implementovat vlastní nástroje spojovacích bodů, publikoval jsem úplný zdrojový kód do Junction. Další informace o spojeních a o tom, jak je systém Windows 2000 implementuje, najdete v části o spojovacích bodech později v bulletinu.
Stáhnout Junction v1.0 s úplným zdrojovým kódem na adrese http://www.sysinternals.com/misc.htm.
ELOGLIST V1.0
Sada Windows 2000 Resource Kit obsahuje nástroj s názvem ELogDump, který umožňuje výpis záznamů z protokolu událostí v místním nebo vzdáleném počítači. ELogList je klon ElogDump, který vám také umožňuje zadat volitelný název účtu a heslo, abyste měli přístup k protokolům událostí počítače z jiného účtu než z jiného účtu, ze kterého nástroj spouštíte. ElogList je užitečný pro ukládání protokolů událostí z dávkových souborů nebo zachytávání záznamů protokolu událostí do textových souborů, které můžete importovat do tabulek pro uchovávání záznamů nebo analýzu.
Stáhnout ElogList v1.0 na adrese http://www.sysinternals.com/eloglist.htm.
NTFROB V1.6A
NTFrob je aplet, který vám dává větší kontrolu nad kvantovými kvanty popředí a pozadí (otočí), které plánovač systém Windows NT přiřadí podprocesům, než jaká karta Výkon v apletu ovládacího panelu Systém umožňuje. Použití kratších kvantových dokumentace může zlepšit rychlost odezvy interaktivních aplikací, zatímco delší kvanta jsou vhodnější pro dlouhotrvající serverové úlohy. NTFrob pokračuje v tempu s novými aktualizacemi Service Pack s nejnovější verzí verze 1.6a. Verze 1.6a funguje na všech vydaných verzích NT 4.0 až Service Pack 6a s výjimkou Aktualizace Service Pack 6 (Microsoft se odebral Service Pack 6 krátce po vydání kvůli významné chybě). Připravujeme verzi NTFrob, která funguje na Win2K.
Stáhnout NTFrob v1.6a na adrese http://www.sysinternals.com/ntfrob.htm.
GETSID V1.1
Pokud spravujete prostředí, ve kterém klonování usnadňuje zavedení, pravděpodobně vás bude zajímat GetSid. GetSid je jako nástroj systém Windows NT Resource Kit se stejným názvem, ale SysInternals GetSid umožňuje získat IDENTIFIKÁTORy SID nejen pro uživatelské účty, ale i pro počítače. Vzhledem k tomu, že GetSid funguje v sítích bez nutnosti instalace libovolného klientského softwaru, můžete snadno použít GetSid k ověření, že počítače v síti netrpí duplicitním problémem se identifikátorem SID, který doprovází klonování.
Stáhnout GetSid v1.1 na adrese http://www.sysinternals.com/misc.htm.
Informace o duplicitním problému se identifikátorem SID na adrese http://www.sysinternals.com/newsid.htm.
REGMON V4.24, FILEMON V4.28
Kromě zobrazení názvů procesů provádějících aktivitu souboru nebo registru tyto aktualizace regmonu a Filemon zobrazují také identifikátory procesů. Toto vylepšení vám pomůže rozlišit přístup k souborům a registru mezi několika procesy se stejným názvem.
Další vylepšení v těchto verzích umožňuje spouštět Regmon a Filemon ze vzdálených relací terminálových služeb Win2K (na rozdíl od konzoly). Aplikace tuto podporu dosáhnou, protože jejich GUI zkontrolují číslo verze operačního systému a pokud běží na Win2K, zadejte\\.\Global\
předponu "" názvu, který používají při volání CreateFile při otevření objektu zařízení komponenty ovladače. V prostředí terminálových služeb jsou názvy ovladačů zařízení přiřazené k jejich objektům uloženy v globálním oboru názvů (konzoly), obor názvů, který není ve výchozím nastavení viditelný ve vzdálených relacích. Vzdálené relace mají místní obor názvů. Předpona "Globální" označuje správce objektů Win2K, že správce objektů by měl provádět vyhledávání názvů v globálním oboru názvů, nikoli obor názvů relace, kde vyhledávání pochází.
Stáhnout Regmon v4.24 na adrese http://www.sysinternals.com/regmon.htm.
Stáhnout Filemon v4.28 na adrese http://www.sysinternals.com/filemon.htm.
AUTORUNS V1.0
Pokud máte typickou konfiguraci, pokaždé, když spustíte systém a přihlásíte se k různým komponentám, jako je Průzkumník, se podíváte do nejasných klíčů registru a složek a automaticky spustíte programy, na které se odkazuje. David Solomon představuje seznam všech umístění, kde jsou automaticky spouštěné soubory uvedeny v jeho semináři "Windows 2000 Internals" (http://www.solsem.com)a Bryce Cogswell získal seznam a napsal AutoRuns, program, který umožňuje zobrazit jejich obsah. Téměř jistě budete překvapeni skrytými programy, které běží bez vašich znalostí.
Stáhnout AutoRuns v1.0 na adrese http://www.sysinternals.com/misc.htm.
HANDLEEX V2.23
Nejnovější verze HandleEx přidává řadu nových vylepšení použitelnosti uživatelského rozhraní, jako je možnost ctrl-tab mezi horním a dolním zobrazením. Důležitější však je, že HandleEx se nyní integruje s rozhraním editoru zabezpečení Win2K, ukazuje, jaké soubory mapované paměti má proces otevřený, a zobrazí udělenou přístupovou masku pro otevřené popisovače.
Když přepnete HandleEx do zobrazení založeného na popisovači, zobrazí soubory, které proces otevřel prostřednictvím popisovačů. V zobrazení DLL HandleEx zobrazuje soubory, které proces načetl jako moduly, a s přidáním podpory souborů mapovaných do paměti HandleEx zobrazí seznam souborů, které proces mapoval prostřednictvím rozhraní API souborů mapovaných paměti Win32. Vzhledem k tomu, že WinNT a Win2K nedovolí odstranit soubory, které procesy mapovaly, podpora souborů mapovaných pomocí paměti HandleEx vám pomůže určit, jaký proces vám brání v odstranění souboru z důvodu nevyřízených mapování.
Stáhnout HandleEx v2.23 at http://www.sysinternals.com/handleex.htm.
NT 4 ACL EDITOR
Když mluvíme o editorech zabezpečení, Microsoft dokumentuje nové rozhraní API editoru zabezpečení Win2K v nejnovějších verzích sady SDK platformy. Rozhraní API editorů NT 4 však byla vždy nezdokumentována a zůstávají tímto způsobem. Editory NT 4 jsou ty, se kterými pracujete při úpravě oprávnění klíče registru v oprávněních k souborům Regedt32 a NTFS v Průzkumníku.
Zjistil jsem rozhraní editoru zabezpečení NT 4, když jsem do našeho nástroje WinObj přidal možnosti úprav zabezpečení objektu a použil stejné rozhraní k přidání úprav zabezpečení handleEx. Nakonec jsem se rozhodl publikovat dokumentaci, abyste mohli do verzí NT 4 vlastních aplikací přidat nativní funkce editoru zabezpečení.
Získejte dokumentaci k editoru seznamu ACL NT 4 na adrese http://www.sysinternals.com/acledit.htm.
Stáhnout WinObj na adrese http://www.sysinternals.com/winobj.htm.
TRIČKA SYSINTERNALS
Pokud se vám líbí technické informace a nástroje, které získáte v SysInternals, ukažte svět nosit SysInternals tričko. Trička jsou 100% bavlněná Hanes Beef-T, jsou vytištěny v výrazných barvách na přední i zadní straně a stojí pouze 14,95 USD. Kromě toho, $ 5 z každého prodeje jde do americké rakoviny společnost.
Zobrazit a objednat si trička SysInternals na adrese http://www.sysinternals.com/tshirt.htm.
VÍCE SYSINTERNALS AT WWW.MICROSOFT.COM
Jsem hrdý na to, že počet článků znalostní báze Microsoft Knowledge Base, které odkazují na uživatele nástroje SysInternals, stále roste. Tady je seznam nedávných přidání, které jsem sledoval.
Q243583 PRB: Mib.bin způsobí selhání instalace sady Visual Studio http://support.microsoft.com/support/kb/articles/Q243/5/83.ASP
Tento článek doporučuje použití Filemon ke sledování chyb instalace sady Visual Studio.Q242131 HOWTO: Zobrazení seznamu procesů, které mají otevřené soubory http://support.microsoft.com/support/kb/articles/Q242/1/31.ASP
Microsoft odkazuje uživatele na HandleEx jako nástroj, který ukazuje, jaké soubory procesy mají otevřené.Q232060 POSTUPY: Průvodce odstraňováním potíží s nastavením MDAC http://support.microsoft.com/support/kb/articles/q232/0/60.asp
DllView a HandleEx získat spotlight v tomto článku, který dává uživatelům pokyn, aby pomocí nástrojů vyhledali procesy, které mají knihovny DLL komponent Microsoft Data Accessu, aby je uživatel mohl ukončit před přeinstalací MDAC.Q245068 ERRMSG: Přístup byl odepřen. Nemáte oprávnění nebo se soubor používá http://support.microsoft.com/support/kb/articles/q245/0/68.asp?lng=eng& sa=allkb
NtHandle získá odkaz znovu v tomto článku, který vám řekne, jak určit, který proces se používá, když dojde k chybě odstranění.Q247957 SAMPLE: Řešení problémů s kompatibilitou knihoven DLL pomocí DUPS.EXE http://support.microsoft.com/support/kb/articles/q247/9/57.asp
Tento článek odkazuje na ListDLLs, DllView a HandleEx jako nástroje, které umožňují sledovat problémy s verzí knihovny DLL.
Nejen, že SysInternals byl uveden ve všech těchto nových článcích KB, Rick Anderson, autor dups utility prezentovaný v posledním článku KB, odkazuje ListDLLs v jeho článku MSDN News, "Konec knihovny DLL Hell". Tento článek najdete na webu Microsoft: http://www.msdn.microsoft.com/isapi/msdnlib.idc?theURL=/library/techart/DLLdanger1.htm. ListDLLs obdržel v důsledku této výzvy, abych ji portoval do Systému Windows 9x, takže verze 2.21 funguje ve Windows 9x, systém Windows NT a Windows 2000.
Stáhnout ListDLLs v2.21 na adrese http://www.sysinternals.com/listdlls.htm.
SLOUPCE INTERNÍCH DAT Z BŘEZNA/DUBNA
Podívejte se na březnové a dubnové problémy časopisu Windows 2000 Magazine pro můj dvoudílný sloupec "Interní" na systém Windows NT a windows 2000 správy úložiště. V první části série popisuji dělení na disku NT 4, pokročilou konfiguraci svazku, přiřazení písmen jednotky a architekturu úložiště ovladačů zařízení.
V části 2 se zabývám změnami úložiště ve Win2K, včetně nových ovladačů zařízení pro správu úložiště, dynamického dělení disku, podpory pokročilých svazků, které nevyžadují restartování pro rekonfiguraci, a mechanismy přiřazení písmen jednotek win2K.
INTERNÍ INFORMACE
BODY REARSE
Z nějakého důvodu se lidé vždy těší na triky systému souborů a Systém Windows 2000 obsahuje několik nových. Před Windows 2000 všechny systémy souborů Společnosti Microsoft nemají funkci známou pro uživatele systému UNIX: symbolický odkaz. Symbolické odkazy umožňují vytvořit soubor nebo adresář, který odkazuje na jiný soubor nebo adresář někde jinde v oboru názvů systému souborů. Když aplikace přistupuje k odkazu, ve skutečnosti přistupuje k cíli odkazu. Pokud například odkaz C:\drivers
odkazuje na adresář C:\winnt\system32\drivers
, odkaz na název C:\drivers\ntfs.sys
souboru se přeloží na C:\winnt\system32\drivers\ntfs.sys
.
Revize SYSTÉMU SOUBORŮ NTFS, která je součástí systému Windows 2000, podporuje mechanismus označovaný jako spojovací body. Spojovací bod je blok dat přidružených k souboru nebo adresáři, který obsahuje "značku" a informace definované ovladačem zodpovědným za správu spojovacích bodů s touto značkou. Microsoft definuje několik předdefinovaných značek, včetně značek spojovacích a přípojných bodů. Když ntfs narazí na spojovací bod při vyhledávání názvu souboru, přeruší vyhledávání a vrátí STATUS_REPARSE
kód volajícímu. Ovladače filtru systému souborů a V/V Manager sledují kódy rearse, které na jejich značku a reagují jedním z několika způsobů. Hierarchické body správy úložiště (HSM) označují soubory, které subsystém HSM přesunul do vzdáleného úložiště (jako je páska), ovladač filtru vzdáleného úložiště (RsFilter.sys), například transparentně načte data souboru ze vzdáleného úložiště, odebere spojovací bod a umožní vyhledávání souboru zopakovat.
Ovladač filtru může také změnit název souboru, který se otevírá. Značky přípojného bodu představují přípojné body svazku a umožňují spojit svazky z jejich názvových prostorů. Proto můžete připojit svazek obsahující dokumenty projektu do \projects
adresáře jednotky C:
. Tímto způsobem uspořádáte data systému souborů a umožníte se vyhnout použití písmen jednotek ve stylu DOS.
Spojení se podobají přípojným bodům, ale místo propojení adresáře se svazkem propojí adresáře s jinými adresáři. Podporují symbolický odkaz NTFS. V tuto chvíli vás pravděpodobně zajímá, proč Microsoft nezahrnoval symbolické odkazy založené na souborech. Odpovědí je, že symbolické odkazy by způsobily havárii s existujícími aplikacemi Win32.
I když existuje mnoho typických chování aplikací, které by způsobovaly neočekávané výsledky při práci se soubory, které jsou opravdu symbolické odkazy, odstranění symbolického odkazu pomocí programu bez upozornění na odkaz je jednoduchý příklad. Zvažte soubor uložený v centrálním umístění, na které odkazuje několik symbolických odkazů. Uživatel, který odstraní některý z odkazů, pravděpodobně hodlá pouze odstranit odkaz, nikoli samotný soubor. Pokud ale program nezná symbolické odkazy, nezjistí, že soubor je opravdu odkaz a vyzve vás k požadovanému chování. Problémy se stanou obtížnější, když aplikace vytvoří soubory, které souvisejí s odkazem, by měly být související soubory uloženy v adresáři, kde je cíl odkazu umístěn nebo v adresáři, kde se nachází symbolický odkaz?
Microsoft se setkal s obtížným problémem a jsem si jistý, že existují aplikace, které provádějí ještě složitější manipulaci se soubory, které by se přerušily, i když byste mohli najít práci na problémech, které jsem zmínil. Z tohoto důvodu si myslím, že je nepravděpodobné, že bychom někdy viděli symbolické odkazy založené na souborech ve Windows.
TABULKA ÚCHYTŮ JÁDRA
Správce objektů Win2K zavedl nový typ tabulky popisovačů, který zlepšuje výkon určitých typů ovladačů zařízení. Některé ovladače musí otevřít popisovače systémovým objektům, když jsou spuštěné v kontextu zabezpečení uživatelského procesu. Ovladače zařízení můžou při otevírání objektů obejít bezpečnostní kontroly, takže musí podniknout kroky, aby zabránily bezpečnostnímu otvoru, který vede k vytvoření popisovače citlivého objektu v tabulce popisovačů neprivilegovaného procesu. Ovladače NT 4, které brání problémům se zabezpečením, musí buď zařazení pracovních položek do pracovních vláken spuštěných v kontextu systémového procesu, nebo pomocí KeAttachProcess
rozhraní API přepnout do tabulky popisovače a adresního prostoru procesu systému. Obě tyto alternativy můžou snížit výkon, zejména pokud je ovladač musí provádět často.
Řešení tohoto problému win2K přichází ve formě nového příznaku, který ovladač může předat OBJECT_ATTRIBUTES
strukturu při otevření objektu a získání popisovače. Příznak není zdokumentovaný v DDK, ale je definován v NTDEF. Hlavičkový soubor H jako OBJ_KERNEL_HANDLE
. Když správce objektů otevřel zadaný objekt a vytváří popisovač pro návrat do volajícího, zkontroluje, jestli tento příznak existuje. Pokud ano, vytvoří popisovač v tabulce popisovačů s názvem ObpKernelHandleTable místo tabulky popisovačů aktuálně spuštěného procesu. Obslužné rutiny, které správce objektů vrací volajícím požadující popisovače jádra, mají nastavenou vysokou bitovou sadu, takže všechny popisovače jádra mají hodnoty větší než 0x80000000.
Pokaždé, když se správci objektů předá popisovač, například ve volání ObReferenceObjectByHandle
, kde musí přeložit popisovač na ukazatel na podkladový objekt popisovače, zkontroluje, jestli je odkaz na popisovač odkazem v režimu jádra a jestli je nastavený vysoký bit úchytu. Pro odkazy, které splňují tato kritéria, správce objektů vyhledá popisovač v tabulce popisovačů jádra místo tabulky popisovačů aktuálně spuštěného procesu. Ovladač, který vytváří odkazy na popisovače jádra pro zabezpečené objekty, zabraňuje dosažení výkonu a způsobuje otevírání bezpečnostních otvorů.
JEDEN NEBO VÍCE OVLADAČŮ SE NEDAŘÍ SPUSTIT
Tady je pro vás zajímavý systém Windows NT/2K trivia. Když se během spouštění zobrazí dialogové okno s informací, že "Jeden nebo více ovladačů se nepodařilo spustit", je to Správce řízení služeb (SCM), který určuje a prezentuje dialogové okno.
Jak SCM zjistí, že se ovladač nepodařilo spustit? SCM zkontroluje HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services
klíč registru při inicializaci a hledá ovladače zařízení s počátečními hodnotami, které určují, že se spustí jako spouštěcí nebo systémové ovladače. Když najde položku, otevře obor názvů správce objektů a zjistí, jestli je název ovladače zařízení v adresáři \Drivers. Když se ovladač zařízení úspěšně spustí, správce vstupně-výstupních operací umístí jeho objekt ovladače do \Drivers
adresáře, takže když SCM nemůže najít název, předpokládá se, že ovladač nebyl úspěšně spuštěn. Obsah \Drivers
adresáře můžete zobrazit pomocí WinObj.
Stáhnout WinObj na adrese http://www.sysinternals.com/winobj.htm.
PATENTY SOUVISEJÍCÍ S MICROSOFT NT
Softwarové patenty se v poslední době hodně pozornosti. Zdá se, že americký úřad pro patenty a ochranné známky uděluje patenty dokonce i nejzjevnějším "inovacím", a společnosti využívají výhod politiky svobodného patentování k uzamčení klíčových technologií pro jejich výhradní použití. Microsoft není cizí v patentové hře, ale to, co mnoho lidí neví, je, že Microsoft vlastní patenty na několik klíčových myšlenek, které vyvinuly s systém Windows NT. Tady je seznam patentů souvisejících s jádrem, které jsem objevil na webu IBM Patent Server:
"Systém pro provádění asynchronních operací se soubory požadovanými spustitelnými vlákny zpracováním zpráv dokončení s jiným vláknem fronty a kontrolou dokončení spuštěním vláken"
http://www.patents.ibm.com/details?pn=US05758184__Tento patent se zabývá základními myšlenkami pokročilého mechanismu synchronizace NT označovaného jako porty pro doplňování. Porty dokončení umožňují procesům efektivně čekat na vstupně-výstupní operace v mnoha různých objektech a používat podporu v plánovači systém Windows NT/2000, aby vlákna přidružená k portu dokončení efektivně využívala multiprocesor.
Další informace o portech dokončení najdete v tématu http://www.sysinternals.com/comport.htm.
"Zosobnění klientských procesů v počítačovém operačním systému založeném na objektu"
http://www.patents.ibm.com/details?&p n10=US05187790Zosobnění je výkonná funkce modelu zabezpečení systém Windows NT/2000, která umožňuje vláknu serveru dočasně přijmout kontext zabezpečení klientského vlákna, když server provádí aktivity jménem klienta. Díky tomu může server snadno využívat model zabezpečení systém Windows NT/2000, když přistupuje k chráněným objektům pro klienta. Je to chytrý, pokud není poněkud zřejmý přístup k distribuovanému zabezpečení a Microsoft na něm vlastní patent.
"Systém a metoda vytvoření objektu v operačním systému počítače založeném na objektech"
http://www.patents.ibm.com/details?&p n10=US05057996"Podmíněný objekt, který vytváří systém s různými ukazateli objektu pro přístup k sadě objektů datové struktury"
http://www.patents.ibm.com/details?&p n10=US05129083"Systém a metoda přenosu kontejneru objektů v operačním systému počítače založeném na objektech"
http://www.patents.ibm.com/details?&p n10=US05129084"Dočasný systém zpracování objektů a metoda v operačním systému počítače založeném na objektech"
http://www.patents.ibm.com/details?&p n10=US05136712"Objekty, které přenášejí systém a metodu v operačním systému založeném na objektech"
http://www.patents.ibm.com/details?&p n10=US05297283Správce objektů systém Windows NT/2000 implementuje obor názvů, který není na rozdíl od oboru názvů VFS (Virtual File System) v implementacích systému UNIX. Některé patenty, které Microsoft získal na správci objektů, ve skutečnosti vypadají jako patenty na objektově orientovaném designu a několik vypadá, jako by se překrývaly. Nejsem však patentový advokát, takže to může být jen můj nesvícený pohled.
Pokud se podíváte na patenty, najdete názvy několika základních systém Windows NT vývojářů jádra, včetně David Cutler. Zajímavé je, že některé patenty byly získány pro digitální vybavení Corp maynard, MA vývojáři NT, když pracovali na VMS, ale patentový proces trval tak dlouho, že patenty jsou uvedeny jako bydliště v Redmond, WA.
CO SE CHYSTÁ
TDIMON
Chtěli jste někdy sledovat aktivitu sítě TCP a UDP v reálném čase a vědět, jaké procesy aktivitu provádějí? Mějte přehled o nástroji TdiMon, který je výkonným doplňkem sady nástrojů pro monitorování SysInternals.
Děkujeme vám za přečtení bulletinu Internals Systems.
Publikováno v pondělí, 27. března 2000 19:09 od ottoh
[Archiv bulletinů ^] [< Svazek 2, číslo 1] [Svazek 2, číslo 3 >]