[Bülten Arşivi ^] [< Birim 2, Sayı 1] [Birim 2, Sayı 3 >]
Systems Internals Bülten Cilt 2, Sayı 2
http://www.sysinternals.com
Telif Hakkı © 2000 Mark Russinovich
27 Mart 2000 - Bu sorunda:
EDİTORYAL
- David Solomon ile birlikte "Inside Windows 2000, 3rd Ed" (Windows 2000, 3. Ed'in içinde) birlikte yazmayı işaretleyin.
SYSINTERNALS'DEKI YENILIKLER
- PsKill v1.03, PsList v1.12
- Birleşim v1.0
- ElogList v1.0
- NTFrob v1.6a
- GetSid v1.1
- HandleEx v2.23
- Regmon v4.24, Filemon v4.28
- Otomatik Çalıştırma v1.0
- NT 4. ACL Düzenleyicisi
- SysInternals Tişörtleri
- microsoft.com'da daha fazla SysInternals
- Mart/Nisan İç Sütunları
- Pek De Yeni Olmayan Şeyler
İç BİlGİLER
- Yeniden ayrıştırma noktaları
- Çekirdek Tutamacı Tablosu
- Bir veya daha fazla Sürücü Başlatılamadı
- Microsoft NT ile İlgili Patentler
YAKLAŞANLAR
- TdiMon
SPONSOR: WINTERNALS SOFTWARE
Systems Internals Newsletter, Winternals Software sponsorluğunda, web'de http://www.winternals.com. Winternals Software, Windows NT/2K için gelişmiş sistem araçlarının önde gelen geliştiricisi ve sağlayıcısıdır. Winternals Software ürünleri Windows NT 4.0 için FAT32, ERD Commander Professional Edition (Windows NT için gelişmiş önyükleme diski özelliği) ve Uzaktan Kurtarma'yı içerir.
Winternals Software'in NTFSDOS Professional ve Win98 için NTFS, DOS, Windows 95 ve Windows 98'den NTFS sürücülerinize tam okuma ve yazma erişimi sağlar. NTFSDOS Pro, Windows NT/2K'ye tek disketli "önyükleme diski" özelliği getirir. NTFSDOS Pro ile bir DOS önyükleme disketinden buggy sürücülerini silebilir, dosyaları yenileyebilir ve NTFS sürücülerinde genel dosya sistemi bakımı gerçekleştirebilirsiniz. Win98 için NTFS, Windows 95 ve Windows 98'den NTFS sürücülerine saydam erişim sağlar. Çift önyükleme ortamınızdaki NTFS sürücülerinde NT ve Win9x arasında uygulamaları ve dosyaları kolayca paylaşın. Her iki yardımcı program da yerleşik NTFS Chkdsk özelliğine sahiptir. ADRESINDE NTFSDOS Pro'nun ücretsiz salt okunur sürümü ve http://www.sysinternals.com/ntfspro.htm Win98 için NTFS'nin ücretsiz salt okunur sürümü http://www.sysinternals.com/ntfs98.htm.
Herkese merhaba,
Systems Internals bültenine hoş geldiniz. Bültenin şu anda 20.000 abonesi var. Listenin büyümesi son iki ay içinde 6.000'den fazla yeni abone ile muazzam bir büyüme oldu! Lütfen bülteni arkadaşlarınıza iletmeye devam edin.
Dave Solomon ile birlikte "Inside Windows 2000, 3rd Edition" (Windows 2000, 3. Sürüm İçinde) birlikte çalıştığımı duyurmaktan mutluluk duyuyorum (http://www.solsem.com). Windows NT iç işlevlerine ilgi duyuyorsanız, Dave'in "Inside Windows NT, 2nd Edition" (Microsoft Press) makalesini neredeyse kesinlikle okumuşsunuz demektir. Windows 2000 sürümü, NT çekirdeğinde ve çevresindeki bileşenlerde bazı büyük ve küçük değişiklikler getirir ve bu değişiklikler Dave'in kitabının bir düzeltme gerektirdiği anlamına gelir.
Birçok anlamda, Microsoft'un NT 5.0 Beta 1 ile Windows 2000 derleme 2195 arasındaki gelişiminde Windows 2000'e yaptığı değişikliklere yetiştik. Aslında bir süredir kendi "Windows NT Internals" kitabımı yazmak için çalışıyordum, ancak bu kadar kaliteli bir kitabın ardı üzerinde Dave ile işbirliği yapma ve Microsoft'un Windows 2000 Internals'te resmi görünümünü yazmaya yardımcı olma fırsatı geldiğinde, bunu geçemedim.
Kitabı birlikte yazma kararımız oldukça yeni bir karardır, bu nedenle son birkaç ayı araştırmamızı, notlarımızı ve makalelerimizi birleştirerek geçirdik. Tamamen ilgisiz nedenlerden dolayı, Connecticut'ın uzak bir köşesinde birbirimizden sadece yirmi dakika uzakta yaşıyoruz. Yakınlığımız, birbirimizin evlerinde çalışarak alternatif günler geçirmemizi sağladı ve son zamanlarda windows 2000'in iç çalışmalarıyla ilgili belirsiz ayrıntıları araştırıp tartışarak birçok geç saat geçirdik. Dave ve benim onun evinde çalışırken çekilmiş bir resmi görebilirsiniz. http://www.sysinternals.com/inspic.jpg.
Ortaklığımızın olağan dışı bir yönü, Dave'in Windows 2000 kaynak koduna tam erişime sahip olmasıdır, ancak bunu yapmam (Cihaz Sürücü Seti ve Yüklenebilir Dosya Sistemi Seti'nde herkese açık olan bu kod dışında hiçbir Windows kaynak koduna erişimim olmadı). Dave, kaynak kod dosyalarında gezinerek her şeyi anlarken ben özel ayrıştırıcım tarafından üretilen dökümleri analiz ediyorum ve NuMega'nın SoftICE çekirdek modu hata ayıklayıcısıyla canlı sistemlerde Windows 2000'in bağırsaklarını keşfediyorum. Sonuç olarak, her birimiz tabloya benzersiz perspektifler getiriyoruz ve zorlu soruları birlikte yanıtlamak için birden fazla kez ilgili kaynaklarımızı birlikte uyguladık.
Orijinal kitabı Yalnızca Windows 2000 değişikliklerini yansıtacak şekilde güncelleştirmiyor, aynı zamanda birkaç yeni bölüm de dahil olmak üzere yepyeni içeriğin %30'undan fazlasını ekliyoruz. Yeni kitapta sunduğumuz konular önyükleme, kapatma, kilitlenmeler, depolama yönetimi, hizmet iç bileşenleri, Kayıt defteri iç bileşenleri ve WMI'dır. Bu düzeltme, SysInternals Web sitesinin bir ek görüntüsünü ve kitap için özel olarak yazdığım yarım düzine aracı içeren bir CD-ROM ile birlikte gelir. Araçlardan biri olan LiveKd, i386kd çekirdek hata ayıklayıcısını canlı bir sistemde çalıştırmanıza olanak tanır ve bu sayede seri kablolar ve birden çok bilgisayar zahmeti olmadan çekirdek iç bileşenlerini kolayca keşfedebilirsiniz. Şüphesiz bu kitap, öncülünün sağlam temeline önemli teknik bilgiler ve içgörüler ekler.
Kitap ne zaman hazır olacak? Dave ve ben, Windows 2000 çekirdek geliştiricilerinden son teknik inceleme yorumlarını almak için 4 Nisan haftası Redmond'a gidiyoruz ve Microsoft Press kitabın Temmuz ayında raflarda olacağını söylüyor. Tabii ki haber bülteninde sizi haberdar edeceğim.
Teşekkürler!
-İşaret
SISTEM IÇLERINDEKI YENILIKLER
PSKILL V1.03, PSLIST V1.12
PsList, yerel veya uzak bir sistemin etkin işlemleri hakkında ayrıntılı bilgileri görüntülemenize olanak tanıyan bir yardımcı programdır ve PsKill işlemleri yerel veya uzak bir sistemde sonlandırmanıza olanak tanır. Bu yardımcı programlar benzer komut satırı söz dizimine sahiptir ve burada "\\computer
" biçiminde isteğe bağlı bir bilgisayar adı belirtebilirsiniz. Bilgisayar adına sahip bir kullanıcı adı eklerseniz, araçlar belirtilen bilgisayarda araçları çalıştırdığınızdan farklı bir kullanıcı hesabında oturum açmanızı sağlar. Bu son sürümler, parolayı başkalarının önünde çalıştırdığınız ve parolaları kullanıma sunmak istemediğiniz ortamlarda girmeniz için alternatif bir yol sunar. Şimdi, seçenek olarak bir bilgisayar hesabı eklerseniz ancak parolayı atlarsanız, sizden parolayı girmenizi ister ve girişinizi ekrana yansıtmaz.
PsKill v1.03 sürümünü şu konumdan indirin: http://www.sysinternals.com/pskill.htm.
PsList v1.12'yi şu konumdan indirin: http://www.sysinternals.com/pslist.htm.
JUNCTION V1.0
Windows'a windows 2000 NTFS birleşimleri biçiminde bir sembolik bağlantı biçimi geldi. Birleşimler dizin sembolik bağlantılarıdır ve Windows 2000 Kaynak Seti bağlantı oluşturmanızı ve silmenizi sağlayan bağlantılı bir araç içerir. Ne yazık ki, temel bir Windows 2000 yüklemesi birleşim oluşturmak için herhangi bir araç içermez ve Platform SDK'sı belgeleri yeniden ayrıştırma noktalarını yeterli şekilde belgelemez. Bu eksiklikler yalnızca birleşimler oluşturmanıza izin veren bir araç olan Junction'ı uygulamama, aynı zamanda dosyaları sorgulamama ve varsa ayrıştırma noktalarındaki bilgileri görüntülememe yol açıyor. Kendi yeniden ayrıştırma noktası araçlarını uygulamak isteyen geliştiricilere yardımcı olmak için tam kaynak kodunu Junction'a gönderdim. Bağlantı noktaları ve Windows 2000'in bunları nasıl uyguladığı hakkında daha fazla bilgi için bültenin devamında yer alan yeniden ayrıştırma noktaları bölümüne bakın.
Tam kaynak kodu içeren Junction v1.0 sürümünü şu konumdan indirin: http://www.sysinternals.com/misc.htm.
ELOGLIST V1.0
Windows 2000 Kaynak Seti, yerel veya uzak bilgisayardaki bir olay günlüğündeki kayıtları döküm etmenizi sağlayan ELogDump adlı bir araç içerir. ELogList, bir bilgisayarın olay günlüklerine aracı çalıştırdığınız hesaptan farklı bir hesaptan erişebilmeniz için isteğe bağlı bir hesap adı ve parola belirtmenize de olanak tanıyan bir ElogDump kopyasıdır. ElogList, toplu iş dosyalarından olay günlüklerinin dökümünü almak veya olay günlüğü kayıtlarını kayıt tutmak veya çözümlemek üzere elektronik tablolara aktarabileceğiniz metin dosyalarına yakalamak için kullanışlıdır.
ElogList v1.0 sürümünü şu konumdan indirin: http://www.sysinternals.com/eloglist.htm.
NTFROB V1.6A
NTFrob, Windows NT zamanlayıcısının iş parçacıklarına atadığını, Sistem denetim masası uygulamasındaki Performans sekmesinin izin verdiğinden daha fazla ön plan ve arka plan kuantumları üzerinde (döner) denetim sağlayan bir uygulamadır. Daha kısa kuantumların kullanılması etkileşimli uygulamaların yanıt hızını artırırken, uzun süre çalışan sunucu iş yükleri için daha uzun kuantumlar daha uygundur. NTFrob, en son sürümü olan sürüm 1.6a ile yeni hizmet paketlerine ayak uydurmaya devam ediyor. Sürüm 1.6a, Nt 4.0'ın Service Pack 6a'ya kadar yayımlanan tüm sürümlerinde hizmet paketi 6 dışında çalışır (Microsoft, önemli bir hata nedeniyle hizmet paketi 6'nın yayımlanmasından kısa bir süre sonra geri çekmiştir). Win2K üzerinde çalışan bir NTFrob sürümü yakında kullanıma sunulacaktır.
NTFrob v1.6a sürümünü şu konumdan indirin: http://www.sysinternals.com/ntfrob.htm.
GETSID V1.1
Kopyalamanın dağıtım yüklerini kolaylaştırdığı bir ortam yönetiyorsanız, büyük olasılıkla GetSid ile ilgilenmeniz gerekir. GetSid, aynı ada sahip Windows NT Resource Kit aracı gibidir, ancak SysInternals GetSid yalnızca kullanıcı hesapları için değil bilgisayarlar için de SID almanıza olanak tanır. GetSid, herhangi bir istemci yazılımı yüklemenize gerek kalmadan ağlar arasında çalıştığından, ağınızdaki bilgisayarların kopyalamaya eşlik eden yinelenen SID sorunundan muzdarip olmadığını doğrulamak için GetSid'i kolayca kullanabilirsiniz.
GetSid v1.1'i şu konumdan indirin: http://www.sysinternals.com/misc.htm.
Yinelenen SID sorunu hakkında bilgi edinmek için http://www.sysinternals.com/newsid.htm.
REGMON V4.24, FILEMON V4.28
Dosya veya Kayıt Defteri etkinliği gerçekleştiren işlemlerin adlarını görüntülemeye ek olarak, Regmon ve Filemon'da yapılan bu güncelleştirmeler size işlem tanımlayıcılarını da gösterir. Bu geliştirme, dosya ve Kayıt Defteri erişimlerini aynı ada sahip birden çok işlem arasında ayırt etmeye yardımcı olur.
Bu sürümlerde sunulan başka bir geliştirme, uzak Win2K terminal hizmetleri oturumlarından (konsolun aksine) Regmon ve Filemon çalıştırmanızı sağlar. Uygulamalar bu desteği elde eder çünkü GUI'leri işletim sistemi sürüm numarasını denetler ve Win2K üzerinde çalışıyorsa, sürücü bileşenlerinin cihaz nesnesini açarken CreateFile çağrısında kullandıkları adın "\\.\Global\
" ön ekini belirtin. Terminal hizmetleri ortamında, cihaz sürücülerinin nesnelerine atadığı adlar, varsayılan olarak uzak oturumlarda görünmeyen bir ad alanı olan genel (konsol) ad alanında depolanır. Uzak oturumların her birinin yerel ad alanı vardır. "Genel" ön eki Win2K nesne yöneticisine, nesne yöneticisinin aramanın kaynaklandığı oturumun ad alanı yerine genel ad alanında ad aramaları gerçekleştirmesi gerektiğini belirtir.
Regmon v4.24 sürümünü şu konumdan indirin: http://www.sysinternals.com/regmon.htm.
Filemon v4.28 sürümünü şu konumdan indirin: http://www.sysinternals.com/filemon.htm.
AUTORUNS V1.0
Tipik bir yapılandırmanız varsa, sisteminizi her önyükleyip Gezgin gibi çeşitli bileşenlerde oturum açtığınızda, kayıt defteri anahtarlarını ve klasörlerini gizler ve bunlara başvurulan programları otomatik olarak çalıştırırsınız. David Solomon, "Windows 2000 Internals" seminerinde (http://www.solsem.com)ve Bryce Cogswell listeyi alıp içeriklerini görüntülemenizi sağlayan AutoRuns adlı programda) otomatik çalıştırma dosyalarının belirtildiği tüm konumların listesini sunar. Bilginiz olmadan çalışan gizli programlara neredeyse kesinlikle şaşıracaksınız.
AutoRuns v1.0 sürümünü şu konumdan indirin: http://www.sysinternals.com/misc.htm.
HANDLEEX V2.23
HandleEx'in en son sürümü, üst ve alt görünümleri arasında ctrl-sekme özelliği gibi bir dizi yeni kullanıcı arabirimi kullanılabilirlik iyileştirmesi ekler. Öte yandan HandleEx artık Win2K güvenlik düzenleyicisi iletişim kutusu arabirimiyle tümleştirilmiştir, bir işlemin hangi bellek eşlemeli dosyaları açtığını gösterir ve açık tanıtıcılar için verilen erişim maskesini görüntüler.
HandleEx'i tanıtıcı tabanlı görünümüne geçirdiğinizde, bir işlemin tanıtıcılar aracılığıyla açtığı dosyaları gösterir. DLL görünümünde HandleEx, bir işlemin modül olarak yüklediği dosyaları gösterir ve bellekle eşlenen dosya desteğinin eklenmesiyle HandleEx, win32 bellekle eşlenen dosya API'leri aracılığıyla bir işlemin eşlediği dosyaları listeler. WinNT ve Win2K, işlemlerin eşlendiği dosyaları silmenize izin vermediğinden HandleEx'in bellekle eşlenen dosya desteği, bekleyen eşleme nedeniyle bir dosyayı silmenizi engelleyen işlemi belirlemenize yardımcı olur.
HandleEx v2.23 sürümünü şu adreste indirin: http://www.sysinternals.com/handleex.htm.
NT 4 ACL DÜZENLEYICISI
Güvenlik düzenleyicilerinden bahsetmişken Microsoft, Platform SDK'sının en son sürümlerindeki yeni Win2K güvenlik düzenleyicisi iletişim kutusu API'lerini belgelemektedir. Ancak, NT 4 düzenleyicilerinin API'leri her zaman belgelenmemiştir ve bu şekilde kalırlar. NT 4 düzenleyicileri, Regedt32'de Kayıt defteri anahtarı izinlerini ve Explorer'daki NTFS dosya izinlerini düzenlerken birlikte çalıştığınız düzenleyicilerdir.
WinObj aracımıza nesne güvenliği düzenleme özelliği eklediğimde NT 4 güvenlik düzenleyicisi arabirimlerini belirledim ve HandleEx'e güvenlik düzenlemesi eklemek için aynı arabirimleri kullandım. Kendi uygulamalarınızın NT 4 sürümlerine yerel güvenlik düzenleyicisi işlevselliği ekleyebilmeniz için belgelerimi yayımlamaya karar verdim.
NT 4 ACL Düzenleyicisi belgelerini şu konumdan alın: http://www.sysinternals.com/acledit.htm.
WinObj'ı şu konumdan indirin: http://www.sysinternals.com/winobj.htm.
SYSINTERNALS TIŞÖRTLERI
SysInternals'ta edindiğiniz teknik bilgileri ve yardımcı programları beğendiyseniz, SysInternals tişörtü giyerek dünyayı gösterin. Tişörtler %100 pamuklu Hanes Beef-T'lerdir, hem ön hem de arka renklerde çarpıcı renklerle yazdırılır ve yalnızca 14,95 ABD dolarıdır. Ayrıca, her satışın 5 doları Amerikan Kanser Derneği'ne gidiyor.
SysInternals tişörtlerini görüntüleme ve sipariş etme http://www.sysinternals.com/tshirt.htm.
WWW.MICROSOFT.COM'DA DAHA FAZLA SYSINTERNALS
Kullanıcıları SysInternals araçlarına yönlendiren Microsoft Bilgi Bankası makalelerinin sayısının artmaya devam ettiğini gururla söylüyorum. İzlediğim son eklemelerin listesi aşağıdadır.
Q243583 PRB: Mib.bin Visual Studio Kurulumunun Başarısız Olmasına Neden Oluyor http://support.microsoft.com/support/kb/articles/Q243/5/83.ASP
Bu makalede, Visual Studio kurulum hatalarını izlemek için Filemon kullanılması önerilir.Q242131 NASIL YAPıLıR: Açık Dosyaları Olan İşlemlerin Listesini Görüntüleme http://support.microsoft.com/support/kb/articles/Q242/1/31.ASP
Microsoft, hangi dosya işlemlerinin açık olduğunu gösteren bir yardımcı program olarak kullanıcıları HandleEx'e işaret eder.Q232060 NASıL YAPıLıR: MDAC Kurulumu Sorun Giderme Kılavuzu http://support.microsoft.com/support/kb/articles/q232/0/60.asp
DLLView ve HandleEx, kullanıcıların MDAC'yi yeniden yüklemeden önce bunları sonlandırabilmesi için Microsoft Veri Erişim Bileşeni DLL'lerine sahip işlemleri bulmak için araçları kullanmalarını sağlayan bu makalede öne çıkar.Q245068 ERRMSG: Erişim Reddedildi. İzinleriniz Yok veya Dosya Kullanımda http://support.microsoft.com/support/kb/articles/q245/0/68.asp?lng=eng& sa=allkb
NtHandle bu makalede başvuruyu yeniden alır ve silme hatası aldığınızda hangi işlemin kullanımda olduğunu nasıl belirleyebileceğinizi bildirir.Q247957 ÖRNEK: DLL Uyumluluk Sorunlarını Çözmek için DUPS.EXE Kullanma http://support.microsoft.com/support/kb/articles/q247/9/57.asp
Bu makalede, DLL sürüm sorunlarını izlemenizi sağlayan araçlar olarak ListDLL'ler, DllView ve HandleEx'e başvurur.
SysInternals tüm bu yeni KB makalelerinde öne çıkarılmamıştır, son KB makalesinde sunulan DUPS yardımcı programının yazarı Rick Anderson, MSDN Haber makalesinde "DLL Cehenneminin Sonu" başlıklı ListDLL'lere başvurur. Makaleyi Microsoft'ta şu satırda görüntüleyebilirsiniz: http://www.msdn.microsoft.com/isapi/msdnlib.idc?theURL=/library/techart/DLLdanger1.htm. Bunun sonucunda alınan listDLL'ler windows 9x'e taşımamı istemde bulundu, bu nedenle sürüm 2.21 Windows 9x, Windows NT ve Windows 2000'de çalışıyor.
ListDLLs v2.21'i şu konumdan indirin: http://www.sysinternals.com/listdlls.htm.
MART/NISAN IÇ SÜTUNLARı
Windows NT ve Windows 2000 depolama yönetimindeki iki bölümden oluşan "Internals" sütunum için Windows 2000 Magazine'in Mart ve Nisan sorunlarına göz atın. Serinin ilk bölümünde NT 4 disk bölümleme, gelişmiş birim yapılandırması, sürücü harfi ataması ve cihaz sürücüsü depolama mimarisini açıkliyorum.
Bölüm 2'de Win2K'de mevcut depolama değişikliklerini kapsar; bunlar arasında yeni depolama yönetimi cihaz sürücüleri, dinamik disk bölümleme, yeniden yapılandırma için yeniden başlatma gerektirmeyen gelişmiş birimler desteği ve Win2K'nin sürücü harfi atama mekanizmaları yer alır.
İç BİlGİLER
NOKTALARı YENIDEN AYRıŞTıRMA
Bazı nedenlerden dolayı insanlar dosya sistemi püf noktaları konusunda her zaman heyecanlansa da Windows 2000'de birkaç yeni numara vardır. Windows 2000'in öncesinde, tüm Microsoft dosya sistemlerinde UNIX kullanıcılarına tanıdık bir özellik yoktur: sembolik bağlantı. Sembolik bağlantılar, dosya sistemi ad alanında başka bir yerde başka bir dosyaya veya dizine başvuran bir dosya veya dizin oluşturmanıza olanak tanır. Bir uygulama bir bağlantıya eriştiğinde, bağlantının hedefini gerçekten erişir. Örneğin, bağlantı C:\drivers
dizinine C:\winnt\system32\drivers
başvuruyorsa, dosya adına C:\drivers\ntfs.sys
yapılan başvuru olarak çözümlenmiştir C:\winnt\system32\drivers\ntfs.sys
.
Windows 2000'de bulunan NTFS düzeltmesi olan NTFS sürüm 5, yeniden ayrıştırma noktaları adlı bir mekanizmayı destekler. Yeniden ayrıştırma noktası, "etiket" içeren bir dosya veya dizinle ilişkilendirilmiş bir veri bloğudur ve bu etikete sahip yeniden ayrıştırma noktalarını yönetmekle sorumlu sürücü tarafından tanımlanan bilgilerdir. Microsoft, birleşim noktası ve bağlama noktası etiketleri de dahil olmak üzere çeşitli yerleşik etiketler tanımlar. NTFS bir dosya adı ararken yeniden ayrıştırma noktasıyla karşılaştığında aramayı durdurur ve çağırana bir STATUS_REPARSE
kod döndürür. Dosya sistemi filtre sürücüleri ve G/Ç Yöneticisi, etiketlerini yeniden ayrıştıran kodları izler ve çeşitli yollardan biriyle tepki gösterir. Hiyerarşik Depolama Yönetimi (HSM) yeniden ayrıştırma noktaları, HSM alt sisteminin uzak depolamaya (bant gibi), Uzak Depolama filtre sürücüsünün (RsFilter.sys) dosya verilerini saydam bir şekilde uzak depolama alanından çektiğine, yeniden ayrıştırma noktasını kaldırmasına ve dosya arama yeniden denemesine izin veren dosyaları belirtir.
Filtre sürücüsü, açılan dosyanın adını da değiştirebilir. Bağlama noktası etiketleri birim bağlama noktalarını temsil eder ve birimleri ad alanlarının içinden birbirine bağlamanıza olanak sağlar. Böylece, proje belgelerinizi içeren bir birimi sürücünüzün dizinine \projects
bağlayabilirsiniz C:
. Bunu yapmak, dosya sistemi verilerinizi düzenler ve DOS stili sürücü harflerini kullanmaktan kaçınmanızı sağlar.
Birleşimler bağlama noktalarına benzer, ancak bir dizini bir birime bağlamak yerine dizinleri diğer dizinlere bağlar. NTFS'nin sembolik bağlantı desteğidir. Bu noktada, Microsoft'un neden dosya tabanlı sembolik bağlantılar içermediğini merak ediyorsunuzdur. Bunun yanıtı, sembolik bağlantıların mevcut Win32 uygulamalarıyla çakışmaya neden olmasıdır.
Gerçekten sembolik bağlantılar olan dosyalarla çalışırken beklenmeyen sonuçlara neden olabilecek birçok tipik uygulama davranışı olsa da, bağlantıdan habersiz bir programla sembolik bağlantıyı silmek basit bir örnektir. Birkaç sembolik bağlantının başvurduğunu merkezi bir konumda depolanan bir dosyayı düşünün. Bağlantılardan birini silmekte olan bir kullanıcı büyük olasılıkla dosyanın kendisini değil, yalnızca bağlantıyı silmeyi hedeflemektedir. Ancak, program sembolik bağlantıların farkında değilse, dosyanın gerçekten bir bağlantı olduğunu algılamaz ve istediğiniz davranışı girmenizi ister. Bir uygulama bağlantı üzerinden başvurduğu dosyayla ilişkili dosyalar oluşturduğunda sorunlar daha ciddi hale gelir. İlgili dosyalar bağlantı hedefinin bulunduğu dizinde veya sembolik bağlantının bulunduğu dizinde depolanmalıdır.
Microsoft zor bir sorunla karşılaştı ve daha da karmaşık dosya işleme gerçekleştiren uygulamalar olduğundan eminim ki, bahsettiğim sorunlara geçici bir çözüm bulsanız bile bozulabilir. Bu nedenle, Windows'ta dosya tabanlı sembolik bağlantılar görme olasılığımız düşük olduğunu düşünüyorum.
ÇEKIRDEK TANıTıCı TABLOSU
Win2K nesne yöneticisi, belirli cihaz sürücüsü türlerinin performansını geliştiren yeni bir tanıtıcı tablosu türü kullanıma sunulmuştur. Bazı sürücülerin kullanıcı işleminin güvenlik bağlamında çalışırken sistem nesnelerinin tanıtıcılarını açması gerekir. Cihaz sürücüleri nesneleri açarken güvenlik denetimlerini atlayabilir, bu nedenle ayrıcalıksız bir işlemin tanıtıcı tablosundaki hassas bir nesneye tanıtıcı oluşturduklarında ortaya çıkacak bir güvenlik deliğini önlemek için gerekli adımları izlemeleri gerekir. Güvenlik sorunlarını önleyen NT 4 sürücülerinin iş öğelerini sistem işlemi bağlamında çalışan iş parçacıklarına kuyruğa almaları veya API'yi kullanarak KeAttachProcess
Sistem işleminin tanıtıcı tablosuna ve adres alanına geçmesi gerekir. Bu alternatiflerin her ikisi de, özellikle de sürücünün bunları sık sık gerçekleştirmesi gerekiyorsa performansı düşürebilir.
Win2K'nin bu soruna çözümü, bir nesneyi açıp tanıtıcıyı alırken sürücünün bir OBJECT_ATTRIBUTES
yapıya geçirebileceği yeni bir bayrak biçiminde gelir. Bayrağı DDK'de belgelenmez, ancak NTDEF'te tanımlanır. H üst bilgi dosyası olarak OBJ_KERNEL_HANDLE
. Nesne yöneticisi belirtilen nesneyi açtığında ve çağırana geri dönmek için bir tanıtıcı oluşturduğunda, bu bayrağın mevcut olup olmadığını denetler. Bu durumda, şu anda yürütülen işlemin tanıtıcı tablosu yerine 'ObpKernelHandleTable adlı bir tanıtıcı tablosunda tanıtıcı oluşturur. Nesne yöneticisinin çağıranlara döndürdüğü tanıtıcılar, çekirdek tanıtıcılarının yüksek bit kümelerine sahip olmasını istediğinden, tüm çekirdek tanıtıcıları 0x80000000'den büyük değerlere sahiptir.
Nesne yöneticisine bir tanıtıcı geçirildiğinde, örneğin bir tanıtıcıyı tanıtıcının temel alınan nesnesine bir işaretçiye çevirmesi gereken bir çağrıda ObReferenceObjectByHandle
, tanıtıcı başvurusunun çekirdek modu başvurusu olup olmadığını ve tanıtıcının yüksek bitinin ayarlanıp ayarlanmadığını denetler. Bu ölçütlerle eşleşen başvurular için nesne yöneticisi, şu anda yürütülen işlemin tanıtıcı tablosu yerine çekirdek tanıtıcı tablosundaki tanıtıcıyı arar. Bu nedenle, güvenli nesneler için çekirdek tanıtıcılarına başvuru yapan bir sürücü, performans isabeti almayı önler ve güvenlik açıklarının açılmasına neden olur.
BIR VEYA DAHA FAZLA SÜRÜCÜ BAŞLATıLAMıYOR
İşte size ilginç bir Windows NT/2K trivia parçası. Önyükleme sırasında "Bir veya daha fazla sürücü başlatılamadı" ifadesini belirten bir iletişim kutusu gördüğünüzde, hem belirlemeyi yapan hem de iletişim kutusunu sunan Hizmet Denetim Yöneticisi (SCM) olur.
SCM bir sürücünün başlatılamadığını nasıl biliyor? SCM, başlatıldığında Kayıt Defteri anahtarını tarar HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services
ve başlatmayı önyükleme veya sistem başlatma sürücüleri olarak belirten Başlangıç değerlerine sahip cihaz sürücülerini arar. Bir girdi bulduğunda nesne yöneticisi ad alanını açar ve cihaz sürücüsünün adının \Drivers dizininde mevcut olup olmadığını arar. Bir cihaz sürücüsü başarıyla başlatıldığında G/Ç Yöneticisi sürücü nesnesini \Drivers
dizine yerleştirir, bu nedenle SCM adı bulamadığından sürücünün başarıyla başlatılmadığını varsayar. WinObj kullanarak dizinin içeriğini \Drivers
görüntüleyebilirsiniz.
WinObj'ı şu konumdan indirin: http://www.sysinternals.com/winobj.htm.
MICROSOFT NT ILE İLGILI PATENTLER
Yazılım patentleri son zamanlarda çok ilgi gördü. Abd Patent ve Ticari Marka Ofisi'nin en belirgin "yeniliklere" bile patentler verdiği görülüyor ve şirketler özel kullanımları için kilit teknolojiyi kilitlemek için liberal patent politikasından yararlanıyor. Microsoft, patent oyununa yabancı değildir, ancak birçok kişinin bilmediği şey, Microsoft'un Windows NT ile geliştirdikleri çeşitli önemli fikirlerin patentlerine sahip olduğudur. IBM'in Patent Sunucusu Web sitesinde ortaya çıkardığım çekirdekle ilgili patentlerin listesi aşağıda verilmiştir:
"Farklı kuyruk iş parçacığıyla tamamlama iletilerini işleyerek ve çalıştırılabilir iş parçacıkları tarafından tamamlanıp tamamlanmadığı denetlenerek çalıştırılabilir iş parçacıkları tarafından istenen zaman uyumsuz dosya işlemlerini gerçekleştirme sistemi"
http://www.patents.ibm.com/details?pn=US05758184__Bu patent, tamamlama bağlantı noktaları olarak adlandırılan gelişmiş NT eşitleme mekanizmasının arkasındaki temel fikirleri kapsar. Tamamlama bağlantı noktaları, işlemlerin birçok farklı nesnede G/Ç'yi verimli bir şekilde beklemesine olanak sağlar ve bir tamamlama bağlantı noktasıyla ilişkili iş parçacıklarının çok işlemcili bir şekilde kullanmasına izin vermek için Windows NT/2000 zamanlayıcıdaki desteği kullanır.
Bağlantı noktalarını tamamlama hakkında daha fazla bilgi için bkz. http://www.sysinternals.com/comport.htm.
"Nesne tabanlı bir bilgisayar işletim sisteminde istemci işlemlerinin sunucu kimliğine bürünmesi"
http://www.patents.ibm.com/details?&p n10=US05187790Kimliğe bürünme, Windows NT/2000 güvenlik modelinin, sunucu istemci adına etkinlikler gerçekleştirirken sunucu iş parçacığının güvenlik bağlamını geçici olarak benimsemesini sağlayan güçlü bir özelliğidir. Bu, sunucunun bir istemci için korunan nesnelere eriştiğinde Windows NT/2000 güvenlik modelinden kolayca yararlanmasını sağlar. Bu akıllıca bir yaklaşım, biraz belirgin değilse, dağıtılmış güvenlik yaklaşımı ve microsoft bu konuda patent sahibidir.
"Nesne tabanlı bir bilgisayar işletim sisteminde beklenebilir nesne oluşturma sistemi ve yöntemi"
http://www.patents.ibm.com/details?&p n10=US05057996"Veri yapısı nesneleri kümesine erişmek için farklı nesne işaretçilerine sahip sistem oluşturan koşullu nesne"
http://www.patents.ibm.com/details?&p n10=US05129083"Nesne tabanlı bir bilgisayar işletim sisteminde nesne kapsayıcısı aktarım sistemi ve yöntemi"
http://www.patents.ibm.com/details?&p n10=US05129084"Nesne tabanlı bir bilgisayar işletim sisteminde geçici nesne işleme sistemi ve yöntemi"
http://www.patents.ibm.com/details?&p n10=US05136712"Nesne tabanlı bir bilgisayar işletim sisteminde nesne aktarma sistemi ve yöntemi"
http://www.patents.ibm.com/details?&p n10=US05297283Windows NT/2000 nesne yöneticisi, UNIX uygulamalarında bulunan Sanal Dosya Sistemi (VFS) ad alanının aksine bir ad alanı uygular. Microsoft'un nesne yöneticisi üzerinde edindiği patentlerden bazıları nesne odaklı tasarımda gerçekten patentlere benziyor ve bazıları örtüşüyor gibi görünüyor. Ancak, ben patent avukatı değilim, bu yüzden belki de benim kontrolsüz bakış açım olabilir.
Patentlere bakarsanız David Cutler dahil olmak üzere birçok çekirdek Windows NT çekirdek geliştiricisinin adını bulabilirsiniz. İlginç bir şekilde, bazı patentler VMS üzerinde çalıştıklarında NT geliştiricileri tarafından Maynard, MA Digital Equipment Corp için alınmıştı, ancak patent süreci o kadar uzun sürdü ki patentler redmond, WA'da ikamet ediyor olarak listeleniyor.
YAKLAŞANLAR
TDIMON
TCP ve UDP ağ etkinliğini gerçek zamanlı olarak izlemek ve etkinliği tam olarak hangi işlemlerin gerçekleştirdiği hakkında bilgi sahibi olmak istediğiniz oldu mu? SysInternals izleme araç setine güçlü bir ekleme olan TdiMon için bizi izlemeye devam edin.
Systems Internals Bülten'i okuduğun için teşekkür ederiz.
Yayın tarihi: 27 Mart 2000 Pazartesi 19:09 ottoh