« Atrás

EL DALVIN CACHE, ESE IMPORTANTE Y GRAN DESCONOCIDO

Respuesta
EL DALVIN CACHE, ESE IMPORTANTE Y GRAN DESCONOCIDO
14/02/14 21:39 en respuesta a .
Buenas noches, muchas veces, sobre todo en teléfonos moviles tipo Galaxy Ace, nos sucedia que el móvil empezaba a funcionar mal por falta de memoria...

El articulo que os hago llegar viene a explicar porque ocurria esto y posibles soluciones( original de Alejandro Alonso Nieto). Espero que os guste.


Dalvik se define como una máquina virtual. Imagino que con esta definición os quedaréis como estabais. Ahora bien, ¿qué es una máquina virtual? Es, sencillamente, un software que simula a una computadora y que puede ejecutar programas como si fuese la propia computadora, es decir, funciona como si fuese un duplicado de vuestro smartphone.

La Máquina Virtual Dalvik (DVM), es un software diseñado por ingenieros de Google (el nombre obedece al pueblo de finlandés de los antepasados de uno de estos ingenieros) cuya función es ejecutar aplicaciones programadas en Java. La DVM está optimizada para requerir poca memoria y diseñada para ejecutar varias operaciones al mismo tiempo. 

El Dalvik Caché vendría a ser el espacio temporal que usa la Máquina Virtual Dalvik (MVD) para ejecutar las aplicaciones programadas en Java. Es un espacio que va aumentando según vamos utilizando apps y que no se recupera, por eso no está de más borrar de vez en cuando este Dalvik Caché. Por otro lado, conviene borrarlo después de flashear o instalar cualquier tipo de .zip, ya sea un kernel, una ROM, parches...

Seguramente que la mayoría hayáis oído hablar del Dalvik Caché asociado a los wipes del menú recovery (para más información: ¿Qué es Wipe? ¿Es importante?). Sin embargo, y a pesar de que la mayoría de las veces se nos dice que la manera de eliminar el Dalvik Caché es mediante wipe, no es necesario llegar a esta medida, es suficiente con borrar de vez en cuando el Dalvik Caché sin uso. El único requisito es que para ello necesitamos ser root.

Para borrar el Dalvik Cache desde el recovery, necesitamos instalar ClockWorkMod (más información aquí: Qué es el modo Recovery y qué tipos hay). Este recovery ofrece la opción en el menú Advanced


La opción para eliminar el Dalvik Cache se encuentra dentro de la seccción Advanced del CWM recovery. / © AndroidPIT

Por otro lado, podemos recurrir a aplicaciones fáciles de encontrar en Google Play como por ejemplo  Andromizer, aplicación que ofrece la opción Remove Dalvik Cache. Alborrar el Dalvik Cache y reiniciar el dispositivo comprobaréis que el móvil tarda en iniciarse, que no cunda el pánico, esto simplemente sucede debido a que se está regenerando el caché con las apps que tenemos instaladas. 

© AndroidPITAndromizerINSTALAR

Po­r último, borrar el Dalvik Caché manualmente es una tarea más apropiada para usuarios un poco avanzados ya que requiere ciertos conocimientos de comandos Linux, aparte de tener instalado, o bien el SDK de Android, o bien usar u emulador del terminal. La operación se basaría en borrar el contenido que encontramos en la carpeta /data/dalvik-cache. Pa­ra acceder a dicha carpeta necesitaríamos ejecutar el comando rm -r /data/dalvik-cache/* desde el mencionado SDK o desde el emulador.

Espero que con este artículo se hayan aclarado todas vuestras dudas acerca del Dalvik Cache. Si probáis alguno de estos métodos para eliminarlo, no dejéis de comentarnos vuestras experiencias.

+9 9 Votos
Respuesta
RE: EL DALVIN CACHE, ESE IMPORTANTE Y GRAN DESCONOCIDO
14/02/14 23:35 en respuesta a mundial44.
Chapeau!!
+2 2 Votos
Respuesta
RE: EL DALVIN CACHE, ESE IMPORTANTE Y GRAN DESCONOCIDO
14/02/14 23:39 en respuesta a Squire10.
Yo más de una vez lo he borrado, pero no sabía realmente que era. Pero ver la palabra caché queda claro que son restos de algo y que viene bien limpiar
+1 1 Voto
Respuesta
RE: EL DALVIN CACHE, ESE IMPORTANTE Y GRAN DESCONOCIDO
14/02/14 23:42 en respuesta a mn3k4ZP4.
Muchas gracias. Yo tengo dos Galaxy ACE, y lo voy a probar ahora mismo.
0 0 Votos
Respuesta
RE: EL DALVIN CACHE, ESE IMPORTANTE Y GRAN DESCONOCIDO
14/02/14 23:53 en respuesta a txetxutp.
Esa opción por defecto no aparecerá, tienes que buscar por Internet el ClockWorkMod, poner modo recuperación y seleccionar la opción de "update from sd card" y seleccionar ese archivo descargado.

Una vez hecho tendrás un modo de recuperación como un menú más completo y entre ello éstas opciones ;)
+1 1 Voto
Respuesta
RE: EL DALVIN CACHE, ESE IMPORTANTE Y GRAN DESCONOCIDO
15/02/14 12:25 en respuesta a mn3k4ZP4.
Comno es una operación que sea necesario ejecutar a menudo, se puede efectuar directamente y si instalar ninguna app desde el menu recovery del movil con un poco de cuiadado..Yo en su momento lo probe con una ace sin problemas.

Me alegro de que os haya gustado el articulo.
+2 2 Votos
Respuesta
RE: EL DALVIN CACHE, ESE IMPORTANTE Y GRAN DESCONOCIDO
18/02/14 23:30 en respuesta a mundial44.
Muy interesante esto de conocer los entresijos de nuestras máquinas y los SS.OO que los gobiernan.

Se habló ya un poco sobre la virtualización en un hilo en el que se mencionaba Virtualbox, pero habría que aclarar que todos los programas escritos en Java funcionan sobre una máquina virtual, ese es el "secreto de su éxito"; también aquellos juegos Java que que usábamos en nuetros "antiguos" Nokia o el famoso Jdownloader, necesitan que tengamos instalado un entorno de ejecución (léase máquina virtual + algunas bibliotecas auxiliares cuya función escapan a mi culturilla informática) Java. Dalvik es sólo otra máquina virtual Java para Linux, aunque tiene sus días contados, porque Android 4.4 (Kitkat, lo han llamado) usa otra MV Java, llamada Arts.

Android es en "sus tripas" un núcleo o "kernel" Linux. Si miráis en Ajustes, la información sobre el teléfono, eso que dice de "Versión de kernel" y debajo "3.algo.algo" se refiere a la versión de Linux que mueve vuestro Android; obviamente no necesita el mismo núcleo un sistema operativo de "listófono" que el de un ordenador del Gran Colisionador de Hadrones o del CIEMAT; ni un móvil necesita los mismos módulos del núcleo ni las mismas opciones de compilación que otro móvil: la antena wifi puede ser distinta, el procesador de gráficos también, etc, sino que aunque teóricamente se el mismo, en realidad está compilado con lo necesario para vuestro dispositivo y punto, de hecho si visitáis https://www.kernel.org/ veréis que la versión más reciente del núcleo Linux está bastante más por arriba numéricamente que cualquier kernel de cualquier móvil de recentísima aparición e incluso de los que vayan a aparecer en los próximos meses; y es que lleva su tiempo a Google coger el código de Linux, "remodelarlo" en el núcleo de Android, "vestir" ese núcleo con todas las capas (Dalvik incluída), y luego a cada fabricante de móviles, coger el Android "stock", de fábrica según lo publica Google, adaptarlo a cada modelo de móvil y ponerle también sus propias capas de personalización y su morralla que nunca vamos a necesitar porque o es inútil o porque ya hay aplicaciones mejores que no dependen de tal o cuál fabricante (TrackID de Sony vs Shazam, por poner un ejemplo de los que hay docenas).

Quien no se haya perdido a estas alturas podrá pensar ¿Para qué una máquina virtual si Android ya tiene un SO real debajo? Pues sólo hay que mirar un escaparate: Android funcionaría casi hasta en una batidora, porque los programas no tienen que ser escritos para tal o cual arquitectura (procesador). Un móvil o una tableta puede llevar un procesador ARM, Qualcomm, Exynos, Intel Atom, etc, porque gracias a las maravillas de la virtualización los programas funcionan sobre esa máquina virtual, "falsa", aunque dicha máquina esté funcionando sobre un hardware de su padre o de su madre: el programador sólo tiene que preocuparse de programar para la MV Java, que ya ésta se entiendenderá con el sistema operativo real y éste con el hardware. Así que gracias a Dalvik/Arts, la gama de dispositivos que pueden hacer funcionar aplicaciones para Android es bestial, y cada día mayor; las aplicaciones para IOS en cambio sólo funcionan en dispositivos Apple, y las aplicaciones para el SO de Blackberry sólo funcionan en máquinas BB.
Por otra parte programadores conocedores de Java los hay a "patás" mientras que programadores en C/C++ que sería lo suyo para crear aplicaciones nativas Linux, y que creo que es en lo que se escriben los programas para IOS, hay muchos, pero ya no tantos. Dicen las malas lenguas que Google estaba como loca por poder tener una tienda de aplicaciones que compitiese con la de Apple, y Java reclutaría muchísimos más desarrolladores para el "bando" Android que lenguajes de más nivel y complicación como C/C++, lo que unido al tema de la compatibilidad (recordemos que el negocio de Google no es vender hardware -los Nexus los hace LG y antes Samsung, y lo de Motorola no parece tampoco que sea un intento por hacese con el mercado, al menos de momento- el de Apple, sí), ponía a Java con el lenguaje de programación ganador, aunque no fuese el mejor.

Así que no es oro todo lo que reluce, ni mucho menos, hamijos, xD. Habiendo simplificado mucho, com muchísimas lagunas en mi conocimiento, que no pasa de ser el de un aficionado, y seguro que con bastantes errores en mi exposición, lo que parece decirse por todos los foros sobre el tema, por gente que de verdad sabe del asunto, no por simples "divulgadores" como pueda estar siendo yo en estos momentos, es que esos desagradables retardos, cuelgues, y trompicones de Android no son por casualidad, ni es problema del hardware, auqnue uno más potente los hará menos perceptibles. El precio de la compatibilidad y la sencillez para programar es la eficiencia: es mucho más eficiente un programa para un SO que para una MV que funciona sobre dicho SO. Por muy optimizada, que esté, esa capa Java intermedia, sigue estando ahí; son ciclos extra de procesador, son milisegunos extra de accesos a los buses de datos, componentes, etc, son periodos de latencia extra y cuellos de botella que en aplicaciones escritas nativamente para un SO, simplemente no existen, por eso un Iphone 4 a veces va más fluído que un Galaxy S IV, aunque la máquina en sí sea muy inferior.
Un "primo" de Android (de la familia Linux también), que lleva prometiendo que va a salir para el público general varios meses pero nunca sale, incluso se publicita con cierta mala leche anunciándose como que no adolece de la "sobrecarga/sobrecoste" [no sé muy bien cómo traducirlo] de Java:
It doesn’t have the overhead of a Java virtual machine, so all core
applications run at full native speeds with a small memory footprint.

http://www.ubuntu.co­m/phone/operators-and-oems (Hacia la mitad de la página)

Por alguna parte leí el rumor de que Google planeaba empezar a permitir que Android ejecutase aplicaciones nativas, lo que dispararía su fluidez, pero estas cosas que uno lee en un blog de tecnología no siempre están fundadas, así que no sé yo si de verdad algún día nos libraremos de los trompicones de Android ni de las petadas de la instancia de la máquina virtual en la que se está ejecutando tal aplicación, especialemnte si ésta no está demasiado bien escrita (la relativa facilidad de Java por lo visto ha hecho que mucha gente desarrolle en Java sin ser buenos programadores en realidad).
Por otra parte tempoco me molesta tanto, lo que me molesta más es que no terminen de aparecer o consolidarse alternativas a Android que nos permitan liberarnos ya no sólo de los "fallos" (repito que según cómo se mire puede ser un fallo o la clave de su éxito, todo depende del color del cristal con que se mira) de diseño, sino del control de nuestros datos por parte de una empresa privada estadounidense, con todas las implicaciones sobre nuestra privacidad que ello conlleva: Firefox OS (http://www.mozilla.org/es-ES/­firefox/os/) parece limitado a terminales de gama baja y aplicaciones sencillas escritas en HTML5 y Javascript, o sea, prácticamente aplicaciones web funcionando en el móvil y poco más; Sailfish (https://sailfishos.org/) anda ya circulando por ahí, pero parece que sólo funciona en determinados aparatos, y tampoco parece que esté llamando mucho la atención, o la prensa parece que no le está haciendo mucho caso; Ubuntu Touch (http://www.ubuntu.com/phone) es la eterna promesa que nunca se concreta: a principios del 2013 publicaron una primera versión beta para desarrolladores que sólo funcionaba en dospositivos Googel Nexus, dijeron que a principios de 2014 ya empezarían a salir los primeros dispositivos al mercado con UT de serie, luego dijeron que la versión 14.04 (abril de 2014) de Ubuntu, la versión tradicionalemnte para ordenador funcionaría en ordenadores, tabletas y móviles por igual, y hace poco leí que hasta casi 2015 no se esperan los primeros móviles con UT. Y finalmente Tizen (http://www.elconfidencial.com­/tecnologia/2014-02-08/tizen-e­l-sueno-de-evasion-que-le-esta­-saliendo-caro-a-samsung_86117­/), tres cuartos de lo mismo: cuando Nokia se paso a Windows, Samsung, Intel y creo que alguna más, recogieron el SO que había estado desarrollando Nokia, Meego, y se suponía que se habían puedo a continuar su desarrollo, pero a 2014 todavía no hay nada claro. Dicen que seguramente se sepa algo más en Barcelona en el "Congreso del Mundo Móvil", dentro de poco, pero ya veremos.


Total, que parece que tenemos Dalvik/Arts para rato. Purgar la caché, no sólo de Dalvik (también para Windows creo que recomiendan limpiar los archivos .prefetch de vez en cuando, no? Hablo de oídas pues hace más de un lustro que no tengo Windows en un ordenador mío), es una buena costumbre siempre que no se convierta en una obsesión, pero querría matizar una cosa, prevenir sobre ella en realidad:
rm -r /data/dalvik-cache/*

Cuidadín con la orden
rm y el modificador -r. Seguramente los linuxeros y quizá algunos Macqueros ya lo saben, pero rm, (remove) borra sin contemplaciones, no envía a ninguna "papelera" ni pide confirmación (hay distribuciones Linux donde sí, pero eso es porque han metido mano los que han hecho la distribución, no porque sea el comportamiento por defecto de rm), y -r (recursivamente) borra todos los archivos y carpetas que haya dentro de la carpeta que queremos borrar, así que ojito al usarla: si olvidáis el asterisco y ejecutáis rm -r /data/dalvik-cache/ borraréis también la carpeta dalvik-cache; en este caso no sería tan grave si os dais cuenta de ello y creais una carpeta nueva con ese mismo nombre, pero si no os dais cuenta, y a no ser que Dalvik la restaure ella sola (no sé si lo hace, no he hecho la prueba) os crujiréis la cache de Dalvik y seguramente Android empiece a petar por doquier o a funcionar a pedales, o ambas cosas a la vez, xD.

Feliz trasteo, pero sabed qué es lo que vais haciendo. ;)
+3 3 Votos
Respuesta
RE: EL DALVIN CACHE, ESE IMPORTANTE Y GRAN DESCONOCIDO
18/02/14 23:16 en respuesta a Oirausu.
¡Ohtia peazo ladrillaco me ha quedado, ahora que lo veo publicado! emoticon No parecía tanto según tecleaba (>_<)
+1 1 Voto
Respuesta
RE: EL DALVIN CACHE, ESE IMPORTANTE Y GRAN DESCONOCIDO
19/02/14 8:08 en respuesta a Oirausu.
Cuánta sapiencia Dios mío!!!
+1 1 Voto
Respuesta
RE: EL DALVIN CACHE, ESE IMPORTANTE Y GRAN DESCONOCIDO
19/02/14 8:31 en respuesta a Squire10.
Super el articulo, una pregunta, que no se si tiene que ver  mucho pero me esta sucecediendo, yo tengo Un Galaxy Ace de esos que Movistar regalaba cuando te portaba a ellos, el telefono ya lo libere por IME en su dia pero trae programas que ocupan memoria interna del telefono y que ni he usado ni quiero tener, he intentado con varios programas eliminarlo y nada y tambien entrar al menu secreto de Android pero solo carga y carga pero nunca termina de cargar... Los programas son AllShare, Email, Social Hub, Talk, Chat movistar, Demo Bolos 2, Demo Guerrad, Demo MontRus, Demo Tetris, Emoción, imagenia movil, Juegos, Mi musica...

En otros terminales si lo he logrado, pero concretamente en este modelo, me ha dejado cao.
0 0 Votos
Respuesta
RE: EL DALVIN CACHE, ESE IMPORTANTE Y GRAN DESCONOCIDO
19/02/14 9:42 en respuesta a Oirausu.
Je, je... Un clásico. Te pones a escribir y cuando repasas lo que has escrito... Pero mola, en serio. Si alguien como yo ha sido capaz de seguir vuestras explicaciones, es que está bien explicado. Y seguro que hay mucha gente como yo que os agradece esas píldoras de conocimiento.

Muchas gracias!
0 0 Votos
Respuesta
RE: EL DALVIN CACHE, ESE IMPORTANTE Y GRAN DESCONOCIDO
19/02/14 9:57 en respuesta a txetxutp.
txetxutp:
Super el articulo, una pregunta, que no se si tiene que ver  mucho pero me esta sucecediendo, yo tengo Un Galaxy Ace de esos que Movistar regalaba cuando te portaba a ellos, el telefono ya lo libere por IME en su dia pero trae programas que ocupan memoria interna del telefono y que ni he usado ni quiero tener, he intentado con varios programas eliminarlo y nada y tambien entrar al menu secreto de Android pero solo carga y carga pero nunca termina de cargar... Los programas son AllShare, Email, Social Hub, Talk, Chat movistar, Demo Bolos 2, Demo Guerrad, Demo MontRus, Demo Tetris, Emoción, imagenia movil, Juegos, Mi musica...

En otros terminales si lo he logrado, pero concretamente en este modelo, me ha dejado cao.
En teroria, teniendo el movil root, con el titanium back up te los deberias poder cargar. Asi lo hice yo con Ace de Movistar hace ya bastante tiempo sin mayores problemas. Insisto, primero hay que rootearlo
0 0 Votos
Respuesta
RE: EL DALVIN CACHE, ESE IMPORTANTE Y GRAN DESCONOCIDO
19/02/14 9:58 en respuesta a Squire10.
Squire10:
Cuánta sapiencia Dios mío!!!
Muy buena anotación. Si ya sabia yo que este bloque iba a dar de si bastante, jejejeje
0 0 Votos
Respuesta
RE: EL DALVIN CACHE, ESE IMPORTANTE Y GRAN DESCONOCIDO
19/02/14 10:34 en respuesta a mundial44.
mundial44:
txetxutp:
Super el articulo, una pregunta, que no se si tiene que ver  mucho pero me esta sucecediendo, yo tengo Un Galaxy Ace de esos que Movistar regalaba cuando te portaba a ellos, el telefono ya lo libere por IME en su dia pero trae programas que ocupan memoria interna del telefono y que ni he usado ni quiero tener, he intentado con varios programas eliminarlo y nada y tambien entrar al menu secreto de Android pero solo carga y carga pero nunca termina de cargar... Los programas son AllShare, Email, Social Hub, Talk, Chat movistar, Demo Bolos 2, Demo Guerrad, Demo MontRus, Demo Tetris, Emoción, imagenia movil, Juegos, Mi musica...

En otros terminales si lo he logrado, pero concretamente en este modelo, me ha dejado cao.
En teroria, teniendo el movil root, con el titanium back up te los deberias poder cargar. Asi lo hice yo con Ace de Movistar hace ya bastante tiempo sin mayores problemas. Insisto, primero hay que rootearlo

Rootearlo? puff so palabras mayores para mi... Pero bueno me pondre en ello emoticon
0 0 Votos
Respuesta
RE: EL DALVIN CACHE, ESE IMPORTANTE Y GRAN DESCONOCIDO
19/02/14 10:44 en respuesta a txetxutp.
txetxutp:
mundial44:
txetxutp:
Su­per el articulo, una pregunta, que no se si tiene que ver  mucho pero me esta sucecediendo, yo tengo Un Galaxy Ace de esos que Movistar regalaba cuando te portaba a ellos, el telefono ya lo libere por IME en su dia pero trae programas que ocupan memoria interna del telefono y que ni he usado ni quiero tener, he intentado con varios programas eliminarlo y nada y tambien entrar al menu secreto de Android pero solo carga y carga pero nunca termina de cargar... Los programas son AllShare, Email, Social Hub, Talk, Chat movistar, Demo Bolos 2, Demo Guerrad, Demo MontRus, Demo Tetris, Emoción, imagenia movil, Juegos, Mi musica...

En otros terminales si lo he logrado, pero concretamente en este modelo, me ha dejado cao.
En teroria, teniendo el movil root, con el titanium back up te los deberias poder cargar. Asi lo hice yo con Ace de Movistar hace ya bastante tiempo sin mayores problemas. Insisto, primero hay que rootearlo

Rootearlo? puff so palabras mayores para mi... Pero bueno me pondre en ello emoticon
Según la versión de android que tengas será más o menos facil. Indaga un poco en san google. emoticon
0 0 Votos