Beruflich Dokumente
Kultur Dokumente
SABER-PENSAR-TRABAJAR
Sistema Operativos 2
Sección: 811
Contenido
2.1. Estructura de un Sistema Operativo .................................................................................................... 3
Cargador ......................................................................................................................................... 3
Cargador para el sistema operativo ................................................................................................ 3
Cargador incluido en el sistema operativo ...................................................................................... 3
Lenguaje de comunicación .............................................................................................................. 3
Utilería de sistema .......................................................................................................................... 3
2.2. Sistemas Monolíticos ........................................................................................................................... 4
2.3. Máquinas Virtuales .............................................................................................................................. 4
2.4. Modelo Cliente/Servidor ...................................................................................................................... 6
2.5. Introducción al Kernel .......................................................................................................................... 7
2.1. Estructura de un Sistema Operativo
Cargador
Cualquier programa que requiere ser ejecutado en la computadora, deber\u00e1 ser transferido
desde su lugar de residencia a la memoria principal.
Cargador para el sistema operativo Este programa se encarga de transferir desde algún
medio de almacenamiento externo (disco, cinta o tambor) a la memoria principal, los programas
del sistema operativo que tienen como finalidad establecer el ambiente de trabajo del equipo de
cómputo. Existe un programa especial almacenado en memoria ROM que se encarga de accesar
a este programa cargador. Cuando el sistema operativo está cargado en memoria toma el control
absoluto de las operaciones del sistema.
Su función es cargar a memoria todos los archivos necesarios para la ejecución de un proceso.
SUPERVISOR (EJECUTIVO O MONITOR) Es el administrador del sistema que controla todo el
proceso de la información por medio de un gran número de rutinas que entran en acción cuando
son requeridos. Funge como enlace entre los programas del usuario y todas las rutinas que
controlan los recursos requeridos por el programa para posteriormente continuar con su
ejecución. El supervisor también realiza otras funciones como son:
- Manejo de Archivos
Lenguaje de comunicación
Es el medio a través del cual el usuario interactúa directamente con el sistema operativo y está formado
por comandos que son introducidos a través de algún dispositivo. Generalmente un comando consta de
dos partes, la primera formada por una palabra que identifica el comando y la acción a realizar y la
segunda parte por un conjunto de valores o parámetros que permiten seleccionar diversas operaciones
de entre los que dispone el comando.
Utilería de sistema
Son programas o rutinas del sistema operativo que realizan diversas funciones de uso común o aplicación
frecuente como son: clasificar, copiar e imprimir información.
2.2. Sistemas Monolíticos
Los sistemas monolíticos son aquellos en los que su centro es un grupo de estructuras fijas, las cuales
funcionan entre sí.
En los Sistemas Operativos Monolíticos, existen módulos grandes en el núcleo, los cuales interactuan
entre sí, para poder tener esta estructura, las diferentes partes del kernel son compiladas por capas.
Un núcleo monolítico es un tipo de núcleo o kernel de un sistema operativo. Como ejemplo de sistema
operativo de núcleo monolítico están UNIX, Linux y FreeBSD.
Estos sistemas tienen un núcleo grande y complejo, que engloba todos los servicios del sistema. Está
programado de forma no modular, y tiene un rendimiento mayor que un micronúcleo (agregar
referencia). Sin embargo, cualquier cambio a realizar en cualquier servicio requiere la recompilación del
núcleo y el reinicio del sistema para aplicar los nuevos cambios.
Un sistema operativo con núcleo monolítico concentra todas las funcionalidades posibles (planificación,
sistema de archivos, redes, controladores de dispositivos, gestión de memoria, etc) dentro de un gran
programa. El mismo puede tener un tamaño considerable, y deberá ser recompilado por completo al
añadir una nueva funcionalidad. Todos los componentes funcionales del núcleo tienen acceso a todas sus
estructuras de datos internas y a sus rutinas. Un error en una rutina puede propagarse a todo el núcleo.
Una máquina virtual de sistema es aquella que emula a un ordenador completo. En palabras llanas, es un
software que puede hacerse pasar por otro dispositivo -como un PC- de tal modo que puedes ejecutar
otro sistema operativo en su interior. Tiene su propio disco duro, memoria, tarjeta gráfica y demás
componentes de hardware, aunque todos ellos son virtuales.
Que sus componentes sean virtuales no quiere decir necesariamente que no existan. Por ejemplo, una
máquina virtual puede tener unos recursos reservados de 2 GB de RAM y 20 GB de disco duro, que
obviamente salen de algún sitio: del PC donde está instalada la máquina virtual, también llamado a veces
el hipervisor, el host o el anfitrión. Otros dispositivos podrían realmente ser inexistentes físicamente,
como por ejemplo un CD-ROM que en verdad es el contenido de una imagen ISO en vez de un lector de
CD de verdad.
Para el sistema operativo que se ejecuta dentro de la máquina virtual toda esta emulación es transparente
e invisible. Todo funciona igual a si se estuviera ejecutando en un PC normal, sin que sepa que en verdad
está metido dentro de una burbuja dentro de otro sistema operativo. En su burbuja, la máquina virtual
no puede acceder al resto de datos de la máquina anfitrión a pesar de estar físicamente funcionando en
la misma, están aisladas. No obstante, las principales aplicaciones de máquinas virtuales como VirtualBox
o VMWare disponen de atajos y herramientas para facilitar la tarea de pasar archivos de una máquina a
otra.
Para funcionar, una máquina virtual mapea los dispositivos virtuales que ofrece a su invitado con los
dispositivos reales presentes en la máquina física. Por ejemplo, la máquina puede estar emulando una
tarjeta de sonido Sound Blaster de 16 bit, aunque en verdad está conectada con la tarjeta de sonido
interna de la placa base de tu PC portátil que es Realtek.
La virtualización puede ser por software o con apoyo mediante el hardware, en cuyo caso se obtiene un
mejor rendimiento.
2.4. Modelo Cliente/Servidor
Un método habitual de organizar el software que se desea ejecutar en sistemas distribuidos consiste en
separar las funciones en dos partes: clientes y servidores. Un cliente es un programa que utiliza los
servicios que proporcionan otros programas. Los programas que proporcionan los servicios se llaman
servidores. El cliente realiza una petición de un servicio, y un servidor lleva a cabo ese servicio. Las
funciones de servidor a menudo requieren alguna gestión de recursos, en que un servidor sincroniza y
gestiona el acceso al recurso, y responde a las peticiones de cliente con datos o información de estado.
Los programas de cliente normalmente manejan las interacciones del usuario y con frecuencia solicitan
datos o inician alguna modificación de datos en nombre de un usuario.
Por ejemplo, un cliente puede facilitar un formulario en que el usuario (una persona que trabaja
en un terminal de entrada de datos, por ejemplo) puede especificar pedidos de un producto. El
cliente envía esta información de pedido al servidor, que comprueba la base de datos del
producto y realiza las tareas necesarias para la facturación y el envío. Por lo general, varios clientes
pueden utilizar un mismo servidor. Por ejemplo, decenas o cientos de clientes pueden interactuar
con unos cuantos servidores que controlan el acceso a las bases de datos.
El cliente no necesita tener ninguna información sobre el gestor de recursos. Si se cambia la base
de datos de uso, probablemente deberá modificarse el servidor, pero no el cliente. Como
normalmente existen menos copias del servidor que del cliente, y habida cuenta de que los
servidores a menudo están en ubicaciones más sencillas de actualizar (por ejemplo, en máquinas
centrales en lugar de en PC que se ejecutan en los escritorios de los usuarios), el procedimiento
de actualización también se simplifica. Además, este método aporta una mayor seguridad. Solo
los servidores, no los clientes, tienen que acceder a los datos que controla el gestor de recursos.
Los clientes también pueden acceder a varios servidores, y los propios servidores pueden actuar
como clientes de otros servidores. La manera exacta de distribuir las funciones entre los
servidores es una decisión relacionada con el diseño de las aplicaciones. Por ejemplo, un servidor
puede proporcionar todos los servicios que un cliente necesita, o el cliente puede acceder a varios
servidores para realizar distintas peticiones.
En informática, el núcleo (también conocido en español con el anglicismo kernel, de raíces germánicas
como Kern) es la parte fundamental de un sistema operativo. Es el software responsable de facilitar a los
distintos programas acceso seguro al hardware de la computadora o en forma más básica, es el encargado
de gestionar recursos, a través de servicios de llamada al sistema.
Como hay muchos programas y el acceso al hardware es limitado, el núcleo también se encarga de decidir
qué programa podrá hacer uso de un dispositivo de hardware y durante cuánto tiempo, lo que se conoce
como multiplexado. En el siguiente gráfico se muestra el esquema de relaciones por capas del
computador.