¿Cuándo debería funcionar FSTIM? -- yanogenmod campo con file-system campo con lagging campo con maintenance camp android Relacionados El problema

When should fstrim run?


4
vote

problema

Español

Basado en este Hilo del foro de CyanogenMod , lo intenté Para abordar el retraso en la ejecución de aplicaciones y cambiar entre aplicaciones en mi Galaxy Nexus que ejecute CyanogenMod con Android 4.4.4 ejecutando fstrim manualmente.

  root@maguro:/ # fstrim -v /data                                                           /data: 11649122304 bytes trimmed                                                          root@maguro:/ # fstrim -v /cache                                                          /cache: 436121600 bytes trimmed                                                           root@maguro:/ # fstrim -v /system                                                         /system: 80490496 bytes trimmed root@maguro:/ # exit   

Esto ha fijado en gran medida los problemas de retardo. El retraso para volver a la pantalla de inicio, por ejemplo, se ha reducido de aproximadamente 4 segundos a menos de 1 segundo. Sobre la base de este impulso de rendimiento, espero que la demora fue causada por el sistema de archivos que se ejecuta de manera ineficiente.

¿No se supone que el sistema operativo Android corriera por sí mismo por sí solo? ¿Cuándo se supone que esto suceda?

Original en ingles

Based on this cyanogenmod forum thread, I tried to address the delay in running applications and switching between applications on my Galaxy Nexus running cyanogenmod with Android 4.4.4 by running fstrim manually.

root@maguro:/ # fstrim -v /data                                                           /data: 11649122304 bytes trimmed                                                          root@maguro:/ # fstrim -v /cache                                                          /cache: 436121600 bytes trimmed                                                           root@maguro:/ # fstrim -v /system                                                         /system: 80490496 bytes trimmed root@maguro:/ # exit 

This has largely fixed the delay issues. The delay to return to the home screen, for example, has reduced from about 4 seconds to less than 1 second. Based on this performance boost, I expect the delay was caused by the filesystem running inefficiently.

Isn't the Android OS supposed to run fstrim on its own? When is this supposed to happen?

           
   
   

Lista de respuestas

5
 
vote

The Artículo < / a> referenciado en @ Mattm La respuesta está un poco desactualizada. ABCDEFGHIJKLMNABCDEFGHIJKLMN0 Se eliminó en Lollipop, las cosas han cambiado. En pastel, programado fstrim se activa de StorageManagerService ( 1 ) a MountService ( 2 ) :

Si el dispositivo está vivo en medianoche + inactivo , FRMIM se ejecuta en el siguiente disponible cargando + inactivo tiempo

* ( 3 )
Mount Service Llamadas ABCDEFGHIJKLMNABCDEFGHIJKLMN4 que a su vez Llamadas ABCDEFGHIJKLMNABCDEFGHIJKLMN5 TO HA ABCDEFGHIJKLMNABCDEFGHIJKLMN6 .

Si el calendario se está perdiendo porque las condiciones no se encuentran y fstrim no se ha ejecutado para el último 3 days ( 4 )) , se verá forzado durante el inicio del dispositivo si se reinicia el dispositivo. ABCDEFGHIJKLMNABCDEFGHIJKLMN9 ( 5 ) , fstrim0 ( 6 , ABCDEFGHIJKLMNABCDEFGHIJKLMN11 ( 7 ) y fstrim2 ( 8 ) están involucrados.

En cada caso, el archivo fstrim3 ( 9 ) (desde lollipop) se actualiza (< un href = "https://android.googlesource.com/platform/frameworks/base/+/refs/tags/android-9.0.0_r42/services/core/java/com/android/server/storagemanagerservice.java#581" rel = "nofollow noreferrer"> 10 ) , por lo que puede verificar su marca de tiempo ( requiere root ) para averiguar cuándo fstrim4 fue la última ejecución .

Si desea hacer abcdefhijklmnabcdefghijklmn15 manualmente, use la herramienta de línea de línea de Android abcdefhijklmnabcdefghijklmn16 (requiere root o fstrim7 ) . Anteriormente, esto fue ABCDEFGHIJKLMNABCDEFGHIJKLMN18 , pero se agregó al administrador de almacenamiento en Oreo ( 11 ) y eliminado de fstrim9 en Pie ( 12 ) .

Para enviar ABCDEFGHIJKLMNABCDEFGHIJKLMN20 Para seleccionar solo el sistema de archivos seleccionado, use StorageManagerService1 Herramienta ( requiere raíz ); un applet busybox.


¿Qué pasa si no tiene root?
Y sospechas que el programado StorageManagerService2 se está perdiendo durante 3+ días, reiniciar de ICE, ABCDEFGHIJKLMNABCDEFGHIJKLMN23 será forzado (desde Lollipop 5.1 ( 13 ) ). Simple.

Las aplicaciones no pueden recortar sin root; Consulte esta respuesta .


¿Con qué frecuencia se debe ejecutar el ajuste?

Memoria flash (incluidos los SSD, EMMCS, SD Tarjetas, Palos USB, etc.) Tiene un número limitado de ciclos de programa / borrado antes de que muera. Pero a diferencia de los HDD, los datos no se pueden sobrescribir en la memoria flash, se debe borrar primero, lo que se logra a través de StorageManagerService4 .

Ahora si hacemos demasiado StorageManagerService5 , esto causará el GC frecuente en el fondo que consume precioso StorageManagerService6 ciclos y, por lo tanto, reduciendo la vida. Si no hacemos ABCDEFGHIJKLMNABCDEFGHIJKLMN27 , en absoluto, podría haber GC innecesario (de datos ya eliminados), más las operaciones de escritura se pondrán demasiado lacas con el tiempo porque StorageManagerService8 tendrá para ser realizado antes de sobrescribir datos, que tiene una latencia muy alta en comparación con StorageManagerService9 Operación.

Entonces necesitamos un equilibrio entre ambos.

También hay otros factores por ejemplo. Si el controlador EMMC es compatible con MountService0 , qué tan efectivo está en la programación de Fondo GC, la nivelación de desgaste y la gestión de la amplificación de escritura, etc.

A menos que tenga la hoja de datos de EMMC de su teléfono y está seguro de lo que está haciendo, mejor es dejar el MountService1 a SO. En las PCS ' ( 14 ) :

Ejecutar flastim con frecuencia, o incluso usar MountService2 , podría afectar negativamente la vida útil de los dispositivos SSD de baja calidad. Para la mayoría de los sistemas de escritorio y servidor, una frecuencia de recorte suficiente es una vez a la semana .

Pero esto puede variar con situaciones.

relacionado:

  • Codificación para SSDS
  • ¿Por qué el recorte no es compatible con la partición "/ datos" encriptados?

 

The article referenced in @mattm's answer is a bit outdated. IdleMaintenanceService was removed in Lollipop, things have changed. On Pie, scheduled fstrim is triggered from StorageManagerService (1) to MountService (2):

if the device is alive at midnight + idle, fstrim gets run at the next available charging + idle time

* (3)
Mount service calls StorageManager which in turn calls Vold to do fstrim.

If the schedule is being missed because the conditions don't meet and fstrim has not run for last 3 days (4), it will be forced during device startup if the device is restarted. SystemServer (5), PackageManager (6), StorageManager (7) and Vold (8) are involved.

In each case, the file /data/system/last-fstrim (9) (since Lollipop) gets updated (10), so you can check its timestamp (requires root) to find out when fstrim was last run.

If you want to do TRIM manually, use Android's commandline tool sm fstrim (requires root or adb shell). Previously this was vdc fstrim dotrim but added to Storage Manager in Oreo (11) and removed from vold in Pie (12).

In order to send FITRIM ioctl to selected filesystem(s) only, use fstrim tool (requires root); a busybox applet.


What if you don't have root?
And you suspect that the scheduled fstrim is being missed for 3+ days, restart device, fstrim will be forced (since Lollipop 5.1 (13)). Simple.

Apps can't TRIM without root; see this answer.


HOW OFTEN TRIM SHOULD BE RUN?

Flash memory (including SSDs, eMMCs, SD Cards, USB sticks etc.) has limited number of Program/Erase cycles before it dies. But unlike HDDs, data can't be just overwritten on flash memory, it has to be Erased first, which is achieved through Garbage Collection.

Now if we do too much fstrim, this will cause frequent GC in background consuming precious P/E cycles and hence reducing life. If we don't do fstrim at all, there could be unnecessary GC (of already deleted data), plus the write operations will get too slow with time because Erase will have to be performed before overwriting data, which has very higher latency as compared to Program operation.

So we need a balance between both.

Also there are other factors e.g. whether eMMC controller supports over provisioning, how effective it is in background GC scheduling, wear-leveling and managing write amplification etc.

So unless you have the data sheet of your phone's eMMC and you are sure what you are doing, better is to leave the fstrim to OS. On PCs' (14):

Running fstrim frequently, or even using mount -o discard, might negatively affect the lifetime of poor-quality SSD devices. For most desktop and server systems a sufficient trimming frequency is once a week.

But this may vary with situations.

RELATED:

  • Coding for SSDs
  • Why is TRIM not supported on encrypted xe2x80x9c/dataxe2x80x9d partition?
 
 
4
 
vote
vote
La mejor respuesta
 

El comentario de un inolvidable incluyó una > Artículo de AnandTech que describe las condiciones bajo las cuales se supone que FSTIM se ejecuta:

He aprendido un poco más sobre las condiciones subyacentes cuando Android 4.3 recortará sistemas de archivos, ya que no fue completamente claro antes. El Marco Android enviará un evento de "Inicio de la ventana de Mantenimiento inactivo" en el que escucha el SISTERSER SERVICIO, y luego invoca a los sistemas de archivos VOLD a FRMIM cuando se han cumplido algunas condiciones: el dispositivo no se ha tocado durante más de una hora, sin mantenimiento inactivo El evento de la ventana se ha enviado en 24 horas, y el dispositivo es fuera del cargador con una batería del 80% o en el cargador con una batería del 30%. El objetivo es tener que FSTIM se ejecute aproximadamente una vez cada 24 horas si tiene la costumbre de conectar el dispositivo para cargar todas las noches.

 

Unforgettableid's comment included an AnandTech article that describes the conditions under which fstrim is supposed to run:

Ixe2x80x99ve learned a bit more on the conditions underlying when Android 4.3 will TRIM filesystems, as it wasnxe2x80x99t completely clear before. The Android framework will send out a xe2x80x9cstart idle maintenance windowxe2x80x9d event that the MountService listens for, and then invokes vold to fstrim filesystems when a few conditions have been met xe2x80x93 the device hasnxe2x80x99t been touched for over an hour, no idle maintenance window event has been sent in 24 hours, and the device is either off-charger with 80% battery or on-charger with 30% battery. The goal is to have fstrim run roughly once every 24 hours if youxe2x80x99re in the habit of plugging the device in to charge every night.

 
 
1
 
vote

Respuesta por MattM Indica las condiciones bajo las cuales, debe ejecutarse fstrim . No tengo conocimiento de que el comportamiento ha cambiado en versiones posteriores de Android, pero me encontré con una aplicación que hace ABCDEFGHIJKLMNABCDEFGHIJKLMN1 a pedido, como también en reinicio . Raíz necesaria. Compartir esta información, ya que puede ser útil para aquellos que no son Linux Savan (como yo :)

ssd boost

Android 4.3+ Soports Nativamente, significa que el sistema operativo después de eliminar un archivo enviará un comando de recorte al controlador NAND notificando a los bloques de brujas del archivo utilizado, el controlador los borrará cuando esté inactivo para que pueda escribir rápidamente sin borrar la próxima vez. .

Pero los usuarios no tienen control sobre este proceso y Android no recorta el almacenamiento durante mucho tiempo.

'SSD BOOST' le ayuda a ejecutar el recorte en su dispositivo manualmente si lo siente, se ha vuelto lento y, de todos modos, se queda para usted en cada reinicio.

Sé que esto directamente no responde a la pregunta, pero sentí que esta era la mejor pregunta en el sitio para compartir este

 

Answer by mattm indicates conditions under which, fstrim should run. I am not aware if the behaviour has changed in subsequent Android versions, but I came across an app that does fstrim on demand as also on reboot . Root needed. Sharing this information as it may be useful to those who are not Linux savvy ( like me :)

SSD Boost

Android 4.3+ supports trim natively, it means that operating system after deleting a file will sends a trim command to nand controller notifying witch blocks the file used, the controller will erase them when idle so it can write fast without erasing next time.

But users have no control over this process and Android doesn't trim the storage for a very long time.

'SSD Boost' helps you to run trim on your device manually if you feel it has become laggy and anyway it does trim for you on every reboot.

I know this directly doesn't answer the question, but felt this was the best question on site to share this

 
 
 
 

Relacionados problema

1  Nexus 5 cuelga después de unos minutos con pantalla  ( Nexus 5 hangs after few minutes with screen off ) 
Así, recientemente, me tengo unos pocos teléfonos rotos de Nexus 5 para tratar de repararlos. Uno de estos, sin embargo, elude mis intentos de diagnosticar / ...

0  Base de base de datos local de telegramas  ( Clear telegram local database ) 
¿Cómo puedo borrar la base de datos local de Telegram? Anteriormente, podría hacer eso cuando voy a los datos y la configuración de almacenamiento de la aplic...

1  Galaxy Note se está volviendo más lento y menos receptivo [duplicado]  ( Galaxy note is getting slower and less responsive ) 
Esta pregunta ya tiene respuestas aquí : Mi dispositivo se está lentamente, las aplicaciones comienz...

1  Esta aplicación promete ejecutar "fstrim" sin root, pero no estoy seguro de si funciona  ( This app promises to run fstrim without root but i am not sure if it works ) 
No estoy seguro de si esta aplicación trabajos. ¿Puede alguien por favor ayudarme? Mi teléfono es nuevo y en su período de garantía, así que no puedo alojar...

2  ¿Es un protector de pantalla útil en un teléfono de Gorilla Glass?  ( Is a screen protector useful on a gorilla glass phone ) 
Compré un teléfono MOTO E 2ª generación. Según esta página en gsmarena.com , este teléfono tiene un " Corning Gorilla Glass 3, pantalla de revestimiento oleo...

1  Han rooted Samsung Galaxy 10.2 Tablet. Quiero eliminar archivos, preguntándome si puedo hacerlo con un cable USB y luego usar el Explorer para mantener los archivos?  ( Have unrooted samsung galaxy 10 2 tablet i want to delete files wondering if i ) 
Tener una tableta no rooted, una pestaña Samsung Galaxy 10.2. La memoria se está apretando en la tableta en sí y mi tarjeta es de 64 GB con la mayoría aún dis...

3  ¿Qué debo hacer antes de enviar mi teléfono de ladrillo a reparar?  ( What should i do before sending my bricked phone to repair ) 
Hay preguntas similares aquí, pero esta se trata de un teléfono que no se enciende. No puedo restablecer a la fábrica. ¿Qué debo hacer? Cambiar mi contraseñ...

0  ¿Cuál es el mejor estado para dejar un dispositivo Android?  ( What is the best state to leave an android device in ) 
Tengo un teléfono Moto E. Lo uso como una tableta para ejecutar aplicaciones, no como un teléfono, por lo que no siempre necesito dejarlo en. ¿Es más probab...

1  ¿Cómo forzar el recorte en el dispositivo Android?  ( How to force trim on android device ) 
con 4.3 Habilitando el soporte para recortar (aunque leí que estuvo presente desde el primer JB). Me preguntaba si hay una manera de obligarme a cortar en mi ...

3  ¿Cómo limpiar las carpetas de aplicaciones antiguas de la ROM previa?  ( How to clean up old application folders from prior rom ) 
Instalé CM10 en mi GS2, y durante el proceso no formaté el sistema de archivos, ya que quería conservar mis fotos y música en el dispositivo. Estaba conscient...

2  ¿Por qué el corte no es compatible con la partición "/ datos" encriptados?  ( Why is trim not supported on encrypted data partition ) 
Tengo un ABCDEFGHIJKLMNABCDEFGHIJKLMN0 . Yo uso LagFix (fstrim) para recortar particiones. Anteriormente funcionaba bien con ABCDEFGHIJKLMNABCDEFGHIJKLMN2...

0  ¿Cómo asegurar que las aplicaciones se desinstalen limpiamente?  ( How to ensure apps get uninstalled cleanly ) 
Yo uso para intentarlo (instalar y eliminar) una gran cantidad de aplicaciones para elegir las que realmente me gustaría. Me temo que las aplicaciones desinst...

4  ¿Cuándo debo ejecutar un cheque de consistencia en mi tarjeta microSD extraíble?  ( When should i run a consistency check on my removable microsd card ) 
Tengo un dispositivo Android con una tarjeta microSD extraíble. La tarjeta utiliza la tecnología FAT32 o Exfat. Estas son tecnologías de "no diario de archivo...

3  ¿Necesita ejecutar desinstaladores / limpiadores en Android para mantener los niveles de rendimiento como en Windows?  ( Do you need to run uninstallers cleaners on android to maintain performance leve ) 
Tendrás que perdonarme porque no estoy tan familiarizado con el funcionamiento interno de Android / Linux, ya que estoy con Windows. Tengo curiosidad por la...

4  ¿El sistema operativo Android es similar al sistema operativo de escritorio?  ( Does android os clutter similar to desktop os ) 
lo que quiero decir con esto. ¿Se espera que se reduzcan horas extras, se reducirá el rendimiento de un dispositivo, y el software funcionará más lento? Esto ...

2  ¿Qué quiere salir de su dispositivo por un tiempo hacer?  ( What does leaving your device off for a while do ) 
Esta página: ¿Qué debo hacer antes de que yo Pruebe la solución de problemas avanzada dice 3) Mantenga su dispositivo apagado por un tiempo. Asegúrese d...

2  ¿Es seguro usar compresión para nandroids (copias de seguridad) creadas por recuperaciones personalizadas?  ( Is it safe to use compression for nandroids backups created by custom recoveri ) 
Muchas recuperaciones personalizadas, como TWRP, tienen una opción para usar la compresión al crear copias de seguridad de NAdroid. De forma predeterminada, e...

7  ¿Qué debo hacer antes de probar la solución de problemas avanzada?  ( What should i do before i try advanced troubleshooting ) 
¿Hay algún pasos y consejos genéricos de solución de problemas a seguir antes de ¡Busco opciones de solución de problemas específicas de problemas? Entonces...

4  ¿Cuándo debería funcionar FSTIM?  ( When should fstrim run ) 
Basado en este Hilo del foro de CyanogenMod , lo intenté Para abordar el retraso en la ejecución de aplicaciones y cambiar entre aplicaciones en mi Galaxy Ne...

1  Los controles periódicos de la coherencia del sistema de archivos son probablemente una buena idea. ¿Los dispositivos Android actuales alguna vez los hacen?  ( Periodic filesystem consistency checks are probably a good idea do current andr ) 
Déjame comenzar a darle una información general de antecedentes generales. Mi pregunta real es en la parte inferior de esta publicación. Antecedentes, Part...

5  ¿Cómo eliminar las carpetas no utilizadas creadas por aplicaciones?  ( How to remove unused folders created by apps ) 
Cuando comencé con una tarjeta SD fresca, solo había muy pocas carpetas en ella. A medida que pasaba el tiempo cuando probé muchas aplicaciones, pude ver la l...

3  ¿Cómo defrane mi dispositivo Android?  ( How do i defrag my android device ) 
He visto algunas aplicaciones en línea, pero no parecen legítimas. Por lo que he visto, no parecen mostrar lo que está sucediendo mientras la unidad está sien...

2  ¿Cómo borrar completamente mi dispositivo de las aplicaciones de una empresa en particular?  ( How to completely clear my device of a particular companys apps ) 
Debido a un reciente Motley Fool Informe de las acciones de Google relacionadas con las aplicaciones móviles de Google, me ocurrió que me gustaría desinstal...

0  ¿Cómo puedo identificar el caché si veo su nombre? Un nombre es sospechoso  ( How can i identify the cache if i see its name one name is suspicious ) 
Si Mantenimiento de dispositivos se inicia en Samsung S8, después de presionar limpiar ahora , la limpieza de almacenamiento muestra brevemente las aplicac...

Relacionados problema

1  Nexus 5 cuelga después de unos minutos con pantalla 
0  Base de base de datos local de telegramas 
1  Galaxy Note se está volviendo más lento y menos receptivo [duplicado] 
1  Esta aplicación promete ejecutar "fstrim" sin root, pero no estoy seguro de si funciona 
2  ¿Es un protector de pantalla útil en un teléfono de Gorilla Glass? 
1  Han rooted Samsung Galaxy 10.2 Tablet. Quiero eliminar archivos, preguntándome si puedo hacerlo con un cable USB y luego usar el Explorer para mantener los archivos? 
3  ¿Qué debo hacer antes de enviar mi teléfono de ladrillo a reparar? 
0  ¿Cuál es el mejor estado para dejar un dispositivo Android? 
1  ¿Cómo forzar el recorte en el dispositivo Android? 
3  ¿Cómo limpiar las carpetas de aplicaciones antiguas de la ROM previa? 
2  ¿Por qué el corte no es compatible con la partición "/ datos" encriptados? 
0  ¿Cómo asegurar que las aplicaciones se desinstalen limpiamente? 
4  ¿Cuándo debo ejecutar un cheque de consistencia en mi tarjeta microSD extraíble? 
3  ¿Necesita ejecutar desinstaladores / limpiadores en Android para mantener los niveles de rendimiento como en Windows? 
4  ¿El sistema operativo Android es similar al sistema operativo de escritorio? 
2  ¿Qué quiere salir de su dispositivo por un tiempo hacer? 
2  ¿Es seguro usar compresión para nandroids (copias de seguridad) creadas por recuperaciones personalizadas? 
7  ¿Qué debo hacer antes de probar la solución de problemas avanzada? 
4  ¿Cuándo debería funcionar FSTIM? 
1  Los controles periódicos de la coherencia del sistema de archivos son probablemente una buena idea. ¿Los dispositivos Android actuales alguna vez los hacen? 
5  ¿Cómo eliminar las carpetas no utilizadas creadas por aplicaciones? 
3  ¿Cómo defrane mi dispositivo Android? 
2  ¿Cómo borrar completamente mi dispositivo de las aplicaciones de una empresa en particular? 
0  ¿Cómo puedo identificar el caché si veo su nombre? Un nombre es sospechoso 



© 2021 respuesta.top Reservados todos los derechos. Centro de preguntas y respuestas reservados todos los derechos