Konehan nopeutui selvästi kun otti ruksin pois kohdasta ei sivutustiedostoa.
Windows 7
näennäismuisti
40808
0Äänestä
Muut lukivat myös
Odottaa vastausta
Näihin keskusteluihin ei ole vielä vastattu. Ole ensimmäinen.
Turvaa tilisi vahvistamalla puhelinnumerosi. Voit silloin palauttaa unohtuneen salasanan tekstiviestillä.
Näihin keskusteluihin ei ole vielä vastattu. Ole ensimmäinen.
Vastaukset 40
Vanhimmat
Sivutustiedoston koolla ei ole mitään merkitystä jos koneessa on riittävästi muistia. Sivutustiedosto on melkeimpä jäänne jostain menneisyydestä, jos sivutustiedostoa aletaan tarvita siihen tarkoitukseen johon se on alunperin suunniteltu niin kone menee jo käyttökelvottoman hitaaksi käyttää.
Antakaa olla asennossa "Windows päättää koon".
Sivutustiedostoon tallennetaan nykyään crash dump jos sellainen sattuu kohdalle.
Minne Windows säilöö muistin sisällön kun kone siirtyy lepotilaan. Linuxissahan se menee swap-osiolle.
hiberfil.sys
Sittenhän swappia ei tarvita mikäli muuten muistia riittää. En vain ymmärrä miksi kone olisi ilman swappia nopeampi kuin ilman.
Siksi, kun Windows swappaa vaikkei olisi tarvettakaan ja swappaus (käytössä olevan datan kirjoittaminen ja lukeminen kiintolevyltä) on aina hitaampaa kuin keskusmuistista.
Itselläni on 8Gb keskusmuistia ja Windows7 on niin fiksu, että kuvittelee mun tarvitsevan saman 8Gb swappia. Jos antaa windowsin määrätä tuollainen swappikoko, niin keskusmuistista on käytössä tällaisessa perussurffailussa runsaat puolitoista gigaa. Onko järkee? No ei.
No ei todellakaan sivuta. Sivutustiedoston koko on suuri mutta sitä ei käytetä turhaan mihinkään.
Swappaaminen liittyi joihinkin muinaisiin DOS:siin tehtyihin muistimanagereihin joilla pystyi "ajamaan" monta DOS "yhtäaikaa". Windows 3.0 saattoi käyttää myös swap tiedostoa real modessa.
Mikä on sitten kriittinen määrä muistia, jolla sivustustiedostoa ei tarvitse enää käyttää, jos kyse tavallisesta kotikoneesta jolla lähinnä pelataan ja selaillaan nettiä?
Jos Windows päättää koon, niin sehän se on silloin vastaava kuin ram-muistin määrä. Jos on esim 16Gt rammia väittäisin, että 16 Gt:n sivustustiedosto on ja aikamoinen overkill kotikoneessa.
Idioottimainen määritystapa sinänsä, kun eikö kaiken logiikan mukaan mitä enemmän on käyttömuistia, niin sitä _vähemmän_ tarvitsisi sivutusmuistia, ei enemmän?
Viiden pisteen kysymys onkin, että jos koneessa on jo kahdeksan gigaa muistia ja pelikäyttöön on 32-bittinen Windows XP, niin osaako Windows edes nähdä sivutustiedoston muistia enää, saati käyttää?
Olen itse poistanut sivutustiedoston Windowsin puolelta, 64-bittisen Linuxin puolella swap-osio on, mutta enpä ole koskaan sielläkään mitään liikennettä nähnyt.
Kriittinen raja on, että kone ei koskaan swappaa, eli kone- ja käyttäjäkohtainen.
Voihan pagefilen poistaa ja katsoa riittääkö RAMi aina. Turhaahan se kylläkin nykykokoisten kiintolevyjen aikaan on.
XP tuntee vain 3 gigaa muistia ja virittämälläkään enintään neljä koska microsoft rajasi muistituen valmistuksessa kymmenesosaan kapasiteetista, teknologian tiedetään tukeavan 32Gigasta keskusmuistia mutta se on suljettu pois käytöstä.
Niin ja piti sanoo että sivutustiedostoa ei ole tarvetta käyttää yli gigan keskusmuistilla xp:ssä vaan se alkaa päin vastoin hidastamaan kuulemma, en ole koskaan kyllä poistanut sitä päältä mutta xp koneissa olen harvoin tavannut juuri gigaa kahta enemmän muisteja.
Miksi swappi hidastaa vaikka sitä ei käytetä?
Viiden pisteen vastaus. 32-bittinen muistiavaruus loppuu noin 3 Gt:hen ja sen mukaan tulee swap.
Vedit mutkat suoraksi ja sait väärän vastauksen.
32-bittinen systeemi pystyy osoittamaan 4 gigaa muistia, josta laitteiston osoitteet peittävät osan.
Jokaisella prosessilla taas on käytettävissä 4 gigaa virtuaalista (mielikuvitus) muistia, joka on jaettuna kernelin ja ohjelman kesken. Eli yhteensä käytössä saattaa olla enemmän muistia kuin on fyysistä muistia. Kernel säilöö tätä ylimääräistä swapissa ja yrittää optimoida sen niin että siellä on harvimmin käytetty koodi.
Eikä siinä vielä kaikki. Jokainen prosessi voi myös säilöä tietoa swappiin mikäli köytettävissä oleva virtuaalimuisti uhkaa loppua. esimerkiksi suurien matriisien tapauksessa.
No vähän tonne päin. 32-bittinen Windows muistiavaruus on 4 GB, josta on 2 tai 3 GB varattu sovelluksille ja 2 tai 1 GB Windowssille. Kullakin sovelluksella on oma muistiavaruus, joten yli 4 GB muististakin on hyötyä, jos ajaa montaa sovellusta. Tämä edellyttää PAE-tekniikkaa.
Tämä kaikki alkaa kuitenkin olla perinnetietoa, kun tänä päivänä ilman muuta kannattaa asentaa 64-bittinen Windows, jossa ei ole em. muistirajoituksia.
En mitenkään puuttunut tilanteeseen, jossa käytetään PAE-jippoja yli neljän gigan fyysisen muistin osoittamiseen vaan siihen että muistilohkoja voi olla käytössä enemmän kuin on fyysistä muistia. Ylimääräinen vain säilötään swappiin.
Samoin prosessilla voi olla enemmän tavaraa käsittelyssä kuin sillä on virtuaalista muistia. Sekin voi säilöä sitä swapissa.
Maatiais-Windowseissa ei PAE ole edes käytössä. Se löytyy vain serveriversioista.
Väärin. Myös XP tukee PAE:a. Mutta kuten sanottu, sekä XP että 32-bittisyys alkaa olla katoavaa kansanperinnettä.
http://msdn.microsoft.com/en-us/library/windows/desktop/aa366796(v=vs.85).aspx
Siltikin lause "Jokaisella prosessilla taas on käytettävissä 4 gigaa virtuaalista (mielikuvitus) muistia" ei pidä paikkaansa. Prosessilla on 32-bittisessä ympäristössä käytössä 2 tai 3 gigaa virtuaalista muistia. Jos sillä olisi käytössä 4 gigaa, ei se pystyisi mitenkään tekemään käyttöjärjestelmäkutsuja.
Mutta se kernel-alue on jokaiselle prosessille omansa. Sekin on virtuaalista.
32-bittsen Windowsin maksimi muistimäärät.
Windows 2000 Professional, Server 4 GB
Windows 2000 Advanced Server 8 GB
Windows 2000 Datacenter 32 GB
Windows XP Starter 512 MB
Windows XP Home & Media Center 4 GB
Windows XP Professional 4 GB
Windows Server 2003 Web 2 GB
Windows Server 2003 Small Business, Home, Storage 4 GB
Windows Server 2003 Storage Server 4 GB
Windows Server 2003 R2 Standard Edition 4 GB
Windows Server 2003 Standard Edition (SP1) 4 GB
Windows Server 2003 Standard Edition (SP2) 4 GB
Windows Server 2003 Enterprise Edition (SP1) 16 GB
Windows Server 2003 R2 Enterprise Edition 64 GB
Windows Server 2003 Datacenter (SP1) 128 GB
Windows Server 2003 R2 Datacenter (SP1) 128 GB
Windows Server 2003 R2 Datacenter (SP2) 128 GB
Windows Vista Starter 1 GB
Windows Vista Home Basic 4 GB
Windows Vista Home Premium 4 GB
Windows Vista Business, Enterprise, Ultimate 4 GB
Windows Server 2008 Standard, Web 4 GB
Windows Server 2008 Enterprise, Datacenter 64 GB
Windows 7 Starter 2 GB
Windows 7 Home Basic 4 GB
Windows 7 Home Premium 4 GB
Windows 7 Professional, Enterprise, Ultimate 4 GB
Kernel-alue on tietenkin yhteinen kaikille prosesseille ja samoissa osoitteissa, nimenomaan siinä varatussa 1 tai 2 GB osuudessa, joka ei ole prosessien käytettävissä.
Noi lukemat on tietenkin ilman että PAE on kytketty päälle!
Kun jos laitat PAE:n niin useinkaan emolevyt eit tue suurempaa muistimäärää.
Lisäksi pitää huomioida että PAE varaa muistia 3GB lohkoissa.
Windowsin 32-bittiset
-Advanced Server
-Enterprise Edition
Osas ihan hyvin hyödyntää 8 GB tai 16 GB RAMii.
Yksittäinen sovellus vain näki kerrallaan sen 2GB.
Näin siis ilman PAE:ta.
Äkspeessä oli aikoinaan mahdollisuus PAE ominaisuuden käyttöön, mutta se poistettiin jonkin servicepakin mukana koska aiheutti paljon ajuriongelmia. Sen jälleen ei karvalakkimalleissa ole PAE mahdollisuutta ollut. Nörttien tekemiä pätsejä kyllä on netti pullollaan eli halutessaan saa toimimaan.
Pönttökoneissa on jo aikoja sitten emolevyllä ollut rajana 8 tai 16 gigaa. Läppäri ovat tulleet hieman jälkijunassa.
"Lisäksi pitää huomioida että PAE varaa muistia 3GB lohkoissa."
Tuskin.
PAE ei lisää ohjelman saamaa muistimäärää vaan antaa kernelille mahdollisuuden osoittaa neljää gigaa suurempia muistimääriä.
XP:ssä on tuki PAE:lle. Miksi ihmeessä väität, että se olisi poistettu jonkun Service Packin myötä?
"Although support for PAE memory is typically associated with support for more than 4 GB of RAM, PAE can be enabled on Windows XP SP2, Windows Server 2003, and later 32-bit versions of Windows to support hardware enforced Data Execution Prevention (DEP)."
Jos näin on niin mitähän ne netissä jaettavat PAE pätsit todellisuudessa tekevät?
Ei lopu mutta microsoft tappo xp muistiavaruuden 3 gigaan, on testattu maailmalla että sitä löytyy ainakin 32 asti mutta eivät paljastaneet muutostapaa julkisuudessa.
Vanhoissa windowseissa swap-tiedosto saattoi korruptoitua, jolloin sen poisto ja uudelleenluonti korjasi tilanteen. Syy voi ola windows tai levyvika, eli lisäksi chkdsk /f tai chkdsk /r ennen uuden luontia oli tarpeen. tehtiin mielellään vikasietotilassa.
Lukekaa asiantuntijan suositukset.
http://blogs.technet.com/b/markrussinovich/archive/2008/11/17/3155406.aspx
Paras vaan antaa käyttiksen hoitaa asia. Nämä tweakkisivustot antavat paljon aivan väärää tietoa.
Hyvä linkki! Suosittelen.
Teeppä meille pieni suomenkielinen referaatti siitä, miksi on parempi, että windows saa määrätä älyttömän ison swapin ja jättää ihan fyysinen keskusmuisti liki käyttämättä verrattuna siihen, että muistina käytetään hitaan kiintolevyn sijaan nopeita muistikampoja .
Windows 7 käyttää koko keskusmuistin hyvin tarkkaan hyväksi, sivutustiedostoa ei käytetä kuin todelliseen tarpeeseen.
Artikkeli on pitkä kuin nälkävuosi. Jos asia sinua todella kiinnostaa niin hyödynnä google kääntäjää.
Kääntäminen vaatii liikaa.
Esim. Superfetch ei toimi.
http://neko.kapsi.fi/ohje/Windows_7-vinkit/superfetch.html
Miten niin ei toimi? Tuossahan Neko juuri kehuu Superfetchin toimintaa.
Ilman pagefileä, lukutaitoa.
Mitä yrität sanoa???????????
Ilman virtuaalimuistia superfetch ei toimi, niinkuin ei ehkä moni muukaan asia oikein. Mark Russanowichin artikkelista asia myös selviää.
Ed. vastaukseni oli näet '5 tähden'-nikille.
Kuitenkin suosittelit linkkiä, joten muilla on syy odottaa, että itse olet sen kiinnostuneena lukenut ja kertoisit mielelläsi tärkeimmät kohdat.
Itseäni ei jaksa ihan hirveesti tuo Windowsin ainainen ja loputon säätäminen enää kiinnostaa.
Se tärkein tieto oikeastaan tuli esiin keskustelussa, ei itse artikkelissa (joka oli aika suoraviivainen ja johdonmukainen esitys siitä, miten Windowsin eri versiot (32/64 bit) jakaa muistia ohjelmille).
Mutta se tärkein tieto on siis se, että nykyiset Windowsit sivuttavat lähes kaiken koodin jota ei käytetä pois muistista, täyttääkseen lähes koko fyysisen muistin levyvälimuistilla. Käytännössä tämä tarkoittaa sitä, että jos ohjelmallisesti lukee ison (vaikka 10GB) tiedoston kerran läpi, on fyysinen muisti sen jälkeen täynnä tuota tiedostoa (vaikkei sitä mihinkään tarvita). Muistissa odottaneet ohjelmakoodit sen sijaan on swäpätty levylle, ja kun tuon lukuoperaation jälkeen haluaa tehdä koneella jotain muuta, vaikka painaa 'Käynnistä' nappulaa, saa odottaa kun Windows lukee ohjelman takaisin muistiin.
Vanhemmissa Windowseissa (95, 98, 2000) levyvälimuistin toimintaa pystyi vielä säätämään, nykyisissä ei.
Tää on näitä 'musta tuntuu'-juttuja.
Mikä kannattaa tehdä, on siirtää sivutustiedosto (pagefile.sys) toiselle kiintolevylle, jos moisen omistaa. Toiselle osiolle sekin on turhaa. Muuten antaa käyttiksen tehdä asiansa.