lunes, 2 de marzo de 2020

Introducción a la materia Sistemas Operativos


Materia: Sistemas Operativos

Profesores:
Mg. Bibiana Anselmo  -  bibiana.anselmo.usal@gmail.com
Ing. Alejandro Rodriguez  -  alejandro.rodriguez@usal.edu.ar


Modalidad de la materia

2 parciales / 2 recuperatorios
No es promocionable


La materia consta de una parte teórica y de una practica, la practica va a ser sobre linux (distribución debian).

¿Que es un sistema operativo?
Un sistema operativo es un programa que controla la ejecución de los aplicativos/procesos y funciona como interfaz entre el software y el hardware.

* Objetivos de un Sistema Operativo:

  • Conveniencia.
  • Eficiente: Que permita realizar un uso eficiente de los recursos.
  • Facilidad en el desarrollo y la evolución.


* Interfaz: Enmascarar la complejidad del hardware.

* Servicios:

  • Desarrollo -> facilita herramientas para el desarrollo.
  • Ejecución de programas (procesos).
  • Accesos a dispositivos In/Out.
  • Accesos controlados a archivos.
  • Accesos al sistemas.
  • Detección de errores y respuestas.
  • Contabilidad (administración del uso de recursos).

* Principales interfaces 
  • ISA -> Instrucciones relacionadas con la arquitectura (el hard). Accedida por aplicaciones y utilitarios.
  • ABI -> Interfaz binaria, relacionada a la portabilidad, accedida por los sistem call.
  • API -> Conjunto de funciones utilizadas por las aplicaciones.


* Software: Es igual a todos los programas excepto que delega frecuentemente el control y depende del procesador para recuperarlo.


* Evolución histórica:

  • Procesamiento serial. El programador decidía que se procesaba. 
  • Batch simple. (por lotes) basado el uso de un programa monitor que reducía los tiempos de configuración y de ejecución. El programador al final de la ejecución del programa debía llamar al monitor.
  • Evolución de hardware: protección de memoria, creación del temporizador, se implementaron las interrupciones y las instrucciones privilegiadas.  
  • Batch Multiprogramado: Va metiendo los programas uno detrás de otro a medida que se desocupa el procesador en vez de esperar a que terminen los procesos totales. Esto mejoraba los tiempos de ejecución.
  • Tiempo compartido: Múltiples usuarios con múltiples procesos. (Hoy casi todos los sistemas operativos del mercado).
  • Virtual Machine: Software que distribuye recursos entre varios sistemas operativos corriendo cada uno en una maquina virtual.




Nota: Diferencia entre multiprogramado y multiprocesamiento:
Multiprogramado me da la sensación de que tengo varios procesos ejecutando al mismo tiempo en un solo procesador.
Multiprocesado es cuando tengo varios procesadores y cada uno procesa independientemente.
Multicore son múltiples núcleos que procesan pedazos mas chicos del proceso.

No hay comentarios.:

Publicar un comentario

Listado de cases de Bases de datos y sus temas

 Listado de clases de Sistemas de Bases de Datos Clase Clases de 02/04 Clase Clase Temas: Claves foráneas. Clase Clas...