2 votos

¿Cómo deshabilitar las direcciones RAM incorrectas y reparar los bloques de almacenamiento incorrectos?

Los síntomas dispositivo que presenta son:

  1. Se reinicia de forma aleatoria con un trabajo previo de congelación de un par de segundos (esto es porque de /proc/sys/kernel/panic es de 5).
  2. A veces con un azul lleno de pantalla.
  3. Incluso en el arranque o TWRP.
  4. Puede reiniciar varias veces en el arranque y en diferentes momentos.
  5. Puede evitar el 'reiniciar efecto' por un tiempo manteniendo el uso de la RAM baja.
  6. No utilizar el dispositivo de parada y de los servicios que se ejecutan en segundo plano hace que el dispositivo de "reinicio"a prueba.
  7. Este error aparece en el registro de TRWP:
    E:Invalid block device on /sdcard ext4 [][][]flags=display="Internal SD" ; symlink ', 'flags=display="Internal SD" ; symlink' , 27
  8. Cuando se intenta cambiar el tipo de partición o de 'reparación de almacenamiento Interno" en TRWP dice Invalid partition selection (tal vez porque, de 7?)

He hecho esto para intentar arreglarlo:

  1. El uso de adb a arreglar badblocks (que se Encuentran algunos).
  2. El uso de diferentes ROM.
  3. Limpiar todo el dispositivo.
  4. Set kernel.panic_on_oops a 0.

ACTUALIZACIÓN: Después de analizar una gran cantidad de informes de errores, los fallos debidos a la memoria y corrupciones estoy bastante seguro de que el inutilizable ram es de dirección 0xb6000000a 0xb6ffffff.

Cómo salir de ellas? Es un ARMv7 dispositivo.

1voto

Jack Wade Puntos 231

Esto podría no ser una solución directa al problema, pero voy a compartir mis pensamientos sobre ella.

RESPUESTA CORTA

  • No es muy probable que para la memoria RAM en sistemas embebidos para obtener defectuoso. Y si lo hace, soluciones puede no estar fácilmente disponible, excepto si alguien ya lo ha hecho específicamente para su dispositivo.

  • Los modernos dispositivos de almacenamiento flash administrar bloques defectuosos en sus el propios, los usuarios no hay mucho que hacer en este sentido.

Si cualquiera de los dos problemas requiere la intervención del usuario, por lo general, es el momento de reemplazar el teléfono.

  1. Este error aparece en el registro de TRWP:
    E:Invalid block device on /sdcard ext4 [][][]flags=display="Internal SD" ; symlink ', 'flags=display="Internal SD" ; symlink' , 27
  2. Cuando se intenta cambiar el tipo de partición o de 'reparación de almacenamiento Interno" en TRWP dice Invalid partition selection (tal vez porque, de 7?)

Para mí, estos síntomas se parecen a los de un moribundo eMMC.


MALA BLOQUES DE MEMORIA RAM

Supongo que estás hablando de un teléfono o dispositivo similar.

Los teléfonos tienen la Soc, el módulo que incluye la CPU, GPU, RAM, eMMC, módem, WiFi, Bluetooth y GPS, junto con otros componentes críticos. Además, LPDRAM y eMMC son en la mayoría de los casos fabricados juntos como un único Multi-Chip Paquete (MCP).

Dicho esto, lo que están diciendo es muy poco probable que ocurra en los teléfonos. En Pc la RAM se instala como módulos independientes que son propensos a los daños físicos y el desgaste por ejemplo, debido a la humedad, el moho, el polvo, los movimientos bruscos, la vibración, conexiones sueltas, presión (durante la instalación), el calor (porque de overclocking o ventilación inadecuada) etc. Así que hay herramientas como memtest86 revisar periódicamente los fallos de memoria. Todos estos factores son ignorables para teléfonos debido a que la memoria RAM está estrechamente integrado con menos de una pulgada cuadrada de tamaño SoC chip, teniendo en cuenta todos los factores antes mencionados.

Otra posible razón es la falla eléctrica de los circuitos/componentes, por ejemplo debido a la descarga eléctrica en un repentino apagón que hace que sea totalmente inútil. De nuevo, esto no parece muy probable para teléfonos como la memoria RAM es parte de la SoC, por lo que el conjunto SoC debe fallar, junto con otros, algún tipo de, el aumento de los mecanismos de protección (si la hubiere).

Dado que la memoria RAM es una memoria volátil, sus células nunca te cambia físicamente durante la lectura/escritura de datos a diferencia de la emmc. eMMC es el almacenamiento persistente, por lo que las propiedades físicas de las células de silicio cambiar durante la E/P de operaciones. Es por eso que emmc tienen una vida limitada, pero los RAMs no están sujetos a tal limitación.

Así que si la RAM es defectuoso, lo más probable es que se fabricó con las fallas. RAM fracaso debido a la creciente bloques defectuosos no es un caso común, al menos no antes de los otros componentes del dispositivo, pero todavía no puede ser totalmente rechazada. Entonces, ¿cómo solucionarlo?

Ya que el hardware es manejado por el kernel, la única manera de marcar algunas de las direcciones de memoria malo está haciendo kernel no asignar las direcciones a cualquier programa de espacio de usuario (como se puede hacer en Linux con BadRAM la que se modifica la fuente del kernel). Y que si la mala memoria permite que el dispositivo de arranque con el kernel de la etapa. De lo contrario tendrás que manejar el asunto en SoC/gestor de arranque de la etapa donde la RAM se inicializa después de la alimentación (como se puede hacer en Linux con GRUB y en Windows con BCD). Definitivamente es imposible en los teléfonos desde gestores de arranque son de código cerrado. Si el gestor de arranque es configurable como en el caso de placas de desarrollo, que es una excepción. Pero en cada caso, usted probablemente tendrá que ir a través de miles de líneas de código.

BadRAM no es más mantiene después de la versión del kernel 2.6.28, que fue de 10+ años (probablemente porque no era aceptado en la corriente principal de árbol del kernel). Usted puede preguntar al desarrollador si él puede ayudarle a puerto el parche en el BRAZO (si es posible). O puede ser que usted puede aprovechar los parámetros del kernel mem y/o memmap de alguna manera para lograr lo que desea. De nuevo la situación puede diferir mucho cuando no hay ACPI y no de la BIOS. Personalmente nunca me llegó a través de dicha situación para teléfonos móviles.

BLOQUES DEFECTUOSOS EN EL ALMACENAMIENTO

Llegando a otro punto, la fijación de bloques defectuosos sólo tiene sentido con unidades de disco duro o al máximo con los viejos raw NAND unidades (ref). Discos duros lineal LBA a CHS de asignación, lo que significa un sistema de ficheros sabe a que la ubicación física de los datos se escriben. Los modernos dispositivos de almacenamiento de memoria flash (incluyendo emmc, tarjetas SD y unidades de estado sólido) se han integrado en el firmware de controlador llamado Flash Capa de Traducción (FTL). FTL maneja LBA a PBA asignación, el sistema de archivos y el sistema operativo son muy conscientes. Como una de nivelación de desgaste de la estrategia, FTL no mapa secuencialmente y la asignación es dinámico. Primer LBA podría corresponder a la última PBA y la última LBA podría apuntar a algún lugar en el medio, cambiando continuamente con la Recolección de Basura.

FTL también escanea y guarda un registro de todos los sectores defectuosos (más específicamente, las células de silicio) y reasigna usado bits de overprovisioned (libre) el espacio si es necesario. Los sistemas de ficheros nunca identificar un sector malo, a menos que la etapa que viene cuando E/P ciclos límite de memoria flash que se alcanza y empieza a comportarse divertido, es de sólo lectura y, finalmente, se bloquea. Incluso si se ha adquirido un software que identifica a un sector malo, no se puede marcar como no allocatable; se refieren a la naturaleza dinámica de la LBA a PBA asignación. Se marca un sector malo en el sistema de archivos y después de unos minutos de que sería trasladado a otra partición.

Discos duros generalmente no mueren a la vez. Su incorporado en el firmware mantiene una lista (G-list) de los sectores defectuosos desde el día de la fabricación (ref). Lba correspondientes a los sectores defectuosos que se sustituye con sectores libres que cada disco duro tiene. Una vez que la piscina de repuesto sectores se agota, recién aparecen (posiblemente parcial) de los sectores defectuosos son expuestos a OS/sistema de archivos. Así que cuando un programa como chkdsk, e2fsck o badblocks identifica a un sector defectuoso, puede manejar que a nivel de sistema operativo o hacer marcó mal por HDD firmware. Citado de aquí:

Si usted da permiso para sobrescribir una mala sector SeaTools intentará escribir un patrón de ceros a ese sector. Generalmente, esta acción ayudará a la unidad de disco de firmware en la gestión del problema por parte de retirarse el problema LBA y la activación de una de repuesto en su lugar.

Eso es lo hdparm --write-sector lo hace.

La mayoría de los sistemas de ficheros también puede mantener una lista de sectores defectuosos para ser ignorado durante operaciones de lectura/escritura. Por ejemplo, en el sistema de archivos ext4, dumpe2fs -b muestra una lista de bloques defectuosos reservados en bad block de inodo.

La mayoría de discos Duros (así como Ssd) se construyen también con SMART tecnología para monitorear la salud del dispositivo, pero no emmc. En caso de eMMC, la única cosa e2fsck que hace es identificar los errores dentro del sistema de ficheros (y posiblemente de reparación utilizando, por ejemplo, la información de jornal), no en la memoria flash. Todos los sistemas operativos como Android realizar el sistema de archivos de cheques en el arranque antes de realizar el montaje, por lo que la comprobación manual no es necesario.

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