Sie sind auf Seite 1von 9

Versin traducida de android-os.

pdf
Pgina 1 1 Android OS: Un robusto, libre, de cdigo abierto que operan sistema para dispositivos mviles Paul Michael Kilgo Abstracto Los dispositivos mviles han visto una gran cantidad de desarrollo en los ltimos aos, pero la pregunta uno sigue siendo inminente y nadie parece tener la respuesta: qu es "estndar" para la plataforma mvil? Muchas empresas ya han escrito su propia casa en los sistemas operativos para los que los dispositivos fabricacin, tales como Symbian o iPhone OS. Sin embargo, con la existencia de tantos de cdigo cerrado sistemas operativos, ninguna empresa racional quiere revelar sus secretos y perder su ventaja en la competencia. Esto presenta un problema en el que los desarrolladores de software no se puede escribir el cdigo para ser generalizada. El equipo de Android espera resolver esto en dos niveles. En primer lugar, se busca llegar a un comn de cdigo abierto del sistema operativo que cualquier dispositivo mvil se puede ejecutar en. En segundo lugar, se busca que el desarrollo de aplicaciones para estos telfonos mviles ms general y hardware agnstico. I. La cada de nuevo en el tradicional mtodo de cdigo abierto C OMMONLY, el problema que la mayora de cualquier plataforma de computacin que tenemos es la interoperabilidad, y uno de los peores lugares para encontrarse con este problema se encuentra en una situacin en la que el usuario tiene poca o ninguna control sobre el sistema operativo que utilizan. Con el tiempo, los desarrolladores de software una plataforma etiqueta obsoletos y se niegan a desarrollar para que nunca ms. Entonces, cmo puede un sistema operativo ampliable, compatible sistema que se puede utilizar en muchas arquitecturas se cre? Android OS intenta resolver este problema mediante la construccin de las tecnologas existentes, como Linux y su aplicacin al dispositivo mvil. Android OS es libre de usar, mejorable, y diseado con las implementaciones de hardware. Mejor de todo, es de cdigo abierto, por lo que los cambios necesarios que deben realizarse se puede realizar tan bajo como el nivel de kernel. Android OS ya est llamando la atencin del pblico, ya que lleva el mismo nombre de Google, pero an no ha alcanzado todava todo su potencial. II. Humildes comienzos

Hace cuatro aos, casi nadie haba odo hablar de Android, Inc., el desarrollador de software para mviles pequeas que Google adquiri en julio de 2005. La adquisicin arrojan poca luz en cuanto a exactamente lo que Google se hasta, slo que Google estaba interesado en la gente que trabaja en Android [?]. La empresa de nueva creacin consista de unas pocas personas notables, uno de ellos es Andy Rubin, quien contribuy en la toma de la T-Mobile Sidekick. Rubin pronto se convertira en el lder del proyecto Android de Google. Cuando la noticia de adquisicin de Google de una compaa de software para mviles afectados los medios de comunicacin, las especulaciones eran desenfrenados, hablar de un "GPhone" telfono estaba en muchos medios de noticias de Internet. En pocos aos, la formacin de la Open Handset Alliance eliminado algunas de las niebla que rodea las acciones de Google, y demostr que el "GPhone" era realmente Google tratando de entrar en el mercado de sistemas operativos para dispositivos mviles [?]. Android OS se convirti en el primer producto creado por la Open Handset Alliance, que consista de muchos vendedores de tecnologa, adems de los principales de Google. Hoy en da, Android tararea feliz como un proyecto de cdigo abierto. En el momento de escribir esto, la HTC Dream Android es el nico habilitado para telfonos mviles en el mercado, excepto para el telfono mvil ofrece a los desarrolladores de Android. Pgina 2 PMK: Android OS 2 III. Android OS arquitectura Android se puede subdividir en cuatro capas principales: el ncleo, las libreras, el marco de aplicaciones, y aplicaciones. Como se mencion anteriormente el ncleo Linux. Las bibliotecas que cuentan con Android proporciona gran parte de los grficos, almacenamiento de datos y capacidades de los medios de comunicacin. Incrustado dentro de la capa de bibliotecas es el tiempo de ejecucin de Android, que contiene la mquina virtual de Dalvik, que alimenta el las aplicaciones. El marco de aplicaciones es la API que todas las aplicaciones que utilizar para acceder a la nivel ms bajo de la arquitectura [?]. A. La capa del ncleo Como se mencion anteriormente la capa de ncleo Linux. Linux fue elegido ya que tiene una trayectoria probada registro en los sistemas de escritorio y en muchos casos no requiere controladores para volver a escribir. Linux ofrece cosas como la memoria virtual, las redes, los controladores y la administracin de energa. Al examinar la

ncleo por defecto incluido el cdigo fuente de Android, no hay cambios significativos en el ncleo funciones del kernel. B. bibliotecas capa de nativos La capa de libreras nativas para Android ofrece las capacidades de sus caractersticas bsicas. Androide se entrega con SGL, que acta como el principal procesador de grficos 2D. Su contraparte es OpenGL ES que proporciona soporte a los grficos 3D. Android viene con SQLite que se encarga de la mayora de almacenamiento de datos. La web de motor de renderizado WebKit tambin se enva con Android y ha sido adaptado para hacer pginas web para pantallas de menor tamao. De particular inters es la mquina virtual de Dalvik que es una parte de esta capa. El Dalvik mquina virtual es un intrprete de bytecode que es altamente optimizada para la ejecucin en el mvil plataforma. El bytecode de Java se convierten los archivos binarios que son muy rpidos y eficientes para ejecutar el ms pequeos los procesadores. Las bibliotecas del ncleo est escrito en Java y proporcionan gran parte de las clases principales que normalmente disponible en una mquina virtual Java. C. Aplicaciones de capa de marco Esta capa y la capa por encima de ella estn escritos completamente en Java. Las aplicaciones de marco proporciona todas las APIs ms importantes que las aplicaciones a utilizar incluyendo cosas como el intercambio de datos, acceder al sistema de telefona, y recibir notificaciones. Una cosa importante a destacar en Android OS es que todas las aplicaciones utilizan este mismo marco, no importa el autor de la aplicacin. Esto es absolutamente una salida de lo que muchos otros diseadores sistema operativo mvil han optado por hacerlo. Por ejemplo el iPhone sin duda una diferencia entre el software de Apple y el software de terceros hasta la funcin de copiar y pegar. D. Aplicaciones de la capa Todo el software de Android es que est escrito en Java, que es interpretado por la mquina Dalvik virtual. Incluso la mayora de las caractersticas fundamentales, como el telfono y la aplicacin de contactos se encuentran en esta capa. Esta capa contiene software escrito por el equipo de Android, as como cualquier software de terceros que est instalado en el dispositivo. Un efecto de permitir a los desarrolladores acceso a este nivel es que la interfaz de usuario puede ser revisado con relativa facilidad. Las aplicaciones de terceros pueden manejar cualquier caso que la solicitud del equipo de Android podra ver (por ejemplo, el timbre del telfono). Esto significa que

siempre y cuando no hay una aplicacin de reemplazo para la aplicacin del marcador, nadie podra los suyos propios. Teniendo en cuenta este modelo se podra esperar que, como Android se vuelve ms robusto, el usuario ser capaz de especificar qu aplicaciones deben manejar los eventos. Pgina 3 PMK: Android OS 3 IV. Android sistema de servicios Android ofrece los servicios propios de un sistema operativo moderno, como la memoria virtual, multiprogramacin, y los hilos, todo en una plataforma mvil. Muchos de los servicios de Android son el resultado de la inclusin del kernel Linux. Sin embargo, el equipo de Android ha aadido la pila de telefona a cambio. A. El algoritmo de planificacin de la CPU Linux Linux utiliza una serie de mtodos diferentes para la programacin de sus procesos y su algoritmo muy tradicionales en el cuadro grande. Hay tres esquemas de programacin para Linux. Cada proceso se le asigna un esquema de planificacin en funcin del tipo de tarea que presenta. Tareas en tiempo real a menudo se ejecutar en el FIFO SCHED o esquema SCHED RR. Todas las dems tareas se ejecutarn en NORMAL SCHED [?]. SCHED tareas normales son manejados por un algoritmo especial y se adelant por SCHED RR y SCHED tareas FIFO. En pocas palabras, el algoritmo se comporta como una cola de prioridad hbrido que recompensa proceso que no se CPU-codicioso. Tiempo de CPU se divide en pocas, que son trozos iguales de tiempo en el que los procesos se pueden ejecutar y utilizar algunos de su tiempo asignado, o porcin de tiempo. Al final de cada poca, porcin de tiempo restante de cada proceso se reduce a la mitad. Ms tiempo se aade proporcional al valor de los procesos de "agradable, con un valor especificado por el usuario o por el valor por defecto bonito del sistema. El momento de vuelco interesante tiene un efecto de recompensa a los procesos de E / S de la envolvente. Desde E / S de la envolvente procesos es probable que pasan mucho tiempo de espera, el algoritmo de planificacin se recompensa por dejar que se mantenga algunos de su porcin de tiempo. De esta manera los procesos que puedan ser utilizados por el usuario son muy sensibles y con frecuencia adelantarse a ms no interactivos, vinculados a la CPU como los procesos de comandos por lotes. SCHED RR tareas que adelantarse SCHED tareas normales y se adelant por tareas FIFO SCHED. Estos las tareas se programan de acuerdo a las reglas de operacin por turnos dentro de su grupo de prioridad propio.

SCHED FIFO tareas comportan de forma bastante como el nombre lo sugiere. Las tareas en esta cola se han programado por prioridad de tiempo y la llegada, se anticiparse a cualquier otro proceso tratando de correr, y se ejecutar durante el siempre y cuando les plazca. B. Android y los sistemas de archivos Android hace uso de una multiplicidad de tipos de sistema de archivos, es decir, debido a la expectativa del exterior de memoria con seguro de tipos de archivos del sistema. Como resultado de Android se basa en el paquete estndar de Linux establecer sistemas de archivos como ext2 y ext3, vfat, ntfs y. Android se utiliza el archivo yaffs2 sistema, que no es parte del kernel estndar de Linux, ya que su sistema de archivos primario. YAFFS es un sistema de archivos optimizado para NAND y NOR de memoria flash. En el momento en que se desarrollados, los sistemas de archivos exista para la memoria flash, pero la mayora de ellos atiende a los chips que se suficientemente pequeo como para utilizar los tamaos de bloque pequeo. Esto no era apto para grandes chips flash NAND. YAFFS intenta resolver este haciendo abstraccin de almacenamiento a "trozos", que escala segn el tamao de pgina. Para escalar el mtodo para dispositivos NAND de dimensiones considerables, YAFFS tiene un pellizco en la forma que se ocupa de las pginas. Por ejemplo, podramos usar un tamao de pgina de direcciones de 2 16 y podemos tener tiene 2 18 trozos de direccin. No tenemos suficiente capacidad para hacer frente a las pginas de forma individual, pero podemos atender a los grupos de cuatro pginas y la bsqueda de la pgina deseada desde all. La utilidad Lo que pasa es que ahora tenemos la opcin de dejar de lado el uso de RAM en todos para aumentar nuestro sistema de archivos. Podemos muy fcil de utilizar algn tipo de esquema de referencia indexado al crear un archivo de una serie de identificadores de fragmento, y cualquier anlisis de las pginas en particular dentro de ese paquete ser un conjunto limitado de un tamao igual al nmero de pedazos, dividido por el tamao de la direccin. (2 18 2 16 = 4). Este lineales sondeo puede parecer una mala idea. En la prctica, la ineficiencia es demasiado pequea para aviso en una pequea conjunto de trozos [?]. Pgina 4

PMK: Android OS 4 YAFFS es preferible un sistema de archivos en Android, ya que optimiza el uso de los dispositivos NAND como almacenamiento y tambin tiene una gran eficiencia en el uso de memoria. C. La capa de interfaz de radio En consonancia con el resto del diseo de Android, el equipo de Android ha creado una manera de abstraer un una llamada telefnica. Desde el modo en que los fabricantes de telfonos implementar el dispositivo de radio en los dispositivos mviles variarn inevitablemente, Android tiene que permanecer en la ignorancia a la forma de software interacta con el hardware de realizar la llamada. El equipo de Android soluciona este problema mediante la creacin de la interfaz de radio Daemon Capa (RILD), que es la forma en que las interfaces de las aplicaciones de marco con las bibliotecas compartidas. La La funcin principal RILD es proporcionar por eventos a medio camino entre el marco de aplicaciones y los conductores de radio. La RILD es parte de la capa de interfaz de radio (RIL), que consta de dos partes principales: el RIL Android y el RIL proveedores. El RIL Android incluye las aplicaciones marco de lo que hace la solicitud a la RILD para realizar una llamada de telfono, mientras que el vendedor es el RIL parte que corresponde a los proveedores para poner en prctica [?]. El RIL vendedor incluye el controlador de que el vendedor barcos para la implementacin de hardware de la antena de radio. Este modelo permite que cualquier hardware que se implementado para la colocacin de las llamadas telefnicas, siempre y cuando el vendedor escribe los conductores que siguen el modelo. V. Las similitudes con el iPhone OS En muchos sentidos, parece que Android fue diseado para competir directamente con el iPhone OS. La Android equipo observ que el iPhone OS presenta un nivel de intimidacin de la excelencia en la interfaz de usuario que Android inevitablemente tienen que competir con. A. La pantalla tctil Android tiene todas las capacidades de interfaz con un dispositivo de pantalla tctil con capacidad y Android es multitctil con capacidad de [?], pero es letra muerta. Muchos creen que esto es de Google para permanecer en buena lugar con Apple. En cualquier caso, la aplicacin de Android en el HTC Dream se muestran algunos similitud con el iPhone en el diseo tctil gesto, como chasquear los dedos por la pantalla dar la vuelta a la pgina siguiente de los elementos. Un gesto notable que Android no tiene comparacin con el iPhone OS es el gesto de acercamiento, en el que dos dedos se tocan en la pantalla y se alej o el uno hacia el

otros para acercar y alejar la imagen. En la implementacin iPhone de Google Maps, este gesto est disponible, pero en la versin de Android, "zoom in" y "zoom out" botones de tomar su lugar. B. diseo de aplicaciones modulares El iPhone se anuncia por su multitud de stand-alone "apps" que estn disponibles. Android parece que han reflejado este modelo exactamente. Sin embargo Android difiere en su diseo subyacente para Android ofrece aplicaciones de terceros acceso desenfrenado a la capa de aplicaciones de marco. Modular APcomplicaciones tienden a facilitar el proceso de comprensin para el usuario y ayudar al usuario a visualizar el aplicacin como una sola unidad, que figura en lugar de una serie de software dependiente. C. El mercado de Android frente a la App Store Del mismo modo, tanto los sistemas operativos ofrecen una manera para que los desarrolladores publicar sus aplicaciones ya sea de forma gratuita o por un precio. Tambin los usuarios pueden visitar y descargar aplicaciones de la tienda. Muchos de los aplicaciones populares en la tienda del iPhone estn empezando a aparecer en el Android Market tambin. Pgina 5 PMK: Android OS 5 VI. Empujando a la normalizacin Android fue diseado con la apertura de la mente. Se convirti en el general amplia primero la finalidad del sistema operativo de cdigo abierto diseado especficamente para el dispositivo mvil. En el espritu de mantener el proyecto abierto todo el equipo de Android tiene un diseo de algunos objetivos para ayudar a mantener este ideal. A. Los objetivos de diseo El equipo de Android a menudo las listas de estos cuatro puntos principales como las ideas principales de Android: [?] Abierto: Android trata de ser especialmente amistoso con el desarrollador, con lo que el dispositivo completo abierto para sus aplicaciones a utilizar. Adems, Android es de cdigo abierto y libre para poner en prctica en la mayora de hardware. Todas las aplicaciones son iguales: las aplicaciones de Android ncleo y aplicaciones de terceros se en el mismo terreno de juego. Ellos comparten la misma API, tienen los mismos niveles de acceso, y pueden hacer cualquier cosa que haga el otro. Cualquier aplicacin central puede ser sustituida por cualquier tercero de la aplicacin. Romper las fronteras de aplicaciones: Android no trata de ocultar cualquier funcionalidad de

el desarrollador. El desarrollador debe ser fcilmente capaz de aprovechar el sistema de telefona, GPS sistema, o prcticamente cualquier cosa que se ha implementado en el marco de las aplicaciones. El desarrollo de aplicaciones rpido y fcil: El marco de aplicaciones hace que sea muy fcil de hacer algunos trucos bastante sofisticado como el lugar de notificacin actual del telfono y mucho ms. Esto acelera el proceso de desarrollo para el desarrollador y hace que sea ms fcil centrarse en diseo en lugar de los detalles de implementacin. B. hardware de destino Android no hace ningn intento por ser especfico para el hardware y los buques con un controladores para muchos de los tipos comunes de hardware visto en el telfono mvil. Android no es especfico para un tipo del dispositivo mvil sino que es especfico para el dispositivo mvil en general. Sin embargo, lo ms probable es que el la siguiente lnea de telfonos Android ser producido por los miembros de la Open Handset Alliance y que Android estar bien adaptado para funcionar en estas plataformas. El sistema operativo en s mismo no tiene las preferencias. VII. Un modelo de negocio abierto Android es liderada por una coalicin de 47 compaas de tecnologa y mviles, la Open Handset Alianza, muchos de ellos con ingresos muy altos y como es. El dinero no es el inters primario en el desarrollo de Android, ya que es gratuito y de cdigo abierto. Sin embargo, Android presenta una mutua intereses entre todas estas compaas para crear un sistema operativo mvil que es muy viable y generalizada para que sea fcil de concentrar un modelo de negocio en torno a algn tipo de norma. Desde Windows, Mac OSX y Linux son los sistemas ms grandes que operan en el ordenador de casa y mercado de los servidores, se han cultivado bien las bases de desarrollo. El equipo espera que Android Android el despegue de la misma manera. Sera beneficioso para una empresa de centrarse en el desarrollo de software para un sistema operativo que utiliza casi todo el mundo en lugar de varios sistemas operativos que han partes iguales en la base de usuarios. Hay espacio para ganancias en el Android Market. En la actualidad, el Android Market cargos 25 USD para ser un desarrollador registrado. Adems, un desarrollador puede comprar y telfono Android Developer para cerca de 400 USD. Las regalas podran ser acusados de no-libre las aplicaciones en el Android De mercado.

Pgina 6 PMK: Android OS 6 Referencias [1] Ben Elgin, "Google compra Android para su arsenal mvil", http://www.businessweek.com/ technology/content/aug2005/tc20050817_0949_tc024.htm, agosto de 2005. [2] John Cox, "Por qu Gphone de Google no va a matar el iPhone de Apple," http://www.networkworld.com/ news/2007/100807-google-gphone-iphone.html, octubre de 2007. [3] Mike Clron "Androidology: Descripcin de la arquitectura," http://www.youtube.com/watch?v = Mm6Ju0xhUW8, noviembre de 2007. [4] Josh Aas, "Descripcin de la CPU del planificador de Linux 2.6.8.1," Obtenido de http://www. angelfire.com / folk / CiteSeer / linux_scheduler.pdf, febrero de 2005. [5] Charles Manning y Wookey, Especificaciones YAFFS, Aleph One, Bottisham, Reino Unido, la versin 0.3 edicin, febrero de 2002, Obtenido de http://www.yaffs.net/yaffs-spec. [6] Google, en Mountain View, CA, Radio Interface Layer, marzo de 2009, Ver ruta '/ desarrollo cin / PDK / docs / telephony.html en rbol de cdigo fuente de Android. [7] Ryan Gardner, "Multi-touch de prueba de concepto", http://ryebrye.com/files/multitouch_ Archivo.zip, noviembre de 2008, con instrucciones en http://www.ryebrye.com/blog/2008/ 11/30/g1-multitouch-proof-of-concept-soure-code-posted /. [8] Open Handset Alliance, "Android general," http://www.openhandsetalliance.com/ android_overview.html. Pablo Kilgo naci en Tuscaloosa, AL, en 1989. Ingres en la Universidad de Alabama en el otoo de 2007 y est llevando a cabo una licenciatura en Ciencias de la Computacin y Fsica con especialidad en Matemticas. Sus intereses en el campo incluyen la inteligencia artificial aplicada a los videojuegos y la robtica, la plataforma mvil como un medio juego de vdeo, el procesamiento del lenguaje humano, de contenido procesal generada, y grficos por ordenador.