martes, 2 de mayo de 2023

GPT3. La Inteligencia Artificial que ha conseguido 100 millones de usuarios en 2 meses

 


GPT, es machine learning basado en Redes Neuronales. El Transformer se puede entrenar en paralelo y aprovechar las GPU. Utiliza un mecanismo de atención, investigación publicada en 2017. Los modelos anteriores no podían memorizar textos largos ni correr en paralelo. GPT-3, lanzado en 2020, tiene 175.000 millones de parámetros. Entrenado con textos de internet de 500.000 millones de tokens. La generación de textos, puede alcanzar un nivel literario que pasa inadvertido por los humanos, el modelo es capaz de mantener la coherencia en textos largos y debido a su gran conocimiento del mundo, crear un contexto y párrafos muy reales. Logra realizar tareas “inesperadas” de manera correcta, sin haber sido entrenado para ello...

miércoles, 23 de noviembre de 2016

Las tecnológicas que nos gustaría tener. Recopilación de artículos

La burbuja de las FANG

Wimi5: El WordPress de los videojuegos. Recopilación de artículos

Expertos en el negocio de los videojuegos hablan de las dificultades de este modelo


WiMi5 aúna en una plataforma todo lo que hace falta para lanzar juegos en HTML5

martes, 14 de abril de 2015

El Android "sin Google"

En lo que nos fijamos principalmente de un smartphone o tableta, es en el tamaño de su pantalla. Si la pantalla es muy pequeña y hemos de leer mucho, nos cansaremos la vista fácilmente. Por mi experiencia personal, no conviene leer mucho rato al día, en pantallas de menos de 5 pulgadas. Recordemos que las pulgadas de una pantalla, se refieren a la longitud de su diagonal principal. Una pulgada es equivalente a 2,54cm.

El detalle en que nos solemos fijar después, es en la versión del sistema operativo que lleva el dispositivo, Android ó iOS ó Windows.

Evidentemente el precio también cuenta, y quizás es el primer parámetro en el que se fija, el usuario menos experto.

Suponemos que ese smartphone llevará WhatsApp. Un smartphone en el que no podamos usar el WhatsApp, no nos lo vamos a comprar seguramente. Este es el caso de los smartphones con FirefoxOS.

Centrados ya en Android, si somos usuarios más experimentados, miraremos la versión de sistema operativo que lleva el dispositivo. En el caso de Android, miraremos si lleva, a lo sumo, Android Kit Kat, o si tenemos la suerte de que nuestro dispositivo, ya lleve Android Lollipop.

Los usuarios más experimentados, también van a tener en cuenta, el hardware de los dispositivos antes de comprar. Si es un Snapdragon 400 ó 800, o si es un Intel Z2520 o un Z3735D etc ...

Como contaba en mi artículo anterior, depende del fabricante que un dispositivo, reciba actualizaciones de Android o no y durante cuanto tiempo las va a recibir.

Me atrevo a decir, que cuando uno ha fijado su presupuesto a la hora de comprar un dispositivo, y el tamaño de la pantalla, lo más importante va a ser la versión de Android.

Google es la responsable del proyecto de código abierto AOSP (Android Open Source Project). Posteriormente Google añade una "capa de software propietario" que son las Google Apps y los Google Services.

El hecho de que los fabricantes a partir de AOSP, "fabriquen" sus propias versiones de Android, adaptadas al hardware de su dispositivo, introduce un problema añadido, al de la fragmentación de Android.

Android está muy fragmentado, porque sus usuarios, tienen versiones muy dispares. Aún hay una base de usuarios grande de la versión 2.2 y no digamos de las versiones 4.0, 4.1 y 4.2. La base de usuarios de Kit Kat (4.4) ya es significativa y la de Lollipop (5.0) es muy pequeña.

Para los fabricantes de dispositivos, es un problema tener que personalizar y adaptar a sus dispositivos AOSP, y actualizar las versiones de Android. Han de mantener una plantilla de ingenieros especializados en esta tarea.

De lo buenos que sean esos ingenieros, y de la cantidad de recursos económicos que dedique el fabricante a esta partida, dependerá que la experiencia del usuario de Android, en esa marca, sea mejor o peor. Hay mucha diferencia de unas marcas a otras. Los fabricantes más grandes, tienen versiones de Android más optimizadas y que funcionan mejor, que las de otros fabricantes pequeños.

Muy pocos fabricantes consiguen beneficios significativos en la venta de smartphones. La competencia es feroz.

En este escenario, tenemos a la empresa Cyanogen. Totalmente especializada en una única tarea, desarrollar versiones de Android, sin capa de personalización y sin las Google Apps, ni los Google Services, para la mayoría de dispositivos. Un Android sin Google.

¿Pueden competir los departamentos de Ingeniería de Sistemas Operativos de las principales marcas, con el Departamento de Ingeniería de Cyanogen ?

Mi respuesta, es que solo, las grandes marcas. De hecho, es muy común, que la versión de Cyanogen para un dispositivo, funcione mejor y sea más reciente, que la de la propia marca. Cyanogen actualiza versiones de Android de ciertos dispositivos y el fabricante no. En muchos casos, la propia comunidad de desarrolladores de Android, actualiza, en base al código fuente de Cyanogen, antes que el propio fabricante.

Vemos algo que ya hemos visto otras veces en la historia de la computación: "el sistema operativo o más genéricamente, el software, es más importante que el hardware." Esto lo hemos visto durante muchos años, con el dominio del Windows Microsoft. Y de como Microsoft, presionaba y controlaba a todos los fabricantes de ordenadores.

¿Es Google la próxima Microsoft ? ¿Va a acabar controlando y presionando Google a todos los fabricantes de dispositivos Android? ¿Es Cyanogen el salvador de las operadoras y fabricantes? Todo parece indicar que si. Y no solo a los fabricantes de hardware, también a las operadoras de telefonía móvil.

Ahora es más fácil que entendamos, una noticia que nos sorprendió a todos, hace unas semanas:

http://www.elmundo.es/blogs/elmundo/el-gadgetoblog/2015/03/26/cyanogen-respira.html

Hasta pronto !!




martes, 7 de abril de 2015

Fundamentos de Android I

Android e iOS, los sistemas operativos móviles de Google y de Apple respectivamente, en dispositivos móviles, smartphones y tabletas, han hecho una Internet "mucho más grande" al permitir a sus usuarios navegar y usar la red desde cualquier lugar y a cualquier hora.

Un elemento fundamental de estos sistemas operativos, son sus tiendas de aplicaciones, Google Play e Itunes. Un lugar centralizado dónde los usuarios pueden encontrar millones de aplicaciones para sus dispositivos.

Android, la plataforma móvil de Google, desde su primera versión en Noviembre de 2007, es hoy, la plataforma móvil, más usada del mundo, con una cuota de mercado del 87% (cifra de Abril de 2015).

A mediados de 2013 se activaban 1,5M de dispositivos Android cada dia y a finales de 2013, se alcanzaron los 900M de dispositivos Android activados.

Andoid Open Source Project (AOSP) es un proyecto de software libre, del que Google es el responsable de su gestión y desarrollo. Sobre este proyecto Google añade los Google Mobile Services (Google Play, Google Maps, Google Now, etcétera) y las Google Apps (Gmail, Google Drive, Google Keep, etcétera). Todo esto último es completamente cerrado y propietario de Google. Todo este conjunto, lo vemos, en las versiones de Android de los smartphones y tabletas, de diferentes fabricantes, que usamos a diario.

Hagamos un poco de historia:

Año 2009: Google libera Android 2.0 Eclair y la cuota de mercado global de Android es del 2,8%
Año 2010: Google libera Android 2.2 y 2.3 Gingerbread y la cuota de mercado de Android es del 33%
Año 2011: Google libera Android 3.0 y 4.0 Ice Cream Sandwich y la cuota de mercado de Android es del 53%
Año 2012: Google libera Android 4.1 Jelly Bean y la cuota de mercado de Android es del 75%
Año 2013: Google libera Android 4.4 Kit Kat y la cuota de mercado de Android es del 78,6%
Año 2014: Google libera Android 5.0 Lollipop y la cuota de mercado de Android es del 84,7%

Cuando Google libera el código fuente de Android, los fabricantes de móviles inician, a veces el lento proceso, de adaptación de la nueva versión a sus dispositivos, smartphones o tabletas, y son  ellos los que finalemnte deciden, cuales de sus dispositvos recibiran la actualización a la nueva versión y cuales no.

El primer elemento fundamental de Android, es el Bootloader. El bootloader, es el que ordena al kernel de Android, arrancar. El kernel de Android está basado en el kernel de Linux.

Una Stock Rom, es una versión de Android suministrada por el fabricante del dispositivo. Son las versiones que nos encontramos instaladas, cuando compramos cualquier smartphone o tableta Android.

Una Custom Rom, para un dispositvo concreto, es una rom, hecha por la comunidad. Normalmente porque el fabricante ha decicido dejar de actualizar Android para ese dispositivo o porque el funcionamiento de la Stock Rom deja mucho que desear.

Google está desarrollando otro sistema operativo para ordenadores, Chrome OS. Android es muy interesante en pantallas de más de 10 pulgadas, por los millones de aplicaciones disponibles para la paltaforma, Y más interesante es aún, si puede correr sobre el hardware de siempre, el de nuestros ordenadores de sobremesa y ordenadores portátiles. Como iremos viendo, hardware mucho más potente que el de nuestros smartphones y tabletas. Por todo esto, es muy interesante el proyecto libre android-x86. Este mes de enero se liberó la versión 4.4-r2 de android-x86.

Android-x86, funciona, muy bien en ordenadores con procesador y gráfica Intel, tal y como voy contando en otros artículos de este blog. Hay otras versiones compiladas por la comunidad de android-x86 y actualmente, ya hay una versión de febrero de 2015, de android-x86 5.0 Lollipop.

Cuando instalamos android-x86 en nuestros ordenadores y corremos los benchmarks típicos de Android (Antutu o Passmark), nos damos cuenta de la diferencia de potencia de nuestro hardware de siempre comparado, con los SOCs ARM que llevan los smartphones y tabletas que se venden.

Para que nos hagamos una idea, después de ejecutar estos benchmarks, uno ve por ejemplo, que un portátil con Intel Celeron N2840 con pantalla de 15,6" es ya, un poco más potente que, un smartphone o tableta con Intel Atom Z3735D y más mucho barato. Ya no digamos, ordenadores con Intel i3,i5 ó i7. Como comenté en mi artículo anterior, un i7U da más puntuación en Antutu que un Nexus 9.

En un próximo artículo, veremos que significa tener el bootloader abierto ó cerrado, que es el recovery etc, hasta pronto !

lunes, 30 de marzo de 2015

Android-x86 4.4-r2: OpenGL ES 3.0,más de 50.000 puntos Antutu,1.5M de Apps disponibles y en pantallas de 15.6"


Estamos acostumbrados a ver Android KitKat, en pantallas muy pequeñas de móviles o tabletas. Ver Android KitKat funcionar en un ordenador, portátil o de sobremesa, con una pantalla mucho más grande, es una gran experiencia, por la rapidez de funcionamiento y por el tamaño de la pantalla, sobretodo.

Android-x86 es un proyecto libre que pretende, poder instalar Android en ordenadores. La última versión disponible es 4.4-r2 KitKat.

Al poder ejecutar diferentes Benchmarks (Antutu ó Passmark) dentro de Androidx86 KitKat, en nuestros ordenadores, nos damos cuenta de la poca potencia de la mayoría de SOCs ARM ó Intel Atom (Bay Trail), comparado con la potencia hardware de la mayoría de nuestros ordenadores. Para que nos hagamos una idea, los SOCs más avanzados de Intel Atom (ej, el Z3795) son solo "algo" más rápidos, y mucho más caros, que los procesadores Intel, presentes en ordenadores portátiles, como el "pequeño" Intel Celeron N2840 o el E2-3800 de AMD. Ya no digamos, si comparamos con ordenadores con procesador Intel i3, i5 ó i7. 

Téngase en cuenta que la puntuación de Antutu para el Nexus 9 (lleva el SOC más potente del mercado para Android), oscila alrededor de 57.414 puntos. En las últimas pruebas que he hecho de Android-x86 4.4-r2 sobre un Intel i7-3537U, la puntuación de Antutu es de alrededor de 70.000 puntos.

Es verdad que muchas apps de Android, estan pensadas para pantallas táctiles y para hacer uso de los sensores que tienen los móviles o tabletas Android. Estos sensores, no están presentes en nuestros ordenadores. Todas estas apps no las vamos a poder usar correctamente en Android-x86. Pero a pesar de todo esto, animo a comprobar lo bien y rápido que funcionan la mayoría de apps de Android, en Android-x86. 

Android-x86 4.4-r2, es la última versión disponible, mientras se escribe este artículo, y es de 01/01/2015. Esta versión, nos da OpenGL ES 3.0, sólo en ordenadores con procesador Intel y tarjeta gráfica Intel HD Graphics. En ordenadores con procesador Intel y tarjeta gráfica Radeon o NVIDIA, solo dispondremos de OpenGL ES 2.0. Para tarjetas gráficas más antiguas de Intel, habrá que comprobar una vez instalado, dentro de Android, Ajustes -> Acerca de, a ver de que aceleración gráfica OpenGL disponemos. Esto es importante para después obtener una buena experiencia con juegos de Google Play que hagan uso de 3D.

Para ordenadores con procesador AMD y tarjeta gráfica NVIDIA es mejor usar otras imágenes de Androd-x86 4.4, que ha desarrollado la comunidad.

En un próximo nuevo tutorial, vamos a ver como instalar la última versión de Android-x86 4.4-r2 (KitKat-x86), en un ordenador con Windows, tanto si el esquema de particinado del disco es MBR (normalmente ordenadores con Windows 7 y Windows anteriores), como si el esquema de particionado del disco es GPT (normalmente Windows 8 y Windows posteriores).

Vamos a repasar unos conceptos.

UEFI: Unified Extensible Firmware Interface. Es una especificación que define una interficie software entre el Sistema Operativo y el Firmware del hardware. UEFI se ha definido como reemplazo de la vieja interficie BIOS. En la práctica la mayoría de imagénes UEFI soportan compatibilidad con servicios BIOS. UEFI puede soportar diagnósticos y reparación de ordenadores, de forma remota, incluso sin sistema operativo.

GPT: GUID (Global Unique Identifier) Partition Table.A parte del esquema de partición de discos, que usa MBR (Master Boot Record), UEFI trabaja con un nuevo esquema de partición de discos: GPT. El esquema de particionado MBR, permite solo 4 particiones primarias por disco y discos de hasta 2 TB. GPT permite discos y particiones de hasta 8 ZB (109 TB).

SECURE BOOT: Es una característica de UEFI, cuya misión, es impedir la ejecucón de cualquier software no firmado por el fabricante. Esto impide que sea ejecutada cualquier amenaza, durante el inicio del sistema, pero por otra parte, también, impide la instalación de otros Sistemas Operativos

En un próximo tutorial, se hará todo el proceso desde Windows. Esta es una petición que suelen hacer los lectores en los comentarios, de los anteriores tutoriales, donde se hacía el proceso de instalación, de versiones más antiguas de Android-x86, desde Linux Ubuntu o Linux Mint.

Hay una imagen de Android-x86 4.4-r2 para BIOS y otra para UEFI. Se ha de usar la que corresponda, dependiendo de si nuestro ordenador es UEFI o BIOS. En ordenadores con Windows 7 y anteriores versiones de Windows, tenemos BIOS y esquema de partición de discos duros MBR.

Para instalarlo en ordenadores con BIOS y MBR, normalmente ordenadores con Windows 7 y versiones anteriores de Windows, es suficiente seguir las indicaciones del instalador de Android-x86, creando una nueva partición ext3 para él y cargando el arrancador GRUB en el disco duro.

En ordenadores con Windows 8, tenemos UEFI, Secure Boot y esquema de particionado de disco duro GPT, aquí es más complicado instalar Android-x86.

En el proceso de instalación, uno se puede equivocar y borrar particiones de su disco duro, por lo tanto se ruega encarecidamente, hacer una copia de seguridad completa del disco duro, antes de empezar, y tener mucho cuidado en todo el proceso y no dar ningún paso, hasta entender perfectamente lo que se está haciendo. 

Hasta pronto !!


miércoles, 17 de diciembre de 2014

MultiBoot: Linux Mint, Windows 8, Chromium OS y Android x86 4.4-r1 en un Asus F550CA i7-3537U



All Operating Systems installed on hard disk with a GRUB2 menu.
Laptop Asus F550CA i7-3537U 2GHz - 3.1GHz Intel HD Graphics 4000 with 4GB RAM.
Chromium OS build 2014-12-08
Android-x86 4.4-r1 Kit Kat.

Youtube full HD 1080p with hardware video acceleration and WebGL support on Chromium OS.
OpenGL ES 3.0 and Youtube HD 720p on Android Kit Kat

Antutu Benchmark 69791
Nexus 9                57414
Samsung Galaxy Note 4       46633


jueves, 27 de noviembre de 2014

Tutorial para instalar Linux Mint y Android-x86 4.4-r1 (KitKat-x86) Rooteado, en disco duro de ordenador con Windows

Vamos a ver la forma que considero más fácil, para instalar Android-x86 4.4-r1 (8-8-2014) en un ordenador que tenga Windows instalado. Un ordenador con Windows (7 ó 8, ó 8.1) es el caso más común.

Antes que nada recordar que esta versión de Android está pensada para ordenadores con procesador Intel y gráfica Intel HD Graphics. En el caso de ordenadores con procesadores AMD y gráfica Radeon HD, u ordenadores con gráfica Nvidia, hay que usar otras imágenes de Android-x86 que vienen con un kernel diferente, para soportar estas gráficas y que han sido creadas por voluntarios que colaboran con el proyecto Android-x86, esta imagen es la última que conozco,creada con el kernel 3.16.1 + Mesa 10.1.5, de este autor. En el caso de gráficas AMD GCN, de momento Android-x86 no funciona en ellas.

Vamos pues a empezar, el primer paso es desactivar Secure Boot de la BIOS si es el caso. Posteriormente procederemos a instalar Linux Mint,es la distribución basada en Ubuntu que tiene más seguidores hoy en día. Este paso lo considero imprescindible porque facilita el proceso. Una vez instalado Mint, nuestro ordenador ya tendrá el arranque dual de Linux y Windows con GRUB 2 y esto hará más fácil instalar diferentes versiones de Android-x86.

Para instalar Mint, arrancamos nuestro Windows y vamos a su página web y descargamos la imagen de 32 bits o la de 64 bits, según el microprocesador que lleve nuestro ordenador. Recomiendo usar el escritorio Cinnamon, es más parecido al de Windows 7. Después instalamos Rufus, para crear un usb bootable con Linux Mint. Grabamos pues, con Rufus, la  imagen de Linux Mint en nuestro usb.

Apagamos y arrancamos el ordenador desde el USB que acabamos de crear. Para esto hemos de saber como se hace para seleccionar el arranque USB, dependiendo de la placa base que tengamos se hará de una manera o de otra, normalmente se hace pulsando F11 o F12 justo al encender el ordenador.

Si todo ha ido bien aparecerá el menú de arranque de Linux Mint. Hemos de elegir Instalar Mint y posteriormente, Instalar Mint junto con Windows. Vamos avanzando dentro del instalador hasta poner nuestro nombre de usuario y contraseña, que tendrá Linux Mint. Durante la instalación nos pedirá una contraseña WIFI para conectarse a Internet, sino está conectado con cable de red a Internet. Ya conectados, hemos de indicar además, que cargue las actualizaciones y el software de terceros.

Una vez finalizada la instalación, podremos arrancar el ordenador con Linux Mint o con Windows. Este instalación dejará intacta la instalación de Windows, instalará Linux Mint en nuestro disco duro y creará un menu de arranque que por defecto arrancará el ordenador con Linux Mint, pero podremos bajar el cursor y arrancar con Windows. Más adelante veremos como modificar la opción por defecto de este menu, si nos interesa elegir por defecto el arranque de Windows.

Al finalizar la instalación de Mint, hemos de arrancar el ordenador, por defecto si no tocamos nada, arrancará con Mint.

Una vez dentro de Linux Mint, hemos de crear una nueva partición en el disco duro, para allí poder instalar diferentes versiones de Android-x86. Para ello vamos a usar el paquete Gparted. Abrimos un Terminal de Linux y lo instalamos con el siguiente comando:

sudo apt-get install gparted

Ahora desde el Terminal arrancamos gparted:

sudo gparted

Una vez dentro de gparted, hemos de crear una nueva partición con formato ext3. Para ello recomiendo hacer un poco más pequeña la partición de Windows, quitándole 10GB, y posteriormente en este trozo vacío de 10GB, crear una nueva partición ext3. Hemos de apuntarnos el número de esta nueva partición, por ejemplo si es /dev/sda4, quiere decir que es la partición número 4. Ahí es donde instalaremos nuestro Android-x86. Estoy suponiendo que en el ordenador, sólo hay un disco duro, y es /dev/sda

Una vez hecha la partición, hemos de descargar la imagen de Android-x86 4.4-r1 (8-8-2014). Una vez descargada, desde el menú de inicio de Mint, dentro de accesorios, elegimos "grabar una imagen en usb", podemos usar el mismo pendrive USB que hemos utilizado para grabar la imagen de Mint, para esta vez grabar en él, la imagen de Android-x86.

Si todo ha ido bien, ahora hemos de arrancar el ordenador desde el pendrive con Android-x86. Una vez en el menu de arranque de Android, estaría bien, a modo de prueba, arrancar Android en modo Live y comprobar que arranca y funciona bien, con conexión a Internet ya sea por cable o por WIFI.

Una vez comprobado, volvemos a arrancar y esta vez le decimos que lo instale en el disco duro, última opción del menu de arranque.

Hemos de elegir la partición de número, la que hemos creado para Android, si es la 5, pues /dev/sda5 decirle que no escriba GRUB (opción por defecto) y /system con permiso de escritura, opción por defecto.

Una vez instalado Android en nuestro disco duro, reiniciamos y arrancamos Linux Mint.

Ahora se trata de escribir una nueva entrada en /boot/grub/grub.cfg para que podamos elegir Android en el menu de arranque, al arrancar el ordenador.

Abrimos un terminal y editamos grub.cfg:

sudo gedit /boot/grub/grub.cfg

y añadimos en la sección correspondiente:

### BEGIN /etc/grub.d/40_custom ###
# This file provides an easy way to add custom menu entries.  Simply type the
# menu entries you want to add after this comment.  Be careful not to change
# the 'exec tail' line above.

###Android KitKat###

menuentry "Android KitKat" {
set root='(hd0,4)'
linux /android-4.4-r1/kernel quiet root=/dev/ram0 androidboot.hardware=android_x86 video=-16 SRC=/android-4.4-r1
initrd /android-4.4-r1/initrd.img
}

menuentry "Android KitKat (Debug Mode)" {
set root='(hd0,4)'
linux /android-4.4-r1/kernel quiet root=/dev/ram0 androidboot.hardware=android_x86 video=-16 SRC=/android-4.4-r1 DEBUG=1
initrd /android-4.4-r1/initrd.img
}

### End Android ###
### END /etc/grub.d/40_custom ###

Y en lugar del 4 en "hd0,4" ponemos el número de la partición que hemos creado para Android. 

Guardamos desde el editor y ya está. Ahora al arrancar aparecerán dos nuevas entradas en el menu de arranque para Android, normalmente arrancaremos Android con la primera.

Si queremos que nuestro ordenador arranque Windows por defecto, hemos de modificar el set default="0" del principio de /boot/grub/grub.cfg con el número de la entrada que dice Windows XX (loader). Tened en cuenta que la primera entrada es la 0, normalmente Windows será la entrada 4, pero hay que comprabarlo dentro de grub.cfg, contando las entradas (menuentry) que tiene definidas.

Observar que la instalación de Android, está dentro de una carpeta en la partición correspondiente, de esta forma podemos instalar más imágenes de Android en la misma partición, siempre que el instalador lo haga en carpetas diferentes a android-4.4-r1, de esta forma podemos probar diferentes versiones de Android. Naturalmente para cada nueva instalación, deberemos añadir la correspondiente entrada en /boot/grub/grub.cfg

Para que os hagáis una idea del rendimiento de Android, lo he probado en un AMD Athlon X4 760 con NVidia GeForce GT610 a 1920x1080 y la puntuación de Antutu Benchmark ha sido 52.072

Si tienes alguna duda o consulta, o encuentras algún error, escríbeme comentarios. Este tutorial es fruto de muchas horas de investigación y pruebas en diferentes máquinas, si te ha gustado haz +1, y si quieres que pueda seguir haciendo nuevos tutoriales, hazme una pequeña donación, me puedes sugerir otros tutoriales. 

Muchas gracias !!

PD: este tutorial no funciona si el disco está particionado GPT, solo funciona con discos particionados MBR, en un próximo tutorial veremos como se hace con discos GPT


sábado, 25 de octubre de 2014

ARM RISC vs Intel CISC (Android devices comparative)

(Edited 25/11/2014)
Based on PassMark Benchmark (Android, androidbenchmark.net PassMark Chart *

Nexus 9 Samsung Galaxy S5 Onda V975i ? Samsung TAB 3 GT-P5210 Onda V989 BQ Elcano 2 MK808
8133 5385 4750 3988 3517 3453 2414 1807
SP (8,9" NVIDIA TEGRA K1 64 bits, Super Dual Denver Core, 7-way superscalar pipeline) (5" Qualcomm MSM8974AC Snapdragon 801 Quadcore Krait 400) (9,7" Intel Atom Z3735D, Quadcore, 4 threads) (ARM Rockchip 3288 Quadcore A17) (10,1" Intel Atom Z2560, Dualcore, 2 threads) (9,7" ARM AllWinner A80T OctaCore 4-A15 4-A7) (10,1" ARM Rockchip 3188 Quadcore A9) (ARM Rockchip 3066 Dualcore A9)
$ 400 500 160 160 250 185 160 40

Pass Mark Benchmark
* Tests Includes:
1. CPU tests Mathematical operations, compression, encryption and more
2. Disk tests Reading and writing files to internal and external storage
3. Memory tests Read and Write tests
4. 2D Graphics Simple, complex vectors and image tests
5. 3D Graphics Simple & complex scene tests

martes, 25 de marzo de 2014

Tutorial para instalar Android-x86 4.4-RC1 (KitKat-x86) Rooteado, en ordenador portátil con UBUNTU y GRUB2


Esta versión de Android-x86, está basada en  Android 4.4.2 (KitKat-MR1 release). Según observan sus autores, han añadido y arreglado diferentes partes del código para que funcione fluido en plataformas x86, especialemte en Netbooks y Tablets. Sus principales características son (en inglés):
  • Integrate the ffmpeg as the stagefright-plugins to support much more multimedia files. Now we can play HD and full HD videos in apps.
  • Use the latest longterm stable kernel 3.10.30 with more drivers enabled. Most netbooks can run Android-x86 in the native resolution.
  • OpenGL ES hardware acceleration for AMD Radeon and Intel chipsets (not include the PowerVR chips).
  • Enhance the installer to support upgrade from previous versions (since ics-x86). The text based GUI installer supports ext3/ext2/ntfs/fat32 filesystems.
  • KitKat style lanucher (Launcher3).
  • Support Multi-touch, Wifi, Audio, Bluetooth, G-sensor and Camera.
  • Simulate sdcard by internal storage.
  • External usb drive and sdcard are auto mounted to /storage/usbX on plugging.
  • Support hybrid mode of iso images.
  • Multi-user support (max 8).
  • Support Ethernet (DHCP only).
  • Support VM like Qemu and VMware.
La instalación se ha de realizar en una partición EXT3, para después, poder escribir en /system. Si se instala en una partición FAT o NTFS, /system se monta en un sistema de ficheros SquashFS (sistema de ficheros comprimido de solo lectura para Linux). En este sistema de ficheros, no podremos cambiar los permisos para poder escribir en /system, cosa necesaria si queremos añadir una SDCARD de lectura y escritura a nuestro Android o si queremos poder manipular algo del sistema si nos hace falta. 

Resumiendo: instalarlo en una partición EXT3, es necesario, de lo contrario nuestro Android no estará rooteado del todo, y no podremos cambiar los permisos de /system
Lo primero de todo es descargar la imagen ISO de Android-x86 de la página donde se ubica este proyecto libre.

A continuación escribiremos la imagen ISO que hemos descargado, en un pendrive. Esto lo podemos hacer desde Ubuntu con Unetbootin  ó con dd directamente, si nuestro pendrive es /dev/sdb:

dd if=android-x86-4.4-RC1.iso of=/dev/sdb bs=512M

De esta forma tenemos un pendrive con Android-x86-4.4-RC1 Live. No está de ejecutar el Live en el portátil, antes de instalarlo, para comprobar que arranca y todo funciona bien, sobretodo la conexión a WIFI.

Una vez comprobado esto, ya podemos pasar a ver como lo podemos instalar en nuestro disco duro. El instalador que viene en este Live, es un instalador muy rudimentario. Utiliza GRUB 1 y por lo tanto solo reconoce discos duros con esquemas MBR. Cuando lo intentamos instalar en un disco con GPT (GUID Partition Table), el instalador no permite manejar las particiones que hay en ese disco, con lo cual, con este instalador no lo podremos cargar en el disco duro GPT. En el caso de que tengamos un disco duro con GRUB1, si podremos usar el instalador para manipular las particiones y en este caso puede ser que si lo podamos instalar directamente desde el pendrive Live.

En el caso de que tengamos disco GPT, os propongo lo siguiente.

Instalarlo primero en un segundo pendrive, para después copiarlo en la partición definitiva de nuestro disco duro GPT. Para ello necesitaremos un segundo pendrive vacío, en mis pruebas he usado uno de 2GB de espacio. 

Conectamos los dos pendrives a nuestro portátil. El pendrive que lleva el Live de Android y el pendrive vacío. Arrancamos el portátil desde el Live de Android y elegimos la opción "Installation - Install Android to Harddisk".

Ahora elegimos como disco de instalación nuestro segundo pendrive, probablemente será sdb ó sdc. La partición en cuestión, ha de tener formato EXT3. Cuando nos pregunte si queremos permisos de escritura sobre /system le decimos que si y le decimos que no queremos escribir GRUB en nuestro segundo pendrive.

Una vez ha terminada esta "falsa instalación", veremos en nuestro segundo pendrive, que tenemos una carpeta android4.4-RC1.

Ahora se trata de crear una partición EXT3 en nuestro disco duro, para posteriormente, copiar la partición de nuestro segundo pendrive, sobre esta partición EXT3 de nuestro disco duro.

Arrancamos nuestro Ubuntu, con el segundo pendrive conectado. Para crear una partición EXT3 en nuestro disco duro podemos usar GPARTED, si no lo tenemos instalado en nuestro Ubuntu, lo instalamos:
sudo apt-get install gparted

Una vez dentro de GPARTED, creamos una nueva partición EXT3, si no nos queda sitio libre, primero reducimos alguna otra partición, para poder crear esta. El tamaño de esta partición, será el Almacenamiento Interno de nuestro Android. Al menos recomiendo 2GB. Así, no nos ocurrirá como en los móviles, donde el espacio interno siempre nos queda justo. Una vez creada la partición, nos apuntamos cual es su número, por ejemplo 10, si la partición creada es, /dev/sda10. Esto lo vamos a necesitar cuando demos de alta, la entrada correspondiente, en nuestro /boot/grub/grub.cfg

Una vez creada esta partición, dentro de GPARTED, hacemos Copiar y Pegar de la partición de nuestro pendrive (sólo tiene una) a nuestra partición EXT3, que acabamos de crear.

Una vez realizado este paso, podemos comprobar que efectivamente en nuestra nueva partición EXT3, tenemos la carpeta android-4.4-RC1.

Ahora nos queda el último paso: dar de alta esta entrada en nuestro /boot/grub/grub.cfg. Para ello editamos este archivo en nuestro Ubuntu, con:

sudo gedit /boot/grub/grub.cfg

Y añadimos dentro de esta sección:

### BEGIN /etc/grub.d/40_custom ###
# This file provides an easy way to add custom menu entries.  Simply type the
# menu entries you want to add after this comment.  Be careful not to change
# the 'exec tail' line above.
### END /etc/grub.d/40_custom ###


lo siguiente:

###Android KitKat###

menuentry "Android KitKat" {
set root='(hd0,gptX)'
linux /android-4.4-RC1/kernel quiet root=/dev/ram0  androidboot.hardware=android_x86 video=-16 SRC=/android-4.4-RC1
initrd /android-4.4-RC1/initrd.img
}
menuentry "Android KitKat (Debug Mode)" {
set root='(hd0,gptX)'
linux /android-4.4-RC1/kernel quiet root=/dev/ram0  androidboot.hardware=android_x86 video=-16 SRC=/android-4.4-RC1 DEBUG=1
initrd /android-4.4-RC1/initrd.img
}
 

### End Android ###

Donde la X de gptX ha de ser el número de nuestra partición, si era /dev/sda10, la X ha de ser 10. Ya hemos finalizado la instalación, ahora reiniciamos y comprobamos que Android Kit Kat arranca bien. Una vez comprobado y puesto Android en Idioma y Fecha/Hora adecuados, vamos y a observar lo siguiente. Si miramos dentro de Settings--Storage, veremos que todo el tamaño de la partición donde se encuentra Android, se usa como Almacenamiento Interno. En este espacio podremos instalar muchas aplicaciones. Pero ¿cómo podemos hacer para tener un espacio de almacenamiento alternativo? ¿Lo que en los teléfonos móviles o tabletas es la SDCARD?

Para ello hemos de crear otra partición en nuestro disco duro, será la SDCARD de nuestro Android. Procedemos, igual que antes a crear una nueva partición EXT3 o FAT32 en nuestro disco duro.

Una vez creada hemos de añadir a /boot/grub/grub.cfg después de SRC= :

SRC=/android-4.4-RC1 SDCARD=/dev/sdaX

dónde X es el número de la nueva partición.

Estamos a punto de terminar. Arrancamos nuestro Android y con un Explorador de Archivos ROOT, abrimos el archivo /system/etc/permissions/platform.xml 

Buscamos “WRITE_EXTERNAL_STORAGE“ y añadimos:

< group gid="media_rw"/ >

Guardamos el archivo y reiniciamos.

Ahora ya tenemos nuestro Android Kit Kat rooteado con suficiente Almacenamiento Interno para instalar lo que queramos y con una SDCARD para guardar todos los datos que necesitemos.

Si tienes alguna duda o consulta, o encuentras algún error, escríbeme comentarios. Este tutorial es fruto de muchas horas de investigación y pruebas en diferentes máquinas, si te ha gustado haz +1, y si quieres que pueda seguir haciendo nuevos tutoriales, hazme una pequeña donación, me puedes sugerir otros tutoriales. Muchas gracias !!


sábado, 1 de marzo de 2014

Instagram: la red social que más creció en 2013