Aracılığıyla paylaş


[Bülten Arşivi ^] [< Birim 1, Sayı 3] [Birim 1, Sayı 5 >]

The Systems Internals Newsletter Volume 1, Number 4

http://www.sysinternals.com
Telif Hakkı (C) 1999 Mark Russinovich


5 Ağustos 1999 - Bu sorunda:

  1. SISTEM IÇLERINDEKI YENILIKLER

    • Portmon v3.0
    • Frob v1.5
    • ListDLLs v2.1
    • Yeni ÖNYÜKLEME. INI Seçenekleri
    • PsList v1.0
    • Ağustos "NT Internals"
    • Pek De Yeni Olmayan Şeyler
  2. İÇ HABERLER

    • Düzeltme Yeniden: Sistem Dosya Koruması
    • Win2K RC1 DDK Yayınlandı
    • Win2K AWE API'si
    • WinDev '99 Batı
  3. YAKLAŞANLAR

    • SP4'ün Belgelenmemiş DiskDüzenleme Aracı

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 (Windows NT için önyükleme diski özelliği) ve NTRecover'ı içerir.

Winternals Software, en son sistem kurtarma yardımcı programı Uzaktan Kurtarma'nın yayınını duyurur. Uzaktan Kurtarma, önyüklemesi kaldırılamayan bir bilgisayarın sürücülerine kuruluşunuzun herhangi bir yerinden TCP/IP üzerinden erişmenizi sağlar. NT veya Win9x sistemlerini devre dışı tutan sürücü, dosya sistemi ve yapılandırma sorunlarını uzaktan düzelterek zaman kazanın ve dolar desteği sağlayın. adresinden http://www.sysinternals.com/rrecover.htmücretsiz bir salt okunur deneme sürümü indirin ve adresinden okuma/yazma sürümünü satın alın http://www.winternals.com.


Herkese merhaba,

Systems Internals bülteninin dördüncü sürümüne hoş geldiniz. Bültenin şu anda 7000 abonesi vardır.

Son bültende Windows 2000'in (Win2K) AWE API'sini kapsayacağım belirtildi. AWE'nin "Adres Pencereleme Uzantıları" (Windows dünyasına yeni başlayanlar için, API'nin "Uygulama Programlama Arabirimi" anlamına geldiğini) ifade ettiğini işaret ettim. Microsoft'un donanım geliştirici Web sitesindeki bu sayfada şu şekilde açıklanmaktadır: http://www.microsoft.com/hwdev/NTDRIVERS/AWE.htm. Ancak okuyucu Laxmikant Gunda beni Microsoft'un Web sitesindeki http://www.microsoft.com/windows/server/News/fromMS/intelpae.aspbaşka bir URL'ye işaret etti. Burada AWE, "Gelişmiş PencereLeme Uzantıları" API'si olarak belirlendi. Açıkçası, "Adres", API bağlamındaki "Gelişmiş" den daha anlamlıdır (bu bültenin ilerleyen bölümlerinde açıklıyorum), bu nedenle bazı pazarlama yazarlarının haber sayfası için ham teknik malzemeyi sindirdikleri için gözleri üzerinde bir numara oynamış olabilir.

Bu karışıklığın daha önce Microsoft'un teknik kapsamında olduğunu görmüştüm. En son, Win2K Yüklenebilir Dosya Sistemleri (IFS) Seti'nin Beta 3 sürümü için kurulum programı, "Dahili Dosya Sistemleri Seti" için kurulum olarak giriş ekranında kendini duyurdu. IFS'deki 'I' her zaman "Yüklenebilir" ifadesinin yanındadır ve "dahili" ifadesi burada çok anlamlı değildir (kitin genel olmayan sürümünü yanlışlıkla piyasaya çıkarmadıkları sürece), bu nedenle çeviride bir hataya neden olan başka bir durum olduğunu tahmin ediyorum (veya kurulum kodlayıcısının dosya sistemleri-ekip üyesinin kullanışlı olmaması ve en iyi tahminlerini kullanması).

Benim amacım ne? Aslında bir tane yok, bunun dışında er ya da geç kısaltma taşması olacak, burada geliştiriciler ve pazarlamacılar istemeden farklı teknolojileri tanımlamak için aynı üç harfli kısaltmaları kullanmaya başlayacaklar. Microsoft'un IIS (Internet Information Server) grubundaki biri AIE adlı yeni bir API 'yi ("Gelişmiş ISAPI Uzantıları" - ISAPI, Internet Server API'si anlamına gelir) adlandıracak ve MTS (Microsoft İşlem Sunucusu) grubundaki biri başka bir AIE (Atomik Arabirim Değişimi) ile gelecek. Ve bir gün bir pazarlamacıya veya teknik yazara IIS ekibinden "AIE" anlamına gelen bir teknik makale verileceğine ve veritabanı ile dosya sistemi arasındaki farkı bilmediğinden, bunun "Gelişmiş Internet Explorer" anlamına geldiğini tahmin edeceğime eminim.

İş yerinde başka yerlerde de kısaltma karışıklığı gördüm. Seri ve paralel bağlantı noktalarının tartışıldığı yakın tarihli bir Windows NT Magazine makalesinde metninde "COM bağlantı noktası" terimi kullanılmıştır. Kopya düzenleyicisi son geçişi yaptıktan ve makale yayımlandıktan sonra tümcecik "COM (Bileşen Nesne Modeli) bağlantı noktası" haline gelmişti.

Her zamanki gibi, lütfen bülteni ilginizi çekebileceğini düşündüğünüz arkadaşlarınıza iletin.

Teşekkürler!

-İşaret

SISTEM IÇLERINDEKI YENILIKLER

PORTMON V3.0

Portmon, 3.0 sürümüyle önemli yollarla geliştirilmiştir. Portmon, Windows 95/98/NT/2K için seri ve paralel bağlantı noktası izleme uygulamasıdır. Sürüm 3.0'ın tanıtılması:

  • gelişmiş filtreleme ve çıkış vurgulama özelliği
  • uzak sistemlerde seri ve paralel bağlantı noktası etkinliğini izleme özelliği
  • dosyaya oturum açma ve yazdırma desteği
  • pano tümleştirmesi
  • günlükte ne kadar okuma/yazma verisi olduğunu belirtmenize olanak tanıyan bir ayar

Portmon v3.0 sürümünü şu konumdan indirin: http://www.sysinternals.com/portmon.htm.

FROB V1.5

Windows NT 4.0 Server, yöneticilere NT iş parçacığı zamanlayıcısının iş parçacıklarına verdiği kuantum uzunluklarını (dönüşler) denetleme olanağı sunmaz. Windows 4.0 İş İstasyonu'nda Denetim Masası sistem uygulaması, ön plan iş parçacıkları için kuantum artışı belirlemenizi sağlayan bir kaydırıcı içeren bir Performans sekmesine sahiptir (kaydırıcı Sunucuda da bulunur, ancak hiçbir şey yapmaz). Daha kısa kuantumlar genellikle kullanıcı girişlerine daha duyarlı uygulamalarla sonuçlanırken, uzun kuantumlar etkileşimli olmayan sunucu uygulamalarını çalıştırmaya ayrılmış sistemler için iyidir.

Systems Internals'in Frob programı, hem İş İstasyonu'nda hem de Sunucu'da kuantum uzunlukları üzerinde aynı ayrıntılı denetim derecesini sağlar ve kuantumları bir sistemde çalıştırdığınız iş yüküne göre ayarlamanıza olanak tanır. Ancak Frob, NT çekirdeğinin içindeki ayarları değiştirdiğinden, her yeni Hizmet Paketiyle çalışacak şekilde güncelleştirilmelidir. Frob v1.5 artık kullanılabilir ve Service Pack 5 ile uyumluluk sağlar.

Frob v1.5'i şu konumdan indirebilirsiniz: http://www.sysinternals.com/ntfrob.htm.

LISTDLLS V2.1

ListDLL'ler, işlemlerin yüklendiği DLL'ler hakkında ayrıntılı sürüm bilgilerini gösteren bir komut satırı yardımcı programıdır. ListDLL'ler, disk üzerindeki dosyalardan yüklenen DLL'lerin dosya yollarına karşılık gelen sürüm bilgilerini ayıklar ve belgelenmemiş arabirimleri kullanarak yol adlarını alır. Bazen bir uygulama zaten yükledikten sonra disk üzerindeki DLL dosyası güncelleştirilir ve bu durumda ListDL'ler yanlış sürüm bilgilerini gösterir.

ListDLL'ler v2.1, bir DLL'nin disk üzerindeki sürümleriyle yüklenen sürümleri arasında ne zaman bir fark olduğunu algılar, çıkışındaki farkı işaretler. Bir tutarsızlık olduğunda ListDLL'ler disk üzerindeki dosyanın ve yüklenen dosyanın bağlantı sürelerini yazdırır. Yürütülebilir dosya ve DLL dosyalarının bağlantı süreleri, NT'nin bunları paketlemek için kullandığı Taşınabilir Yürütülebilir Dosya (PE) dosya biçiminin üst bilgisinde bulunur.

ListDLLs v2.1'i şu konumdan indirin: http://www.sysinternals.com/listdlls.htm.

YENI ÖNYÜKLEME. INI SEÇENEKLERI

Win2K Beta 3 üç yeni BOOT'yu tanıtıyor. INI anahtarları. Üçü de Intel'in Pentium Pro ile tanıtılan ve x86 sistemlerinin 64 GB'a kadar fiziksel belleği ele almalarına olanak sağlayan intel teknolojisi olan Intel Fiziksel Adres Uzantıları (PAE) ile ilgilidir. Geleneksel olarak, x86 sistemleri yalnızca 4 GB fiziksel belleği ele alabilir, ancak PAE ve 450NX yonga kümesi ile bu bariyer bozulur. Win2K, PAE'nin avantajlarından yararlanacak ilk Microsoft işletim sistemidir (Sun Solaris 7 ve SCO UnixWare 7 zaten PAE'yi destekler). Win2K çekirdeğinin yerleşik desteği olan ntkrnlpa.exe adlı özel bir derlemesi vardır. Win2K önyükleme yükleyicisi NTLDR, sistemin 4 GB'tan fazla belleği ele alıp almadığına ve bu miktara sahip olmasına bağlı olarak standart çekirdek, ntoskrnl.exe veya PAE özellikli bir çekirdeği yüklemekten sorumludur.

Üç yeni ÖNYÜKLEME de. INI anahtarları, büyük bellek sistemleriyle (4 GB'tan fazla olan sistemler) çalışacak şekilde tasarlanmış cihaz sürücülerinin hatalarını ayıklamayı hedeflemektedir. İlk olan /PAE, bilgisayarda 4 GB'tan fazla bellek olmasa bile çekirdeğin PAE sürümünü NTLDR'ye yükler. İkinci olan /NOPAE, NTLDR'yi standart çekirdeği yüklemeye zorlar. Son olarak, /NOLOWMEM anahtarında Win2K çekirdeği yalnızca 4 GB'ın üzerinde fiziksel bellek kullanır. Bu, Win2K tarafından kullanılan tüm fiziksel adresleri temsil etmek için 32 bitten fazlasını gerektirmeye zorlar ve böylece büyük fiziksel adreslerin cihaz sürücüsü işlemesi alıştırmaları yapılır.

BOOT'un en eksiksiz listesini bulun. INI anahtarları şu konumda kullanılabilir: http://www.sysinternals.com/bootini.htm.

PSLIST V1.0

UNIX'in çoğu türü, yöneticilerin cpu ve bellek istatistiklerini listelemek için kullandığı 'ps' adlı bir komut satırı aracıyla birlikte gelir. NT' nin gui tabanlı eşdeğer bir aracı vardır, Görev Yöneticisi, ancak NT komut satırı sürümüyle birlikte gelmez. Windows NT Resource Kit, 'ps' benzeri iki komut satırı içerir: pstat ve pumon. PsList, pstat ve pumon ile kullanılabilen bilgilerin bir bileşimini gösterir, ancak Resource Kit aracında bulunmayan bir özellik vardır: Uzak bir sistemdeki işlem bilgilerini sorgulamak için PsList'i kullanabilirsiniz.

PsList işlem CPU'sunu, belleği veya iş parçacığı istatistiklerini görüntülemenizi sağlayan birkaç bayrak ve sorgu için farklı bir NT bilgisayar belirtmenize olanak tanıyan bir anahtar alır. PsList, NT'nin yerleşik Performans Sayaçlarını kullanarak gösterdiği bilgileri alır ve NT 3.51, 4.0 ve Win2K üzerinde çalışır.

PsList'i şu konumdan indirin: http://www.sysinternals.com/pslist.htm.

AĞUSTOS "NT INTERNALS"

Windows NT Magazine'in Ağustos sayısında yer alan "NT Internals" sütunum "Inside Win2K Güvenilirlik Geliştirmeleri, Bölüm 1". Bu üç bölümden oluşan serinin ilk bölümünde, yöneticilerin önyüklemesi kaldırılmayan bir sistem almasına yardımcı olmayı amaçlayan Win2K özellikleri açıklanmaktadır. Bunlar "güvenli mod" önyüklemesini ve Kurtarma Konsolu'nu içerir.

Ağustos ayının başından itibaren, Windows NT Magazine makalelerinin çevrimiçi sürümlerine yalnızca aboneler erişebilir ve makaleler her yeni sorunla birlikte çevrimiçi olarak yayınlanır. Abone olmadıysanız, Systems Internals abonelik indirimini almak için adresinden abonelik bağlantısına http://www.sysinternals.com/publ.htm gidin.

ÇOK YENI OLMAYAN ŞEYLER

Bir veya iki arkadaşınızı henüz korkutmadıysanız Systems Internals Bluescreen Ekran Koruyucu'ya göz atın. Sürüm 2.0, Bir Win2K sisteminde çalıştırdığınızda Mavi Ölüm Ekranı'nın (BSOD) Win2K sürümünü ve Win2K başlangıç sırasını görüntüler. Mavi Ekran Koruyucu'nun yakın zamanda Ziff-Davis'in Yazılım Kitaplığı'ndan beş yıldıza, mümkün olan en yüksek derecelendirmeye sahip olduğunu söylemekle gurur duyuyorum.

Mavi Ekran Ekran Koruyucusu v2.0 sürümünü şu konumdan indirin: http://www.sysinternals.com/bluescrn.htm.

İÇ HABERLER

DÜZELTME RE: SISTEM DOSYA KORUMASı

Son bültende, Win2K'nin Sistem Dosya Koruması'nın (SFP) Hizmet Paketleri (SP' ler) gibi uygulamaların SfcTerminateWatcherThread adlı bir işlev SFP dışarı aktarmalarını çağırarak sistem dosyalarını güncelleştirmesine olanak sağladığını belirttim. SFP bu işlevi dışarı aktarırken, SP'ler ve sık erişim düzeltmeleri sistem dosyalarını güncelleştirirken işlevini kullanmaz. Bunun yerine, mevcut sistem dosyalarını Microsoft tarafından dijital olarak imzalanan dosyalarla değiştirdikleri için sistem dosyalarını güncelleştirebiliyorlar. SFP güncelleştirmeleri algılar, ancak SFP yeni dosyaların dijital olarak imzalandığını doğruladığı için bu güncelleştirmelerin devam etmesine izin verir. SFP kapsamımla ilgili bir diğer düzeltme de Win2K Beta 3 Microsoft'un SFP adını Windows Dosya Koruması (WFP) olarak değiştirmesi.

WFP ve Microsoft dijital dosya imzalamayı ayrıntılı olarak açıklayan "Inside Win2K Reliability Enhancements, Part 2" ADLı NT Internals sütunumu bulabileceğiniz Windows NT Magazine'in Eylül sorununa göz attığınızı unutmayın.

WIN2K RC1 DDK YAYıNLANDı

Microsoft'un Cihaz Sürücüsü Geliştirme Seti'nin (DDK) Win2K RC1 sürümünü şu konumdan indirebilirsiniz: http://www.microsoft.com/ddk/ddk2kRC1.htm. Seti ücretsiz olarak indirebilir veya belgelere on-line göz atabilirsiniz.

THE WIN2K AWE API

Bu bültene girişte AWE API'sine zaten değindim ve Microsoft'ta daha fazla bilgi edinebileceğiniz bir Web sayfasına başvurdum: http://www.microsoft.com/hwdev/NTDRIVERS/AWE.htm. 4 GB'tan fazla fiziksel belleğe sahip sistemlerde, Win2K'nin PAE özellikli çekirdeği (ntkrnlpa.exe) uygulamalarda değişiklik yapmadan bilgisayarın tüm fiziksel belleğinden yararlanabilir. Win2K Advanced Server en fazla 8 GB fiziksel bellek, Win2K Datacenter Server ise 64 GB'a kadar fiziksel bellek kullanır.

Büyük bir bellek sistemindeki her uygulama en fazla 2 GB sanal belleğe sahip olsa da (/3 GB ÖNYÜKLEMEsi varsa 3 GB). INI anahtarı belirtilir), yürütülen tüm uygulamalara atanan fiziksel belleğin toplamı, fiziksel bellek miktarına eşit olabilir. Buna ek olarak, Win2K'de dosya sistemi önbelleğine en fazla 960 MB sanal bellek atanır, ancak önbelleğe atanan çok daha büyük fiziksel bellek miktarı 960 MB'ı aşabilir.

AWE API'si, tek tek uygulamalara fiziksel belleği doğrudan denetleme olanağı ve sanal adres alanı boyutuyla belirtilen 2 GB veya 3 GB'tan daha fazla sınır sağlar. AWE API'sinin ardındaki temel fikir, bir uygulamanın sanal adres alanının bir kısmını fiziksel belleğe "pencere" olarak belirlemesidir. Ardından bir fiziksel bellek öbekleri ayırır. Bir uygulamanın ayırabileceği fiziksel bellek miktarının üst sınırı temelde sistemdeki fiziksel bellek miktarının, çekirdek, cihaz sürücüleri ve AWE API'sini kullanan diğer uygulamalar tarafından zaten ayrılmış olan disk belleği olmayan bellek miktarıdır. Uygulama, ayırdığı fiziksel belleğin bir bölümüne erişmek istediğinde, belleği sanal adres penceresine eşler. Bu nedenle, uygulamanın belirli bir eşlemeyle erişebileceği fiziksel bellek miktarı, ayrılmış olduğu pencerenin boyutuyla sınırlıdır. Son olarak, bir uygulama fiziksel bellekle tamamlandığında, belleği serbest bırakır ve oluşturduğu sanal adres penceresini kapatır (serbest bırakır).

Bu eylemlere karşılık gelen API'ler kernel32.dll tarafından dışarı aktarılır ve aşağıdaki gibidir:

  • Bir uygulama sanal adres penceresini oluşturmak için MEM_PHYSICAL ve MEM_RESERVE bayraklarıyla VirtualAlloc'u çağırır
  • AllocateUserPhysicalPages bir uygulama için fiziksel bellek ayırır
  • Uygulama, fiziksel belleğin bölümlerini penceresine eşlemek için MapUserPhysicalPages kullanır
  • FreeUserPhysicalPages, uygulamanın ayırmış olduğu fiziksel belleği boşaltıyor

Uygulamaların birden çok GB belleği doğrudan işleyebilmesi, veritabanı sunucuları, e-posta sunucuları, Web sunucuları, finansal analiz ve bilimsel uygulamalar gibi yoğun bellek kullanan programlara yönelik bir boondur.

Win2K'nin yalnızca belirli sürümlerinde 4 GB'tan fazla fiziksel bellek kullanma olanağına izin verilse de, AWE API'si tüm sürümlerde mevcuttur. Bu, örneğin 4 GB belleğe sahip bir Win2K Professional sisteminde, AWE API'sinin yoğun bellek kullanan uygulamalara fiziksel bellekte 2 veya 3 GB'tan fazla veri yönetme olanağı sağladığı anlamına gelir.

AWE API'sinin, kernel32.dll kullanıcı modu API'lerini temel aldığı eşdeğer çekirdek modu arabirimleri vardır. Sürücü, AllocateUserPhysicalPages'in çekirdek modu eşdeğeri olan MmAllocatePagesForMdl kullanarak fiziksel bellek ayırabilir. Bu işlevin prototipi Win2K DDK ntddk.h dosyasındadır, ancak belgelenmemiştir. Prototipi:

NTKERNELAPI
PMDL
MmAllocatePagesForMdl (
    IN PHYSICAL_ADDRESS LowAddress,
    IN PHYSICAL_ADDRESS HighAddress,
    IN PHYSICAL_ADDRESS SkipBytes,
    IN ULONG TotalBytes
    );

LowAddress ayırmak istediği en düşük kabul edilebilir fiziksel adres ve HighAddress en yüksektir. SkipBytes, çekirdeğin fiziksel belleği ayırmaya başladığı adresin üzerinde LowAddress ve altında boş tutması gereken bayt sayısıdır. TotalBytes , sürücünün ayırmak istediği bayt sayısıdır. işlevinin dönüş değeri, sıfır olmayan bir değer, çekirdeğin sürücüye verdiği fiziksel belleği tanımlayan bir MDL'dir. Sürücünün belleğin bölümlerine erişmek için, döndürülen MDL'den fiziksel belleğin uygun bölümlerini açıklayan alt MDL'ler oluşturması gerekir. Bir sürücü bir alt MDL tarafından açıklanan fiziksel belleğe erişmek istediğinde, kullanarak MmGetSystemAddressForMdlSafealt MDL'yi eşlemesi gerekir.

Sürücüler, ile ayırdığı fiziksel belleği boşaltmak için çekirdek modu eşdeğeri FreeUserPhysicalPagesolan öğesini MmAllocatePagesForMdlkullanırMmFreePagesFromMdl. Bu işlevin prototipi de ntddk.h:

NTKERNELAPI
VOID
MmFreePagesFromMdl (
    IN PMDL MemoryDescriptorList
    );

Bir sürücünün, tarafından döndürülen MmAllocatePagesForMdl MDL'yi ExFreePool çağrısıyla serbest bırakmaktan sorumlu olduğunu, çünkü MmFreePagesFromMdl MDL'yi serbest bırakmadığını unutmayın.

WINDEV '99 BATı

Windows geliştiricileri için premier konferansın 1999 West Coast sürümü hızla yaklaşıyor. WinDev '99 West, 13-18 Eylül'de California'daki Santa Clara Marriot'ta gerçekleşecek. Jeff Richter, Jeff Prosise ve Don Box da dahil olmak üzere Windows geliştirme alanındaki bir dizi büyük isim konuşuyor. Cihaz sürücüsünde Jamie Hanrahan ve Brian Catlin ile orada olacağım. Sunularımda NT iç sistemleriyle ilgili bir günlük öğreticinin yanı sıra Windows NT/2K dosya sistemi sürücüleri yazma ve gelişmiş cihaz sürücüsü geliştirme sorunlarıyla ilgili bir öğretici yer alıyor. Gelin ve merhaba deyin!

WinDev Batı Web sayfasını ziyaret edin: http://www.butrain.bu.edu/windev/.

YAKLAŞANLAR

NT 4.0 SP4 DISKEDIT

Windows NT 4.0 Service Pack 4, CD'sinde birçok kişinin fark etmeyebileceği bir yardımcı programla birlikte gönderildi: DiskEdit. Ve şaşırmamalı: araç sabit diske yüklenmez ve hiçbir belgeyle birlikte gelmez. Microsoft dosya sistemi geliştiricileri tarafından yanlışlıkla CD'ye gönderilen bir araç olduğu neredeyse kesindir. DiskEdit, Windows NT için Norton Utilities Disk Edit-type aracını kaçıran veya yalnızca NTFS ve FAT disk üzerindeki veri yapılarını keşfetmek isteyen kişiler için bir hazinedir. Bir dahaki sefere Size DiskEdit'in nasıl kullanılacağına ilişkin bazı yönergeler sağlayacağım.


Systems Internals Bülten'i okuduğun için teşekkür ederiz.

Yayın tarihi: 05 Ağustos 1999 Perşembe 19:13 ottoh

[Bülten Arşivi ^] [< Birim 1, Sayı 3] [Birim 1, Sayı 5 >]