Kısa cevap: lisans
Denklemdeki donanım dışında, çoğunlukla yapay bir yazılım kısıtlamasıdır:
[] Limiti, ZwQueryLicenseValue
Microsoft’un yayınladığı sembol dosyalarının adını verdiği dahili bir prosedürden denilen adlı bir işlev çağrılarak kayıt defterinden alınır MxMemoryLicense
.
Kaynak: 32 Bit Windows Vista'daki Lisanslı Bellek
Ek bilgi
Tabii ki, belgelenmemiş bir formatta bile kayıt defterinde saklanan lisans verileri, kullanıcılar tarafından kolayca değiştirilebilir; bu durum, Microsoft farklı lisanslar için önemli ölçüde farklı fiyatlar talep ettiğinden, denemek için bazı teşvikleri vardır. Bu nedenle Microsoft, lisans verilerinin Microsoft'un istediği şekilde kaldığını kontrol etmek için ayrıntılı bir şemaya sahiptir. Çekirdek, lisans verilerinin değiştirilip değiştirilmediğine ilişkin bir depodur ve bu amaçla iki işlevi daha ihraç eder ExGetLicenseTamperState
ve ExSetLicenseTamperState
.
Kaynak: Yazılım Lisanslama
ExGetLicenseTamperState
Bu [belgelenmemiş] işlev, çekirdeğe lisans verilerinin değiştirilip değiştirilmediğini sorar.
Dahili kullanım yaklaşık her saatte bir tekrarlayan bir zamanlayıcıda. Dış müdahale durumu olduğu tespit edilirse, 4
Windows durur. Hata kontrol kodu SYSTEM_LICENSE_VIOLATION
( 0x9A
), 0x1B
ilk argüman olarak.
Kaynak: ExGetLicenseTamperState
Pratik bir örnek
Diyelim ki 32 GiB RAM'e sahip bir bilgisayarınız var ve Windows 7 Home Premium x64'ü (64-bit) kurdunuz. Bu durumda 16 GiB ile sınırlı kalacaksınız. Windows Anytime Upgrade'ı kullanıyorsanız ve daha pahalı bir sürüme yükseltirseniz, aniden limit bunun yerine 192 GiB olarak belirlenirdi.
Sonuç
Tüm Windows 7 sürümleri aynı kaynak kodunu paylaşır. En büyük fark, etkinleştirilen veya devre dışı bırakılan özelliklerin / sınırlamaların sayısıdır. Profesyonel ve daha yüksek istemci sürümlerinin, ne kadar RAM kullanabilecekleri konusunda bir üst sınırı yoktur ve yalnızca Microsoft'un destekleyeceği garantiyle lisanslıdır.
Ek olarak, Windows 7 EULA açıkça "ticari yazılım barındırma hizmetleri için yazılımı kullanamayabileceğinizi" söylüyor, Microsoft, en yüksek istemci sürümünün lisanslı olduğu lisanslı bilgisayardan daha fazla RAM'e ihtiyacınız varsa, gerçekte istediğinizi bir sunucu olduğunu varsayıyor lisans. Windows 7'nin sunucu karşılığı (yani, Windows Server 2008 R2), Enterprise ve Datacenter sürümlerinde 2 TiB RAM kullanabilir.
Teknoloji hızla ilerlerken, dün kabul edilebilir olan şeyler yarın yetmeyebilir. Yakalamak için, Windows 8, Core ve Pro / Enterprise sürümleri için sırasıyla 128 GiB ve 512 GiB sınırlarını yükseltti. Ancak bu, yalnızca 64 bit sürümler için geçerlidir: 32 bit sürümler yine de 4 GiB'de sınırlıdır. Sunucu sürümü, Windows Server 2012, daha yüksek sürümlerde 4 TiB RAM'e kadar hizmet verebilir.
daha fazla okuma