Mozilla.fi keskustelu

Tänään on 03.09.2010 18:51

Kaikki ajat ovat UTC + 2 tuntia [ DST ]




Aloita uusi ketju Vastaa viestiin  [ 27 viestiä ]  Mene sivulle 1, 2  Seuraava
Kirjoittaja Viesti
 Viestin otsikko: Ohjeet muistivuotojen jäljittämiseen Firefoxissa
ViestiLähetetty: 05.02.2006 18:38 
Poissa
Unohtumaton

Liittynyt: 28.12.2005 21:08
Viestit: 538
Jos et tiedä mikä on nightly build tai muistovuoto ei sano sinulle mitään, kannattaa lopettaa lukeminen tähän, sillä et todennäköisesti ymmärrä mitään mitä tämän jälkeen lukee.

Muistivuotojen jäljittäminen ei ole mitenkään helppoa puuhaa. Muistivuodot kuitenkin tuntuvat vaivaavan useita, joten kirjoitin ohjeet suomeksi siitä miten muistivuotoja voi yrittää jäljittää Windowsissa. Ohjeiden käyttö ei edellytä ohjelmointitaitoja, mutta kohtuullista koneenkäyttöä (ohjelmien lataus, Windowsin asetuksien muuttaminen, tiedostojen tallentaminen ja kopiointi sekä tieto siitä mikä nightly build on ja mitä sen asentaminen koneelle tarkoittaa) ja melko paljon työtä ja vaivaa.

Asennus
- Lataa viimeisin nightly-versio ja asenna se: firefox-1.6a1.en-US.win32.installer.exe
http://ftp.mozilla.org/pub/mozilla.org/firefox/nightly/latest-trunk/
Voit käyttää myös vakaampaa release versiota nightlyn rinnalla kun asennat molemmat omiin kansioihinsa ja luot kummallekin oman profiilin ja teet molemmille omat pikakuvakkeet joissa käynnistät profiilin esimerkiksi -p profiilin_nimi parametrillä. Esim: c:softwareFirefoxfirefox.exe -p default

- Lataa tämä html-sivu koneellesi. Se sisältää Javascriptin jonka voi suorittaa vain jos tiedosto sijaitsee lokaalisti kovalevyllä. Tallenna tiedosto esim. työpöydälle.
http://lxr.mozilla.org/mozilla/source/tools/footprint/leak-gauge.html?raw=1

- Aseta ympäristömuuttujat:
1. Mene Käynnistä->Asetukset->ohjauspaneeli->järjestelmä->lisäasetukset välilehti->ympäristömuuttujat
2. Lisää uusi käyttäjän ympäristömuuttuja painamalla Uusi... nappia.
3. Nimi: NSPR_LOG_FILE, Arvo: firefoxmemleak.txt
4. Ja toinen nimellä: NSPR_LOG_MODULES, Arvo: DOMLeak:5,DocumentLeak:5,nsDocShellLeak:5
5. Paina OK tallentaaksesi.


Käyttö
1. Sulje kaikki selaimet ja käynnistä nightly-versio ja surffaile sillä hetki.
2. Sulje selain
3. Kopioi nightly-version asennuskansiosta löytyvä firefoxmemleak.txt toiseen kansioon turvaan.
4. Käynnistä selain ja avaa lokaalisti tallentamasi javascriptin sisältämä html-sivu selaimeen.
5. Paina "enter the filename" linkkiä, Firefox kertoo että javascript on tietoturvariski ja pyytää lupaa sen ajamiseen. Anna lupa ja etsi avautuvasta file-valikosta tiedosto jonka kopioit turvaan.
6. Näyttöön tulostuu tekstiä joka kertoo tuliko muistivuotoja.

Mikäli käytössä on myös release-versio. Voi tuon hoitaa hivenen helpommalla. Eli selaimen sulkemisen jälkeen käynnistää release-versiolla suoraan raportointi-html-sivun ja avaa firefoxmemleak.txt tiedoston suoraan nightly-version asennuskansiosta. Jolloin yksi tiedoston kopiointi jää väliin. Jos käyttää pelkkää nightly-versiota pitää tuo tiedoston kopiointi tehdä, koska selain luo aina uuden firefoxmemleak.txt tiedoston ja tallettaa sen vanhan päälle kun selain käynnistetään.

Huomaa että myös release-versio tekee tuon firefoxmemleak.txt tiedoston kun se käynnistetään. Tiedosto luodaan työkansioon joka on oletuksena asennuskansio, mutta jos esimerkiksi avaat selaimen tuplaklikkaamalla html-tiedostoa työpöydältä, on työpöytä silloin työkansiona.

Normaali tilanne näyttää tältä (ei muistivuotoja, kaikki vasemmanpuoleiset arvot nollina):
Koodi:
Summary:
Leaked 0 out of 24 DOM Windows
Leaked 0 out of 42 documents
Leaked 0 out of 5 docshells


Tyhjällä tiedostolla tulostus näyttää tältä (Kaikki arvot nollia. Tämä tarkoittaa yleensä sitä että Firefox tallensi tyhjän tiedoston. Yleensä se johtuu ympäristömuuttujissa olevasta virheestä tai väärän Firefox-version käyttämisestä):
Koodi:
Summary:
Leaked 0 out of 0 DOM Windows
Leaked 0 out of 0 documents
Leaked 0 out of 0 docshells


Muistivuodon sattuessa voi tulostua jotain tämänsuuntaista (vasemmalla on nollasta poikkeavia arvoja, sen lisäksi tulostuu alkuun muuta tekstiä):
Koodi:
Leaked outer window 1b11718 at address 1b11718.
Leaked inner window 1aeafe8 (outer 1b11718) at address 1aeafe8.
... with URI "about:blank".
Leaked outer window 1b859a8 at address 1b859a8.
Leaked inner window 1b9e5b8 (outer 1b859a8) at address 1b9e5b8.
... with URI "about:blank".

Summary:
Leaked 11 out of 91 DOM Windows
Leaked 22 out of 112 documents
Leaked 0 out of 34 docshells


** Vuodon toistaminen ja raportointi
Se että saat näkyviin listauksen muistivuodoista ei vielä auta paljoa. Sinun pitää myös keksiä miten sen saa toistettua. Raportissa näkyvät osoitteet voivat auttaa sinua muistamaan millä sivuilla olit kun muistivuodot tapahtuivat, mutta pelkkä sivuille meno ei välttämättä laukaise muistivuotoa. Pitää ehkä painaa jotain nappia tai tehdä jotain muuta. Sillä voi olla merkitystä oliko sivuhistoria tai cookiet tyhjiä vai täysiä kun menit sivulle.

Jos keksit miten saat toistettua bugin joka kerta, kirjoita ohjeet siitä miten pitää toimia että vuoto tapahtuu. Oletusarvoisesti vuodon pitäisi syntyä tyhjällä profiililla ja ilman laajennuksia ja tuoreimmalla versiolla (nightly buildista pitäisi tulla uusi versio joka päivä). Toisto-ohjeet voi raportoida bugzillaan kun on varmistanut ettei vastaavasta ole jo raportoitu tai sitten tänne foorumille jossa joku voi testata ongelman toistoa ja raportoida sen tarvittaessa.

Toisto-ohjeiden laatiminen on ehdottomasti vaikeinta ja työläintä tässä hommassa. Itse olen saanut noin 5 logia muistivuodoista, enkä kertaakaan ole keksinyt miten toisto onnistuisi.

Tämä perustuu osittain englanninkielisiin ohjeisiin joihin pääsee käsiksi täältä:
http://www.squarefree.com/2006/01/13/memory-leak-detection-tool/


Ilmoita tämä viesti
Ylös
 Profiili  
Vastaa lainaamalla  
 Viestin otsikko: Re: Ohjeet muistivuotojen jäljittämiseen Firefoxissa
ViestiLähetetty: 05.02.2006 21:39 
Poissa
Suomennosprojektin vetäjä
Avatar

Liittynyt: 18.12.2004 22:05
Viestit: 2452
Paikkakunta: Helsinki
Muutetaas aihe (ainakin hetkeksi) pysyväksi, ettei ihan heti valahda toiselle sivulle.
Sivu saa siirtää wikiin (foorumitunnusten pitäisi toimia) joko heti tai itse siirrän sen sinne muutaman viikon muhittuaan.

Kiitos x:lle vaivastaan.

Lisäys: Firefoxin muistivuodoista puhuttaessa kannattaa pitää laajennukset mielessä. X:n jutun lähteartikkelin (tai inspiksen antaneen artikkelin) sarjaan kuuluu http://www.squarefree.com/2006/02/04/me ... -progress/ . Jutussa listataan muistia vuotaviksi yleisiksi laajennuksiksi Session saver, NoScript, IE Tab, ja FlashGot yhdessä Filterset.G Updaterin kanssa.


Ilmoita tämä viesti
Ylös
 Profiili  
Vastaa lainaamalla  
 Viestin otsikko: Re: Ohjeet muistivuotojen jäljittämiseen Firefoxissa
ViestiLähetetty: 14.02.2006 08:56 
Hyvä Ville!
...ja edelleenkin kiitos niille jotka jaksavat kehittää Firefoxia eteenpäin :)


Ilmoita tämä viesti
Ylös
  
Vastaa lainaamalla  
 Viestin otsikko: Re: Ohjeet muistivuotojen jäljittämiseen Firefoxissa
ViestiLähetetty: 19.02.2006 18:17 
Poissa
Tulokas

Liittynyt: 19.02.2006 17:32
Viestit: 9
Paikkakunta: Vantaa
Mielenkiintoista, sanoin vaaleanpunainen tiikeri

Olin tuossa äsken noin 12 tuntia konetta käytettyäni saanut melkoisen läjän
FireFox ikkunoita auki. Sitten yht\'äkkiä kettu lakkasi vastaamasta.

Nyt taas sitten toimii, mutta tällä hetkellä onkin vasta yksi selainikkuna auki.
Olisikin paljon kivampi surffailla jos uusia ikkunoita avautuisi harvammin.

Mutta näistä muistivuodoista vielä:
Ilmeisesti on niin, että vaikka ohjelma kaatuu, se ei välttämättä
tarkoita muistivuotoa?


Ilmoita tämä viesti
Ylös
 Profiili  
Vastaa lainaamalla  
 Viestin otsikko: Re: Ohjeet muistivuotojen jäljittämiseen Firefoxissa
ViestiLähetetty: 19.02.2006 18:19 
Poissa
Ylläpitäjä
Avatar

Liittynyt: 06.01.2005 13:33
Viestit: 1962
Paikkakunta: Espoo
Juuei, muistivuoto syntyy, kun muistia varataan, mutta varausta ei vapauteta.

_________________
Jussi "bekkeri" Bergström
It never fails; it always succeeds, but possibly with errors. -- Raymond Chen, The Old New Thing


Ilmoita tämä viesti
Ylös
 Profiili  
Vastaa lainaamalla  
 Viestin otsikko: Re: Ohjeet muistivuotojen jäljittämiseen Firefoxissa
ViestiLähetetty: 20.02.2006 06:06 
Poissa
Tulokas

Liittynyt: 19.02.2006 17:32
Viestit: 9
Paikkakunta: Vantaa
Tässä tulemmekin ohjelmointitekniikkaan. Ilmeisesti FireFox on C++ kääntäjällä tehty.
Sitten siinä on päällä kaikkea hienoa. :wink:


Ilmoita tämä viesti
Ylös
 Profiili  
Vastaa lainaamalla  
 Viestin otsikko: Re: Ohjeet muistivuotojen jäljittämiseen Firefoxissa
ViestiLähetetty: 21.04.2006 10:55 
Poissa
Tulokas

Liittynyt: 09.02.2005 14:50
Viestit: 24
Paikkakunta: Rovaniemi
Koneellani oli Firefox Preloader, joka tuntui olevan varsinainen muistisyöppö. Muistivaraus alkoi huiskimaan yli 100000 kt, vaikka olin laittanut asetukset aikalailla minimiin. Kaiken lisäksi firefox.exe jäi aina päälle, vaikka selain oli suljettuna. Poistin koko härvelin, selausnopeuteen tuolla Preloaderilla ei ollut mainittavaa nopeutusvaikutusta.
Muistivaraus Firefoxilla on nyt 30000-60000 kt, laajennuksia olen karsinut, taitaapa olla vaan Adblock + Filterset ja Restore Scroll Position jäljellä


Ilmoita tämä viesti
Ylös
 Profiili  
Vastaa lainaamalla  
 Viestin otsikko: Re: Ohjeet muistivuotojen jäljittämiseen Firefoxissa
ViestiLähetetty: 21.04.2006 11:22 
Poissa
Unohtumaton

Liittynyt: 17.04.2005 18:25
Viestit: 1490
Onko Adblock tavallinen vai Adblock Plus 0.7.
Mikäli on tavallinen, niin se kannattaa poistaa vaikka ongelmia ei olis, ja asentaa Adblock Plus 0.7, koska 0.7 on niin paljon helppokäyttöisempi jne, että huh huh.

ps: en Firefoxini muistin käyttöä seuraa, mutta nyt se näyttäis olevan tuota samaa luokkaa kuin sulla nyt.


Viimeksi muokannut foghorn päivämäärä 21.04.2006 11:26, muokattu yhteensä 1 kerran

Ilmoita tämä viesti
Ylös
 Profiili  
Vastaa lainaamalla  
 Viestin otsikko: Re: Ohjeet muistivuotojen jäljittämiseen Firefoxissa
ViestiLähetetty: 21.04.2006 13:29 
Poissa
Unohtumaton

Liittynyt: 26.01.2006 15:34
Viestit: 1243
aripekka kirjoitti:
Koneellani oli Firefox Preloader, joka tuntui olevan varsinainen muistisyöppö. Muistivaraus alkoi huiskimaan yli 100000 kt, vaikka olin laittanut asetukset aikalailla minimiin. Kaiken lisäksi firefox.exe jäi aina päälle, vaikka selain oli suljettuna. Poistin koko härvelin, selausnopeuteen tuolla Preloaderilla ei ollut mainittavaa nopeutusvaikutusta.
Muistivaraus Firefoxilla on nyt 30000-60000 kt, laajennuksia olen karsinut, taitaapa olla vaan Adblock + Filterset ja Restore Scroll Position jäljellä


Preloaderin tarkoitus on nopeuttaa Firefoxin avaamista ja sen vuoksi se pitää sitä koko ajan muistissa. Sen takia se firefox.exe on aina päällä. Selausnopeuteen sillä ei ole tarkoituskaan olla mitään vaikutusta.


Ilmoita tämä viesti
Ylös
 Profiili  
Vastaa lainaamalla  
 Viestin otsikko: Re: Ohjeet muistivuotojen jäljittämiseen Firefoxissa
ViestiLähetetty: 05.05.2006 08:25 
Vaikuttaako tuon Preloaderin reipas muistivaraus koneen nopeuteen esim. kuvankäsittelyssä, surffailussa, internet-puheluissa tai joissakin muissa yhteyksissä?

Kun tässä miettii ja muistelee, niin FF ladataan itseasiassa vain kerran, jos osaa käyttää tehokkaasti selaimen välilehtiä. Eli mitä hyödyttää latauksen nopeutus, jota käyttää päivän mittaan vain kerran?

Vaikka olenkin lievästi asian vieressä, niin voinee vielä kysyä, mitä eroa on, jos on avattuna 10 erillistä selainta tai yksi selain, jossa yhdeksän välilehteä?


Ilmoita tämä viesti
Ylös
  
Vastaa lainaamalla  
 Viestin otsikko: Re: Ohjeet muistivuotojen jäljittämiseen Firefoxissa
ViestiLähetetty: 05.05.2006 13:08 
Poissa
Unohtumaton

Liittynyt: 26.01.2006 15:34
Viestit: 1243
Kaapro kirjoitti:
Vaikuttaako tuon Preloaderin reipas muistivaraus koneen nopeuteen esim. kuvankäsittelyssä, surffailussa, internet-puheluissa tai joissakin muissa yhteyksissä?


Riippuu täysin siitä, kuinka paljon muistia on käytössä. Eli jos on esim. gigan verran rammia, niin ei pitäisi vaikuttaa koneen nopeuteen juurikaan.

Lainaa:
Kun tässä miettii ja muistelee, niin FF ladataan itseasiassa vain kerran, jos osaa käyttää tehokkaasti selaimen välilehtiä. Eli mitä hyödyttää latauksen nopeutus, jota käyttää päivän mittaan vain kerran?


Niin no, eipä sitä kovin usein tarvi käynnistellä.

Lainaa:
Vaikka olenkin lievästi asian vieressä, niin voinee vielä kysyä, mitä eroa on, jos on avattuna 10 erillistä selainta tai yksi selain, jossa yhdeksän välilehteä?


En oo kokeillu mutta veikkaisin, että 10 selainikkunaa vie enemmän resursseja.


Ilmoita tämä viesti
Ylös
 Profiili  
Vastaa lainaamalla  
 Viestin otsikko: Re: Ohjeet muistivuotojen jäljittämiseen Firefoxissa
ViestiLähetetty: 05.05.2006 19:40 
Tein viikonlopun kunniaksi viisaan valinnan, poistin Preloaderin!
FF:n normaali latausaika on parikolme sekuntia ja tuntuu melkoiselta hätävarjelun liioittelulta koko Preloader-hössötys. Saatiin siis sekin "muistivuoto" tukittua.


Ilmoita tämä viesti
Ylös
  
Vastaa lainaamalla  
 Viestin otsikko: Re: Ohjeet muistivuotojen jäljittämiseen Firefoxissa
ViestiLähetetty: 05.05.2006 22:19 
Poissa
Ylläpitäjä
Avatar

Liittynyt: 06.01.2005 13:33
Viestit: 1962
Paikkakunta: Espoo
Lisäsin ketjun ensimmäisessä viestissä olevat ohjeet Wikiin: Muistivuotojen jäljittäminen Firefoxissa.

_________________
Jussi "bekkeri" Bergström
It never fails; it always succeeds, but possibly with errors. -- Raymond Chen, The Old New Thing


Ilmoita tämä viesti
Ylös
 Profiili  
Vastaa lainaamalla  
 Viestin otsikko: Re: Ohjeet muistivuotojen jäljittämiseen Firefoxissa
ViestiLähetetty: 16.06.2006 02:09 
Poissa
Unohtumaton

Liittynyt: 28.12.2005 21:08
Viestit: 538
Viimeinkin joku on nähnyt vaivaa ja tehnyt muistivuotojen jäljittämisestä helppoa. Eli ylläolevat ohjeet voi periaatteessa unohtaa kokonaan. Riittää että lataa ja asentaa tämän laajennuksen:
http://dbaron.org/mozilla/leak-monitor/

Laajennus toimii siten, että se havaitsee muistivuodot lähes välittömästi (eikä vasta sitten kun selain suljetaan, kuten aikaisempi esimerkki). Lisäksi se antaa huomattavasti tarkemmin tietoa siitä mikä muistivuodon aiheutti. Yleensä vähän tekstejä lukemalla saa selville esimerkiksi laajennuksen joka on muistivuodon taustalla ja ohjelmointitaitoiset saattavat nähdä jopa suoraan syynkin.


Ilmoita tämä viesti
Ylös
 Profiili  
Vastaa lainaamalla  
 Viestin otsikko: Re: Ohjeet muistivuotojen jäljittämiseen Firefoxissa
ViestiLähetetty: 06.07.2006 18:10 
Poissa
Käyttäjä

Liittynyt: 11.06.2006 10:39
Viestit: 71
Tuollaista ohjelma näytti.


Ilmoita tämä viesti
Ylös
 Profiili  
Vastaa lainaamalla  
Näytä viestit ajalta:  Järjestä  
Aloita uusi ketju Vastaa viestiin  [ 27 viestiä ]  Mene sivulle 1, 2  Seuraava

Kaikki ajat ovat UTC + 2 tuntia [ DST ]


Paikallaolijat

Käyttäjiä lukemassa tätä aluetta: Ei rekisteröityneitä käyttäjiä ja 1 vierailijaa


Voit kirjoittaa uusia viestejä
Voit vastata viestiketjuihin
Et voi muokata omia viestejäsi
Et voi poistaa omia vestejäsi
Et voi lähettää liitetiedostoja.

Etsi tätä:
Hyppää:  
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Käännös, Lurttinen, www.phpbbsuomi.com