Palm OS - SO multitarea.

Post on 16-Feb-2017

64 views 1 download

Transcript of Palm OS - SO multitarea.

Sistema operativo multitarea de usuario único.

Palm operating system.

Sistema Operativo Multitarea● Permite al usuario y al equipo realizar varias operaciones, funciones o

ejecuciones de manera concurrente o simultánea.● Cambio de contexto: Quita el proceso del CPU, ingresa uno nuevo y luego

vuelve a ingresar el proceso que se quitó del CPU.● Tipos

○ Cooperativa: Da control a un proceso y si se da cuenta de que no puede seguir ejecutando pasa a estar en espera y cede el paso al siguiente proceso.

○ Apropiativa: Administra los procesos, es decir reparte el tiempo de uso entre los procesos que estén esperando ser utilizados.

○ Real: Varios procesos se ejecutan al mismo tiempo en distintos microprocesadores.

UN SISTEMA MULTITAREA SIMPLE

● Analizaremos el Palm Operating System desarrollado por

Palm Inc.

● Este sistema fue diseñado para la ejecución de varias

funciones al mismo tiempo.

● El SO Palm se desarrolló inicialmente para pequeños

dispositivos manuales denominados PDA, luego se

usaron para celulares.

● El entorno donde se ejecuta el SO Palm posee varias

características inusuales en comparación con la mayoría

de computadores de uso general.

● Están diseñadas para dar la más alta prioridad a la

interfaz con el usuario, tanta que el SO está integrado en

la parte superior de un núcleo de tiempo real.

● El SO intenta leer e interpretar en tiempo real lo que se

escribe, lo cual se conoce como Graffiti input.

● El hecho de que el SO ejecute tareas en tiempo real y

demás aplicaciones requiere del diseño de un sistema

multitarea o multiprogramación.

● El SO está diseñado para soportar aplicaciones como las

siguientes:○ Lectura de correo electrónico

○ Seguir la pista de contactos en un libro de direcciones

○ Jugar juegos simples, como Sudoku

○ Acceder a información a través de internet.

EL ENTORNO DEL SO PALM Y LA DISPOSICIÓN DEL SISTEMA

● Al diseñar el SO Palm debe tenerse en cuenta las

características de los dispositivos Palm:○ La memoria básica es RAM volátil.

○ No suele tener almacenamiento secundario.

○ Pantalla de tamaño pequeño.

○ El teclado no es estándar.

○ La CPU es lenta para reducir la merma en la batería.

La memoria básica es ram volátil

● Si el sistema no se usa durante unos cuantos minutos se

coloca a así mismo en modo de hibernación.

● La energía dedicada a la memoria en realidad nunca se

interrumpe.

● El hardware cuenta con un pequeño flujo de corriente

para mantener el contenido de la memoria.

Falta de almacenamiento secundario

● En el diseño original de los dispositivos que cuentan con

este SO carecen de cualquier almacenamiento

secundario.

● Todos los datos y programas se mantienen en un espacio

de direcciones único.

● Algo de esta memoria es ROM en módulos (tarjetas) que

es posible retirar de la computadora.

Pantalla de tamaño pequeño

● Debido a que los dispositivos están diseñados para caber

en una mano del usuario, el tamaño de la pantalla es

limitado.

● Con la mayoría de las otras GUI puede haber múltiples

ventanas abiertas en la pantalla al mismo tiempo.

● En contraste con otras GUI, una ventana de aplicación en

el SO Palm llena toda la pantalla.

Falta de teclado

● Los dispositivos que cuentan con este SO en un principio

no contaban con teclado.

● El modo regular de entrada de datos es a través de la

entrada de graffiti.

● Esto es aceptable ya que la mayoría de aplicaciones para

los PDA no esperan grandes cantidades de datos de

entrada.

Disposición del sistema

PLANIFICACIÓN DE UN PROCESO

SO Palm.

Procesos del SOProcesos de aplicacion

(video)

https://www.youtube.com/watch?v=wV-WdBao-9A

Procesamiento de datos de entrada desde el graffiti: una tarea del SO en tiempo real.

Palm Operating System

Función de entrada de datos desde el graffiti.

Notas Editor de texto

Agenda

Función de entrada de datos desde el graffiti

● Seguimiento con el estilete.

● Reconocimiento de caracteres.Implica dos tareas del sistema

operativo ->

Seguimiento con el estilete.

Reconocimiento de caracteres.

Procesos de aplicación: un foco a la vez.

● Ejecuta una sola aplicación a la vez.● Las aplicacion ocupan toda la pantalla.● No cuenta con una función exit.● No obstante, es posible que existan otras

funciones estén en ejecución a la vez.

Función de búsqueda de texto.

Palm Operating System

App Búsqueda de Texto

Notas ContactosAlarma

Foco

Aplicación sync.

Sync

Pantalla Sincronización

Aplicaciones comunes de usuario.

Aplicacion común de usuario

BBDD

GUI

Usuario

Bucle de evento

El SO lanza

la aplicación

Verificación y carga de BD

Bucle de evento

-> Entrada de datos por graffiti.-> Selección de un artículo en una lista de menús.-> appStopEvent.-> hibernacion.

Planificador multitarea preferencial

GESTIÓN DE LA MEMORIA

Fundamentos de la memoria

- Máximo 4GB- Dividida en tarjetas de máximo 256MB- RAM dinámica y RAM de almacenamiento- La información no se pierde- Aplicación sync

Asignación de memoria: Conceptos básicos

- Montículo o heap- Trozos- Al menos existen 3 montículos.- Fragmentación externa- Compactación- TAM: Tabla apuntadora maestra- ATM: Apuntador de trozos maestro- Encadenamiento de TAM

Fragmentación externa

TAM y ATM

Trozos no movibles

Seguimiento del espacio libre-sa - Primer ajuste

- Mejor ajuste

SOPORTE DE ARCHIVOS

➢ Todo se mantiene en la Memoria

Principal:

● RAM

● Flash

➔ Bases de datos y Regıstros

Registros

Datos

Datos

Datos

Datos

Datos

Datos

Base de Datos

MEMORIATrozos de memoria

❏ CPU en plataforma SO Palm

es modesto.

❏ No memoria giratoria como

disco.

❏ No compresión de archivos.

➔ Objetos recurso

➔ Almacenamıento secundarıo

● SO Palm no hay memoria secundaria.● Palm 4.0 soporte incluye categoría diferente de memoria.

○ Forma más tradicional de almacenamiento secundario.○ Sistema de archivos que imita a los de un disco del DOS.○ Conexión rápida sin necesidad de software entre Palm y la

Pc.

ENTRADAS Y SALIDAS BÁSICAS

➔ Ocultando detalles del software

❏ El SO Palm se diseñó de tal manera que, para un programador, el sistema se viera como un sistema de computadora convencional, en la medida de lo posible.Ejm:

Manipulación de datos de entrada por parte del usuario.

➢ Nivel de abstracción: Interfaz en crudoProgramas solo ven golpes de teclado.

➢ Nivel de abstracción: Interfaz cocinada

● Solo para aplicaciones que leen una línea de completa de datos de entrada.

● Pueden incluir: ○ Inserción de caracteres o cadenas, o borrado.○ Duplicación de la línea previa.○ Tecla de retroceso, etc.

● El programa solo ve líneas de datos de entrada completas.

stdin

stdout

stderr

GESTIÓN DE PANTALLA

Hardware

● Pantalla LCD de 160 x 160 pixeles.

● La pantalla se refresca directamente desde la memoria.

● Es recomendable que las aplicaciones accedan a la pantalla mediante llamadas al sistema.

Elementos GUI de Alto Nivel

● GUI basada en el concepto de formas.● Normalmente una ventana llena toda la pantalla.● El SO soporta un elemento denominado ventana.● En el SO Palm, los elementos GUI específicos de la

aplicación se denominan gadgets u objetos.

Tipos especiales de formas● Forma modal.● Diálogo de proceso.

Controles GUI de nivel inferior

Programas impulsados por eventos● No procesan datos por lotes.● Se enfocan en entradas interactivas proporcionadas por el usuario.