Aracılığıyla paylaş


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

The Systems Internals Newsletter Volume 3, Number 2

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


20 Ağustos 2001 - Bu sorunda:

  1. EDİTORYAL

  2. SYSINTERNALS'DEKI YENILIKLER

    • İşlem Gezgini v5.1
    • v2.0 işleme
    • PsInfo v1.1
    • PsExec v1.24
    • PsLogList v2.07
    • Windows XP Kaynak Düzeni
    • DebugView v4.13
    • PageDefrag v2.1, Contig v1.41
    • Microsoft'ta Sysinternals
  3. İç BİlGİLER

    • Windows 2000'in içinde, Etkileşimli DVD
    • Tarihi işaretleyin: Russinovich ve Solomon Austin'de birlikte ders veriyor
    • Komut satırı disk yönetimi
    • WINHEC 2001 slaytları çevrimiçi
    • XP'de yeni dosya sistemi filtre sürücüsü arabirimleri
    • Windows'u tuş vuruşuyla kilitlenme
    • Windows XP Prefetching
    • Windows .NET Bağlantıları
  4. YAKLAŞANLAR

    • Itanium Deneyimlerim

SPONSOR: WINTERNALS SOFTWARE

Sysinternals Bülteni, Winternals Software sponsorluğunda, web'de şu konumdadır: http://www.winternals.com. Winternals Software, Windows NT/2K/XP 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, NTFSDOS Professional Edition (DOS için okuma/yazma NTFS sürücüsü) ve Uzaktan Kurtarma'yı içerir.

Winternals, kullanılabilir en hızlı, en kapsamlı kurumsal birleştirici olan Defrag Commander sürüm 1.31'i duyurmaktan gurur duyar. Artık NT veya Windows 2000 sistemlerinize herhangi bir istemci yazılımı yüklemenize gerek kalmadan tüm Windows kuruluşunuzdaki birleştirme zamanlamalarını basit bir MMC ek bileşeninden yönetebilirsiniz. Yalnızca 169 ABD doları karşılığında çevrimiçi satın alma için 10 sistem lisansı ve agresif miktar indirimleri mevcuttur. Daha fazla bilgi için veya 30 gün boyunca ücretsiz indirip kullanmak için ziyaret edin http://www.winternals.com/39 .

Herkese merhaba,

Sysinternals bültenine hoş geldiniz. Bültenin şu anda 33.000 abonesi var.

Bilgisayarları birkaç farklı kapasitede kullanıyorum: yazılım geliştiricisi olarak; kullanıcı olarak; ve bir sistem yöneticisi olarak (kendi geliştirme ve test sistemleri ağım için). Sysinternals ücretsiz yazılım araçları ve Winternals ticari ürünleri için en geniş kitleye ulaşmak istediğimden, çoğu yardımcı program Windows XP aracılığıyla en az Windows NT 4'i hedefler ve birçoğu Da Windows 95'te Windows Me aracılığıyla çalışır. Yazdığım araçların çoğu sistem düzeyinde, yani genellikle çeşitli Windows çeşitlerinden biri veya daha fazlası için özel durum kodu içeriyorlar. Ne yazık ki, Windows NT satırı ile Windows 9x satırı arasında önemli kullanıcı arabirimi ve çekirdek farkları ve hatta aynı satırdaki sürümler arasındaki farklar vardır.

Test gerçekleştirmek için, tümü numaralandırdığım Windows tatlarını birden çok kez kaydedecek şekilde yapılandırılmış ve bir sürümde önyükleme, test etme ve ardından bir sonraki sürüme yeniden başlatma için yapılandırılmış birkaç hata ayıklama sistemim vardı. Yavaş olmanın yanı sıra, düzgün temizlemediğim yardımcı programların ara test derlemelerinin düşüşlerine müdahale ederek test bazen dengesizlik gösteriyordu. Hata ayıklama sorunları için çoklu önyükleme sistemleri koleksiyonum olsa da, VMWare (www.vmware.com) adlı yenilikçi bir ürün test döngülerimi daha hızlı ve kolay hale getirdi.

VMWare, Windows NT, Windows 2000 veya Linux yüklemelerinin (konaklar) üzerinde çalışan sanal bilgisayarlar (konuklar) oluşturmak için kullandığınız bir sanal makine ortamıdır. Bir konuk Windows, DOS ve Linux'un çoğu değişkenini çalıştırabilir. Özellikle bir sanal makineyi tam ekran yaptığınızda, işletim sisteminin bir sürümünün başka bir işletim sisteminin üzerinde çalıştığını görmekten rahatsız edicidir. Örneğin, Linux bilgisayarın Windows 2000'in üzerinde çalışan sanal ekranı yerine Linux bilgisayarın ekranında oturmadığını algılamanın neredeyse hiçbir yolu yoktur. Sanal makine, sanal makinede çalışan işletim sistemini ve uygulamaları kapsülleyen yazılım tarafından dayatılan bir kutudur, böylece mevcut olduğuna inandığı donanımla etkileşime geçtiğinde sanal makine yazılımı erişimleri durdurur. Sanal makine yazılımı, gerçek donanıma veya sanal donanıma dikkatle denetlenen vekiller görevi görecek sanal cihazlar oluşturur. Örneğin, bir pencerede görüntülenen bir sanal makinede çalışan bir uygulama sanal makinenin görüntü belleğine yazdığında, sanal makine yazılımı erişimlerin gerçek video belleğine dokunmasına izin vermek yerine sanal makinenin ekranını temsil eden pencerenin içeriğini güncelleştirir. Sanal makine tam ekran modunda çalışıyorsa, sanal makine yazılımı bu tür erişimlerin video belleğini doğrudan işlemesine izin verir.

Sanal makine özelliği tek başına VMWare'i kullanışlı hale getirir, çünkü sabit sürücünüzde herhangi bir sayıda "test sistemi" bulunabilir. VMWare'i daha da güçlü hale getiren şey, bir sanal bilgisayarı "askıya alıp" durumunu diske kaydedip daha sonra sürdürerek askıya aldığınızda sahip olduğu durumu saniyeler içinde geri yükleyebilmenizdir. Ama dahası da var. VMWare'in tanımladığınız içerikleri içeren sanal diskleri olan bir sanal bilgisayar başlatmasına (örneğin, yalnızca temel bir işletim sistemi yüklemesi ile) sahip olan "kalıcı olmayan diskler" adlı özelliği kapsamlı bir şekilde kullanıyorum ve sonra değişiklikleri izleyerek bunları geri alıp başlangıç durumuna geri döndürebiliyorum. Bir yardımcı programın test sürümlerini yüklersem ve yardımcı programın değişikliklerini yansıtmayan temiz bir duruma geri döndüğümden emin olmam gerekirse, değişiklikleri geri alıyorum. VMWare'i kullanıcı ve sistem yöneticisi rollerimde de yararlı buluyorum. Bir uygulamayı kaldırdığımda geliştirme sistemimin güvenliğini aşmak veya arka planda kalan artıklarla doldurmak yerine tutmak istediğimden emin olmadığımız bir uygulamayı indirdiğimde, önce kalıcı olmayan bir diske sahip bir sanal makinede denemem yeterlidir.

Geçerli sürümde, gerçek hata ayıklama bilgisayarlarımı benim kadar kullanmamı engelleyen görece küçük dezavantajlar var. Birincisi, sanal makineler DirectX'i desteklemediğinden, 640x480 ekran çözünürlüğünde sanal makine dışında Numega'nın SoftICE hata ayıklayıcısını çalıştıramazsınız. İkincisi, VMWare'in seri bağlantı noktalarını sanallaştırmasının konak ile konuk arasında veya konuklar arasında Windbg veya Kd kullanarak çekirdek hata ayıklamasını engelleyecek şekilde sınırlı olmasıdır. Ancak, ikinci sorun bir sonraki ana VMWare sürümünde giderilmelidir.

VMWare hakkında özellikle ilginç olan şey, VMWare aksini gösterene kadar, bilgisayar bilimcilerinin ağırlıklı olarak x86 mimarisini yazılımda, engelleyici performans düşüşü olmadan değiştirilmemiş bir işletim sistemini çalıştıracak kadar sanallaştırmanın mümkün olmadığı inancını benimsemeleridir. Zorluklar, özellikle donanım cihazı sanallaştırma alanında önemlidir ve VMWare'in başarısı çığır açan bir durum olarak görülür- böylece VMWare yakın zamanda yıllık USENIX Teknik Konferansı'nda cihaz sanallaştırmayı nasıl uyguladığına ilişkin bir "konferansın en iyileri" makalesini yayınladı. Şu sayfayı okuyabilirsiniz: http://vmware1.m0.net/m/s.asp?HB4162878203X1075673X73339X.

USENIX Teknik Konferansı'na bahsetmişken, burada yayımlanan yüksek performanslı Bellek Tabanlı Web Sunucuları: Çekirdek ve Kullanıcı Alanı Performansı (http://www.sysinternals.com/files/webserver.pdf). Bu makalede IBM Research'te çalışırken katıldığım yenilikçi araştırmalardan bazıları açıklanmaktadır. Çalışmanın katkıları çekirdek modu Web sunucusu hızlandırma alanındadır ve mimariye katkıda bulunmanın yanı sıra, Windows NT ve Windows 2000'deki uygulamanın büyük bir kısmından ben sorumluydum. Proje o kadar başarılıydı ki, web servis performansı için SPECWeb dünya kayıtlarını tutarlı bir şekilde tuttuk, IBM Netfinity Web Server Accelerator adlı hala gelişen bir IBM ürünü olarak yayınlandı ve hem Microsoft hem de Linux topluluğu önemli fikirlerden birkaçını kendi ürünlerine (Windows 2000 için IIS ve Linux üzerinde Tux gibi) dahil etti.

Lütfen bülteni içeriğiyle ilgilenebileceğini düşündüğünüz arkadaşlarınıza iletin.

Teşekkürler!

-İşaret

SYSINTERNALS'DEKI YENILIKLER

İŞLEM GEZGINI V5.1

İşlem Gezgini, işlemler, yükledikleri DLL'ler ve açık olan işletim sistemi kaynaklarının tanıtıcılarını gösteren çok amaçlı bir yardımcı program olan HandleEx'in yeni adıdır. İşlem Gezgini'nin en son sürümleri, yeni adıyla birlikte verimli otomatik yenileme, CPU kullanım sütunu, işlem önceliklerini değiştirme özelliği ve sistem bir terminal sunucusuysa işlem oturumu kimliklerini raporlama gibi yeni özellikler sunar. Ayrıca, işlemler hakkında çok daha fazla bilgi gösterir. Örneğin, bir işlem içinde çalışan hizmetlerin listesini (varsa) görüntüleyebilir, işlemin ortam değişkenlerini inceleyebilir ve işlem komut satırlarını görüntüleyebilirsiniz. "İşlem ağacı" adlı yeni bir sıralama seçeneği kullanarak, bir işlemin amacını belirlemenize yardımcı olabilecek işlemlerin üst-alt ilişkilerini grafik olarak görebilirsiniz. İşlem Gezgini tüm Windows 9x sürümlerinde ve Windows NT 4 ile Windows XP arasında çalışır.

İşlem Gezgini'nin arabiriminde hemen belli olmayan bir şey, hangi işlemlerin belirli bir dosya veya dizinin açık olduğunu gösterebilme özelliğidir. Ekranı işleme moduna geçirin ve söz konusu dosyanın veya dizinin adını arama iletişim kutusuna girin. Arama özelliği çoğunlukla bir dosyayı veya dizini silmenizi veya yeniden adlandırmanızı engelleyen işlemi izlemek için kullanılır, ancak belirli DLL'lerin de yüklü olduğu işlemleri listelemek için bu özelliği kullanabilirsiniz.

İşlem Gezgini v5.1'i şu konumdan indirin: http://www.sysinternals.com/ntw2k/freeware/procexp.shtml.

HANDLE V2.0

Handle, İşlem Gezgini'nin işlemlerin açık olduğu dosyalar gibi işletim sistemi kaynaklarının tanıtıcılarını görmenize olanak tanıyan işleme görüntüleme işlevinin komut satırı sürümüdür. Bazı durumlarda Tanıtıcı'yı kullanmak, dosya veya dizin açık olan bir işlemi tanımlamak için İşlem Gezgini'nin arama olanağını kullanmaktan daha hızlı bir yoldur çünkü tutamacı komut satırına dosya veya dizinin adının bir bölümünü girmeniz yeterlidir. Tanıtıcı adları için daha verimli aramanın yanı sıra Handle 2.0 artık Windows 95/98/Me üzerinde çalışıyor.

Tanıtıcı v2.0'ı şu konumdan indirin: http://www.sysinternals.com/ntw2k/freeware/handle.shtml.

PSINFO V1.1

PsTools yönetim araçları paketine en son eklenen PsInfo'dur. PsInfo, bilgisayarın donanım ve işletim sistemi özelliklerini bildiren bir komut satırı aracıdır. Örneğin, hizmet paketi numarası, yükleme ve son kullanma tarihi (varsa) ve yapılandırma (etki alanı denetleyicisi, üye sunucu gibi) dahil olmak üzere hangi işletim sisteminin çalıştığını bildirir. Ayrıca bilgisayardaki CPU'ların türünü, hızını ve sayısını ve yüklü fiziksel bellek miktarını listeler. Bu bilgiler, PsInfo'nun sistem belirleme veya envanter için kullanışlı olmasını sağlar. PsTools paketindeki tüm araçlar gibi, PsInfo da yerel veya uzak bir Windows NT, 2000 veya XP bilgisayarında çalışır.

PsInfo v1.1'i şu konumdan indirin: http://www.sysinternals.com/ntw2k/freeware/psinfo.shtml.

PSEXEC V1.24

PsExec, sistem Ağ Mahallenizde olduğu sürece, uzak sisteme herhangi bir yazılımı el ile yüklemek zorunda kalmadan uzak sistemlerde işlemleri başlatmanıza olanak tanır. PsExec'in gücü, bir uzak konsol programının klavye girişini ve metin çıkışını yerel sisteminizde çalışıyor gibi işlediği yeniden yönlendirilen konsol programı G/Ç desteğinde yatmaktadır.

PsExec'in en son sürümü, aynı uzak sistemde birden çok çalışan işlemi destekler ve örneğin, başka bir sistemde birkaç komut istemini uzaktan açmanıza olanak tanır. Ayrıca, PsExec'in var olan herhangi bir sürümü değiştirerek bir dosyayı yürütme için uzak bir bilgisayara kopyalamasını istediğinizi belirtmenize olanak tanıyan yeni bir "kopyalamaya zorla" seçeneği de vardır.

PsExec v1.24 sürümünü şu konumdan indirin: http://www.sysinternals.com/ntw2k/freeware/psexec.shtml.

PSLOGLIST V2.07

Başka bir PsTools yardımcı programı olan PsLogList, yerel veya uzak sistemdeki olay günlüklerini döküm eder. Eloglist'ten farklı olarak, aynı amaca sahip Windows 2000 Resource Kit aracı, PsLogList bir kaydın tam olay dizesini görüntüler ve uzak günlüklerin dökümünü alırken yerel sistem yerine uzak sistemden olay günlüğü dize kaynak dosyalarını kullanır.

PsLogList'in 2.07 sürümü, genişletilmiş olay günlüğü kayıt bilgilerini (bir kayıtla ilişkilendirilebilen ek bilgiler) döküme yönlendirebilmeniz için bir komut satırı anahtarı ve yalnızca belirtilen en son günlerden kayıtları görüntüleyebilmeniz için yeni bir anahtar içerir.

PsLogList v2.07 sürümünü şu konumdan indirin: http://www.sysinternals.com/ntw2k/freeware/psloglist.shtml.

WINDOWS XP KAYNAK DÜZENI

Microsoft'un Windows NT/2000/XP çekirdeğini oluşturan kaynak kodunu nasıl düzenlediğini hiç merak ettiniz mi? Ben de öyle yaptım ve bilgilerin herkese açık olduğunu fark ettim. Microsoft, Windows 2000/XP'nin yeni bir derlemesini yayımlayışında birkaç sürüm yayınlar:

  • tek işlemcili "ücretsiz" sürüm
  • 4 GB'tan fazla fiziksel belleği destekleyen uiniprocessor "free" sürümü
  • çok işlemcili "ücretsiz" sürüm
  • 4 GB'tan fazla fiziksel belleği destekleyen çok işlemcili "ücretsiz" bir sürüm
  • "işaretli" çok işlemcili sürüm
  • 4 GB'tan fazla fiziksel belleği destekleyen "işaretli" çok işlemcili bir sürüm

Toplam 6 sürüm için. "Ücretsiz"i "işaretli" sürümünden ayıran şey, "ücretsiz" sürümün ücretsiz (değil) olması değil, MSDN CD kümesine dahil edilen "işaretli" sürümün işletim sistemi ve cihaz sürücüsü hata ayıklamasına yardımcı olan kod ve verileri içermesidir. "Ücretsiz" sürüm, koşullu derleme deyimlerine dahil edilen ek koddan bağımsız olarak derlenmiştir.

Fazladan denetlenen koda örnek olarak işletim sisteminin ne yaptığını bildiren hata ayıklama yazdırma deyimleri, cihaz sürücülerinden çekirdek modu işlevlerine geçirilen parametreler üzerinde daha sıkı tutarlılık denetimi ve "assertion" deyimleri verilebilir. Assert deyimi, bir geliştiricinin bir kod alanına uygulanan koşullar hakkındaki varsayımını doğrular. Örneğin, bir işaretçi tanımlayıcı imzaya sahip bir veri yapısına işaret etmesi gerekiyorsa, geliştirici bu etkiye onay ekleyebilir. Onay varsayımı ihlal edildiğinde ne olur? Bu, onay işlemine bağlıdır, ancak denetlenen derlemelere dahil olanlar söz konusu olduğunda bir hata ayıklama çıkış iletisi yazdırılır ve ardından bir hata ayıklayıcı kesme noktası tetiklenerek çekirdek hata ayıklayıcısı etkinleştirilir (veya hata ayıklayıcı etkin değilse, daha sonra incelenebilen bir döküm dosyası oluşturan bir kilitlenme oluşur).

Onaylar tarafından yakalanan sorunları tanımlamayı kolaylaştırmak için, denetlenen derlemede kullanılan onaylar onay konumunun dosyasını, işlevini ve satır numarasını yazdırır. "Dizeler" dize ayıklama yardımcı programımla bu dizeleri ayıklayıp bir java ağaç görünümünde düzenleyerek kaynak ağaç düzenini gösterebiliyorum.

Windows XP kaynak düzenini görüntüleyin ve onaylar hakkında daha fazla bilgi için bkz http://www.sysinternals.com/ntw2k/info/xpsrctree.shtml . (IE'nin sayfanın yavaş yüklenmesiyle ilgili bir uyarı görüntüleneceğini unutmayın. Bunu kapat, ağacı görürsünüz).

DEBUGVIEW V4.13

DebugView, aynı anda birden çok sistemden bile yerel sistemdeki veya uzak sistemdeki uygulamalardan veya sürücülerden hata ayıklama çıkışı yakalamanıza olanak tanıyan bir geliştirici yardımcı programıdır. Bu son sürüm, Windows XP RC 1 ile uyumluluk ekler. DebugView, Windows 9x, Windows Me, Windows NT, Windows 2000 ve Windows XP'de çalışır.

DebugView v4.13 sürümünü şu konumdan indirin: http://www.sysinternals.com/ntw2k/freeware/debugview.shtml.

PAGEDEFRAG V2.1, CONTIG V1.41

En popüler Sysinternals indirmelerinin en üstünde yer alan sıralama PageDefrag ve Contig'tir. PageDefrag önyükleme zamanında çekirdek sistem veri dosyalarını birleştirilir ve Contig bir komut satırı dosya birleştirme yardımcı programıdır. Bu araçların en son sürümleri, Windows 2000 için geliştirilmiş bir birleştirme altyapısına sahiptir ve her biri kendi geliştirmelerinden bazılarına sahiptir.

Kayıt Defteri ve disk belleği dosyalarını birleştirmenin yanı sıra, PageDefrag'ın en son sürümü de olay günlüğü dosyalarını bir arada bir arada oluşturur. Windows 2000'deki Chkdsk'ye benzer şekilde, PageDefrag'ın artık önyükleme işlemi sırasında 3 saniyelik bir geri sayım vardır. Bu işlem sırasında herhangi bir tuşa basarak birleştirmeyi atlayabilirsiniz.

Contig'i benzersiz kılan şey, tek tek dosyaları, tüm dizinleri veya diskin tamamını birleştirmek için kullanabileceğiniz gerçektir. Contig, ticari birleştiricilerden farklı olarak diskte gelecekteki parçalanmaları önlemeye yardımcı olmak için boş alanı birleştirmediğinden uygulama performansı açısından kritik olan belirli dosyaları iyileştirmeyi hedeflemektedir. Geliştirilmiş birleştirme altyapısının yanı sıra, yeni Contig hem ayrıntılı olmayan hem de ayrıntılı modlarda daha iyi çıkış biçimlendirmesine sahiptir.

PageDefrag v2.1'i şu konumdan indirin: http://www.sysinternals.com/ntw2k/freeware/pagedefrag.shtml.
Contig v1.4 sürümünü şu konumdan indirin: http://www.sysinternals.com/ntw2k/freeware/contig.shtml.

WWW.MICROSOFT.COM'DA SYSINTERNALS

Bir kez daha, son bültenden bu yana yayımlanan Microsoft Bilgi Bankası (KB) makalelerinde Sysinternals başvurularının en son yüklemesini bulabilirsiniz. Bu, Sysinternals için toplam KB başvurusu sayısını 27'ye getirir.

  • SQL Server ODBC Sürücüsü ile "Yıkıcı hata" iletisini 0x8000FFFF
    http://support.microsoft.com/support/kb/articles/Q243/3/49.ASP

  • ACC: Hata İletisi: ActiveX Bileşeni Nesne Oluşturamıyor
    http://support.microsoft.com/support/kb/articles/Q296/2/05.ASP

  • NASıL YAPıLıR: Internet Explorer Tarafından Kullanılan MSXML Sürümünü Belirleme
    http://support.microsoft.com/support/kb/articles/Q296/6/47.ASP

  • NASIL YAPıLıR: "ADODB. Bağlantı" Recordset DTC'den Hata 800a0bb9
    http://support.microsoft.com/support/kb/articles/Q197/3/23.ASP

  • BİlGİ: 80004005 ve Diğer Hata İletileri için Sorun Giderme Kılavuzu
    http://support.microsoft.com/support/kb/articles/Q183/0/60.ASP

  • XADM: Posta Kutusu Deposu Doldurulduğunda Olay Kimliği 3036 ve 3026 İletileri Oluşuyor
    http://support.microsoft.com/support/kb/articles/Q296/1/36.ASP

İç BİlGİLER

WINDOWS 2000'IN IÇINDE, ETKILEŞIMLI DVD

Dave Solomon ve ben Windows 2000'in iç ve mimarisinin resmi kılavuzu olan "Inside Windows 2000, 3rd Edition" yazdık ve "Inside Windows 2000" DVD öğreticisinin yaklaşan sürümünü duyurmaktan heyecan duyuyoruz. Öğretici aslında dave ve ben resmi olmayan bir ortamda Windows 2000'in iç çalışmalarını öğreten 9 saatten fazla içeriğe sahip 5 DVD'den oluşur.

Ele alınan konular arasında bellek yönetimi, işlemler ve iş parçacığı, depolama, dosya sistemleri, ağ ve daha fazlası yer alır ve her biri kolay görüntüleme için 10-20 dakikalık modüllere ayrılmıştır. Sunum onlarca diyagram, tanıtım, ekran görüntüsü ve özet listesi içerir ve her modül, anlayışınızı test etmek ve sağlamlaştırmak için inceleme sorularıyla sona erer.

Son fiyatlandırma ve yayın tarihi henüz kesinleştirilmemiştir, ancak yayın hakkında bildirim almak isterseniz konuyla ilgili "ilgi" sözcüğünü içeren bir e-posta mailto:video@... gönderin. Ya da ayrıntılar için izleyin http://www.sysinternals.com/video/ .

TARIHI IŞARETLEYIN: RUSSINOVICH & SOLOMON AUSTIN'DE BIRLIKTE DERS VERIYOR

DVD setine ilgi duyuyorsanız Dave ve benim NT şirket içi öğretmenliğimizi canlı olarak görme fırsatıyla kesinlikle ilgileneceksiniz. 3 günlük Windows XP/2000/NT İç Mimari sınıfımızı sunmak için TX 11-13 Aralık'ta Austin'e gelin. sınıfı "Inside Windows 2000, 3rd Edition" tabanlıdır ve ortam alt sistemlerini, sistem çağrısı göndermeyi, sistem iş parçacıklarını, başlatma ve kapatmayı, kayıt defteri iç bileşenlerini, işlemleri ve iş parçacığı zamanlamasını, bellek yönetimini, güvenliği, G/Ç sistemini, depolamayı, NTFS'yi ve önbellek yöneticisini kapsar. Windows XP ve 2000'in iç çalışmalarını anlayarak platformdan daha etkili ve daha etkili bir şekilde hata ayıklama ve sorunları giderme avantajlarından yararlanabilirsiniz.

Ayrıntılar sağlandığında haber bülteninde ve web sitesinde size bildiririz, bu nedenle bizi izlemeye devam edin!

KOMUT SATıRı DISK MANAGEMNT

Sistem yöneticilerinin baskısına boyun eğen Microsoft, sonunda Windows 2000'de diskleri yönetmek için betiklenebilir bir komut satırı aracı yayımladı. DiskPart; birimler veya bölümler oluşturmanıza, yansıtma oluşturup kesmenize, birimleri genişletmenize ve disklerin, birimlerin ve bölümlerin ayrıntılarını incelemenize olanak tanır. DiskPart'ın ücretsiz olarak indirilmesi iyi bir şey http://www.microsoft.com/downloads/release.asp?ReleaseID=31167.

WINHEC 2001 SLAYTLAR ÇEVRIMIÇI

Microsoft'un yıllık Windows Donanım Mühendisliği Konferansı'nı (WINHEC) kaçırdıysanız, yine de sunuların çoğundan slaytları görüntüleyebilirsiniz. Oturumların, açıklamaların ve Power Point destelerinin eşlik eden bağlantılarının listesi için ziyaret edin http://www.microsoft.com/winhec/sessions/driver.htm . Genel olarak ilgi çekici sunular sürücü hata ayıklama teknikleri, filtre sürücüleri ve NDIS miniport ile ara sürücülere yöneliktir.

XP'DE YENI DOSYA SISTEMI FILTRESI SÜRÜCÜ ARABIRIMLERI

Dosya sistemi filtre sürücüsünü temel alan gerçek zamanlı bir dosya yansıtma, erişim üzerinde virüs denetimi veya hiyerarşik depolama yönetimi ürününüz varsa, Microsoft'un Windows XP'de sizi etkileyen değişikliklerden en iyi şekilde emin olmanız gerekir.

En büyük değişiklik hızlı G/Ç yordamlarıyla, bir dosya sistemi sürücüsünün kaydedilerek Bellek Yöneticisi, Önbellek Yöneticisi ve G/Ç sisteminin IRP oluşturmak zorunda kalmadan dosya sistemi G/Ç'sini yürütebilmesi ve dosya sistemi sürücüleriyle etkileşim kurabilmesi için özel işlevlerle ilgilidir. Dosya sistemi filtre sürücülerinin her zaman atlandığı 6 hızlı G/Ç yordamı olduğunu öğrenmek bazılarınız için sürpriz olabilir. Bunlar:

FastIoAcquireFileExclusive
FastIoReleaseFile
FastIoAcquireFileForCcFlush
FastIoReleaseFileForCcFlush
FastIoAcquireFileForModWrite
FastIoReleaseFileForModWrite

Bellek Yöneticisi, bir dosya tarafından yedeklenen bir bölüm oluşturmadan önce ve sonra öğesini çağırır FastIoAcquireFileExclusive FastIoReleaseFile ve diğer çekirdek modu alt sistemleri, bölümlerin oluşturulmasını geçici olarak önlemek için bu yordamları çağırabilir. Önbellek Yöneticisi, bir dosyanın değiştirilmiş önbelleğe alınmış verilerinin tamamını veya bir kısmını diske geri boşaltıp önce ve sonra çağırır FastIoAcquireFileForCcFlush FastIoReleaseFileForCcFlush ve Bellek Yöneticisi, kirli eşlenmiş dosya sayfalarını bir dosyaya geri yazıp önce ve sonra çağırır FastIoAcquireFileForModWrite FastIoReleaseFileForModWrite .

Çekirdek modu alt sistemleri, hızlı G/Ç işlevlerini doğrudan çağırmak yerine vekil dosya sistemi çalışma zamanı (FsRtl) yordamlarını kullanır. Çoğu hızlı G/Ç işlevi için çalışma zamanı yordamları, hedef dosya nesnesine yapılan bir çağrı IoGetRelatedDeviceObject aracılığıyla filtre cihaz nesnesine başvuru alarak filtre sürücülerini çağırır ve ardından filtrenin karşılık gelen hızlı G/Ç yordamını çağırır, ancak bunun yerine yalnızca listelenen hızlı G/Ç çağrılarıyla ilgili çalışma zamanı yordamları, IoGetBaseFileSystemDeviceObjecttemel dosya sistemi sürücüsünün cihaz nesnesini döndürür. Çalışma zamanının bu işlevler için filtreleri atlamasının nedeni, bana göre biraz zayıf olmasıdır: çalışma zamanı filtre sürücülerine güvenmez. Bir filtre bu çağrıları temel dosya sistemi sürücüsüne geçirmezse, dosya sistemi veri bozulmasına ve neredeyse kesinlikle kilitlenmeye neden olur. Ancak, bir filtre sürücüsünün kilitlenmelere neden olmak için yapabilecekleri birçok şey vardır.

Windows XP'de FsRtl, FsRtlRegisterFileSystemFilterCallbacksfiltre sürücülerinin bu çeşitli işlemler için geri çağırmaları kaydetmek için kullandığı yeni bir işlevi tanıtır. Bu, dosya sistemi filtre sürücülerinin bu işlemleri incelemesini ve hatta başarısız olmalarını mümkün kılar ve çalışma zamanı, temel alınan dosya sistemi sürücüsünün her zaman uygun olduğunda çağrılmasını sağlayabilir. İşlevin belgelerini nerede bulabilirsiniz? Microsoft tarafından 995 ABD doları karşılığında sunulan Windows XP Yüklenebilir Dosya Sistemi Seti: http://www.microsoft.com/ddk/ifskit/XPdefault.asp.

WINDOWS'U TUŞ VURUŞUYLA KILITLENME

Birkaç bülten önce Windows 2000 Kayıt Defteri'ne özel bir anahtar dizisiyle çalışan bir sistemin Bluescreen kilitlenmesini başlatmanıza olanak tanıyan ve girişe yanıt vermeyen sistemleri analiz etmenizi sağlayan bir ayarı nasıl ekleyebileceğinizi söylemiştim. Kayıt Defteri'nde herhangi bir şey ayarlamak zorunda kalmadan Windows NT ve Windows 2000'i kilitlenmenin bir yoluna ne dersin?

Bir komut istemi penceresi açın, geçerli dizini önyükleme sürücünüzün köküne \winnt (üzerindeki sürücü) değiştirin ve yazın dir /s. Bu işlem çalıştırılırken F7+Enter tuşlarına birkaç kez basın ve ardından Ctrl-C girerek listeyi durdurun. Hemen mavi bir ekranla veya kendiliğinden yeniden başlatmayla karşılaşırsınız. Güzel, değil mi? Ne yazık ki, daha önce bildirdiğim numaradan farklı olarak, bu davranış tasarlanmamış, bunun yerine şu konumda bir rapor bulabileceğiniz bir hatadır: http://www.WindowsITsecurity.com/articles/index.cfm?articleID=22037.

Tuş vuruşu kilitlenme ayarını içeren bülteni kaçıranlar için, Microsoft Hata Ayıklama Araçları yardım dosyasındaki yönergelere göre Windows 2000 veya XP Kayıt Defterinize aşağıdaki Kayıt Defteri değerini ekleyin:

HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\i8042prt\Parameters\CrashOnCtrlScrll DWORD 1

Yeniden başlatın ve sol denetim tuşunu basılı tutarken iki kez scroll-lock yazarak sistemi kilitleyebilirsiniz.

WINDOWS XP PREFETCHING

Microsoft, Windows XP'yi son kullanıcı deneyimini geliştirmeye odaklamıştır ve kullanıcılar bu deneyimin büyük bir kısmını bilgisayarın açıldığı ve kullanılabilir olduğu hız olarak değerlendirmiştir. Bu nedenle, bir Microsoft geliştiricileri önyükleme işleminin ve uygulama başlatmanın performansını geliştirmek için büyük çaba harcamış durumdadır. Bu sorunu çeşitli yollarla ele aldılar: birincisi, seri olarak başlatıldıkları Windows 2000'in aksine seri ve ağ cihaz sürücülerinin paralel olarak başlatılmasıdır. İkincisi, Winlogon artık oturum açma iletişim kutusunu sunmadan ve kullanıcının oturum açmasına izin vermeden önce iş istasyonu hizmetinin (kendisi ağ hizmetlerinde bekler) kullanılabilir duruma gelmesini beklemez. Son olarak, önyükleme işlemine ve uygulama başlatmaya "prefetching" adlı bir teknik eklemişlerdir. Önceden hazırlamanın nasıl çalıştığını kısaca ele alacağım ve sizi Microsoft'un önyükleme iyileştirmeleri hakkında yayımladığı bir teknik incelemeye işaret edeceğim.

Windows (gerçek mod Win3.1 dışındaki tüm sürümler), bir uygulama erişmeye çalışırken dosya verilerinin ve kodun diskten belleğe "hatalı" olarak eklendiği isteğe bağlı bir işletim sistemidir. Veriler ve kod, cpu'nun bellek yönetimi donanımı tarafından sayfanın boyutunun dikte edildiği "sayfa" parçalı öbeklerde hatalıdır. Sayfa, x86 üzerinde 4 KB'tır. Önceden oluşturma, talep etmeden önce diskten belleğe veri ve kod sayfaları getirme işlemidir.

Xp Cache Manager, nelerin önceden ortaya konması gerektiğini bilmek için uygulamaların başlangıçta ortaya konan sayfa hatalarını izler. Varsayılan olarak, önyükleme işleminin ilk 2 dakikasını ve uygulama başlatma işleminin ilk 10 saniyesini izler. NTFS Ana Dosya Tablosu (MFT) meta veri dosyasında alınan hatalara göre düzenlenmiş bir izleme topladıktan sonra (uygulama NTFS birimlerindeki dosyalara veya dizinlere erişiyorsa), başvuruda bulunulan dosyalar ve başvuruda bulunulan dizinler, adlandırılmış bir olay nesnesine sinyal vererek Görev Zamanlayıcı'nın ön bileşene bildirir. Görev Zamanlayıcı, bir izleme sorgusu belirten ve bunu içinde okuyan bir bilgi türüyle NtQuerySystemInformation çağrısı yapar. İzleme verileri üzerinde işlem sonrası gerçekleştirdikten sonra, Görev Zamanlayıcı bu verileri altındaki \Windows\Prefetchbir dosyaya yazar. Dosyanın adı, izlemenin uygulandığı uygulamanın adı ve ardından bir tire ve dosyanın yolunun karmasının onaltılık gösterimidir. Dosyada bir ".pf" uzantısı olduğundan not defteri örneği olabilir. EXE-AF43252301.PF.

Dosya adı kuralı için özel durum, önyüklemenin izlemesini depolayan ve her zaman adlı NTOSBOOT-B00DFAAD.PF dosyadır (programcıların başlatılmamış verileri temsil etmek için sıklıkla kullandığı onaltılık uyumlu "BAADF00D" sözcüğünün bir kıvrımı). Sistem veya Boşta işlemlerinde alınan tüm hatalar önyüklemenin bir parçası olarak kabul edilir; bu, cihaz sürücülerinin yükleyip başlatması Sistem işleminde olduğu için mantıklıdır.

Önyükleme başladığında veya bir uygulama yürütürken İşlem Yöneticisi önbellek yöneticisini çağırarak ön işlem gerçekleştirme fırsatı verir. Önbellek Yöneticisi, söz konusu prefetch senaryosu için bir izleme dosyası olup olmadığını görmek için prefetch dizinine bakar. Önbellek Yöneticisi herhangi bir MFT meta veri dosyası başvurularını önceden eklemek için NTFS'yi çağırdığında, başvuruda bulunulan dizinlerin her birinin içeriğini okur ve son olarak başvuruda bulunulan her dosyayı açar ve bellekte bulunmayan izlemede belirtilen tüm veri ve kodlarda okumak için Bellek Yöneticisi'ni kullanır. Bellek Yöneticisi tüm okumaları zaman uyumsuz olarak başlatır ve ardından uygulamanın başlatılmasına izin vermeden önce bunların tamamlanmasını bekler.

Bu düzen nasıl bir performans avantajı sağlar? Yanıt, normal önyükleme veya uygulama başlatma sırasında hata sırasının, bazı sayfaların bir dosyanın bir bölümünden, sonra başka bir bölümden, sonra başka bir dosyadan birkaç, sonra bir dizinden bazılarının vb. getirilmesi şeklinde olmasıdır. Bu atlama doğrudan diskte gezinmeye karşılık gelir ve Microsoft, disk arama sürelerinin önyükleme ve uygulama başlatma sürelerini yavaşlatan baskın bir faktör olduğunu analiz yoluyla öğrenmiştir. Arama, belirli bir dosya veya dizindeki verileri önceden okurken, başka bir dosyaya geçmeden önce bir kerede ortadan kalkar.

Aramayı daha da küçültmek için, Görev Zamanlayıcı her üç günde bir veya bu şekilde bir dosya ve dizin listesini bir önyükleme veya uygulama başlatma sırasında başvurulabilecekleri sırayla düzenler ve listeyi adlı \Windows\Prefech\Layout.inibir dosyada depolar. Ardından, tam birleştirme gerçekleştirmek yerine birleştiriciye dosyanın içeriğine göre birleştirmesini bildiren bir komut satırı seçeneğiyle sistem birleştiricisini başlatır. Birleştirici, listelenen tüm dosya ve dizinleri barındıracak kadar büyük bir birimde bitişik bir alan bulur ve sonra bunları alana taşır ve böylece biri ardına depolanır.

Bunlar, Microsoft'un önyükleme işlemini önemli ölçüde hızlandırdığını bildirdiği XP ön hazırlık şemasının temelleridir (ASLıNDA XP'nin Windows 2000'den çok daha hızlı önyüklendiğini görebilirsiniz). Ön yükleme ve diğer hızlı önyükleme geliştirmeleri hakkında daha fazla bilgiyi şu teknik incelemede bulabilirsiniz: http://www.microsoft.com/hwdev/fastboot/. Ayrıca, Dave Solomon ve ben "Inside Windows 2000" (bahar ortasında yayın için) XP düzeltmesi üzerinde çalışmaya başladık ve orada daha ayrıntılı bir açıklama bulacaksınız.

WINDOWS .NET BAĞLANTıLARı

TechEd'de beni özleyenler, 3 Ekim'de Scottsdale, Arizona'daki Windows .NET Bağlantıları konferansında konuşmamı duyabilirler. Windows XP'de Windows NT/2000 kilitlenme bilgi dökümü analizi ve çekirdek değişiklikleri üzerinde sunular yapıyorum. Konferansta diğer konuşmacılar arasında Windows 2000 Magazine'in katkıda bulunan editörleri Mark Minasi ve Sean Daily yer alıyor. Haber bülteninden konferans hakkında bilgi edindiyseniz bana haber verin.

Konuşmalarımın özetlerini görebilir ve adresinden Windows .NET Bağlantıları sitesine bir bağlantı bulabilirsiniz http://www.sysinternals.com/ntw2k/info/talk.shtml.

YAKLAŞANLAR

ITANIUM DENEYIMLERIM

Microsoft, Sysinternals yardımcı programlarını Win64'e taşımam için bana bir Itanium sistemi ödünç verdi. Bu arada makinenin etkileyici özellikleri vardır: 2 733 MHz işlemci ve 8 GB (!) RAM. Bir dahaki sefere, Win64 üzerinde çalışması için çeşitli yardımcı programlarda yaptığım değişiklikler de dahil olmak üzere taşıma deneyimlerimden bahsedeceğim.


Sysinternals Bülteni'ni okuduğun için teşekkür ederiz.

Yayın tarihi: 20 Ağustos 2001 Pazartesi 19:03 ottoh

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