Evolución, Procesos y Gestión de Recursos en Sistemas Operativos
Enviado por Chuletator online y clasificado en Informática y Telecomunicaciones
Escrito el en español con un tamaño de 4,46 KB
Evolución Histórica de los Sistemas Operativos
Primera Generación (1945-1955): Válvulas de Vacío
Se utilizaban válvulas de vacío. Estas máquinas, que no eran ordenadores en el sentido moderno, se programaban en lenguaje máquina puro.
Segunda Generación (1955-1965): Transistores
Aparición de los transistores, que se introducen en la arquitectura de las computadoras. Desaparecen las válvulas de vacío; las computadoras son más baratas, desprenden menos calor, etc.
Tercera Generación (1965-1980): Circuitos Integrados
Aparición de los circuitos integrados. Se reduce considerablemente el tamaño y el consumo de energía de los ordenadores. En esta generación podemos destacar el IBM 360 como máquina capaz de procesar cualquier tipo de cálculo.
Cuarta Generación (1980-hasta hoy): Computadoras Personales
Aparición de las computadoras personales. Se utilizan complejas técnicas de integración y miniaturización de componentes electrónicos.
Procesos en los Sistemas Operativos
Definición de Proceso
Un proceso, o tarea, se puede definir como un programa en ejecución. Los procesos tienen las siguientes características:
- Un proceso, para empezar su ejecución, ha de residir completamente en memoria y tener asignados todos los recursos que necesite.
- Cada proceso está protegido del resto de procesos; ningún otro podrá escribir en las zonas de memoria pertenecientes a ese proceso.
- Los procesos pueden pertenecer al usuario o ser propios del Sistema Operativo.
- Cada proceso tendrá una estructura de datos llamada "Bloque de Control de Proceso" (BCP).
- Los procesos podrán comunicarse, sincronizarse y colaborar entre sí.
Procesos y Flujos (Hilos o Tareas)
Un proceso es un concepto manejado por el sistema operativo y que referencia a un programa en ejecución. A un proceso, dependiendo del sistema operativo utilizado, se le denomina flujos de control, tareas o hilos, según el contexto.
Cuando se ejecuta más de un proceso de forma concurrente, todos necesitan que el propio sistema les suministre una serie de recursos.
Cada vez que un programa se convierte en proceso, se le asocia una estructura de datos.
Hebras y Estados de los Procesos
Hebras (Threads)
Una hebra es un punto de ejecución de un proceso. Un proceso tendrá siempre una hebra, en la que corre el propio programa, pero puede tener más hebras.
Las hebras representan un método software para mejorar el rendimiento y la eficacia de los sistemas operativos. Las hebras de un mismo proceso compartirán recursos, como memoria, archivos y recursos hardware, etc.
Estados de un Proceso
- En ejecución: El procesador está ejecutando instrucciones del programa.
- Preparado, en espera o activo: Un proceso está preparado para ser ejecutado.
- Bloqueado: El proceso está retenido.
Swapping
El swapping es una técnica similar a la de memoria virtual. Cuando varios usuarios están ejecutando procesos en un mismo ordenador, este se ve obligado a cargarlos en la memoria RAM. Según el estado en el que se encuentre el proceso de cada usuario, la memoria se irá liberando de su proceso y pasará a la zona de swap mediante la técnica llamada swap-out. Si el usuario vuelve a solicitar su proceso para seguir ejecutándolo, se produce el denominado swap-in, que consiste en pasar el programa de la zona de swap a la memoria.
Particiones de Disco
- Partición Primaria: Es el espacio de disco imprescindible para poder empezar a utilizar el espacio de almacenamiento. Solo pueden haber tres de estas y no en todos los sistemas operativos. Cada partición tiene su propia FAT. En este tipo de particiones es donde se suele instalar el sistema operativo.
- Partición Extendida: Es otro tipo de partición que actúa como una partición primaria sin serlo. Se utiliza para contener infinidad de unidades o particiones lógicas en su interior.
- Unidad o Partición Lógica: Ocupa un trozo de partición extendida o la totalidad de la misma, la cual se ha formateado con un tipo de sistema de archivos.