Browser hafıza kullanımı karşılaştırması

0
conan
Bu sabah surf halindeyken phoenix'imin kaç tane tab açabileceğini denemek istedikten sonra aklıma browserların hafıza kullanım karşılaştırmasını yapmak geldi. Elimde olan iki browserda genelde gezindiğim 17 sayfayı aynı anda açarak Task manager vasıtasıyla hafıza kullanım oranlarını karşılaştırmaya çalıştım. İşte sonuçlar.
Browserlar:
Internet Explorer: 6.0.2800.1106 SP1, Q324929
Phoenix: Mozilla/5.0 (Windows; U; Windows NT 5.0; en-US; rv:1.2b) Gecko/20021029
Phoenix/0.4
Test edilen URL listesi:
Bu sayfalarin son iki tanesi hariç genelde hepsi statik sayfalar. Son iki sayfa ise flash içeren sayfalar.
www.msn.com/
windowsmedia.com/mg/Radio.asp?locale=409
windowsmedia.com/mg/home.asp?
http://cstrike.gamewarriors.com
www.killefiz.de/zaurus/
newbreedsoftware.com
www.vwmkiv.com/monsoon.htm
www.vwmkiv.com/
forums.vwvortex.com
ccvs.cvshome.org
en.tldp.org
www.fazlamesai.net/
www.fazlamesai.org/forum/
www.fazlamesai.net/hardcore.php3
www.weather.com
forums.vwvortex.com
foxsports.lycos.com
www2.warnerbros.com
Browser Hafıza Kullanımı:
IE: 58 MB
Phoenix: 59 MB
Phoenix tablar icerisinde: 42 MB Notlar:
1) Tahmin edeceğiniz gibi son iki sayfada hafıza kullanımı flash plugininin de devreye girmesiyle oldukça artıyor. İşin ilginci bu artışın IE de fazla olmaması. Yani Phoenix html sayfaları gösterirken yaklaşık 20-28 MB civarlarında hafıza kullanırken, IE'de bu miktar 27-38 MB civarlarında. Ne zaman ki flash devreye giriyor hafıza kullanımı Phoenixde bir anda neredeyse iki katına çıkıyor.
2) Tab browsing hafıza kullanımı büyük ölçüde azaltıyor. Phoenixde 17 MBlık bir hafıza kârımız görülüyor. Belki IE de bu tip bir teknoloji kullanarak hafıza kullanımı azaltabilir.

Görüşler

0
sleytr
Opera 7.03 37MB (tablar içinde)
Son iki sayfayı kapatınca 34MBa düştü.
Hem Phoenixin hem de Opera nın ilk açılıştaki bellek kullanımları 16mb civarındaydı. ancak rutin olarak kullandığım browser ve eposta istemcisi Opera olduğu için bu pek eşit bir karşılaştırma olmadı. Sanırım Phoenix kadar taze ve az kullanılmış bir kurulum olsaydı bellek kullanımı (özellikle açılıştaki) ve açılış süresi belirgin derecede daha az olurdu.
0
anonim
IE'de entersan bir durum var
minimize ve maximize ettikten sonra
30mb olan memory kullanimi 5-6Mb lere kadar dusuyor ve peek seviyesine cikmiyor.

0
redial
task manager yaniltiyor olabilir mi?
0
anonim
Windows uzerinde bu tur testler yapmaya cikmayin. Windows PE programlarini tamamen yayilmis flat bir duzlem uzerinde calistirir. Ornegin, program sona erse bile ayrilmis bellek bolgeleri hala yerinde kalabilir. MS bunu cozmek icin bir Patch tablosu kullanir. Fakat, bir browser pek cok bilesenden olusur ve hepsinin cok itinali olarak koordine calisan bir patch tablosu kullanmasi gerekir. Halbuki boyle bir tablo yok ortada..

Sonuc olarak Linux'un programlari virtual bir PC uzerinde calistiriyor olmasi durumu Windows'ta yok. Bu nedenle de bellek bolunmesi gibi sorunlar baslar. Bilhassa Win9X kullaniyorsaniz, 200 MB bellek bosken 1 MB allocate edemeyebilirsiniz. Browserlerin kucuk kucuk cok fazla bellek bolumune ihtiyac duymasi onlari kendi patch tablolarini olusturmaya zorlar. Browserler genellikle bir defada buyuk bellek alanlarini birden alloc eder, sonra bunu parca parca kullanir. En azindan IE boyle yapiyor. Fakat sistem memory pool patchleri ile bunu entegre ederseniz, baska uygulamalarin kendi maplarinizla entegre olmasini ve sonucta ayridiginiz bellegi onlarinda kullanmasini saglayabilirsiniz.

Bu karisik ve yarim yamalak paragraflar ne sayikliyor derseniz, o gordugunuz 34 MB RAM kullanilan bellegi ifade etmez. Browserin memory pool buyuklugunu verir. Dogru sonuca ulasmak icin sistem patch tablolarini izlemeniz gerekir. Buda o kadar kolay degil, ancak bir emulator icinde sistemi calistirip, Page/segment descriptorlerini de isin icine katarak ugrasmanizi gerektirir.

0
sleytr
o gordugunuz 34 MB RAM kullanilan bellegi ifade etmez
demişsiniz. doğru anladığımdan emin değilim;
diyelimki yeni açılmış sistemde 40mb boş fiziksel bellek var. IE yada başka bir programda bu dediğiniz yöntemle 34MBı kendine ayırdı. diğer programların kullanabileceği alan ne kadardır?

bu arada aynı olay browserlar dışında birçok programda da oluyor. (flashfxp, metapad, acrobat, calc)

0
anonim
Olacak elbette.. Windows berbattir derken, hic bir halt etmez demiyoruz ki.. Win9X serisi pseudo flat bir bellek modeli kullanir. Dogrusu, tum bellek alani tek bir segment gibi goruluyor. Ornegin, 0028 Segmenti VFAT tarafindan tutuluyor. 0157 segmenti VXD space, 0151 segmenti NTKERN space gibi.. Programlar icin bu segmentler erisilebilir halde. Bu nedenle mesela CIH virusu kolayca kendini kernele bagliyabiliyor.

Hal boyle olunca destruct edilince otomatikman bosalacak bir VM yapisi yok. XP ve NT+W2K bu bolgeleri bir tur trap mekanizmasi ile kullanima aciyorlar.

Simdi durum boyle olunca en buyuk sorun bellek ayirmada yasaniyor. Siz kendi segmentinizde degil, herhangi bir segmentte bellek ayirabilirsiniz. Elbette bunu malloc() ile yapmazsiniz, ama mesela bir interface cagirirsiniz, size donen pointer aslinda baskasinin segmentinde bulunur. Bu durumda Sistem son derece cetrefilli bir hale gelir. Herseyden once bellek defragmentasyonu otomatik olarak yapilamaz.

Bunlar Windows'un iyi bilinen bellek problemleridir ve blue Screen of death'in temel sebebidir. Faydasi nedir peki de MS bu yolu tercih etmis ? Programlar arasi iletisim ve Programlarin sisteme hakimiyeti cok daha kolay ve hizli yapilabilir bu sayede. Ornegin Exchange Server kurarsiniz, aslinda bir veri tabani olan kayitlarini size sanki bir diskmis gibi sunuverir. Yada MSSQL kernele oyle bir sarkarki VM mekanizmasi, paging mevzulari filan sadece ondan sorulur hale geliverir.

Hal boyle olunca sistemle koordine sekilde calisarak perallocated bellek kullanmak gerekir. Bunu aslen squid'de linux uzerinde benzer sekilde yapar. Preallocated bellek, dogru terim degil aslen. Siz kullanmak uzere bir memory pool olusturur, bir duvara poll bilesenlerini yazarsiniz (memory wall) bu duvardan sistem sizin alloc rutinlerinizi kullanarak kendine ve diger programlara bellek alani ayirabilir. Yani 34 Mbit sizin, ama kullanmadiginiz bolgeler gecici olarak digerlerine verilebilir. Paging gerekmeden.. Sonucta ne bos gorunen 10MB gercekten bostur, nede 34 MB browser'a aittir. Virtual aleme hosgeldiniz... Adi ustunde virtual memory management.. Hic bir sey gorundugu gibi degil. MS isin iyice suyunu cikarmis, olan sadece bu.. Mesela bu mekanizma Win98'lerde ilk 64 MB ile sinirlidir. Dolayisiyla kod segmentlerinin 64 MB'dan sonrasi swap'a gider, sonucta 1GB RAM'iniz olsa bile. MS, bunu reklam araci yapar. Win2K %30 hizli calisir der, bir yildiz koyar sonuna, dipnot olarak duser '128 MB ve daha fazla RAM olan makinelerde'... Yanisi Zaten Win98 64 MB uzerini kullanmiyorki. Biz Win98'de boyle bir gaflette bulunduk demez. Tipki DOS'un 640K siniri gibi..

Gevelemeden, Windows flat bellek mekanizmasi aslinda bir faciadir. Sonuc olarak ne gosterdigi bos bellegin bos oldugunu, ne dolu bellegin dolu oldugunu garantileyebilirsiniz. Uygulamanizi salarsiniz cayira, mevlam kayira diyebilirsiniz sadece. Cunku diger pek cok sey gibi vmm'i denetleyen API'lerde dokumanlastirilmamistir. Ama mesela Office bu API'leri tepe tepe kullanir ve o cussesine ragmen StarOffice'ten hizli olur..



0
redial
eline saglik, siir gibi okuyor :)
0
sleytr
bu güzel ve ayrıntılı açıklama için teşekkürler.
0
conan
bilgi akiyor! :)
Super!
0
conan
Bu arada Isletim sistemini vermeyi unutmusum yazida. Windows 2000 Server
0
skoylu
Hazir gazi almisken bir kac puf noktasindan bahsedelim.

Win2K Server, enterprise olcekte bir OS ya, cok iyi bellek yoneticisine sahiptir. MS boyle diyor.
Peki nasil bir seydir bu ? ia32 malum 32 Bit pointer kullanir. Bu 4GB eder. Demekki siz dilediginiz zaman 1 GB RAM alloc edebilirsiniz. Bir deneyin bakalim. Page File icin Terabayt dahi ayirsaniz, 1GB RAM alloc edemezsiniz.
Peki nasil oluyor, neler oluyor ? Bilinen bir sorundur. Exchange kurarsiniz. 2GB RAM takarsiniz. Ama o 1 GB bile zor gorur. Baska bir seyde yok alette..
Sorun sudur. W2K, 4GB space'i once ikiye boler. 2GB kernel icin, 2GB'ta user space icin ayirir. Eee, 2 GB RAM varsa ne olacak ? Once kernel gelir. O zaman, kernelin gereginden buyuk bir RAM parcasini alloc etmesi onlenemez. Sonucta 2GB RAM'iniz varsa gider bunun cogunun uzerine oturur. 2GB'nin altinda RAM sahibi iseniz pek sorun olmaz. Cunku kernel boot esnasinda buna bakar ve biraz daha insafli calisir.
Peki bu ne demektir ? Saskin VM sistemi 2GB RAM'inizi kendi menfaatleri icin istila ediyor demektir. Peki ne yapilabilir ?
Oncelikle tavisyemiz Windows yerine gercekten adam gibi bir OS koyun. Mesela BSD Veya Linux. Ama bu size zor geliyorsa, biz eski Windows'cular olarak size bir puf noktasi verelim.

boot.ini dosyasinin sonuna /3GB satirini ekleyin. Evet, bunu tiklayarak yapabileceginiz bir yer yok. Gene dustunuz begenmediginiz komut satirina. Elbette reboot etmeyi unutmamaniz gerekiyor.

Bu ne demektir ? VM'e 2GB limitini 3GB'de aramasini soylemis olursunuz. Boylece VM bol bol RAM var sanarak 2GB'nin ustune yatmaktan vazgecer.

Evet, Windows ne kadar kolay degil mi ? Ha bu arada bu puf noktasi bulana kadar okumaniz gereken 400 MB dokumani hic saymiyorum..

Ama boyle yapiyor olmaniz bile 2GB RAM alloc etmenize musaade etmez. Cunku MFC bunlari 1.2GB'de torpuler.
Bir zamanlar, Win3.0 filan yok ortada. Gates devrin onemli yazilim ureticilerini toplamis. Soruyor:

- Ey ahali, MS'nin en iyi bildiginiz ozelligi nedir ?

Koro halinde cevap:

- 640K

Tarih tekerrurden ibarettir. 16 Bit ile 32 Biti melezlemeye calisirken 64K resource limitini yaratan, bu yuzden de sistemde GB RAM olsa da hic bir sey calismazken %20 Sistem kaynagi dolu gosteren bu akli evveller, simdi de 1.2GB duvarina toslamak uzereler. Iste 64K limit uzerinde (WinXX'lerin resource handler tablosu, Icon, menu vs. handlerlerinin tutuldugu bolge), 16 Bitmis gibide calisan 32 Bit bir sistem yazdilar.
Ne preemptivity, ne gercekten paging yapan bir VM. Sonuc buraya geldi. Her sey oyle karman corman olduki, 34 MB Ram handle ettigini gordugunuz bir program aslinda ne kadar virtual bellek, ne kadar fiziksel bellek kullaniyor hesabi yok. Cunku dokumani yok.
Bir alet SWAP'e dustuyse vay halinize. 16 Tane processor, Terabitlik hatlariniz vs .olmus hikaye oluverir. Performans en az 20 kat duser. Sonucta adam gibi bir uygulama yaziyorsaniz SWAP'a dusmemelisiniz. Ama 4GB RAM yazsaniz bile brosurunuze, bunu garantileme sansiniz yok Windows'ta..

Windows bellek yonetimine hic girmeyin derim. En iyi windows olmayan windows'tur. Biraz once yeni alete temizce bir MDK9.0 attim. Artik aksam rahat uyuyabilirim. Masaustumde bir Windows kadar kabul edilemez gordugum ikinci bir sey olamaz.
Görüş belirtmek için giriş yapın...

İlgili Yazılar

Java(TM) 2 SDK, Standard Edition sürüm 1.4.0 çıktı

conan

En son Ocak sonunda Release Candidate (Sürüm adayı?) haberini gördüğüm J2SE`nin son sürümü olan 1.4.0 çıkmış. (Ya sessiz sedasız çıktı ya da sağırım :) Çıkış bildirisini buradan, dökümanlara buradan, yeni özelliklerine tam buradan, karar verdim indireceğim diyorsanız da buradan ulaşabilirsiniz. ;)

AJAX :: Asynchronous Javascript & XML

SHiBuMi

AJAX, özellikle web tabanlı uygulamalar geliştirenlerin hoşuna gidecek, çeşitli teknolojileri ve araçların birleşiminden oluşan, yeni olarak kabul edebileceğimiz bir teknoloji. AJAX bir programlama dili ya da aracı değil, yalnızca belli teknikleri kullanarak mevcut web uygulamalarının daha interaktif hale nasıl getirilebileceği üzerine kafa yoran bir teknoloji.

DeepBlue, IBM ve GO

redial

... “Ne istiyorsanız kullanın. 250 paralel işlemci yetmezse 500 tanesini kullanın, o da yetmediyse bin tane. Eğer o da yetmiyorsa benim `laptop´ıma ve oğlumun `PlayStation´ına el koyabilirsiniz. İşe yarayacak her insanı işe alın, eğer tanrı Zeus size fikir verecekse Yunanların ne dediğini umursamadan ben gidip onu Olimpos’tan sizin için getiririm ama bir büyük GO ustasını yenin yoksa...”

Tamamı için...

Editörün Notu: Mükemmel bir yazı, yazarın eline ve ruhuna sağlık.

İlginç Bir Röportaj

FZ

1995 yılında kuruldu. Şu anda bünyesinde 70 kişiyi istihdam ediyor. Geliştirdikleri ve şirketle aynı isimle anılan açık kaynak kodlu yazılım 4.000.000 yerde kurulu ve sorunsuz olarak çalışıyor. Kendileri ile ticari olarak iş yapan 4.000 müşterileri mevcut. Yahoo! 400 adet gerçek zamanlı, görev kritik uygulamasında bu şirketin yazılımını kullanıyor. Yahoo UK ise tamamen bu yazılıma güveniyor. FIFA World Cup sitesi de aynı yazılımdan faydalanıyor. Bu başarı öyküsünün başındaki adam yani şirketin genel müdürü de Linus Torvalds gibi Finlandiya'lı (ancak Linus'tan farklı olarak Helsinki Teknik Üniversitesi'ne gitmiş, Linus'un Helsinki Üniversitesi'ne gidişini yanlış bir karar olarak değerlendiriyor ve bu iki üniversite arasındaki farkı Berkeley ve Stanford arasındaki farka benzetiyor).

Anahtar sözcüğü hala bulamayanlar bu röportaja göz atabilirler.

Saatinizi Kullanarak Makinanızı Boot Edin (USB Bootable Knoppix)

FZ

Yanlış okumadınız, kol saatinizi kullanarak makinanızı boot edin, Linux alemine dalın. Bakanlar sizin deli olduğunuzu düşünsün siz ise bunu fark edemeyecek kadar meşgul olun.

Bunun için ihtiyacınız olan öncelikli olarak USB´den boot edilebilen küçültülmüş bir Knoppix, bir adet USB hafıza çubuğu barındıran kol saati, bir adet de USB portuna takılı hafıza çubuğundan boot edebilme yeteneğine sahip anakartlı bir bilgisayar.

Editörün Notu: Radyolarda istek parça çalınması gibi bazen biz de burada istek üzerine haber yapıyor benzer tadı yakalıyoruz, okumakta olduğunuz haber, bugün Linux eğitimi 2. kur, 3. seansa katılmış olan ve bu haberi okuduğunda gözleri parlayacak olan arkadaşlardan birinin isteği üzerine yapılmıştır ;-)