Sistemas Operativos 1
TEMAS Y SUBTEMAS
1. Introducción.
1.1. Definición.
1.2. Generaciones de Sistemas Operativos.
1.3. Hardware, Firmware y software.
1.4. Evolución de la programación concurrente,
1.5. Estructura de los sistemas operativos.
2. Procesos.
2.1. Introducción
2.2. Definición y estado de un proceso.
2.3. Bloque de control de un proceso (PCB) y operaciones sobre procesos.
2.4. Creación jerárquica y no jerárquica.
2.5. Procesamiento de interrupciones y tipos de interrupciones.
2.6. Funciones del núcleo (kernel).
2.7. Des habilitación y habilitación de interrupciones,
2.8. Estructura jerárquica de un sistema operativo.
2.9. Migración del núcleo a micro código.
3. Algoritmos de Administración de Procesadores.
3.1 Objetivos de la asignación de procesadores.
3.2. Criterios de la asignación de CPU.
3.3. Manejo del quantum
3.4. Prioridad.
3.5. Tipos de asignación del CPU
4. Administración de la Memoria.
4.1. Administración del almacenamiento.
4,2. Jerarquía del almacenamiento
4.3. Estrategias de administración de almacenamiento.
4.4. Sistema tipo Batch.
4.5. Tipos de multiprogramación.
4.6. Tipos de estrategia de almacenamiento.
Sistema Operativo
Es un software que proporciona un acceso sencillo y seguro al soporte físico del ordenador (hardware), oculta al usuario detalles de la implementación particular, y creando la ilusión de existencia de recursos ilimitados.
Los sistemas operativos proveen un conjunto de instrucciones necesarias y usadas por diversos programas de aplicaciones de una computadora para:
· Controlar
· Sincronizar
· Organizar
Evolución e Historia de los Sistemas Operativos
Generaciones de Computadoras
1940
Se accedía directamente a la consola de la computadora desde la cual se actuaba sobre una serie de micro interruptores que permitían introducir directamente programas a la computadora.
Existían sistemas operativos que interactuaban con la computadora pero el peso era demasiado que casi no se instalaban .
1950
Los sistemas operativos hacen una aparición discreta y bastante simple pues ya empezaban a no estar tan pesados para la computadora y se ocupaban conceptos tales como:
1. Monitor residente. Su funcionamiento era bastante simple se limitaba a cargar los programas a la memoria leyéndolos de una cinta o de tarjetas perforadas.
2. Procesamiento por lotes. Como solución para optimizar una misma cinta o conjunto de tarjetas perforadas.
3. Almacenamiento Temporal. Disminuir el tiempo de la carga de programas haciéndolo simultáneamente a la salida de datos.
1960
1. Multiprogramación. Sistema multiprogramado a la memoria principal que alberga a más de un programa de usuario.
2. Tiempo Compartido. Interactividad , multiusuario tiempo compartido multiprogramación
3. Tiempo Real. Se usan en entornos donde se deben aceptar y procesar tiempos en torno a la información.
4. Multiprocesador. Diseño que no se encuentran en ordenadores monoprocesador (ejecutan simultáneamente una interfaz).
1980
Ø Creación de los microcircuitos, chips que contenían miles de transistores a través de ordenadores.
Ø Interfaces Gráficos.
Ø Lenguajes ya existentes como C++…, MS-DOS.
Ø Microprocesadores tipo Intel 8088,68000
Ø Unix
1990
GNU/Linux. Se caracterizan por el hecho de que la navegación a través de la Web es sin riesgos de ser afectados por virus, esto debido a los permisos implementados.
ReactOS. Sistema operativo de código abierto destinado a lograr la compatibilidad con otras aplicaciones de Software
Generaciones de Sistemas Operativos
GENERACION
|
EPOCA
|
Generación CERO
|
1940
|
Generación UNO
|
1950
|
Generación DOS
|
1960
|
Generación TRES
|
1960 y 1970
|
Generación CUATRO
|
1980
|
Generación CINCO
|
1990-Actual
|
ENSAMBLADOR èLenguaje de programación de bajo nivel para las computadoras.
· Microprocesador
· Micro controlador
· Circuitos Integrados
· Arquitectura CPU
Firmware
El firmware es un bloque de instrucciones de máquina para propósitos específicos, grabado en una memoria, normalmente de lectura/escritura (ROM, EEPROM, flash, etc.), que establece la lógica de más bajo nivel que controla los circuitos electrónicos de un dispositivo de cualquier tipo. Está fuertemente integrado con la electrónica del dispositivo siendo el software que tiene directa interacción con el hardware: es el encargado de controlarlo para ejecutar correctamente las instrucciones externas.
ORGWARE
Es el componente estructural de un sistema tecnológico especialmente concebido para integrar al hombre y sus competencias profesionales y asegurar el funcionamiento del hardware y software del sistema así como la interacción de éste con otros elementos y con otros sistemas de naturaleza diferente.
Las siguientes tres características son fundamentales:
1. Un conjunto de partes.- Un sistema tiene más de un elemento. Un volante no es un sistema, pero es una parte vital de un sistema muy conocido que se llama automóvil
2. Partes integradas.- Debe existir una relación lógica entre las partes de un sistema. Los sistemas mecánicos y electrónicos.
3. El propósito de lograr algún objetivo común. El sistema se diseña para alcanzar uno o más objetivos. Todos los elementos del sistema deben estar ligados y controlados de manera que se logre el objetivo del sistema.
Clasificación del software
Software de sistema: Su objetivo es desvincular adecuadamente al usuario y al programador de los detalles del sistema informático en particular que se use, aislándolo especialmente del procesamiento referido a las características internas de: memoria, discos, puertos y dispositivos de comunicaciones, impresoras, pantallas, teclados, etc. El software de sistema le procura al usuario y programador adecuadas interfaces de alto nivel, controladores, herramientas y utilidades de apoyo que permiten el mantenimiento del sistema global.
Incluye entre otros:
· Sistemas operativos
· Controladores de dispositivos
· Herramientas de diagnóstico
· Herramientas de Corrección y Optimización
· Servidores
· Utilidades
Software de programación: Es el conjunto de herramientas que permiten al programador desarrollar programas informáticos, usando diferentes alternativas y lenguajes de programación, de una manera práctica.
Incluyen básicamente:
· Editores de texto
· Compiladores
· Intérpretes
· Enlazadores
· Depuradores
Entornos de Desarrollo Integrados (IDE): Agrupan las anteriores herramientas, usualmente en un entorno visual, de forma tal que el programador no necesite introducir múltiples comandos para compilar, interpretar, depurar, etc. Habitualmente cuentan con una avanzada interfaz gráfica de usuario (GUI).
Software de aplicación: Es aquel que permite a los usuarios llevar a cabo una o varias tareas específicas, en cualquier campo de actividad susceptible de ser automatizado o asistido, con especial énfasis en los negocios.
Incluye entre muchos otros:
· Aplicaciones para Control de sistemas y automatización industrial
· Aplicaciones ofimáticas
· Software educativo
· Software empresarial
· Bases de datos
· Telecomunicaciones (por ejemplo Internet y toda su estructura lógica)
· Videojuegos
· Software médico
· Software de cálculo numérico y simbólico.
· Software de diseño asistido (CAD)
· Software de control numérico (CAM)
Enfoque Jerárquico de un Sistema Operativo
KERNEL
El núcleo o kernel (de la raíz germánica Kern, núcleo, hueso) es un software que constituye una parte fundamental del sistema operativo. Es el principal responsable de facilitar a los distintos programas acceso seguro al hardware de la computadora o en forma 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, 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. Acceder al hardware directamente puede ser realmente complejo, por lo que los núcleos suelen implementar una serie de abstracciones del hardware. Esto permite esconder la complejidad, y proporciona una interfaz limpia y uniforme al hardware subyacente, lo que facilita su uso al programador.
Generalidades
En informática, los ordenadores son el núcleo del programa informático que se asegura de:
· La comunicación entre los programas que solicitan recursos y el hardware.
· Gestión de los distintos programas informáticos (tareas) de una máquina.
· Gestión del hardware (memoria, procesador, periférico, forma de almacenamiento, etc.)
La mayoría de las interfaces de usuario se construyen en torno al concepto de núcleo. La existencia de un núcleo, es decir, de un único programa responsable de la comunicación entre el hardware y el programa informático, resulta de compromisos complejos referentes a cuestiones de resultados, seguridad y arquitectura de los procesadores. El núcleo tiene grandes poderes sobre la utilización de los recursos materiales (hardware), en particular, de la memoria.
Tipos de núcleos de sistema operativo
Hay cuatro grandes tipos de núcleos:
1. Los núcleos monolíticos facilitan abstracciones del hardware subyacente realmente potentes y variadas.
2. Los micronúcleos (en inglés microkernel) proporcionan un pequeño conjunto de abstracciones simples del hardware, y usan las aplicaciones llamadas servidores para ofrecer mayor funcionalidad.
3. Los núcleos híbridos (micronúcleos modificados) son muy parecidos a los micronúcleos puros, excepto porque incluyen código adicional en el espacio de núcleo para que se ejecute más rápidamente.
4. Los exonúcleos no facilitan ninguna abstracción, pero permiten el uso de bibliotecas que proporcionan mayor funcionalidad gracias al acceso directo o casi directo al hardware.
No hay comentarios:
Publicar un comentario