Descargar como pdf o txt
Descargar como pdf o txt
Está en la página 1de 5

27/12/2020 Bloque 2.

ARQUITECTURA: ARQUITECTURAS

Bloque 2. ARQUITECTURA

1 ARQUITECTURAS
Arquitectura de computadoras.
Es el diseño conceptual y la estructura operacional fundamental de un sistema de computadora, suele definirse como la forma de seleccionar e interconectar componentes de hardware para crear computadoras
según los requerimientos de funcionalidad, rendimiento y costo.
VENTAJAS DE LAS ARQUITECTURAS
Pila: Modelo sencillo para evaluación de expresiones (notación polaca inversa). Instrucciones cortas pueden dar una buena densidad de código.
Acumulador: Instrucciones cortas. Minimiza estados internos de la máquina (unidad de control sencilla).
Registro: Modelo más general para el código de instrucciones parecidas. Automatiza generación de código y la reutilización de operandos. Reduce el tráfico a memoria. Una computadora actualmente tiene como
estándar 32 registros. El acceso a los datos es más rápido.
DESVENTAJAS DE LAS ARQUITECTURAS
Pila: A una pila no se puede acceder aleatoriamente. Esta limitación hace difícil generar código eficiente. También dificulta una implementación eficente, ya que la pila llega a ser un cuello de botella es decir que existe
dificultad para la transferencia de datos en su velocidad mk.
Acumulador: Como el acumulador es solamente almacenamiento temporal, el tráfico de memoria es el más alto en esta aproximación.
Registro: Todos los operadores deben ser nombrados, conduciendo a instrucciones más largas.
ARQUITECTURA PARA MÓVILES
Las arquitecturas de los teléfonos inteligentes han ido evolucionando conforme pase el tiempo y se innove cosas en la cual permita al usuario tener una comunicación más rápida con el mundo, parte de esto las
grandes industrias de teléfonos celulares hacen posible que cada año estos dispositivos de comunicación evolucionen en Hardware y Software, para que sea de agrado para el cliente y de gran ayuda para múltiples
tareas en el mundo moderno.
Los niveles más altos actúan como intermediarios entre el hardware y aplicaciones que aparecen en la pantalla de los dispositivos. Las capas superiores proporcionan una abstracción orientada a objetos, esto hace
que sea más fácil entender su arquitectura adicionalmente, cada capa está compuesta por un conjunto de frameworks.
Existen dos tipos básicos de arquitecturas: CISC y RISC:
CISC:
•Los accesos a memoria están disponibles directamente en todos los tipos de instrucciones.
•La cantidad de modos de direccionamiento es sustancial.
•Los formatos de instrucción son de diferente longitud.
•Las instrucciones ejecutan operaciones complejas y elementales.
RISC:
•Los accesos a memoria se restringen a instrucciones descarga y almacenamiento.
•Las instrucciones de manipulación de datos son de registro a registro.
•Los modos de direccionamiento son limitados.
•Los formatos de instrucción son de la misma longitud.
•Las instrucciones ejecutan operaciones elementales.

formacionenlinea.academica.mx/mod/book/view.php?id=58490 1/5
27/12/2020 Bloque 2. ARQUITECTURA: ARQUITECTURAS

Hay algo en común en todos los dispositivos con iOS, Android, Symbian, Windows Phone o casi cualquier otro sistema operativo: la arquitectura, es decir, el tipo de máquina.

Android es una pila de software de código abierto basado en Linux creada para una variedad amplia de dispositivos y factores de forma. En el siguiente diagrama, se muestran los componentes principales de la plataforma Android.

formacionenlinea.academica.mx/mod/book/view.php?id=58490 2/5
27/12/2020 Bloque 2. ARQUITECTURA: ARQUITECTURAS

KERNEL
Capa de abstracción de hardware (HAL)

La  capa de abstracción (HAL) brinda interfaces estándares que exponen las capacidades de hardware del dispositivo al marco de trabajo de la API de Java de nivel más alto. La HAL consiste en varios módulos de biblioteca
y cada uno de estos implementa una interfaz para un tipo específico de componente de hardware, como el módulo de la cámara o de Bluetooth. Cuando el marco de trabajo de una API realiza una llamada para acceder
a hardware del dispositivo, el sistema Android carga el módulo de biblioteca para el componente de hardware en cuestión.

Tiempo de ejecución de Android


Para los dispositivos con Android 5.0 (nivel de API 21) o versiones posteriores, cada app ejecuta sus propios procesos con sus propias instancias del tiempo de ejecusión de Android (ART). El ART está escrito para ejecutar varias
máquinas virtuales en dispositivos de memoria baja ejecutando archivos DEX, un formato de código de bytes diseñado especialmente para Android y optimizado para ocupar un espacio de memoria mínimo. Crea cadenas
de herramientas, como  Jack, y compila fuentes de Java en código de bytes DEX que se pueden ejecutar en la plataforma Android.Estas son algunas de las funciones principales del ART:

Compilación ahead-of-time (AOT) y just-in-time (JIT)

·Recolección optimizada de elementos no utilizados (GC)


·En Android 9 (nivel de API 28) y versiones posteriores, se convierten los archivos de formato ejecutable (DEX) de un paquete de aplicaciones da un código de máquina más compacto.
·Esto mejora la compatibilidad con la depuración, el generador de perfiles de muestras dedicado, las excepciones de diagnóstico detalladas y los informes de fallos, y la capacidad de establecer puntos de control para
supervisar campos específicos

·En Android, también se incluye un conjunto de bibliotecas de entorno de ejecución centrales que proporcionan la mayor parte de la funcionalidad del lenguaje de programación Java; se incluyen algunas funciones del
lenguaje JAVA, que usa el marco de trabajo de la API de Java.

formacionenlinea.academica.mx/mod/book/view.php?id=58490 3/5
27/12/2020 Bloque 2. ARQUITECTURA: ARQUITECTURAS

Marco de trabajo de la API de Java


Todo el conjunto de funciones del SO Android está disponible mediante API escritas en el lenguaje Java. Estas API son los cimientos que necesitas para crear apps de Android simplificando la reutilización de componentes
del sistema y servicios centrales y modulares, como los siguientes:
Un Sistema de Vista enriquecido y extensible que puedes usar para compilar la IU de una app; se incluyen listas, cuadrículas, cuadros de texto, botones e incluso un navegador web integrable.

    Un  Administrador de Recursos que te brinda acceso a recursos sin código, como strings localizadas, gráficos y archivos de diseño.
    Un Administrador de Notificaciones que permite que todas las apps muestren alertas personalizadas en la barra de estado.
  Un Administrador de actividad que administra el ciclo de vida de las apps y proporciona una pila de retroceso de navegación común.
   Provedor de contenido que permiten que las apps accedan a datos desde otras apps, como la app de Contactos, o compartan sus propios datos.

Los desarrolladores tienen acceso total a las mismas API del marco de trabajo que usan las apps del sistema Android.

Apps del sistema


En Android se incluye un conjunto de apps centrales para correo electrónico, mensajería SMS, calendarios, navegación en Internet y contactos, entre otros elementos. Las apps incluidas en la plataforma no tienen un
estado especial entre las apps que el usuario elije instalar; por ello, una app externa se puede convertir en el navegador web, el sistema de mensajería SMS o, incluso, el teclado predeterminado del usuario (existen algunas
excepciones, como la app Settings del sistema).
Las apps del sistema funcionan como apps para los usuarios y brindan capacidades claves a las cuales los desarrolladores pueden acceder desde sus propias apps. Por ejemplo, si en tu app se intenta entregar un mensaje
SMS, no es necesario que compiles esa funcionalidad tú mismo; como alternativa, puedes invocar la app de SMS que ya está instalada para entregar un mensaje al receptor que especifiques.

ELEMENTOS DE LA ARQUITECTURA DE LOS SISTEMAS OPERATIVOS

    EL NÚCLEO:El Núcleo (o kernel) es una colección de módulos de software que se ejecutan en forma privilegiada -lo que significa que tienen acceso pleno a los recursos del sistema. El núcleo normalmente representa sólo
una pequeña parte de lo que por lo general se piensa que es todo el sistema operativo, pero es tal vez el código que más se utiliza. Por esta razón, el núcleo reside por lo regular en la memoria principal, mientras que otras
partes del sistema operativo son cargadas en la memoria principal sólo cuando se necesitan .Los núcleos se diseñan para realizar "el mínimo” posible de procesamiento en cada interrupción y dejar que el resto lo realice el
proceso apropiado del sistema, que puede operar mientras el núcleo se habilita para atender otras interrupciones. El núcleo de un sistema operativo normalmente contiene el código necesario para realizar las siguientes
funciones:

• Manejo de interrupciones.
• Creación y destrucción de procesos.
• Cambio de estado de los procesos.
• Despacho.
• Suspensión y reanudación de procesos.
• Sincronización de procesos.
• Comunicación entre procesos.
• Manipulación de los bloques de control de procesos.
• Apoyo para las actividades de entrada/salida.
• Apoyo para asignación y liberación de memoria.
• Apoyo para el sistema de archivos
Apoyo para el mecanismo de llamada y retorno de un procedimiento.
• Apoyo para ciertas funciones de contabilidad del sistema.

      LA API DEL NÚCLEO


Una  API  (Interfaz de Programación de Aplicaciones) es el conjunto de servicios que ofrece un sistema a las aplicaciones usuarias de ese sistema. Las aplicaciones invocan estos servicios a través de llamadas a
procedimientos. La API queda definida por lo tanto por los nombres de estos procedimientos, sus argumentos y el significado de cada uno de ellos.
El conjunto de servicios que ofrece el núcleo a los procesos se denomina la API del núcleo. Está formada por procedimientos pertenecientes al núcleo, pero que se invocan desde un proceso cualquiera. La invocación de
uno de estos procedimientos es una llamada al sistema.

formacionenlinea.academica.mx/mod/book/view.php?id=58490 4/5
27/12/2020 Bloque 2. ARQUITECTURA: ARQUITECTURAS

Estas llamadas se implementan usualmente con una instrucción de máquina que provoca una interrupción. Esta interrupción hace que el procesador real pase a modo sistema e invoque una rutina de atención
perteneciente al núcleo y que ejecuta la llamada al sistema. Los argumentos de la llamada se pasan a través de los registros del procesador.

      DRIVERS PARA DISPOSITIVOS

La operación de los dispositivos es altamente dependiente de su implementación. Es así como un disco SCSI se opera de una forma distinta de un disco IDE. Para independizar el código del núcleo de los variados
mecanismos de interacción con los dispositivos, el núcleo define clases de dispositivos. Ejemplos de clases son disco, cinta, puerta de comunicación, interfaz de red, etc. Para cada clase se define una interfaz estándar
para interactuar con cualquier dispositivo que pertenezca a la clase. Esta interfaz corresponde a las declaraciones de un conjunto de procedimientos no implementados.
Un driver es el código que implementa una interfaz estándar para interactuar con un dispositivo específico, como por ejemplo un disco SCSI. Este código es por lo tanto altamente dependiente de los discos SCSI y no
funcionará con discos IDE. Sin embargo, el núcleo interactúa con este driver para discos SCSI de la misma forma que lo hace con el driver para discos IDE, es decir a través de la misma interfaz.
La visión que tiene el núcleo de un disco a través de un driver es la de un arreglo de bloques de 512 o 1024 bytes de taman o fijo. El núcleo puede leer o escribir directamente cualquiera de estos bloques haciendo uso de la
interfaz estándar de la clase disco.
Por otra parte, la visión que tiene el núcleo de una cinta es la de un conjunto de bloques de taman o variable que sólo pueden leerse o grabarse en secuencia. También puede rebobinar esta cinta para volver a leerla o
grabarla. Todo esto a través de la interfaz estándar de la clase cinta.
Es usual que los drivers estén siempre residentes en la memoria real y por lo tanto son parte del núcleo. Sin embargo la tendencia es que los drivers son módulos que se cargan dinámicamente si es necesario. También
existen drivers que corren como un proceso --como cualquier aplicación-- y por lo tanto corren en modo usuario (por ejemplo el servidor X de X-windows).

SISTEMA DE ARCHIVOS
El sistema de archivos es la componente del sistema operativo que estructura un disco en una jerarquía de directorios y archivos. Conceptualmente multiplexa un disco de taman o fijo en una jerarquía de discos de taman
o variable o archivos.
Dada esta equivalencia conceptual entre discos y archivos no es raro que ambos se manipulen con las mismas llamadas al sistema: open, read, write, close y lseek (esta última mueve la cabeza del disco hacia un bloque
determinado).
Es usual que el sistema de archivos sea parte del núcleo. Por lo demás la motivación inicial de muchos sistemas operativos como Unix era el de ofrecer un sistema de archivos a un único proceso. Por algo DOS significa Disk
Operating System y por ello es natural que forme parte del núcleo. Sin embargo hay sistemas operativos que ofrecen el sistema de archivos como parte de un proceso que no es parte del núcleo.

      INTERPRETE DE COMANDOS
El intérprete de comando (o shell) se encarga de leer las órdenes interactivas del usuario y ejecutar los programas que el usuario indique.
Usualmente el intérprete de comandos es un proceso más del sistema operativo y no forma parte del núcleo. Por ejemplo Unix ofrece varios intérpretes de comandos ( sh, csh y sus variantes). El intérprete de comandos de
DOS se encuentra en COMMAND.COM. 

REFERENCIAS
1.Llaven, D. S. (2015). Sistemas Operativos: Panorama para ingeniería en computación e informática. Grupo Editorial Patria.
2.Tanenbaum, A. S. (2003). Sistemas operativos modernos. Pearson Educación.Stallings, W. (2004). Sistemas operativos (Vol. 2). Prentice Hall.
3.Solá, S. C. (2007). Fundamentos de sistemas operativos: teoría y ejercicios resueltos. Editorial Paraninfo.
4.Pérez, D. (2009). Sistemas embebidos y sistemas operativos embedidos. Lecturas en ciencias de la computación. Universidad Central de Venezuela, Vols.% i de% 2lSSN, 1316-6239.

BLOQUE2_VIDEO

formacionenlinea.academica.mx/mod/book/view.php?id=58490 5/5

También podría gustarte