SISTEMA OPERATIVO
Es un programa o conjunto de programas
de un sistema informático que gestiona los recursos de hardware y provee
servicios a los programas de aplicación de software, ejecutándose en modo
privilegiado respecto de los restantes (aunque puede que parte de él se ejecute
en espacio de usuario)
Uno
de los propósitos del sistema operativo que gestiona el núcleo intermediario
consiste en gestionar los recursos de localización y protección de acceso del
hardware, hecho que alivia a los programadores de aplicaciones de tener que
tratar con estos detalles. La mayoría de aparatos electrónicos que utilizan
microprocesadores para funcionar, llevan incorporado un sistema operativo
(teléfonos móviles, reproductores de DVD, computadoras, radios, enrutadores,
etc.). En cuyo caso, son manejados mediante una interfaz gráfica de usuario, un
gestor de ventanas o un entorno de escritorio, si es un celular, mediante una
consola o control remoto si es un DVD y, mediante una línea de comandos o
navegador web si es un enrutador.
Funciones del Sistema Operativo.
1º
Control de la ejecución de programas: Acepta los trabajos y administra como se
realizan estos, y les asigna los recursos.
2º
Administración de periféricos: coordina y maneja los distintos dispositivos conectados
a la maquina.
3º
Gestión de permisos y usuarios: Adjudica permisos a los usuarios afín de evitar
conflictos entre los distintos trabajos.
4º
Control de concurrencia: Establece prioridades entre los distintos procesos que
desean utilizar el mismo recurso.
5º
Control de errores: Controla la posible perdida de información, así como los
problemas que pueda producir el hardware.
6º
Administración de memoria: Asigna y gestiona la memoria del sistema a los
distintos procesos.
7º
Control de seguridad: proporciona seguridad para la información almacenada y
para la seguridad de los usuarios del sistema.
Los
5 niveles teóricos den un Sistema Operativo
Solo
se pueden comunicar con los de arriba y abajo
Nivel
1 - Gestión del Procesador
En
este nivel se encuentra la parte del Sistema Operativo encargada de la gestión
de la CPU.
Nivel
2 - Gestión de Memoria
Nivel
encargado de repartir la memoria disponible entro los distintos procesos.
Nivel
3 - Gestión de Procesos
Este
nivel encargado de la creación y destrucción de procesos, intercambio,
detección y arranque de mensajes.
Nivel
4 - Gestión de Dispositivos
Realiza
la gestión de las entradas y salidas en función de los dispositivos existentes.
Nivel
5 - Gestión de la Información
Se
encarga de la gestión de los nombres lógicos y la protección de la información,
realizando funciones de creación y destrucción de ficheros, lectura, escritura
y protección de accesos.
BIOS Basic Input/Output System (BIOS) o sistema básico de
entrada/salida, en computadoras IBM PC compatibles, también conocido como
“System BIOS”, “ROM BIOS”1 o “PC BIOS”, es un estándar de facto que define la
interfaz de firmware.2 El nombre se originó en 1975, en el Basic Input/Output
System usado por el sistema operativo CP/M.3 4
El
software BIOS es instalado dentro de la computadora personal (PC), y es el
primer programa que se ejecuta cuando se enciende la computadora.
El
propósito fundamental del BIOS es iniciar y probar el hardware del sistema y
cargar un gestor de arranque o un sistema operativo desde un dispositivo de
almacenamiento de datos. Además, el BIOS provee una capa de abstracción para el
hardware, por ejemplo, que consiste en una vía para que los programas de
aplicaciones y los sistemas operativos interactúen con el teclado, el monitor y
otros dispositivos de entrada/salida. Las variaciones que ocurren en el
hardware del sistema quedan ocultos por el BIOS, ya que los programas usan
servicios de BIOS en lugar de acceder directamente al hardware. Los sistemas
operativos modernos ignoran la capa de abstracción provista por el BIOS y
acceden al hardware directamente.
CMOS El semiconductor complementario de óxido metálico o
complementary metal-oxide-semiconductor (CMOS) es una de las familias lógicas
empleadas en la fabricación de circuitos integrados. Su principal
característica consiste en la utilización conjunta de transistores de tipo pMOS
y tipo nMOS configurados de forma tal que, en estado de reposo, el consumo de
energía es únicamente el debido a las corrientes parásitas, colocado en la
placa base.
En
la actualidad, la mayoría de los circuitos integrados que se fabrican utilizan
la tecnología CMOS. Esto incluye microprocesadores, memorias, procesadores
digitales de señales y muchos otros tipos de circuitos integrados digitales
cuyo consumo es considerablemente bajo. Otra
de las características importantes de los circuitos CMOS es que son
“regenerativos”: una señal degradada que acometa una puerta lógica CMOS se verá
restaurada a su valor lógico inicial 0 ó 1, siempre y cuando aún esté dentro de
los márgenes de ruido que el circuito pueda tolerar.
La
tecnología CMOS mejora estos dos factores:
Elimina
la carga activa. La estructura complementaria hace que sólo se consuma
corriente en las transiciones, de modo que el transistor de canal P puede
aportar la corriente necesaria para cargar rápidamente las capacidades
parásitas, con un transistor de canal N más pequeño, de modo que la célula resulta
más pequeña que su contrapartida en NMOS. En CMOS se suelen sustituir los
registros dinámicos por estáticos, debido a que así se puede bajar el reloj
hasta cero y las reducidas dimensiones y bajo consumo de la celda CMOS ya no
hacen tan atractivos los registros dinámicos.
Por
último, se suelen emplear transistores pequeños, poniendo una celda mayor para
la interfaz con las patillas, ya que las necesidades de corriente son mucho
mayores en las líneas de salida del chip.
La
disminución del tamaño de los transistores y otras mejoras condujo a nuevas
familias CMOS: AC, ACT, ACQ, etc.
ROM La memoria de sólo lectura, conocida también como ROM (acrónimo
en inglés de read-only memory), es un medio de almacenamiento utilizado en
ordenadores y dispositivos electrónicos, que permite solo la lectura de la
información y no su escritura, independientemente de la presencia o no de una
fuente de energía.
Los
datos almacenados en la ROM no se pueden modificar, o al menos no de manera
rápida o fácil. Se utiliza principalmente en su sentido más estricto, se
refiere solo a máscara ROM -en inglés, MROM- (el más antiguo tipo de estado
sólido ROM), que se fabrica con los datos almacenados de forma permanente y,
por lo tanto, su contenido no puede ser modificado de ninguna forma. Sin
embargo, las ROM más modernas, como EPROM y Flash EEPROM, efectivamente se
pueden borrar y volver a programar varias veces, aun siendo descritos como
"memoria de sólo lectura" (ROM). La razón de que se las continúe
llamando así es que el proceso de reprogramación en general es poco frecuente,
relativamente lento y, a menudo, no se permite la escritura en lugares
aleatorios de la memoria. A pesar de la simplicidad de la ROM, los dispositivos
reprogramables son más flexibles y económicos, por lo cual las antiguas
máscaras ROM no se suelen encontrar en hardware producido a partir de 2007.
Dentro de la memoria ROM se
encuentran tres pequeños programas: el BIOS, el SETUP y el POST. El BIOS (Basic
Input Output System o Sistema Básico de Entradas y Salidas) es un programa de
sólo lectura cuya función principal es actuar como intermediario entre los
recursos del Hardware y Software. La función del POST es realizar una prueba
inicial del Hardware crítico del sistema. Cuando se presiona el botón de encendido
de un PC, el primer proceso que se lleva a cabo es el POST. Si todo funciona
correctamente, el sistema sigue su proceso habitual que culmina con la carga
del sistema operativo. Si por el contrario, algunos de los dispositivos
críticos no pasa la prueba POST, el sistema se detiene en esa instancia e
informa a través de un unos mensajes sonoros cuál es el error, el BIOS tiene un
sistemas de pitidos (beeps) para avisar al usuario que tipo de problema hay. El
SETUP es una porción de software que a diferencia de sus compañeros, podemos
entrar en su configuración y realizar cambios en sus parámetros con la
intención de optimizar el funcionamiento del hardware. El menú principal del
SETUP está dividido en secciones, en las que se agrupan las opciones de acuerdo
con los componentes que se pueden modificar. Como la ROM no puede ser modificada (al menos en la
antigua versión de máscara), solo resulta apropiada para almacenar datos que no
necesiten ser modificados durante la vida de este dispositivo. Con este fin, la
ROM se ha utilizado en muchos ordenadores para guardar tablas de consulta,
utilizadas para la evaluación de funciones matemáticas y lógicas. Esto era
especialmente eficiente cuando la CPU era lenta y la ROM era barata en
comparación con la RAM.
RAM La memoria de acceso aleatorio (Random Access Memory,
RAM) se utiliza como memoria de trabajo de computadoras para el sistema
operativo, los programas y la mayor parte del software.En la RAM se cargan
todas las instrucciones que ejecuta la unidad central de procesamiento
(procesador) y otras unidades del computador.Se denominan «de acceso aleatorio»
porque se puede leer o escribir en una posición de memoria con un tiempo de
espera igual para cualquier posición, no siendo necesario seguir un orden para
acceder (acceso secuencial) a la información de la manera más rápida posible.Durante
el encendido de la computadora, la rutina POST verifica que los módulos de RAM
estén conectados de manera correcta. En el caso que no existan o no se detecten
los módulos, la mayoría de tarjetas madres emiten una serie de sonidos que
indican la ausencia de memoria principal. Terminado ese proceso, la memoria
BIOS puede realizar un test básico sobre la memoria RAM indicando fallos
mayores en la misma.
CPU La unidad central de procesamiento o unidad de
procesamiento central (conocida por las siglas CPU, del inglés: central
processing unit), es el hardware dentro de una computadora u otros dispositivos
programables, que interpreta las instrucciones de un programa informático
mediante la realización de las operaciones básicas aritméticas, lógicas y de
entrada/salida del sistema. El término, y su acrónimo, han estado en uso en la
industria de la Informática por lo menos desde el principio de los años 1960.1
La forma, el diseño de CPU y la implementación de las CPU ha cambiado
drásticamente desde los primeros ejemplos, pero su operación fundamental sigue
siendo la misma.
Una
computadora puede tener más de una CPU; esto se llama multiprocesamiento. Todas
las CPU modernas son microprocesadores, lo que significa que contienen un solo
circuito integrado (chip). Algunos circuitos integrados pueden contener varias
CPU en un solo chip; estos son denominados procesadores multinúcleo. Un
circuito integrado que contiene una CPU también puede contener los dispositivos
periféricos, y otros componentes de un sistema informático; a esto se llama un
sistema en un chip (SoC).
Dos
componentes típicos de una CPU son la unidad aritmético lógica (ALU), que
realiza operaciones aritméticas y lógicas, y la unidad de control (CU), que
extrae instrucciones de la memoria, las decodifica y las ejecuta, llamando a la
ALU cuando sea necesario.
No
todos los sistemas computacionales se basan en una unidad central de
procesamiento. Una matriz de procesador o procesador vectorial tiene múltiples
elementos cómputo paralelo, sin una unidad considerada el "centro".
En el modelo de computación distribuido, se resuelven problemas mediante un
conjunto interconectado y distribuido de procesadores.
Estructura por anillos concéntricos (capas).
El
sistema por "capas" consiste en organizar el sistema operativo como
una jerarquía de capas, cada una construida sobre la inmediata inferior. El
primer sistema construido de esta manera fue el sistema THE (Technische
Hogeschool Eindhoven), desarrollado en Holanda por E. W. Dijkstra (1968) y sus
estudiantes.
El
sistema tenia 6 capas, como se muestra en la figura 3. La capa 0 trabaja con la
asignación del procesador y alterna entre los procesos cuando ocurren las
interrupciones o expiran los cronómetros. Sobre la capa 0, el sistema consta de
procesos secuénciales, cada uno de los cuales se podría programar sin importar
que varios procesos estuvieran ejecutándose en el mismo procesador, la capa 0
proporcionaba la multiprogramación básica de la CPU.
La
capa 1 realizaba la administración de la memoria. Asignaba el espacio de
memoria principal para los procesos y un recipiente de palabras de 512K se
utilizaba para almacenar partes de los procesos (páginas) para las que no
existía lugar en la memoria principal. Por encima de la capa 1, los procesos no
debían preocuparse si estaban en la memoria o en el recipiente; el software de
la capa 1 se encargaba de garantizar que las páginas llegaran a la memoria
cuando fueran necesarias.
La
capa 2 se encargaba de la comunicación entre cada proceso y la consola del
operador. Por encima de esta capa, cada proceso tiene su propia consola de
operador.
La
capa 3 controla los dispositivos de E/S y guarda en almacenes (buffers) los
flujos de información entre ellos. Por encima de la capa 3, cada proceso puede
trabajar con dispositivos exactos de E/S con propiedades adecuadas, en vez de
dispositivos reales con muchas peculiaridades. La capa 4 es donde estaban los
programas del usuario, estos no tenían que preocuparse por el proceso, memoria,
consola o control de E/S. el proceso operador del sistema se localizaba en la
capa 5
Una
generalización mas avanzada del concepto de capas se presento en el sistema
MULTICS. En lugar de capas, MULTICS estaba organizado como una serie de anillos
concéntricos, siendo los anillos interiores los privilegiados. Cuando un
procedimiento de un anillo exterior deseaba llamar a un procedimiento de un
anillo interior, debió hacer el equivalente a una llamada al sistema
Mientras
que el esquema de capas de THE era en realidad un apoyo al diseño, debido a que
todas las partes del sistema estaban ligadas entre si en un solo programa
objeto, en MULTICS, el mecanismo de anillos estaba mas presente durante el
tiempo de ejecución y era reforzado por el hardware. La ventaja del mecanismo
de anillos es su facilidad de extensión para estructurar subsistemas del
usuario.
5 El
operador
4 Programas
del usuario
3 Control
de entrada/salida
2 Comunicación
operador-proceso
1 Administración
de la memoria y del disco
0 Asignación
del procesador y multiprogramación
Estructura por microkernel.
Las
funciones centrales de un SO son controladas por el núcleo (kernel) mientras
que la interfaz del usuario es controlada por el entorno (shell). Por ejemplo,
la parte más importante del DOS es un programa con el nombre
"COMMAND.COM" Este programa tiene dos partes. El kernel, que se
mantiene en memoria en todo momento, contiene el código máquina de bajo nivel
para manejar la administración de hardware para otros programas que necesitan
estos servicios, y para la segunda parte del COMMAND.COM el shell, el cual es
el interprete de comandos
Las
funciones de bajo nivel del SO y las funciones de interpretación de comandos
están separadas, de tal forma que puedes mantener el kernel DOS corriendo, pero
utilizar una interfaz de usuario diferente. Esto es exactamente lo que sucede
cuando cargas Microsoft Windows, el cual toma el lugar del shell, reemplazando
la interfaz de línea de comandos con una interfaz gráfica del usuario. Existen
muchos "shells" diferentes en el mercado, ejemplo: NDOS (Norton DOS),
XTG, PCTOOLS, o inclusive el mismo SO MS-DOS a partir de la versión 5.0 incluyó
un Shell llamado DOS SHELL.
Estructura
cliente – servidor
Una
tendencia de los sistemas operativos modernos es la de explotar la idea de
mover el código a capas superiores y eliminar la mayor parte posible del
sistema operativo para mantener un núcleo mínimo. El punto de vista usual es el
de implantar la mayoría de las funciones del sistema operativo en los procesos
del usuario. Para solicitar un servicio, como la lectura de un bloque de cierto
archivo, un proceso del usuario (denominado proceso cliente) envía la solicitud
a un proceso servidor, que realiza entonces el trabajo y regresa la respuesta.
En este modelo, que se muestra en la figura 4, lo único que hace el núcleo es
controlar la comunicación entre los clientes y los servidores. Al separar el
sistema operativo en partes, cada una de ellas controla una faceta del sistema,
como el servicio a archivos, servicios a procesos, servicio a terminales o
servicio a la memoria, cada parte es pequeña y controlable. Además como todos
los servidores se ejecutan como procesos en modo usuario y no en modo núcleo,
no tienen acceso directo al hardware. En consecuencia si hay un error en el
servidor de archivos, éste puede fallar, pero esto no afectará en general a
toda la máquina.
No hay comentarios.:
Publicar un comentario