- Gäst
- Oregistrerad ●
Är det någon som har efarenhet av att massor av swapfiler produceras plötsligt?
Jag har en G4 500, med 896 MB RAM, och OSX (10.1.5) på en 2 GB stor partition. Ledig plats på den partitionen är ca 660 MB, dvs mer än väl för ett par swapfiler.
Ändå händer då och då sedan några veckor tillbaka att maskinen börjar sega otroligt, ett meddelande dyker upp som säger att "hårddisken har slut på minnesutrymme för program. Avsluta några program annars kan problem uppstå."
Faktum är att när det meddelandet dyker upp så är det försent, jag kan inte stänga ett enda program för datorn svarar inte på mina kommandon, och musens rörelser är ryckiga och långsamma.
Jag har sett efteråt (via OS9) att det har skapats 9 st swapfiler, dvs så många som får plats, och jag gissar att ytterligare filer skulle ha skapats om det bara funnits plats för dem, eftersom de sista 8 alla är skapade inom ca 90 sekunder.
Nånting läcker minne??!!
Är det någon som vet något om detta med multipla swapfiler?
Någon som vet hur/om man kan kolla vilken process det är som accessar/skapar dessa swapfiler?
Till saken hör att jag har gott om RAM (896) och jag kör inte många stora minnesintensiva program samtidigt. (Classic är på.)
Jag har funderat på att byta till en annan swappartition, men jag misstänker att felet är av en annan natur. Jag ska göra det ändå, för att testa...
Jag har sökt igenom tidigare diskussioner här och lärt mig mycket, men inte sett någon som beskrivit samma problem. HJÄLP!
Tacksam för svar!!
/ Vicki
Jag själv tycker det är väldigt fattig med diskutioner om swapfile. Jag hade tidigare inlägg om swapfile och inte fått djupa svar. Tydligen är det nytt området som många inte har riktigt svar vad en swapfile kan göra eller tips att optimera swapfile (därmed snabbare datorn). Är det idealisk skapa en partition enbart för swapfile (som Linux) ? En annan inlägg sade att det är skillnad på OSX och Linux, vad de gör med sina swapfile.
Så kan det rulla på hela tiden. Jag misstänker att om man fördjupar sig hur man optimerar swapfile skulle OSX jobba effektivare och därmed snabbare OSX.
Jag börjar kanske förstå att Linux gjort annan uppläggning det här med swapfile och därmed fungerar bättre än OSX ? Se bara Vicki ovan som har många frågor.
Kan ni läsaren komma med tips eller om jag har fel uppfatting.....
Jo, virtuellt minne hanteras på ett annat sätt i Linux än i OS X. Men även om upplägget är ett annat så är principen ungefär densamma; det som inte ryms i det fysiska minnet flyttas vid behov ut till hårddisken. OS X fungerar så att den skapar 80 MB stora swapfiler, och enligt förinställningarna läggs dessa i samma partition som systemet (i katalogen /var/vm). Linux kör i stället med hela partitioner som uteslutande används för virtuellt minne.
En del säger att det av den anledningen inte finns något skäl att ha swappen på en separat partition, men det är inte riktigt sant. Kör man med virtuella minnet på samma partition som systemet så orsakar det ökad fragmentering av systempartitionens filsystem (och det vill man gärna undvika om man kan). Dessutom blir systemets prestanda bättre, särskilt om virtuella minnet används mycket. Kör man med swap-partitionen på samma disk som systempartitionen blir prestandaökningen inte överdrivet stor (men mätbar), men med swappen på en annan disk än systemet är det definitivt skillnad.
Samuel K: Tack för din experttillägg och det är intressanta tillägg. Det är viktig att veta mera om swapfile, därför att OSX är fortfarande seg för de flesta Macar (det borde vara av intresse för alla användare!).
Det konstiga med fysisk minne är att Vicki och jag har 896 MB RAM och får felmeddelande att minne inte räcker till p.g.a. lite ledigt på hårddisken. Vad jag har sett tidigare tillägg är att OSX skapar 80 MB swapfile åt gången (swapfile0, swapfile1 o.s.v.) Det märkliga är att man har ca 300 MB ledigt kvar på hårddisken och då uppkommer meddelande att minne inte räcker till, när man har 896 MB och det finns gott om ledigt i fysiska RAM. På något sätt OSX gör lite fel prioritering ? ? Kan det vara därför det segar ibland ? Tydligen tänker jag göra en experiment att skapa en partition för bara swapfile. Tänker sätta partitionen till ca 500 MB.
Låter som en klok tilldelning, större partition än så borde man inte behöva. Vet faktiskt inte varför OS X klagar över lite plats för virtuella minnet, kan alldeles för lite om hur prioriteringsalgoritmerna i Darwin fungerar. Har aldrig själv råkat ut för det på någon av "mina" Macar heller, konstigt nog!
Däremot är det inte fullt så konstigt att saker som lagts i virtuella minnet inte läggs tillbaka trots att det finns ledigt utrymme i fysiska minnet. Det som läggs ut är nämligen (under optimala förhållanden) bara "sovande" processer och deras data. Systemet fungerar så att det inte "vill" bemöda sig om att lägga tillbaka något som inte används, eftersom risken finns att det ändå måste flytta tillbaka eländet om det blir trångt i fysiska minnet igen.
För mer info om systemets minnes- och resurshantering kan jag rekommendera en läsning av bruksanvisningarna för top och vm_stat ("man top" resp "man vm_stat" i terminalen).
REP skev:
quote:jag har 896 MB RAM och får felmeddelande att minne inte räcker till p.g.a. lite ledigt på hårddisken. Vad jag har sett tidigare tillägg är att OSX skapar 80 MB swapfile åt gången (swapfile0, swapfile1 o.s.v.) Det märkliga är att man har ca 300 MB ledigt kvar på hårddisken och då uppkommer meddelande att minne inte räcker till, när man har 896 MB och det finns gott om ledigt i fysiska RAM.
Min egen erfarenhet är att man egentligen inte alls har så mycket ledigt på hårddisken. Jag har sett att OSX är dåligt på att uppdatera objekts verkliga storlek på just OSX-disken (inte på de adra diskarna). När min dator har seghängt sig (som jag beskrev i mitt första inlägg) så har jag startat om i OS9 direkt. Då har OSX alltså inte kunnat rensa bort alla sina gamla swapfiler, dvs jag har sett att där ligger 9 st, dvs exakt så många som får plats. Ledigt utrymme kvar har varit runt 50 MB. Dessa uppgifter har jag inte fått från Get Info på X-disken precis innan krasch, utan den påstår lyckligt att det är 660 MB kvar.
REP, kan du också kolla i OS9 om dina swapfiler beter sig som mina? Jag kollade också när de skapades (jag använde FileBuddy), och den första skapads när systemet senast startade om i OSX, och de andra kom precis innan kraschen. Det är just detta som får mig att tycka att det inte är ett normalt beteende för OSX...
Men på något "sjukt" sätt gläder det mig ändå att vi åtminstone är två som har liknande fel (dvs multipla swapfiler). Eventuellt var det någon annan medlem (C-mon??) som har haft liknande fel, tyckte jag mig utröna i några äldre inlägg. Någon som vet vem det är och vilka fel denne hade egentligen?
/ Vicki
Du behöver inte använda File Buddy för att kolla osynliga filer. Det räcker i OS 10.2 i filsökaren ställa in "lägg till villkor" o ta synlighet. Se till att synlighet är av.
Sedan skriver du in "swapfile", då ser man hur många man har. Det som hände för mej var för några veckor sedan, visste jag inget om swapfile (lärde mig med tiden). Jag fick meddelande "hårddisken har slut på minnesutrymme för program. Avsluta några program annars kan problem uppstå" och då hade jag ca 300 MB ledigt. Nu efteråt borde jag kollat hur många swapfile hade uppstått förut. Men ändå spelar det inget stor roll om man har så mycket fysisk minne ?
Min vän som har en PB G3 med 10 GB HD och han hade mycket data på HD och när han kom ner till 200 MB ledigt på HD, då kom samma felmeddelande "för lite minne". Det var ingen speciell stora program.
Numera ser jag till ha gott om ledighet på HD. Men ska prova att skapa en partition bara för swapfile. Ett program fixar detta: http://www.versiontracker.com/moreinfo.fcgi?id=13514&db=mac
Mina kunskaper om virtuellt minne är begränsade, men jag tycker ändå ni ska försöka kolla hur mycket minne olika program tar i Processkontroll ( /Applications/Utilities/Process Viewer.app ). Sortera efter hur mycket minne de olika processerna tar.
Annat som kan ta upp hårddisk är loggarna. Gå till Findern välj "Gå till mapp" i menyn "Gå" och skriv in /var/log/ så kan ni se om någon av loggarna växt sig för stor. De bör inte vara större än någon/några MB såvitt jag vet (min största är för tillfället på 16 kB).
När ni ändå är där så kan ni ju läsa igenom systemloggen och ev. krachloggar och se om ni hittar något av värde.
/Sven
För att kolla hur stora swapfilerna är är det bara att köra "ls -l /var/vm" i terminalen. Swapfilerna heter swapfile0, swapfile1 o.s.v. Varje fil är exakt 80 MB stor (beräknat efter 1 kB = 1000 byte).
Annars kan man köra "du -k /var/vm" så får man veta hur många kB (beräknat efter 1 kB = 1024 byte) swapfilerna sammanlagt tar upp...
Programmet vm_stat ger som sagt ännu mer detaljerad info. För en nybörjare så är informationen inte så intuitivt upplagt eftersom vm_stat använder enheten sidor (=pages). Vet man att "en sida" är den minsta mängd minne operativsystemet kan tilldela (det är alltså ett slags "grundenhet") och att sidorna i OS X är 4096 byte stora blir det däremot lite lättare att kunna begripa vad siffrorna står för.
...men jag håller med Nikke: mer disk är den enklaste lösningen!
quote:Skapades ursprungligen av: Vicki:
REP skev:
Men på något "sjukt" sätt gläder det mig ändå att vi åtminstone är två som har liknande fel (dvs multipla swapfiler). Eventuellt var det någon annan medlem (C-mon??) som har haft liknande fel, tyckte jag mig utröna i några äldre inlägg. Någon som vet vem det är och vilka fel denne hade egentligen?
/ Vicki
Heh, jag har läst på lite sen sist. Multipla swapfiler är inget "fel" i OS X utan istället en lösning som gör att det blir bra prestanda även om man inte har en separat swappartition.
Jag tänkte bara rapportera hur det går med mitt diskminnesproblem.
Jag började köra med Terminal-fönstret öppet jämt och Top körande. Vid nästa krasch hann jag se att det var Finder som totalt ballade ur och krävde enorma mängder minne, vilket alltså skapade ett stort behov av swapfiler, alla skapade inom en mycket kort tidsrymd.
Efter detta ordnade jag så att en av mina andra partitioner fick bli uteslutande swapdisk. Den är visserligen 3 GB stor, vilket innebär en del slöseri, men det handlar om en tillfällig testning... Mha programmet SwapCop bytte jag swappartition och det funkade fint.
Sedan des har jag fortsatt att köra Terminalen och Top aktivt, och jag ser att jag har rätt många pageins och pageouts, och de ökar förstås hela tiden. Jag har också sett att jag har rätt många swapfiler, nu är jag uppe i 11 stycken, den första skapades när jag senast bootade om (25/10) och den senaste är från i söndags.
Det roliga är att allt fungerar fint och smärtfritt nuförtiden!! Hittills har Finder inte ballat ur (enligt beskrivnigen ovan), och swapfilerna är skapade med minst 30 minuter emellan, vilket troligen är mycket mer normalt än då de förut skapades med ca 15 sekunders mellanrum.
Det som förbryllar mig är att systemet inte verkar återanvända swapfilerna. De tidiga filerna är inte ändrade sedan de skapades, vilket innebär att så småningom blir även den största disk fylld av swapfiler...
Jag begriper inte helt hur bytet av swapdisk löste ett problem som snarare hade med en finderbugg att göra ("Det här borde inte påverka det där"), men just nu gläder jag mig åt att det _verkar_ som om läget är under kontroll (ta i trä....).
Jag kör fortfarande 10.1.5, men hoppas snart uppdatera till 10.2.x. Ska bli spännande att se hur det bli då...:-)
Tack för era goda råd!!
/ Vicki
Låter helt klart otäckt. Du bör kolla ifall det är någon drivrutin eller något annat som läcker.
Det där med en separat swap-partition kommer ju inte att hjälpa om du ser att det blir fler och fler swap-filer.
Min server som har en uptime på 24 dagar (uselt) har bara 2st 80MB-filer. Visserligen har den 1GB RAM men du hade ju 896, det kan ju inte skilja så mycket.
Ergo: rannsaka dina extrapryttlar och se vad du kan ta bort så länge. Jag hade t.ex. oerhörda problem med Agfa:s e50. Med 10.1.5 var det regel att datorn kraschade om jag först ställde datorn i vila, drog ut USB:n till scannern och väckte datorn igen. Lösningen var att dra ur scannern INNAN man sövde datorn.
Mac OS X Hints har en artikel om en möjlig minnesläcka i Finder.
Som referens har jag en OS X Server 10.1.4 med 389MB fysiskt minne. Den har en uptime på 70 dar och har på denna tid lyckats dra på sig 8 swapfiler. Notera då att jag har en swapsize på 40MB så det torde motsvara 4 för er andra. Servern hostar ett antal domäner (apache, mail, php), ett par shxd processer och lite annat smågodis.