Académique Documents
Professionnel Documents
Culture Documents
Generación Cero
No existe el concepto de SO, los programas son introducidos manualmente por medio de switch.
El proceso toma el control de todos los recursos del equipo de cómputo.
Generación Uno
Tarjetas perforadas
Primera versión de SO. Controlador de dispositivos. Se le conoce como Monitor residente.
Concepto de archivo
Generación dos
Lenguajes Ensamblador y fortran
Primer SO, Tal cual lo conocemos.
Procesamiento en Lotes (batch)
Multiprogramación
Concepto de ingeniería de software
Generación tres
Concepto de memoria virtual
Concepto de spool
Concepto de tiempo compartido y tiempo real
Concepto de multiprocesamiento
Lenguajes C, Pascal, Prolog.
Generación cuatro
Independencia de dispositivos
Sistema operativos distribuidos
Sistemas operativos en tiempo real
Computadoras personales PC
Redes
Concepto de seguridad
SO’s con interfaz gráfica
Concepto de maquina virtual
Concepto de sistemas operativos abiertos
Concepto de procesamiento en paralelo
Generación cinco
Internet
Generación seis
SO´s móviles
Concepto de servidores virtuales
POO
SO´s multiplataforma
Concepto de máquina virtual y lenguajes. Desacuerdo ante las 6 generaciones. Aprueban 3 o 4. Dan más
importancia a identificar avances tecnológicos y tendencias.
Otro enfoque de la generación de los sistemas operativos.
Han estado siempre ligados a la arquitectura de los ordenadores.
Primera generación (1945-1955). Órdenes y datos a las máquinas se realizaba directamente, sin software.
Segunda generación (1955-1965). Sistemas de procesamiento por lotes. Aparece el concepto de archivo. El primer
sistema operativo es el fabricado para la máquina IBM 701.
Tercera generación (1965-1980). Destaca el sistema 360 de IBM, instalado en grandes máquinas llamadas
mainframes. Conceptos de multiprogramación, tiempo compartido y multiprocesador. Aparece UNIX.
Sistemas monousuario y sistemas multiusuario. Un usuario: MS-DOS, DR-DOS, e IBM.DOS. Multiusuario: UNIX,
Linux, Novell NetWare, Windows 2000, Windows XP, Vista, Mac OS y otros.
Sistemas monotarea y sistemas multitarea. Solo un programa ocupa el tiempo de respuesta del microprocesador.
Sistemas monoproceso y sistemas multiproceso. Capaz de manejar un solo procesador de la computadora. Los
sistemas multiproceso trabajan con más de un procesador distribuyendo la carga de trabajo.
Sistemas de red y sistemas monopuesto. Diseñado para un servidor de red. Autentifica usuarios en la red,
alojamiento de archivos y programas compartidos.
Sistemas de software libre y sistemas de software propietario. En el software libre permiten su libre distribución
e instalación. Pero, el software propietario no puede modificarse ni distribuirse gratis.
Sistemas de 16, 32 o 64 bits. SO’s diseñados para trabajar en microprocesadores de 16, 32 o 64 bits.
Analogía Tanenbaum:
"Un científico computacional con mente culinaria hornea un pastel de cumpleaños para su hija; tiene la receta para
un pastel de cumpleaños y una cocina bien equipada con todos los ingredientes necesarios, harina, huevo, azúcar,
leche, etcétera."
La receta representa el programa (el algoritmo), el científico computacional es el procesador y los ingredientes son
las entradas del programa. El proceso es la actividad que consiste en que el científico computacional vaya leyendo
la receta, obteniendo los ingredientes y horneando el pastel. Cada proceso tiene su contador de programa, registros
y variables, aislados de otros procesos, incluso siendo el mismo programa en ejecución 2 veces. Cuándo este último
caso sucede, el sistema operativo usa la misma región de memoria de código, debido a que dicho código no
cambiará, a menos que se ejecute una versión distinta del programa.
1.6.2 SEMAFOROS
Variable especial protegida que restringe el acceso a recursos compartidos en un entorno de multiprocesamiento.
Operaciones
Los semáforos sólo pueden ser manipulados usando las siguientes operaciones
Ejemplo de uso
Los semáforos pueden ser usados para diferentes propósitos, entre ellos:
• Implementar cierres de exclusión mutua o locks
• Barreras
• Permitir a un máximo de N threads acceder a un recurso, inicializando el semáforo en N
• Notificación. Inicializando el semáforo en 0 puede usarse para comunicación entre
threads sobre la disponibilidad de un recurso
1.6.4 MONITORES.
Sincronizan dos o más procesos o hilos de ejecución que usan recursos compartidos.
Componentes
1) inicialización, 2) datos privados, 3) procedimientos del monitor y 4) cola de entrada:
1.6.5 INTERBLOQUEO
Un deathlock es un proceso que obtiene un semáforo, otro proceso obtiene el semáforo y ambos se quedan a la
espera de que el otro proceso libere el semáforo.
1.7.2 MULTIPROCESO
¿Qué es un sistema multiprocesador?
Se trata de una máquina que posea más de un procesador central. A estas computadoras se les llama Multi-core.
Es implementación de multitareas en hardware.
I.I MULTIPROCESO
Uso de múltiples procesos concurrentes en un sistema en lugar de un único proceso en un instante determinado.
Jerarquía de Almacenamiento
1.8.3 MULTIPROGRAMACIÓN
Multiprogramación de Partición Fija
Un trabajo en espera de e / s cederá la cpu a otro trabajo que esté listo para efectuar cómputos.
Existe paralelismo entre el procesamiento y la e / s.
Se incrementa la utilización de la cpu y la capacidad global de ejecución del sistema.
Es necesario que varios trabajos residan a la vez en la memoria principal.
Los bloques.
No necesitan ser de igual tamaño.
Los bloques separados no necesitan ser adyacentes.
Deben estar compuestos deposiciones contiguas de almacenamiento.
Sin Embargo
Se complica la protección de bloques de memoria de un proceso de usuario.
Es más difícil limitar el rango de acceso de cualquier programa.
Modularidad de programas: cada rutina del programa puede ser un bloque sujeto a cambios y recopilaciones, sin
afectar por ello al resto del programa.
Estructuras de datos de largo variable: donde cada estructura tiene su propio tamaño y este puede variar. (Stack)
Protección: se puede proteger los módulos del segmento contra accesos no autorizados.
Compartición: dos o más procesos pueden ser un mismo segmento, bajo reglas de protección; aunque no sean
propietarios de los mismos.
Enlace dinámico entre segmentos: puede evitarse realizar todo el proceso de enlace antes de comenzar a
ejecutar un programa. Los enlaces se establecerán solo cuando sea necesario.
La eficiencia es importante porque las operaciones de entrada salida constituyen un cuello de botella en los sistemas
informáticos.
El segundo objetivo es la generalidad. En interés de la simplicidad y exención de errores, será deseable gestionar
todos los dispositivos de una manera uniforme.
Tiempo de acceso
El tiempo de acceso tiene dos componentes principales:
_ SEEK TIME es el tiempo que tarda el brazo del disco en mover las cabezas al cilindro que contiene el sector
deseado
_ El ANCHO DE BANDA del disco es el número total de bytes transferidos, dividido entre el tiempo total transcurrido
entre la primera solicitud de servicio y la finalización de la última transferencia.
Cada vez que un proceso necesita E/S de o al disco, emite una llamada al SO. La solicitud especifica varios elementos
de información:
_ Si esta operación es de entrada o de salida
_ La dirección en disco para la transferencia
_ La dirección en memoria para la transferencia
_ El número de bytes por transferir
Concepto de archivo.
Conjunto de propiedades de una unidad lógica de almacenamiento.
Atributos de archivos.
Nombre.
Identificador.
Tipo.
Ubicación.
Tamaño.
Protección: Información de control de acceso.
Fecha, hora e identificación del usuario.
Estructura de directorios.
Es como una tabla de símbolos que traduce los nombres de archivos a sus entradas de directorios.
1.10.4 EL MBR
Primer sector ("sector cero") de un dispositivo de almacenamiento de datos
GRUB.
Acrónimo del inglés GRand Unified Bootloader, se trata de un gestor de arranque múltiple que se usa comúnmente
para iniciar dos o más sistemas operativos albergados en un mismo ordenador o disco duro.