7 votos

¿Cómo puedo saber si fstrim se ejecutó cuando puse mi teléfono a cargar durante la noche?

¿Hay algún registro donde pueda confirmar si fstrim se ejecutó cuando puse mi teléfono a cargar durante la noche?

10voto

Jack Wade Puntos 231

Una carga, motor al ralentí durante la noche no es la única forma de ejecutar fstrim, hay otras maneras también.

Lo que este artículo viejo citas sobre programada fstrim en Android:

El Android marco enviará un "inicio de inactividad de mantenimiento de ventana" en caso de que el MountService escucha, y luego invoca vold a fstrim sistemas de ficheros cuando algunas de las condiciones se han cumplido – el dispositivo no ha sido tocado por más de una hora, no de inactividad de mantenimiento de la ventana de evento ha sido enviado en 24 horas, y el dispositivo está apagado-cargador con el 80% de la batería o en el cargador con 30% de batería.

Pero IdleMaintenanceService fue eliminado en Lollipop, las cosas han cambiado. En Pie, programada fstrim se desencadena StorageManagerService (1) a MountService (2):

si el dispositivo está vivo en la medianoche + inactivo, fstrim se ejecute en la próxima carga + inactivo tiempo

* (3)
El monte de las llamadas de servicio StorageManager , que a su vez llama a Vold hacer fstrim.

Si la programación se ha perdido debido a que las condiciones no se cumplen y fstrim no se ha ejecutado por último 3 days (4), se ve forzada durante el dispositivo de inicio, si el dispositivo se reinicia. SystemServer (5), PackageManager (6), StorageManager (7) y Vold (8) están involucrados.

En cada caso, el archivo /data/system/last-fstrim (9) (desde Lollipop) se actualiza (10), así que usted puede comprobar su marca de tiempo (requiere root) para averiguar cuándo fstrim fue la última carrera.

Si quieres hacer TRIM manualmente, utilice Android de la línea de comandos de la herramienta sm fstrim (requiere root o adb shell). Anteriormente, esto se vdc fstrim dotrim , pero añadió a Administrador de Almacenamiento en Oreo (11) y se elimina de vold en el Pastel (12).

Para enviar FITRIM ioctl a los seleccionados del sistema de ficheros(s) sólo utilice fstrim herramienta (requiere root); un busybox applet.


¿Qué pasa si usted no tiene root?
Y se sospecha que el programado fstrim se ha perdido por 3 días, reiniciar el dispositivo, fstrim será forzado (desde Lollipop 5.1 (13)). Simple.

Las aplicaciones no se puede RECORTAR sin root; ver esta respuesta.


PS: ¿CÓMO A MENUDO RECORTE SE DEBE EJECUTAR?

La memoria Flash (incluyendo unidades Ssd, emmc, Tarjetas SD, memorias USB, etc.) ha limitado el número de Programa/Borrado de ciclos antes de que se muere. Pero a diferencia de los discos Duros, los datos no pueden ser simplemente sobrescribe en la memoria flash, tiene que Borrarse primero, que se logra a través de la Garbage Collection.

Ahora si hacemos demasiada fstrim, esto le causa frecuente de GC en segundo plano consumiendo precioso P/E ciclos y, por tanto, la reducción de la vida. Si no lo hacemos fstrim en todo, no podría ser innecesario GC (ya borrado de datos), además de las operaciones de escritura demasiado lenta con el tiempo debido a que Erase tendrá que ser realizado antes de que se sobrescriban los datos, la cual tiene una latencia más alta en comparación a Program de la operación.

Así que necesitamos un equilibrio entre ambos.

También hay otros factores por ejemplo, si eMMC controlador soporta over provisioning, de lo efectivo que es en el fondo GC programación, nivelación de desgaste y la gestión de amplificación de escritura etc.

Así que a menos que usted tiene la hoja de datos de tu teléfono eMMC y usted está seguro de lo que estás haciendo, mejor es dejar el fstrim a OS. En El PCs' (14):

Ejecución de fstrim con frecuencia, o incluso el uso de mount -o discard, podría afectar negativamente a la vida útil de la baja calidad de los dispositivos SSD. Para la mayoría de escritorio y de servidor, sistemas suficiente recorte de frecuencia es una vez a la semana.

Pero esto puede variar en función de las situaciones.

FUENTE: Codificación de las unidades Ssd

0 votos

Entiendo. Gracias por tu tiempo y esfuerzo, amigo. Me ha ayudado mucho. Salud.

1 votos

Fantástica respuesta, gracias Irfan.

0 votos

Hay una manera para que los usuarios no Root para averiguar cuando TRIM se ejecutó por última vez? Estoy en un Pixel 6 Pro corriendo GrapheneOS, si eso hace las cosas más fáciles.

PreguntAndroid.com

PreguntAndroid es una comunidad de usuarios de Android en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X