Come funziona Hedroom, passo dopo passo
Hedroom legge alcuni numeri da macOS, si accorge quando un'app ha un problema, propone una correzione e misura cosa è successo dopo che l'hai accettata. Ecco ogni passaggio, con le soglie che usa.
I numeri in questa pagina provengono dai documenti di progetto e dal codice di Hedroom. Quando un numero è una misurazione, la pagina dice quando e su quale Mac. Hedroom non è ancora stato rilasciato, quindi niente di tutto questo descrive una versione pubblica.
I cinque passaggi
- CampionareUn unico campionatore legge memoria, CPU, energia, temperature e archiviazione.
- RilevareConfronta con ciò che è normale per il tuo Mac. Indica l'unica app che conta.
- DecidereScegli un suggerimento. Una barriera di sicurezza può rifiutarlo.
- Agire, con consensoNon succede nulla finché non lo dici tu, o una regola che hai attivato.
- RicevutaRilevazioni prima, rilevazioni dopo, un verdetto onesto.
1. Campionare: cosa legge e con quale frequenza
Tutte le rilevazioni provengono da un unico campionatore che gira fuori dal thread principale, così l'app resta reattiva. Ogni fonte è un pezzo di codice separato dietro un'interfaccia, ed è così che viene testata con dati finti. Queste sono le fonti:
| Rilevazione | A cosa serve | Quando |
|---|---|---|
| Livello di pressione della memoria | Il giudizio di macOS su quanto fatica a trovare spazio. Il segnale principale della memoria. | A ogni tick, e subito quando macOS segnala un cambiamento. |
| Dettaglio della memoria e attività dello swap | Memoria di app, wired, compressa e in cache, e la velocità di crescita dello swap. | A ogni tick. |
| Memoria, tempo CPU ed energia per app | L'impronta di ogni processo (il valore che Monitoraggio Attività mostra come “Memoria”), raggruppata in modo che un'app e i suoi helper contino come uno. | A ogni tick con una finestra aperta, ogni 2º tick in background con alimentazione, ogni 3º a batteria, ogni 4º in Modalità Risparmio energetico. |
| Carico CPU per core | App impegnate e la suddivisione tra core di prestazioni e di efficienza. | A ogni tick. |
| Potenza del chip | Watt di CPU, GPU, Neural Engine e memoria, dove il Mac li riporta. Usa un'interfaccia di macOS che Apple non documenta, quindi Hedroom dice “non disponibile” invece di tirare a indovinare quando fallisce. | Finestre di almeno 3,5 secondi. |
| Stato termico e batteria | Se macOS sta limitando le prestazioni, cicli e capacità della batteria, tempo rimanente. | A ogni tick. |
| Archiviazione libera | Spazio disponibile sul volume di avvio. | Ogni 30 secondi con una finestra aperta, ogni 5 minuti senza. |
| CPU di WindowServer | Solo per la schermata CPU e per i Consigli per lo schermo. | Solo mentre una di queste schermate è aperta. |
| Audio, microfono e fotocamera in uso | Controlli di sicurezza: Hedroom non tocca un'app che è in chiamata. | Quando viene presa in considerazione un'azione. |
Il tick
Un “tick” è un giro di rilevazioni. La frequenza dipende da ciò che stai facendo:
| Situazione | Tick |
|---|---|
| È aperta una finestra di Hedroom o il pannello della barra dei menu | 2 s |
| In background, con alimentazione | 5 s |
| In background, a batteria | 10 s |
| La Modalità Risparmio energetico è attiva | 15 s |
| La pressione della memoria è Avviso o Critica | 2 s, forzato |
| Hai messo in pausa il monitoraggio | Fermo |
In Impostazioni c'è la scelta “Controlla il mio Mac ogni” di 2, 5 o 10 secondi per la frequenza con la finestra aperta; le frequenze in background ne seguono la scala. Le rilevazioni grezze vengono conservate per 48 ore. Tutto resta sul tuo Mac, in un unico file di database nella cartella Libreria. Vedi Privacy.
2. Rilevare: cosa conta come rilevamento
Hedroom non lancia un avviso solo perché un numero è grande. Confronta ogni app con la dimensione abituale di quell'app sul tuo Mac e aspetta di vedere se il cambiamento dura.
Memoria: Buona, Sotto sforzo, Critica
Hedroom mostra uno di tre stati. Le soglie sono scritte e testate.
| Stato | Entra quando | Esce quando |
|---|---|---|
| Sotto sforzo | macOS segnala il livello di pressione Avviso, oppure lo swap cresce di 20 MB al minuto o più per 2 minuti mentre la memoria compressa è almeno il 20% della RAM. | Il livello è Normale e la crescita dello swap resta sotto 5 MB al minuto per 3 minuti. |
| Critica | macOS segnala il livello Critico, oppure lo swap cresce di 200 MB al minuto o più per 60 secondi, oppure la memoria libera più in cache resta sotto il 3% della RAM per 60 secondi. | Nessuna di queste condizioni per 2 minuti. Poi scende a Sotto sforzo. |
Lo swap che è semplicemente usato non mette mai il Mac Sotto sforzo, perché macOS conserva vecchio swap. Conta solo lo swap che sta crescendo. Molta memoria “usata” con pressione buona è Buona. Perché pressione e non RAM usata spiega la differenza.
Una perdita: un'app molto oltre la sua dimensione abituale, per un po'
Per ogni app, Hedroom impara una dimensione abituale dai tuoi ultimi 7 giorni di uso normale. Segnala una perdita solo quando valgono tutte queste condizioni:
- L'app è almeno 3 volte la sua dimensione abituale. A 2,5 volte compare come “in crescita” e nient'altro.
- È almeno 1 GB, o il 6% della tua RAM se è di più.
- È rimasta così per 20 minuti di fila, oppure continua a crescere su una tendenza di 30 minuti.
- Non è nel tuo elenco Non toccare mai, non è di Apple (con una piccola eccezione per le app di Apple che usi tu) e non è un'app che la libreria dei processi indica come normalmente grande, come un editor video o Docker.
Finché Hedroom non ha imparato un'app per circa 6 ore, dice che sta ancora imparando. Per un'app che conosce per nome usa la dimensione tipica della libreria dei processi; per un'app sconosciuta segnala solo una dimensione di almeno il 15% della tua RAM che stia ancora crescendo, e dice “insolitamente grande” invece di un rapporto.
CPU fuori controllo
Un'app in background (non quella che stai usando) che usa in media l'80% di un core o più per 3 minuti, e almeno 3 volte la propria CPU abituale in background, è fuori controllo, a meno che la libreria la indichi come normalmente impegnata (compilatori, backup, encoder video, indicizzazione) o che sia in chiamata. Compare in Oggi dopo 3 minuti. Una notifica aspetta che sia durata 10 minuti.
Controllo del rumore
Lo stesso rilevamento sulla stessa app notifica al massimo una volta ogni 6 ore. Le notifiche non urgenti si fermano a 3 al giorno. Chiudine una tre volte per un'app, e Hedroom smette di notificarla e propone una voce in Non toccare mai.
3. Decidere: un suggerimento, poi la barriera di sicurezza
Quando c'è più di una cosa che Hedroom potrebbe fare, le ordina in base a quanto restituirebbero rispetto al rischio e mostra le prime due. L'uscita forzata non viene mai proposta come correzione in classifica.
Prima di qualsiasi riapertura, chiusura, pausa o spostamento sui core di efficienza, la richiesta passa da una barriera di sicurezza. Rifiuta quando il bersaglio è:
- Hedroom stesso (ignorato in silenzio).
- Creato da Apple o in una cartella di sistema, a parte le app di Apple che usi tu, che puoi riaprire o chiudere con un clic.
- Nel tuo elenco Non toccare mai.
- L'app che stai usando in questo momento, quando una regola chiede pausa, spostamento o chiusura.
- Che riproduce audio, usa il microfono, o un'app di chiamate con una fotocamera accesa.
- Un'app di backup mentre un backup è in corso.
- Non nota per gestire bene la pausa, quando una regola vuole metterla in pausa o chiuderla e non hai scelto tu l'app. Hedroom non riesce a vedere con certezza il lavoro non salvato.
- Un'app che la libreria indica come non sicura da riaprire, durante pressione critica.
- Un'uscita forzata senza una seconda conferma, separata.
Se Hedroom non riesce a verificare una di queste condizioni (ad esempio, il controllo audio fallisce), le regole non fanno nulla e un clic chiede prima. Un rifiuto viene mostrato con il suo motivo, come una frase tipo “Slack è in chiamata.”, non come un errore. Tutto ciò che viene rifiutato o fatto viene registrato. Altro in Cosa Hedroom non fa mai.
4. Agire, con consenso
Le azioni sono piccole e reversibili:
- Riapri chiede all'app di chiudersi, come fa ⌘Q, attende e la riapre.
- Core di efficienza abbassa la priorità di un'app così che il suo lavoro giri sui core di efficienza.
- Pausa congela un'app finché non torni a essa, o per al massimo 60 minuti. Un piccolo processo di protezione la fa riprendere anche se Hedroom si blocca.
Un clic su un pulsante è consenso per quell'azione. Una regola è un consenso che hai dato in anticipo, e ogni modello è disattivato di default. Chiudere o riaprire un'app non nota come sicura chiede sempre prima. Nulla viene mai eliminato senza il tuo permesso ogni volta; la pulizia sposta i file nel Cestino. Correzioni e Regole elencano ogni limite.
5. Ricevuta: prima, dopo e un verdetto onesto
Ogni azione produce una ricevuta. Hedroom confronta le rilevazioni dei 5 minuti prima dell'azione con quelle da 5 a 15 minuti dopo, saltando i primi 30 secondi (60 secondi dopo una riapertura) mentre tutto si assesta.
Ci sono quattro esiti onesti:
- Misurato. La variazione è almeno la più piccola che Hedroom conteggia: 100 MB di memoria, 10 punti percentuali di un core CPU, 0,3 W o 50 MB di disco.
- Nessun effetto. La variazione è stata più piccola di così, o nella direzione sbagliata. La ricevuta dice “Nessun effetto misurabile.” e non si prende il merito.
- Non misurabile. Altre app sono cambiate troppo nello stesso momento (un'altra app è variata di oltre 1 GB, una nuova app si è avviata usando oltre 500 MB, hai chiuso altre app, il Mac è andato in stop o la corrente è stata collegata o scollegata). La ricevuta lo dice invece di prendersi il merito, e resta fuori dai totali.
- Annullato. Hai annullato l'azione, oppure Hedroom si è chiuso, prima della fine della misurazione. Non viene rivendicato nulla.
Ogni ricevuta riporta anche un livello di affidabilità (alta, media o bassa). Una ricevuta a bassa affidabilità è etichettata come “approssimativa” e non viene conteggiata nei totali. Una ricevuta confronta due finestre di tempo; non è una prova controllata. Per leggerne una, vedi Come leggere una ricevuta.
Perché pressione della memoria e non RAM usata
Un Mac acceso da un po' mostra gran parte della memoria come usata, per progetto. macOS riempie la memoria libera con file in cache, perché rende più veloce la prossima cosa che apri, e la restituisce nel momento in cui un'app ne ha bisogno. Una barra della memoria piena non è un problema. Conta se macOS fatica a trovare spazio: è la pressione della memoria, insieme alla velocità di crescita dello swap. Per questo Hedroom non ha un pulsante che “svuota” la memoria. Farlo costringe macOS a scartare la cache utile. La guida su pressione e RAM usata mostra come verificarlo da solo in Monitoraggio Attività.
Cosa lo rende leggero
Il budget di Hedroom è meno dello 0,5% di un core CPU in media e meno di 80 MB di memoria. Cosa è stato misurato finora:
| Misurazione | Risultato | Data |
|---|---|---|
| CPU, nessuna finestra aperta, tick da 5 s | 0,27% di un core (138 intervalli in un'esecuzione di 30 minuti). Limite del test: sotto lo 0,3%. | 2026-10-13 |
| Memoria, nessuna finestra aperta | Mediana 29,2 MB, massimo 31,7 MB. Limite: sotto 80 MB. | 2026-10-13 |
| Risvegli, nessuna finestra aperta | 0,45 al secondo in media. Limite: sotto 5. | 2026-10-13 |
| Schermata Oggi aperta, stabile | 0,5% di un core, impronta di 71 MB (390 secondi, finestra verificata come visibile). Questa esecuzione è stata parziale. | 2026-10-15 |
Leggi questi dati come misurati, non promessi. È un solo Mac, e parti delle esecuzioni erano al tick più rapido di 2 secondi perché quel Mac era sotto pressione della memoria. La prima esecuzione dopo l'installazione fa una scansione dell'archiviazione che richiede alcuni minuti, fino a un core, a bassa priorità. Non tutte le schede oltre a Oggi sono state misurate di nuovo. Prima delle correzioni registrate nelle stesse note, una finestra aperta costava dal 20 al 40% di un core; è stato scoperto da questi test e corretto. I file grezzi e la relazione completa sono nella cartella bench/results del repository, e Impostazioni mostra il costo misurato di Hedroom sul tuo Mac. Il criterio per il rilascio è il benchmark e un'esecuzione del consumo sulla versione firmata, che non è ancora avvenuta.
Cosa lo mantiene leggero: un unico campionatore per tutto, un tick più lento quando non succede nulla, scansioni per app solo ogni qualche tick in background, contenuto delle finestre costruito solo mentre una finestra è a schermo e animazioni che si fermano quando la finestra è nascosta.
Cosa si rifiuta di toccare
- macOS stesso: qualsiasi cosa firmata da Apple o in una cartella di sistema. Hedroom spiega questi processi, come
kernel_taskeWindowServer, e non li mette mai in pausa, non li rallenta né li chiude. Vedi kernel_task, WindowServer e altri processi spiegati. - L'app che hai davanti, le app in chiamata, le app che riproducono audio o usano il microfono o la fotocamera, le app di backup durante un backup.
- App del tuo elenco Non toccare mai.
- I tuoi file, a meno che tu non confermi ogni eliminazione. La pulizia va prima nel Cestino.
L'elenco completo, con test dietro ogni riga, è in Cosa Hedroom non fa mai. Poi: ogni funzione e i suoi limiti, come si confronta Hedroom e il glossario.