Introducción a Sistemas Operativos
Introducción a Sistemas Operativos
Introducción a la Operación
Sistema
2
Una definición más común es que el sistema operativo es
el único programa que se ejecuta en todo momento en la computadora
(usualmente llamado el núcleo), con todo lo demás siendo aplicación
programas.
3
Objetivo del SO:
Los objetivos del sistema operativo son −
▪ Proporcionar a los usuarios una interfaz conveniente para utilizar el sistema informático.
▪ Actuar como intermediario entre el hardware y sus usuarios, facilitando a los usuarios la ...
acceder y utilizar otros recursos.
▪ To keep track of who is using which resource, granting resource requests, and mediating
solicitudes en conflicto de diferentes programas y usuarios.
▪ To provide efficient and fair sharing of resources among users and programs.
4
Función del sistema operativo:
El sistema operativo realiza las siguientes funciones básicas:
[Link]: Un sistema operativo hace que una computadora sea más conveniente de usar.
[Link]: Un sistema operativo permite que los recursos del sistema informático se utilicen de manera eficiente.
7. Capacidad de Evolucion: Un sistema operativo debe ser construido de tal manera que permita la efectividad
desarrollo, pruebas e introducción de nuevas funciones del sistema al mismo tiempo sin
interfiriendo con el servicio.
8. Rendimiento: Un sistema operativo debe ser construido de manera que pueda proporcionar el máximo rendimiento (Número
✔ Gestión de recursos: Cuando ocurre el acceso paralelo en el sistema operativo significa cuando
Múltiples usuarios están accediendo al sistema, el sistema operativo funciona como Gestor de Recursos, su
la responsabilidad es proporcionar hardware al usuario. Disminuye la carga en el
[Link] como la unidad central de procesamiento (CPU), computadora
memoria, almacenamiento de archivos, dispositivos de entrada/salida (E/S) y red
connections]
✔ Gestión de Procesos: Incluye diversas tareas como la programación, la terminación de
el proceso. El sistema operativo gestiona varias tareas al mismo tiempo. Aquí ocurre la programación de CPU.
significa que todas las tareas serían realizadas por los muchos algoritmos que se utilizan para
programación.
✔ Gestión de Almacenamiento: El mecanismo del sistema de archivos utilizado para la gestión de
el almacenamiento. Sistema de Archivos de Clúster (CFS), Sistema Común de Archivos de Internet (CIFS)
El Sistema de Archivos de Red (NFS), etc. son algunos sistemas de archivos. Todos los datos se almacenan en
varias pistas de discos duros que son gestionadas por el administrador de almacenamiento.
6
✔ Gestión de Memoria:Se refiere a la gestión de la primaria
memoria. El sistema operativo tiene que llevar un registro de cuánta memoria
ha sido utilizado y por quién. Tiene que decidir qué proceso necesita
espacio de memoria y cuánto. El sistema operativo también tiene que asignar y desasignar
el espacio de memoria.
7
Los tipos de sistemas operativos son:
8
Sistema Operativo por Lotes
9
El sistema operativo no interactúa directamente con la computadora.
Hay un operador que toma trabajos similares con los mismos requisitos.
y agruparlos en lotes.
Es responsabilidad del operador clasificar trabajos con necesidades similares.
Varios usuarios pueden compartir los sistemas por lotes.
El tiempo inactivo para el sistema por lotes es muy bajo.
Es fácil gestionar grandes trabajos de manera repetida en sistemas por lotes.
10
Sistema operativo de multiprogramación
11
Sistema operativo de multiprogramación - La memoria principal consiste en trabajos que esperan por
Tiempo de CPU. El sistema operativo selecciona uno de los procesos y lo asigna a la CPU.
Siempre que el proceso en ejecución necesite esperar por cualquier otra operación
(como I/O), el sistema operativo selecciona otro proceso de la cola de trabajos y lo asigna
12
Sistemas operativos de multitarea/Sistemas operativos de tiempo compartido:
El sistema operativo de tiempo compartido, también conocido como un sistema operativo de multitarea, trabaja
al asignar tiempo a una tarea en particular y alternar entre tareas
frecuentemente. A diferencia del sistema por lotes, el sistema de tiempo compartido permite a los usuarios
13
Las ventajas de los sistemas operativos de tiempo compartido incluyen:
14
Sistema Operativo Distribuido
Video de referencia:
15
[Link]
• Varios ordenadores autónomos interconectados se comunican con
cada uno usando una red de comunicación compartida.
Los sistemas independientes poseen su propia unidad de memoria y CPU.
• Los procesadores de estos sistemas difieren en tamaño y función. El principal
el beneficio de trabajar con estos tipos de sistemas operativos es que
siempre es posible que un usuario pueda acceder a los archivos o software
que no están realmente presentes en su sistema sino en otro sistema
conectado dentro de esta red es decir, el acceso remoto está habilitado dentro de
los dispositivos conectados en esa red.
16
Ventajas de los sistemas operativos distribuidos:
•La falla de uno no afectará la comunicación de la otra red, ya que todos los sistemas están
independientes entre sí
Dado que los recursos se están compartiendo, la computación es muy rápida y duradera.
La carga en el ordenador host se reduce.
•Estos sistemas son fácilmente escalables, ya que muchos sistemas se pueden agregar fácilmente a la red.
17
Desventajas del Sistema Operativo Distribuido:
Estos tipos de sistemas no están fácilmente disponibles ya que son muy caros.
No solo el software subyacente es altamente complejo
18
Sistema Operativo en Tiempo Real
•Es un sistema operativo diseñado especialmente para ejecutar aplicaciones con un cronometraje muy preciso y alto
grado de fiabilidad
Estos tipos de sistemas operativos sirven sistemas en tiempo real. El intervalo de tiempo necesario para procesar
y responder a las entradas es muy pequeño. Este intervalo de tiempo se llama tiempo de respuesta.
Los sistemas en tiempo real se utilizan cuando hay requisitos de tiempo que son muy
estricto como sistemas de misiles, sistemas de control de tráfico aéreo, robots, etc.
Dos tipos de sistemas operativos en tiempo real que son los siguientes:
•Sistema de Tiempo Real Estricto: Estos sistemas operativos están destinados a aplicaciones donde el tiempo
las restricciones son muy rigurosas y incluso el más breve retraso posible no es aceptable.
Estos sistemas están diseñados para salvar vidas, como paracaídas automáticos o airbags que
se requiere que estén disponibles de inmediato en caso de cualquier accidente.
• Sistemas de Tiempo Real Suave: Estos sistemas operativos son para aplicaciones donde
la restricción de tiempo es menos estricta.
19
Ejemplos de sistema operativo
20
Ventajas de RTOS:
• Consumo Máximo: Utilización máxima de dispositivos
y sistema, por lo tanto más salida de todos los recursos
• Transferencia de Tareas: El tiempo asignado para transferir tareas en estos
los sistemas son muy escasos. Por ejemplo, en los sistemas más antiguos, se
toma alrededor de 10 microsegundos en cambiar de una tarea a otra,
y en los sistemas más recientes, toma 3 microsegundos.
• Enfóquese en la Aplicación: Enfóquese en las aplicaciones en ejecución y
menor importancia a las aplicaciones que están en la cola.
• Sistema operativo en tiempo real en el embebido
Dado que el tamaño de los programas es pequeño, RTOS puede
también se puede utilizar en sistemas embebidos como en el transporte y
otros.
• Sin errores: Estos tipos de sistemas son libres de errores.
• Asignación de memoria: La asignación de memoria se gestiona mejor en
estos tipos de sistemas.
21
Desventajas de los RTOS:
•Tareas Limitadas: Muy pocas tareas se ejecutan al mismo tiempo y su concentración
es muy poco en algunas aplicaciones para evitar errores.
•Utilizar recursos del sistema pesados: A veces los recursos del sistema no son tan
22
Sistema Operativo de Red
23
•Estos sistemas funcionan en un servidor y proporcionan la capacidad de gestionar datos,
sistemas
Desventajas del Sistema Operativo de Red:
•Los servidores son costosos
El usuario tiene que depender de una ubicación central para la mayoría de las operaciones
25
Evolución del funcionamiento (autoestudio)
Sistema:[Link]
m/
26
Llamadas al sistema
•En informática, una llamada al sistema es la forma programática en la que un programa de computadora
solicita un servicio del núcleo del sistema operativo en el que se está ejecutando.
Una llamada al sistema es una forma de que los programas interactúen con el sistema operativo.
Un programa de computadora realiza una llamada al sistema cuando hace una solicitud al sistema operativo.
núcleo del sistema. La llamada del sistema proporciona los servicios del sistema operativo al usuario
•Proporciona una interfaz entre un proceso y el sistema operativo para permitir un nivel de usuario
27
Servicios proporcionados por llamadas al sistema:
[Link] creation and management
2. Gestión de la memoria principal
[Link] a archivos, gestión de directorios y sistemas de archivos
4. Manejo de dispositivos (E/S)
5. Protección
[Link], etc.
28
Ejemplos de llamadas al sistema de Windows y Unix - Unix
Llamadas al sistema Ventanas
CrearProceso() fork()
Proceso
SalirProceso() salir()
Control
EsperarPorObjetoÚnico() esperar()
CrearArchivo() abrir()
Archivo LeerArchivo() leer()
Manipulación EscribirArchivo() escribir()
CerrarManejador() cerrar()
EstablecerModoConsola() ioctl()
Dispositivo
LeerConsola() leer()
Manipulación
EscribirConsola() escribir()
ObtenerIDDelProcesoActual() getpid()
Información
SetTimer() alarma()
Mantenimiento
Dormir() dormir()
CrearTubería() tubería()
Comunicati
CrearArchivoMapa() shmget()
en
MapViewOfFile() mmap()
EstablecerSeguridadArchivo() chmod()
Protección InitlializeSecurityDescriptor() umask()
EstablecerGrupoDescriptorSeguridad() chown()
29
Estructura del sistema operativo
❑ Un sistema operativo permite que los programas de aplicación del usuario interactúen con el
hardware del sistema. Dado que el sistema operativo es una estructura tan compleja,
debe ser creado con el mayor cuidado para que pueda ser usado y modificado fácilmente.
30
Estructura Simple
Es la estructura de MS-DOS
Las interfaces y los niveles de funcionalidad no están bien
separado.
•Todos los programas de aplicación tienen acceso directo a la BIOS.
sistema operativo.
Ventajas de la estructura simple:
• Ofrece un mejor rendimiento de la aplicación debido a que el
pocas interfaces entre el programa de aplicación y el
hardware.
• Fácil para los desarrolladores de kernel desarrollar un sistema operativo así.
sistema.
32
Características del Sistema Monolítico
El sistema operativo monolítico proporciona las siguientes características a los usuarios, tales como:
Estructura simple: Este tipo de sistema operativo tiene una estructura simple. Todos los componentes
los necesarios para el procesamiento están incrustados en el núcleo.
Funciona mejor para realizar tareas más pequeñas, ya que puede manejar lo limitado
recursos.
Communication between components:All the components can directly communicate with
el uno al otro y también con el núcleo.
Sistema operativo rápido: El código para hacer un núcleo monolítico es muy rápido y robusto.
Limitación:
Añadir y eliminar funciones de un sistema operativo monolítico es muy difícil. Todo el código necesita ser
reescrito y recompilado para añadir o eliminar cualquier característica.
33
Estructura en capas
¿Por qué la estratificación en el sistema operativo?
34
Los detalles sobre las seis capas son:
Hardware
Esta capa interactúa con el hardware del sistema y coordina con todos los periféricos
dispositivos utilizados como impresora, ratón, teclado, escáner, etc. La capa de hardware es la
capa más baja en la arquitectura de sistema operativo en capas.
Programación de CPU
Esta capa se encarga de programar los procesos para la CPU. Hay muchas programación
colas que se utilizan para manejar procesos. Cuando los procesos ingresan al sistema, ellos
se colocan en la cola de trabajo. Los procesos que están listos para ejecutarse en el principal
la memoria se mantiene en la cola de listos.
35
Gestión de Memoria
La gestión de memoria se ocupa de la memoria y del movimiento de procesos desde el disco.
a la memoria primaria para ejecución y de vuelta. Esto es manejado por la tercera capa
del sistema operativo.
Gestión de Procesos
Esta capa es responsable de gestionar los procesos, es decir, asignar el procesador a un
proceso a la vez. Esto se conoce como programación de procesos. Los diferentes algoritmos
se utilizan para la programación de procesos son FCFS (primero en llegar, primero en ser atendido), SJF (trabajo más corto)
Los dispositivos de entrada/salida son muy importantes en los sistemas informáticos. Proporcionan a los usuarios con
los medios de interactuar con el sistema. Esta capa maneja los búferes para la E/S
dispositivos y se asegura de que funcionen correctamente.
36
Programas de usuario
Esta es la capa más alta en el sistema operativo en capas. Esta capa se ocupa de la
muchos programas y aplicaciones de usuario que se ejecutan en un sistema operativo como
procesadores de texto, juegos, navegadores, etc.
37
Microkernel
38
Question:-Difference between Microkernel and monolithic operating system
39