Frigöra minne?

Tråden skapades och har fått 12 svar. Det senaste inlägget skrevs .
1

Verkar ha detta problemet titt som tätt, Mac OS suger åt sig rätt mycket minne.
Har 4GB men har rätt ofta bara några MB ledigt...

För det mesta händer det efter att man haft Parallels igång, då verkar det aldrig frigöras från minnet utan ligger cachat kvar... Men igår när jag satt och jobbade med MATLAB fick mn ju en smärre chock, swap filen växte till 1 GB och idag, nästna 20 timmar sedan, har jag fortfarande bara 26MB ledigt... Vilken orsakar en hel del swapande, även fast jag har program som tillsammans knappt tar 1 GB minne.

Vad är det som orsakar detta minneshaveri?

Det är inget minneshaveri på gång. Det är precis så det ska fungera.

Det är mer effektivt att låta data ligga kvar i minnet ifall du behöver det igen senare, men om det skulle behövas av något annat program är det lika ledigt som det lediga minnet. Det är fullt normalt att bara ha några MB ledigt minne.

Ok, såg nu förresten att den verkar ha slopat MATLAB-geggan, 2.27GB ledigt.

Men eftersom man bara har några MB ledigt, får ju operativ hålla på att swappa rätt ofta?
Det kan väl inte vara så värst effektivt...

Ursprungligen av chinobar:

Ok, såg nu förresten att den verkar ha slopat MATLAB-geggan, 2.27GB ledigt.

Men eftersom man bara har några MB ledigt, får ju operativ hålla på att swappa rätt ofta?
Det kan väl inte vara så värst effektivt...

Nästa gång du blir utan minne så vore det trevligt om du kunde ta ett screenshot på aktivitetshanteraren, så har folk lite kött på benen att kommentera ditt problem.

Precis som skrivs här, så kan det ha med minneshanteringen att göra, os x frigör inte minne men däremot borde det synas som "inaktivt". Ifall den faktiskt håller allt minne som aktivt samt börjar swappa så är det nog något som är fel...

Ursprungligen av air:

Precis som skrivs här, så kan det ha med minneshanteringen att göra, os x frigör inte minne men däremot borde det synas som "inaktivt". Ifall den faktiskt håller allt minne som aktivt samt börjar swappa så är det nog något som är fel...

Minne blir ledigt när en process som använder det stängs av. Minne som är inaktivt används fortfarande av processer, men är inte aktivt längre. För att utnyttja minnet på ett effektivt sätt strävar dock OS X att ha så lite ledigt minne som möjligt.

Här kan du läsa mer specifikt vad apple skriver om minneshanteringen Reading system memory usage in Activity Monitor. Men i kort så är det lediga det som är ledigt + det som är inaktivt, då det minnet kan användas av program som skulle behöva det. Så om du ska kolla hur mycket minne som finns tillgängligt så får du addera inaktivt och ledigt

Är nog inte helt insatt i hur minnet fungerar i OS X, men jag tycker det är konstigt att det blir så pass mycket som är kvar efter att Parallels eller MATLAB varit igång...

Ska komma ihåg att ta ett screenshot på det nästa gång det händer.

Nu har jag suttit med badbollar lite då och då under morgonen.
Visst, igår hade jag parallels igång, men inte borde det ligga cachat kvar idag...

Utlovade bilder:
http://tz.magojo.net/actmon.png
http://tz.magojo.net/istatmem.png

  • Medlem
  • Täby
  • 2008-02-28 08:45

Som de andra skriver så är ditt inaktiva minne ledigt och andra program får tillgång till det så fort dom "ber operativet om mer minne"

Bifogar en bild på min minnesfördelning.

Ok, men gör inte detta inaktiva minne upphov till en massa onödigt swapande?
Jag tycker i alla fall det...

  • Medlem
  • Stockholm
  • 2008-02-29 00:21
Ursprungligen av chinobar:

Ok, men gör inte detta inaktiva minne upphov till en massa onödigt swapande?
Jag tycker i alla fall det...

Nej, det ger upphov till MINDRE swappande.

Då en process som behöver mer minne tar inaktivt minne är det inte alls säkert att man först måste skriva ut innehållet i detta minne på disk. Det är helt troligen redan utskrivet. Det är bara att ta minnet och börja jobba, lika enkelt som om man tog ledigt minne.

Däremot, eftersom OS X vet vad innehåller är i inaktivt minne finns det ju en chans att om en process behöver läsa in t.ex. ett bibliotek så finns det redan inläst i inaktivt minne. Då gör det inaktiva minnet att man SLIPPER läsa in detta bibliotek från disken.

Tips:
Klicka på den blåa fyrkanten för inaktivt minne i Aktivitetskontroll. Nu kan du välja färg. Välj Grönt.

Blir mer swappande om den skulle frigöra det varje gång du stänger programmet, för att återaktivera när du öppnar programmet igen igen. Se det som en gardering. Enkel matte faktiskt.

Ok, antar att jag inte helt riktigt förstår hur OS X jobbar med inaktivt minne, får väl helt enkelt acceptera att det är bra att sitta där med en swap-fil på 1 GB titt som tätt...

1
Bevaka tråden