Jag kör Mac OSX 10.6 och märkte att en process ”fseventsd” tog 100% CPU och 1,5 G RAM. Genom att göra en google-sökning fann jag att detta kunde kopplas till Time Machine. Jag kör dock inte Time Machine på den här datorn.
Finns det ett sätt att spåra källan till resursgrisen? Loggar den var som helst? En omstart ”fixade” problemet, men jag är säker på att det kommer tillbaka om jag inte kan ta reda på varför det började i första hand.
Tack på förhand.
Kommentarer
- Hittade du någonsin källan? Vi ' upplever samma problem på vår snöleopardserver. Jag kan prova en omstart men jag kan ' t göra det förrän senare ikväll.
- Jag har inte fått det att dyka upp sedan jag startade om, (o) lyckligtvis, så jag vet fortfarande inte ' källan
- Jag har samma problem. En omstart hjälper inte '. Efter 20 till 30 minuter börjar fseventsd igen för att ta 99% CPU. Macbook är inte tyst längre …
Svar
fseventd är filsystemets händelseloggningsprocess, du kan läs mycket om det i ars technica-granskningen av Mac OS X Leopard. Du kan använda program som fseventer för att se samma typ av utdata som den ser.
Från artikeln:
FSEvents-ramverket är beroende av en enda, kontinuerligt körande demonprocess som kallas fseventsd som läser från / dev / fsevents och skriver händelserna till loggfiler på disk (lagrad i en .fseventsd-katalog på roten till den volym som händelserna är för). Det är det. Det är den superhögteknologiska lösningen: skriv bara händelserna till en loggfil. Tråkig, pragmatisk, men ganska effektiv.
Du kan kontrollera den loggen men jag vet inte hur användbar den kommer att vara för dig. Jag skulle inte bli så förvånad över att se Time Machine, som hanterar många filer och ibland många många små filer, för att möjligen orsaka några problem med fsevents.
Kommentarer
- Förhoppningsvis ' är inte Time Machine, eftersom det här är inaktiverat! Hur som helst, jag ' läser upp på fseventer, så tack för förslaget.
Svar
Antingen har ett program fastnat i en mycket effektiv loop-skrivändring som orsakade fseventsd
att ha mycket arbete eller så är det en oändlig slinga som bearbetar en olöslig datastruktur på en av de monterade volymerna.
I det tidigare fallet kommer program som fseventer som läser samma dataström sannolikt också att hänga – du har nu två processer med 50% användning att bearbeta en oändlig mängd data. (Det här är en utmärkt datapunkt om du pekar på att se vad som är fel.) Det är analogt med frågor som frågar varför syslogd
tar all CPU – vanligtvis är det en del andra program har gått sönder och orsakat mycket arbete.
När / om det händer igen – börja avsluta program och överväga att logga ut. Du vet om det kränkande objektet är en systemnivåprocess eller en användarnivåprocess . fs_usage
kan vara användbart för att se vilka specifika program som är IO-tunga.
fsck
från en start till en användare läge krävs vanligtvis om du har cirkulära hårda länkar eller andra degenererade filsystemshenanigans som kan orsaka denna typ av aktivitetsökning.
Kommentarer
- Ja , ledsen om jag var otydlig, du kunde definitivt inte öppna fseventer medan poppen slog ordligt på fläkten. Jag menade bara mer för att ge dig en inblick i vilken typ av data som var loggad och synlig, som fs_usage skulle.
- Jag älskade att lära mig abo ut fseventer – ser väldigt snygg ut. Det finns inget fel – bara data.
- Wow, tack för tipset om ' fs_usage '. Och ja, jag tänkte att det inte ' faktiskt inte orsakade belastningen, utan snarare något annat program. Jag förväntar mig en slinga någonstans. Bortsett från detta har maskinen kört normal belastning i cirka 24 timmar och den har inte ' inte hänt igen.