TUTORIAL ¿Que es Android?

vilicitano

No estoy loco mi madre me hizo pruebas.
Diamante
Mensajes
11.983
Puntos
14.033
Móvil
ONO
www.bravento.com_wp_content_uploads_2014_10_android_smartphone.jpg



Quien mas y quien menos ha leído algo sobre “Linux”. A lo mejor no sabe muy bien lo que es, a lo mejor lo sabe pero lo considera algo extraño. Y sin embargo, un gran porcentaje de la gente que lea esa palabra habrá usado Linux en alguna u otra forma, casi sin darse cuenta. Porque Linux está en los servidores que nos sirven páginas web. Linux está en algunas empresas y administraciones. Linux está en el escritorio, en cantidades reducidas, pero está. Y Linux está en nuestros móviles, cada día que pasa en mayor proporción. Pero, ¿Qué es Linux? ¿En qué nos afecta usarlo? ¿Y porqué es importante para Android? A lo largo de estas semanas intentaré responder a esas preguntas.

Un poco de historia

Y cómo no, debemos empezar por el principio, un principio no demasiado glamuroso. Corre el año 1991, y los estudiantes de computación de la Universidad de Helsinki tienen que usar el sistema operativo Minixen su educación. Un sistema operativo es un tipo especial de programa que permite controlar un ordenador u otro tipo de dispositivo computacional. Por ejemplo, Windows es un sistema operativo, como lo son Mac OS y sí, también Android.


Pero uno de los estudiantes, Linus Torvalds, no comprende porqué este sistema Minix tiene tantas limitaciones. No puede “destriparlo” para ver cómo funciona. No puede desarrollar modificaciones para mejorarlo, ni eliminar elementos que le sobran. La culpa era de las licencias impuestas por su creador, y no es que las alternativas como Unix fuesen mejores en ese sentido. Y en vez de explayar su furia sobre las listas de correo de entonces (precursoras de los foros actuales), decidió tomar cartas en el asunto. En Octubre mandó un mensaje:

Hola a todo el mundo que usa minix.

Estoy haciendo un sistema operativo (solo un hobby, no será grande y profesional como gnu) para clones AT 386 (486). […] Cualquier sugerencia es bienvenida, aunque no prometo implementarla :smile:

La reacción no se hizo esperar. En pocos meses, programadores de todo el mundo contactaron con Torvalds para aportar su granito de arena a la creación de este sistema operativo, que fue bautizado comoLinux para sorpresa de su propio creador. La clave de este éxito fue la decisión de liberar el código fuente, de manera que cualquier persona pudiese copiarlo, modificarlo y distribuirlo. Pronto se convirtió en el estandarte de la filosofía libre que revolucionarios como Richard Stallman plantearon años atrás.


Con el paso del tiempo, grandes compañías como Intel e IBM vieron su potencial como competidor de Windows e invirtieron grandes cantidades de dinero. No querían depender de Microsoft, y el esquema abierto de Linux les permitía aportar el código que necesitasen sin el peso de crear un sistema desde cero. En la actualidad, los sistemas operativos basados en Linux son sinónimo de estabilidad, de seguridad y de desarrollo.

Cuando el mejor no gana

Pero faltaba algo. Faltaba el éxito entre el gran público. Y es que se notaba que Linux había sido creado por y para programadores. En el ámbito profesional, Linux siempre tuvo mas éxito, sobre todo en el importante mercado de los servidores. Pese a los intentos de mucha gente, Linux aún no puede luchar de tu a tu en términos de uso frente al gran gigante Windows. Ubuntu es la versión que mas éxito ha tenido hasta ahora, con una interfaz con claras reminiscencias a los sistemas móviles y con el usuario medio como prioridad absoluta. Empresas tan importantes como Valve se han dado cuenta de ello, y por eso han lanzado versiones de sus programas, pero aún queda mucho camino por delante, con cifras que rondan el 1% de usuarios totales.

En la primera entrega de nuestro repaso a la historia de Linux y Android, vimos cómo Linus Torvalds no solo consiguió su objetivo de crear un sistema operativo que sirviese como alternativa a las alternativas cerradas (y caras), sino que éste acabó convirtiéndose en un fenómeno entre los desarrolladores y hackers de todo el mundo. Cuando las grandes empresas del sector empezaron a invertir en Linux, solo era cuestión de tiempo hasta que se convirtiese en la referencia entre los sistemas operativos orientados a servidores y a uso profesional. El “pequeño” problema era que el usuario medio ni siquiera conocía la palabra “Linux”, no hablemos ya de saber instalarlo y configurarlo.

Desde entonces, cada nuevo proyecto basado en Linux ha tenido como objetivo último llegar al gran público. Aprovechando que el código de Linux es libre y que se puede redistribuir sin problemas, aparecieron varias distros (diminutivo de “distribución linux”) que contaban con varias diferencias orientadas a un uso sencillo. Ubuntu, de la compañía Canonical, ha resultado ser la distro de escritorio mas popular de la historia del sistema operativo, gracias a que sus desarrolladores intentaron ponerse en la piel del usuario común, y limaron muchas de las asperezas que se encuentran a diario, como la instalación automática de drivers y códecs. Además, su interfaz actual, llamada Unity, bebe directamente de las influencias del entorno móvil. De hecho, ya hay una versión para Ubuntu para smartphones, y el plan es que esa versión y la de escritorio acaben siendo la misma.


www.elandroidelibre.com_wp_content_uploads_2013_05_ubuntu_beautiful_886x549_660x408.jpg


Pero pese a que Canonical es una organización que maneja muchos recursos, no son los suficientes hasta ahora para resultar en un cambio en el mercado. Por eso, desde que Google se impuso como la dominadora en el mercado web, muchos han razonado que resultaría la compañía ideal para popularizar Linux. Y es que la filosofía abierta y alternativa (al menos en sus primeros años) de Google parece encajar perfectamente con la de Linux. Estos deseos no estaban tan lejos de la realidad, ya que la compañía creó una distro Linux, conocida popularmente como Goobuntu. Lamentablemente, este sistema nunca se ha liberado al público, sino que es solo para uso interno de la compañía.

No, si Google iba a entrar en el mercado de los sistemas operativos, tenía que hacerlo de una manera especial. Y aquí entra Android, Inc, fundada por un tal Andy Rubin, con el objetivo de “crear software para teléfonos móviles”. El tiempo acabó demostrando que esa descripción se quedaba corta: lo que estaban preparando era un sistema operativo completo para smartphones, y Google lo sabía cuando en 2005 absorbió a la compañía y la hizo el foco de sus esfuerzos. A diferencia de Symbian y Windows Phone, Android usaba el kernel de Linux.

www.elandroidelibre.com_wp_content_uploads_2011_01_Andy_Rubin.jpg


Técnicamente, Android no es una distro, sino que la cantidad de modificaciones realizadas al código hace que se considereun sistema operativo independiente, si bien la cantidad de código que comparte con el kernel “normal” para escritorio es muy alta. Pero, ¿cómo ha conseguido Google lo que otros no pudieron, llegar a tal cantidad de dispositivos en todo el mundo? La respuesta es sencilla: ha colaborado con los fabricantes.

static.android.es_wp_content_uploads_2012_08_aosp_0.jpe


Para que Android pueda ejecutarse en un dispositivo móvil, son necesarios los drivers, un código que indica al sistema cómo controlar las distintas partes de hardware. Por ejemplo, para poder usar la red WiFi, Android necesita saber cómo indicar al chip las instrucciones que necesita, y para eso acude a los drivers. Como los drivers incluyen información sobre cómo funciona el hardware, los fabricantes siempre son reacios a liberarlos, por temor a que los competidores los copien. La maestría de Google estuvo en garantizar a los fabricantes su independencia y la seguridad de sus tecnologías al mismo tiempo que aprovechaba la filosofía abierta de Linux para fabricar un sistema alrededor de ellos. Esa es la razón por la que, aunque te puedes descargar Android libremente de la red, realmente no puedes ejecutarlo en tu móvil sin conseguir los drivers antes y compilarlos.

Y llegamos a la última entrega de nuestra pequeña serie de artículos dedicados a la relación entre Android y Linux. Hasta ahora, hemos aprendido que Linux nació con una clara filosofía libre, en un intento de ofrecer una alternativa ante los sistemas cerrados por el copyright y las grandes compañías. Por tanto, fue la elección lógica cuando Android Inc, y luego Google, decidieron que necesitaban un sistema operativo para móviles que pudiesen moldear para sus necesidades. Pero la historia de Android y Linux no ha terminado, ni mucho menos. De hecho, se podría decir que acaba de empezar.

Por supuesto, todas las historias tienen sus baches, y la relación Android/Linux tiene unos cuantos, la mayoría producidos por las exigencias que tiene una compañía tan grande y poderosa como Google. Cualquiera puede coger el código fuente de Linux y crear su propio sistema operativo, siempre y cuando libere el código fuente si lo va a distribuir. Pero cuando estamos ante un proyecto de la magnitud y consecuencias de Android, la vida no es tan simple. No es que Google no quiera seguir los principios del software libre, por supuesto, pero no sería erróneo decir que en mas de una ocasión ha intentado salirse con la suya a costa del proyecto Linux.


www.elandroidelibre.com_wp_content_uploads_2011_06_Tux_Android_Linux.png


El punto mas polémico durante mucho tiempo fue el aporte que hace Google al kernel de Linux. Cualquiera puede crear un parche y mandarlo a los programadores de Linux para que estudien su inclusión, pero evidentemente Google tiene un interés especial en que el código acabe en el núcleo, y en mas de una ocasión ha ejercido de lobby de presión para convencer a las personas adecuadas para que acepten el código, algo que no ha sentado nada de bien.

Para entender estos problemas, primero hay que explicar cómo trabajan los desarrolladores de Android. Parten de una versión del kernel de Linux, a la cual le añaden el código necesario para conseguir el sistema Android que todos conocemos. Pero crear código no es simplemente escribir unas líneas, sino que hay que mantenerlo. Mantener el código implica un seguimiento de bugs, un control de calidad, y, en definitiva, mas tiempo y dinero. Google tiene que mantener el código que añade por su cuenta para crear Android, pero no está obligado a mantener el código perteneciente a Linux, sino que de eso se encargan empleados y voluntarios entusiastas de Linux. Por tanto, para Google lo mas sencillo sería que casi todo el código de Android estuviese incluído en Linux, y así solo tendría que gastar recursos en mantener una pequeña parte.

En 2010 esta actitud llevó a algunos desarrolladores de Linux a tomar una decisión: eliminar código de Android incluido en Linux, con el pretexto de que no estaba siendo mantenido por nadie. Google se había desentendido del código una vez se lo pasaba a Linux, y esto provocaba que los ya ocupados mantenedores tenían incluso mas trabajo. Como podéis comprender, hubo una gran polémica alrededor de este movimiento, y durante meses parecía que Google dejaría de aportar a Linux. Afortunadamente desde entonces estas hostilidades se han enfriado, y aunque Google sigue manteniendo para sí una buena porción de Android, en cada nueva versión del kernel de Linux se están añadiendo nuevas funcionalidades pensadas especialmente para Android.

www.elandroidelibre.com_wp_content_uploads_2013_04_facebook_integration.png


Lo cual nos lleva a la situación actual de Android, que es muy parecida a la que tenía Linux en aquel momento. Porque varias compañías se están “aprovechando” del trabajo de Google creando aplicaciones y sistemas basados en Android sin aportar nada a cambio. Estoy hablando de Facebook Home yAmazon Kindle. La primera se apropia de la pantalla de inicio para llevar al usuario a servicios competidores directos de Google, y el segundo modifica su código para llevar las ventas a su propia tienda. ¿No sería hora de que Google les cortase las alas?

La respuesta es no, y el nuevo líder de Android, Sundar Pichai, está de acuerdo. Aunque tener una plataforma abierta no es sinónimo de software libre, ambos conceptos comparten la misma filosofía, la de avanzar y mejorar gracias a la competencia y la cooperación. Que Facebook Home exista, según él, es “emocionante”, y asegura que las innovaciones son bien recibidas, y que será el mercado el que decida si quedarse con esa opción o usar la de Google. Lo mismo en el caso de Amazon.

www.elandroidelibre.com_wp_content_uploads_2013_05_sundar_pichai_android.png


Y es que, mas allá de todo el código de Linux que pueda usar Android, lo mas importante con lo que tiene que quedarse es con su filosofía libre, con su ánimo de aportar a la comunidad un espacio en el que crear y experimentar, y en llevar esos resultados al usuario final. Y por eso, Android no existiría sin Linux, y es muy posible que nos estemos acercando al momento en el que Linux no exista sin Android.


Victor.
 

Del blog

Es tendencia

¿Ha terminado la locura de añadir tantas cámaras a los móviles?

  • Si

  • No

  • No lo se

  • Ya me gustaría...

  • Ya te gustaría...


Los resultados solo son visibles tras votar.
Atrás
Arriba