Podcast
Questions and Answers
¿Cuál de las siguientes opciones describe mejor la función principal de un Sistema Operativo (SO)?
¿Cuál de las siguientes opciones describe mejor la función principal de un Sistema Operativo (SO)?
- Gestionar directamente la creación de hardware.
- Proporcionar una interfaz entre el hardware y el software. (correct)
- Optimizar el consumo de energía.
- Ejecutar exclusivamente aplicaciones de usuario.
¿Cuál es el propósito principal del núcleo (kernel) de un sistema operativo?
¿Cuál es el propósito principal del núcleo (kernel) de un sistema operativo?
- Proporcionar herramientas de desarrollo para aplicaciones.
- Actuar como la interfaz más abstracta con el hardware. (correct)
- Gestionar la interfaz gráfica de usuario.
- Facilitar la configuración de redes.
¿Cuál de las siguientes NO es una función típica proporcionada por el núcleo del sistema operativo?
¿Cuál de las siguientes NO es una función típica proporcionada por el núcleo del sistema operativo?
- Espacio de memoria aislado para cada proceso.
- Direcciones de memoria lógicas para los procesos.
- Mecanismos de comunicación entre procesos.
- Administración directa de la energía. (correct)
¿Qué implica que un programa sea 'multiprogramado'?
¿Qué implica que un programa sea 'multiprogramado'?
¿Cuál es el objetivo principal de la multiprogramación en los sistemas operativos modernos?
¿Cuál es el objetivo principal de la multiprogramación en los sistemas operativos modernos?
¿Qué caracteriza a una 'operación bloqueante' en un sistema operativo?
¿Qué caracteriza a una 'operación bloqueante' en un sistema operativo?
¿Cuál es el papel del 'planificador de procesos' en un sistema operativo?
¿Cuál es el papel del 'planificador de procesos' en un sistema operativo?
¿Qué implicación tiene el uso de 'esperas activas' en la programación de sistemas operativos?
¿Qué implicación tiene el uso de 'esperas activas' en la programación de sistemas operativos?
¿Cuál es una ventaja principal de utilizar hilos (threads) en lugar de procesos separados para tareas paralelizable?
¿Cuál es una ventaja principal de utilizar hilos (threads) en lugar de procesos separados para tareas paralelizable?
¿Qué recurso comparten los hilos dentro de un mismo proceso??
¿Qué recurso comparten los hilos dentro de un mismo proceso??
¿Cuál es la principal función de una 'interrupción' en un sistema informático?
¿Cuál es la principal función de una 'interrupción' en un sistema informático?
¿Qué tipo de eventos pueden generar una interrupción en un sistema informático?
¿Qué tipo de eventos pueden generar una interrupción en un sistema informático?
¿Cuál es la utilidad principal de tener al menos dos 'modos de ejecución' (supervisor y usuario) en un procesador?
¿Cuál es la utilidad principal de tener al menos dos 'modos de ejecución' (supervisor y usuario) en un procesador?
¿Qué ocurre si un proceso en 'modo usuario' intenta ejecutar una instrucción privilegiada?
¿Qué ocurre si un proceso en 'modo usuario' intenta ejecutar una instrucción privilegiada?
¿Qué función realiza el traductor dinámico de páginas en un sistema de memoria paginada?
¿Qué función realiza el traductor dinámico de páginas en un sistema de memoria paginada?
¿Qué información se almacena en una 'tabla de páginas' en un sistema de memoria paginada?
¿Qué información se almacena en una 'tabla de páginas' en un sistema de memoria paginada?
¿Cuál es el propósito del bit 'P' (de 'presente') en una entrada de la tabla de páginas?
¿Cuál es el propósito del bit 'P' (de 'presente') en una entrada de la tabla de páginas?
¿Qué ocurre si un proceso intenta acceder a una página de memoria que no está presente en la memoria física (es decir, el bit 'P' está en 0)?
¿Qué ocurre si un proceso intenta acceder a una página de memoria que no está presente en la memoria física (es decir, el bit 'P' está en 0)?
¿Qué es el 'sondeo' (polling) en el contexto de la gestión de dispositivos en un sistema operativo?
¿Qué es el 'sondeo' (polling) en el contexto de la gestión de dispositivos en un sistema operativo?
¿Cuál es la alternativa al 'sondeo' para gestionar las interacciones entre el sistema operativo y los dispositivos?
¿Cuál es la alternativa al 'sondeo' para gestionar las interacciones entre el sistema operativo y los dispositivos?
¿Qué función cumple un 'adaptador' en el contexto del acceso a dispositivos?
¿Qué función cumple un 'adaptador' en el contexto del acceso a dispositivos?
¿Cuál es la diferencia clave entre AHCI y NVMe como protocolos de conexión para SSDs?
¿Cuál es la diferencia clave entre AHCI y NVMe como protocolos de conexión para SSDs?
¿Por qué es necesario borrar celdas en un SSD antes de poder escribir nuevos datos en ellas?
¿Por qué es necesario borrar celdas en un SSD antes de poder escribir nuevos datos en ellas?
¿Qué problema específico busca solucionar el comando TRIM en las unidades de estado sólido (SSD)?
¿Qué problema específico busca solucionar el comando TRIM en las unidades de estado sólido (SSD)?
¿A qué nivel de software pertenece la información que usa el comando TRIM en un sistema operativo??
¿A qué nivel de software pertenece la información que usa el comando TRIM en un sistema operativo??
¿Cuál de los siguientes NO es un componente típico de un terminal interno (consola)?
¿Cuál de los siguientes NO es un componente típico de un terminal interno (consola)?
¿Qué función realiza el adaptador de pantalla en un terminal interno??
¿Qué función realiza el adaptador de pantalla en un terminal interno??
En el contexto de terminales externos, ¿qué significa que un terminal sea un 'cliente de escritorio remoto'?
En el contexto de terminales externos, ¿qué significa que un terminal sea un 'cliente de escritorio remoto'?
¿Qué protocolo utilizan los clientes de terminal en modo texto para comunicarse con el servidor?
¿Qué protocolo utilizan los clientes de terminal en modo texto para comunicarse con el servidor?
¿Qué ventaja ofrecen los protocolos orientados a 'comandos' en clientes de terminal en modo gráfico?
¿Qué ventaja ofrecen los protocolos orientados a 'comandos' en clientes de terminal en modo gráfico?
¿Qué ocurre con el tiempo de ejecución de un proceso si es interrumpido por otro de mayor prioridad?
¿Qué ocurre con el tiempo de ejecución de un proceso si es interrumpido por otro de mayor prioridad?
Si un proceso no puede avanzar por la falta de un recurso, ¿a qué estado pasa?
Si un proceso no puede avanzar por la falta de un recurso, ¿a qué estado pasa?
¿Con qué otro nombre se le conoce a un programa en ejecución?
¿Con qué otro nombre se le conoce a un programa en ejecución?
En relación a la administración de la memoria, ¿cuál es la diferencia entre las direcciones lógicas y las direcciones físicas?
En relación a la administración de la memoria, ¿cuál es la diferencia entre las direcciones lógicas y las direcciones físicas?
¿Qué tipo de interrupción se genera cuando hay un fallo de página?
¿Qué tipo de interrupción se genera cuando hay un fallo de página?
¿Cuál de los siguientes enunciados define mejor el concepto de multiplexación?
¿Cuál de los siguientes enunciados define mejor el concepto de multiplexación?
En un sistema operativo moderno, ¿qué estructura se utiliza para almacenar los punteros a las rutinas de servicio de interrupción (ISRs)?
En un sistema operativo moderno, ¿qué estructura se utiliza para almacenar los punteros a las rutinas de servicio de interrupción (ISRs)?
¿Cuál es el componente que se encarga de transformar, para hacerla entendible, la información que genera el micro en la pantalla a través de caracteres o gráficos?
¿Cuál es el componente que se encarga de transformar, para hacerla entendible, la información que genera el micro en la pantalla a través de caracteres o gráficos?
Flashcards
¿Qué es un Sistema Operativo?
¿Qué es un Sistema Operativo?
Software que facilita el uso de un sistema informático.
¿Cuál es la función de la interfaz en un SO?
¿Cuál es la función de la interfaz en un SO?
Facilita la interacción entre usuarios y el sistema.
¿Qué es el núcleo del Sistema Operativo?
¿Qué es el núcleo del Sistema Operativo?
Capa de software sobre el hardware que ofrece abstracción.
¿Qué es una llamada al sistema?
¿Qué es una llamada al sistema?
Signup and view all the flashcards
¿Qué es un proceso?
¿Qué es un proceso?
Signup and view all the flashcards
¿Qué abstracción provee el núcleo?
¿Qué abstracción provee el núcleo?
Signup and view all the flashcards
¿Qué es la Multiprogramación?
¿Qué es la Multiprogramación?
Signup and view all the flashcards
¿Qué es una operación bloqueante?
¿Qué es una operación bloqueante?
Signup and view all the flashcards
¿Qué es un planificador de procesos?
¿Qué es un planificador de procesos?
Signup and view all the flashcards
¿Qué es un hilo?
¿Qué es un hilo?
Signup and view all the flashcards
¿Qué encapsula un proceso?
¿Qué encapsula un proceso?
Signup and view all the flashcards
¿Qué es una interrupción?
¿Qué es una interrupción?
Signup and view all the flashcards
¿Qué es una Interrupción Hardware?
¿Qué es una Interrupción Hardware?
Signup and view all the flashcards
¿Qué es una excepción?
¿Qué es una excepción?
Signup and view all the flashcards
¿Qué son Instrucciones?
¿Qué son Instrucciones?
Signup and view all the flashcards
¿Qué son Instrucciones Privilegiadas?
¿Qué son Instrucciones Privilegiadas?
Signup and view all the flashcards
¿Qué es el 'Modo Supervisor'?
¿Qué es el 'Modo Supervisor'?
Signup and view all the flashcards
¿Qué es el espacio de memoria paginado?
¿Qué es el espacio de memoria paginado?
Signup and view all the flashcards
¿Qué es un adaptador?
¿Qué es un adaptador?
Signup and view all the flashcards
¿Qué es el controlador?
¿Qué es el controlador?
Signup and view all the flashcards
¿Qué son los registros de control?
¿Qué son los registros de control?
Signup and view all the flashcards
¿Qué permiten hacer los dispositivos?
¿Qué permiten hacer los dispositivos?
Signup and view all the flashcards
¿Qué es la gestion de dispositivos por interrupciones?
¿Qué es la gestion de dispositivos por interrupciones?
Signup and view all the flashcards
¿Qué es SSD?
¿Qué es SSD?
Signup and view all the flashcards
¿Qué tecnologia emplea SSD?
¿Qué tecnologia emplea SSD?
Signup and view all the flashcards
¿Qué funcion cumple el condensador?
¿Qué funcion cumple el condensador?
Signup and view all the flashcards
¿Qué es el comando TRIM?
¿Qué es el comando TRIM?
Signup and view all the flashcards
Wear Leveling
Wear Leveling
Signup and view all the flashcards
Wear Leveling dinámico
Wear Leveling dinámico
Signup and view all the flashcards
Wear Leveling estático
Wear Leveling estático
Signup and view all the flashcards
¿Qué tipos de terminales existen?
¿Qué tipos de terminales existen?
Signup and view all the flashcards
Adaptador de Pantalla
Adaptador de Pantalla
Signup and view all the flashcards
Study Notes
Fundamentos
- El sistema operativo (SO) es software que facilita el uso de un sistema informático.
- Proporciona una interfaz entre usuarios y el sistema.
- Constituye la interfaz entre aplicaciones y el sistema.
- Simplifica el desarrollo de aplicaciones.
Núcleo del Sistema Operativo
- Es una capa de software situada sobre el hardware.
- Proporciona una interfaz con un alto grado de abstracción.
- Incluye herramientas del sistema como configuración y administración, programas de ayuda y programas de órdenes.
Llamadas al Sistema
- Una llamada al sistema es una petición realizada por un proceso al núcleo del sistema operativo para obtener un servicio.
- En un procesador con mecanismos de protección de memoria y modos supervisor y usuario, la implementación viable es mediante instrucciones específicas e interrupciones.
- No se implementan mediante rutinas para evitar que el proceso acceda al espacio de memoria del núcleo.
Procesos e Hilos
- Un proceso es una secuencia de ejecución de instrucciones de un programa.
- Si el mismo programa se ejecuta más de una vez, cada ejecución es un proceso distinto.
- Un proceso puede ejecutar otro programa.
- El núcleo proporciona abstracciones como espacios de memoria propios y aislados para cada proceso.
- Las direcciones de memoria de los procesos son direcciones lógicas. En Windows, el estándar es de 0 a 2 GB.
- El núcleo ofrece mecanismos de comunicación, sincronización e identificación.
- Un proceso puede crear otros procesos, donde el proceso "padre" tiene "derechos especiales" sobre su "proceso hijo".
Multiprogramación
- Un programa multiprogramado puede ejecutar múltiples procesos para aprovechar los procesadores.
- Un Intel Core i7 6950X ejecuta 317.900 MIPS, con una instrucción ejecutándose aproximadamente en 3.14x10^-12 segundos.
- El tiempo de transferencia típico de una unidad SSD es de 0.2ms (2.0x10^-4s).
- Durante la transferencia de datos, el procesador puede ejecutar millones de instrucciones.
Operaciones Bloqueantes
- Son acciones que tardan en ejecutarse en una escala de tiempo mayor que la ejecución de instrucciones en el procesador.
- En la abstracción, se supone un procesador virtual que ejecuta instrucciones a velocidad uniforme para cada proceso.
- En la realidad, el tiempo del procesador se reparte entre los procesos, alternando periodos de ejecución con periodos de inactividad.
Estados de un Proceso
- Los estados mínimos por los que pasa un proceso son: preparado, activo, bloqueado.
- El planificador de procesos es el componente del núcleo encargado de repartir el tiempo de los procesadores entre los procesos.
- El tiempo que tarda en ejecutarse un proceso es diferente del tiempo consumido de CPU.
- La misma actividad puede tardar distintos tiempos en diferentes ejecuciones.
- Las operaciones que dependen del tiempo deben usar primitivas del sistema.
- Las esperas activas están prohibidas.
Hilos
- Implica convertir un proceso que realiza dos actividades paralelizables en dos procesos.
- Si hay más de un procesador, siempre es interesante.
- Si hay solo un procesador, una actividad puede aprovechar los tiempos de bloqueo de la otra.
Problemas de Dependencias
- Implican acceso a recursos compartidos mediante mecanismos de IPC.
- Los recursos pueden convertir variables o estructuras de datos.
- Implica ser complicado e ineficiente
Hilos como Solución
- Los hilos implementan actividades A y B mediante:
- Espacio de memoria compartido.
- Archivos abiertos y código compartidos.
Primitivas Disponibles
- Creación de hilos.
- Destrucción de hilos.
- Sincronización entre hilos.
Lo que no se implementa
- Mecanismos de protección entre hilos del mismo proceso.
- Mecanismos de comunicación entre hilos del mismo proceso.
Proceso Redefinido
- Se define como el objeto del sistema que encapsula:
- Uno o más hilos
- Un espacio de memoria compartido por hilos
- Un conjunto de recursos hardware/software asignados
Planificador
- El planificador ahora planifica hilos, en lugar de procesos.
- Lenguajes de programación como ADA, Java y Python incluyen soporte para hilos.
Conceptos Básicos de Hardware
- Organización básica de un ordenador:
- Memoria local
- Bus (sistema de interconexión)
- Adaptadores (teclado, ratón, pantalla)
- DMA (acceso directo a memoria)
- Controlador de unidades de disco
Interrupciones
- Implican alteración de la secuencia de ejecución de instrucciones provocada por un evento.
- Interrupt Hardware: cambio de estado en una entrada de interrupción del procesador, para gestión de dispositivos.
- Excepciones: imposibilidad de ejecutar una instrucción.
- Interrupt software: instrucción que provoca deliberadamente la interrupción cuyo número se pasa como argumento, ejemplo: INT 21H.
Modos de Ejecución del Procesador
- Instrucciones: realización de operaciones aritméticas, lógicas o de movimiento de datos.
- Instrucciones privilegiadas: instrucciones que acceden a recursos hardware o software externos al proceso actual.
- Dos modos de ejecución:
- Supervisor: puede ejecutar cualquier instrucción, incluyendo privilegiadas.
- Usuario: no puede ejecutar instrucciones privilegiadas; si se intenta, se produce una Excepción.
Utilidad de los Modos de Ejecución
- Permiten construir un sistema operativo robusto.
- El núcleo usa el procesador en modo supervisor, mientras que el resto opera en modo usuario.
Memoria
- Funciona como un array de bytes.
- Se accede a cada posición mediante una dirección (índice).
- La primera dirección es 0 y la última depende de la memoria instalada.
- En cada acceso se puede transferir 1, 2, 4 u 8 bytes.
Espacio de Memoria Paginado
- Cada proceso ve su espacio lógico de direcciones.
- El procesador traduce del espacio lógico al espacio físico de direcciones.
- El traductor divide las direcciones lógicas en nº de páginas y desplazamiento.
- La dirección Lógica "00...0" NO tiene por qué corresponderse con la dirección Física "00...0".
- La traducción se realiza mediante una tabla de páginas, indexada por nº de página y que proporciona el nº de marco.
- Para que cada proceso tenga su espacio de memoria independiente, cada proceso tiene su propia tabla de páginas.
Paginación
- Cada proceso solo ve su propio espacio lógico de direcciones.
- El espacio está compuesto por direcciones consecutivas, aunque los marcos asignados al proceso no sean consecutivos.
- Se puede ejecutar un proceso sin necesidad de tener cargadas todas sus páginas.
Memoria Virtual
- Los procesos comienzan su ejecución sin necesidad de transferir ninguna de sus páginas a memoria.
- Inicialmente, todas las páginas están marcadas como "no presentes".
- Por cada fallo de página, el núcleo busca la página y la carga en cualquier marco libre.
- El bit P de "presente" cambia de 0 a 1 una vez cargado el marco con la página correspondiente.
Gestión de Marcos Libres
- Cuando no quedan marcos libres, se reescribe un marco usado para colocar la página siguiente.
- Se escribe hasta que se vuelva a necesitar dicho espacio para otro marco.
Acceso a Dispositivos
- Para el SO, los dispositivos son cajas negras capaces de recibir órdenes, transferir información e informar sobre su estado.
- El controlador es la interfaz electrónica del dispositivo, específico para ordenador y dispositivo.
- El adaptador sirve como elemento de conexión a otros dispositivos, proporcionando una interfaz estándar.
- El adaptador normaliza características mecánicas, electrónicas y protocolos.
Registros de Control
- Un dispositivo puede tener múltiples registros de órdenes de configuración o de comando, de estado, y de lectura/escritura.
- Los registros pueden estar mapeados en memoria o en espacio de E/S, y cada registro tiene asignada una dirección.
- Los dispositivos informan de sus cambios de estado cambiando el valor de su registro de estado o generando una interrupción.
- Se pueden gestionar por sondeo (polling) o por interrupciones.
Gestión por Sondeo
- Se lee el registro de estado hasta que cambie de valor.
- En la gestión por interrupciones, el dispositivo tiene una salida de interrupción que se conecta a la entrada de interrupción del procesador.
Gestión por Interrupciones
- Cuando cambia de estado, genera una interrupción.
- La subrutina de servicio de interrupción trata dicho cambio de estado.
- Si hay múltiples dispositivos, se usa un PIC (Programable Interrupt Controller) o MSI (Message Signaled Interrupt).
Unidades de Almacenamiento
- Considerar la arquitectura del subsistema de E/S.
Unidades Magnéticas
- Su estructura incluye:
- Placas ferromagnéticas con 2 caras cada una.
- Pistas concéntricas divididas en sectores.
- Cabezales de lectura/escritura que se mueven solidariamente
- Controlador
- Interfaz (SATA, SCSI, USB...) y buffer (RAM).
- El sector es la unidad mínima de transferencia, con todos los sectores teniendo el mismo número de bits.
Modos de Direccionamiento
- CHS (Cylinder, Head, Sector): el disco es un array tridimensional de sectores.
- LBA (Linear Block Address): el disco es un vector de sectores.
Unidades de Estado Sólido (SSD)
- Emplean tecnología NAND Flash
- Incluyen una interfaz, un controlador, un buffer (RAM) y un array de memorias Flash.
- El controlador gestiona las operaciones de lectura y escritura.
- El buffer es una memoria RAM que actúa como almacenamiento intermedio entre el controlador y el array de memorias Flash.
- Se transfieren bloques de datos que se almacenan en varias celdas flash (equivalente a bloques de disco).
Notas Sobre Protocolos
- La mayoría de las unidades magnéticas con interfaz SATA usan el protocolo AHCI (Advanced Host Controller Interface).
- Unidades PCIe (forma M2) usan AHCI (dos ranuras) o NVMe (una ranura).
- NVMe (Non-Volatile Memory Host Controller Interface Specification) diseñado para SSDs vía PCI Express.
- NVMe y AHCI se diferencian en la cola de comandos; AHCI gestiona una cola con 32 comandos, NVMe soporta 65.000 colas con 65.000.
Técnicas de Escritura y Lectura
- Utilizan la interfaz de cada celda flash: serie 8/16 bits.
- Un sector se escribe en paralelo disperso en varias celdas.
- Para escribir, la celda debe estar vacía.
Implementaciones
- Dado que la interfaz de una celda Flash es serie (8/16 bits), se escribe o lee sobre varias celdas simultáneamente.
- Despues de borrar las celdas que van a contener el sector, se hayan borrado más celdas de las necesarias.
- El dispositivo utiliza un condensador para retener energía suficiente en caso de pérdida repentina de la alimentación.
Unidades SSD Particulares
- Amplificación de la escritura debido a la necesidad de borrar antes de escribir. El tamaño típico del sector es de 4KB.
- Las celdas no se pueden borrar individualmente, borrar implica unidades de 128KB-256KB, y el borrado de un sector puede afectar a otros.
- Se requiere preservar los sectores en la misma unidad de borrado, si los hay.
La Amplificación
- Escritura = lectura+borrado+modificación+escritura
- Las celdas flash soportan un número finito de borrados (típicamente 100.000 ciclos de borrado/programación)
Wear Leveling
- Algunos archivos se actualizan con mucha frecuencia, desgastando los sectores que se reescriben una y otra vez.
Nivelación Dinámica
- A cada sector se le asignan las celdas flash a usar en el momento de la escritura.
- Si se reescribe un sector, se le reasignan nuevas celdas (preferiblemente vacías), evita reescribir las celdas que usa actualmente.
- Los archivos que no se reescriben no desgasta sus sectores.
- Si los sectores nunca se reescriben, las celdas que alojan estos sectores, tampoco se reescriben
- Consecuencia: dos tipos de celdas en la unidad: las que casi nunca se reescriben y las que se reescriben.
Nivelación Estática
- Igual que Leveling dinámico, pero periódicamente se mueven también los sectores que no se reescriben, distribuido de manera más homogénea el uso de todos los sectores.
- El control de SSDs suele implementarse por parte del controlador del SSD, es decir, por hardware.
Comando TRIM
- Cuando vamos a reescribir el sector 3, no podemos borrar sólo las celdas que usa ese sector así que se produce una amplificación de la escritura.
- La unidad no sabe que el contenido de los sectores 0, 1 y 2 ya es irrelevante.
La Amplificación Previene
- Con el comando TRIM, el administrador de archivos informa a la unidad de qué sectores que han sido previamente escritos dejan de ser relevantes.
- De esta forma, la unidad no tiene que preocuparse en mantener su contenido si son afectados por alguna amplificación de la escritura.
Trim (Cont.)
- Si sectores grabados en una unidad de borrado ya no están en uso, no es necesario leerlos y regrabarlos.
- La utilidad reduce el impacto de la amplificación de la escritura.
- Esta información no se dispone ni siquiera a nivel de gestor de dispositivo, sino que es el nivel de software de E/S independiente de dispositivo quien dispone de dicha información.
- Tal característica, afecta al nivel superior del software de E/S.
- Suportado de forma nativa por:
- Linux desde el nucleo 2.6.33.
- Windows a partir de Windows 7.
- Mac OS X a partir de la versión 10.7 (Lion).
Interfaz de Usuario
- Comprende dos tipos distintos de terminales:
- Terminales internos (consola).
- Terminales externos.
Terminales internos (Consola)
- Tres dispositivos independientes pero interrelacionados, cuatro contando el audio:
- Procesador, memoria, adaptador de teclado, adaptador de ratón y adaptador de pantalla.
Terminales Internos: Adaptador de Pantalla
- Barra un área de memoria que representa el contenido de la pantalla (memoria de video).
- La memoria de video puede estar en el adaptador o en la Memoria principal.
- La interpretación de la memoria depende del modo de video: texto o gráfico.
- La memoria, aunque vaya integrada en adaptador, es accesible desde el espacio de memoria del procesador.
- El adaptador sincroniza la imagen, controla el haz de barrido, genera los caracteres en modo texto y determina el color y brillo de cada píxel.
Modos
- En modo texto, la pantalla es un array de caracteres, en el que para cada carácter hay un código ASCII y un byte con sus atributos (código de color, nivel de intensidad).
- En modo gráfico, la pantalla es un array de pixels, que contienen el código de color, normalmente, codificado en RGB (Red, Green, Blue).
Terminales Internos: Teclado
- Dispone de un microcontrolador que explora el array de teclas n veces por segundo
- Cuando se pulsa una tecla:
- Genera un evento de tecla pulsada.
- Proporciona scancode de tecla.
- Conversión scancode ←→ carácter: en gestor de teclado
Terminales Internos: Ratón
- Su controlador genera un evento por cada cambio de estado:
- Pulsación/ liberación de teclas o Desplazamiento
- Proporciona vector de desplazamiento y el estado de las teclas, el gestor mueve un cursor o hardware del ratón
Terminales Externos
- El terminal es una red autónoma con conexión unica
- Normalmente en un ordenador se ejecuta una aplicación de cliente de texto o en modo gráfico (cliente de escritorio remoto)
Clientes de Terminales en Modo Texto
- Se basan en protocolos muy simples:
- Envía la información y el control
- Ordenan a cliente el borrado o posicionamiento y se usa un canal de encriptado
- Caracteres de control
- Existen diversos estándares ANSI
Clientes de Terminal en Modo Gráfico
- Protocolos consistentes que envían información y eventos de teclado y dispositivos de apuntadores , servidor envía al cliente contenido gráfico de pantalla
- En modo servidor envia en :
- Orientados a pixeles: como mapas de bits
- Orientados a comandos: objectos describe como se muestra en pantalla.
- Se debe añadir Streaming de audio/video del servidor al cliente con acceso al sistema
- Como los archivos y dispositivos del servidor
Studying That Suits You
Use AI to generate personalized quizzes and flashcards to suit your learning preferences.