Estructura Area De Trabajo
Enviado por Nukario • 11 de Septiembre de 2014 • 1.716 Palabras (7 Páginas) • 264 Visitas
Concepto Sistema operativo
Es difícil definir que es un sistema operativo aparte de decir que es el software que se ejecuta en modo kernel (además de que esto no siempre es cierto). Parte del problema es que los sistemas operativos realizan dos funciones básicas que no están relacionadas: proporcionar a los programadores de aplicaciones (y a los programas de aplicaciones, naturalmente) un conjunto abstracto de recursos simples, en vez de los complejos conjuntos de hardware; y administrar estos recursos de hardware.
(Tanenbaum, 2008)
Estructura y componentes de un sistema operativo
Componentes
Administración de procesos.
Para comenzar debemos saber que es un proceso. Un proceso es un programa en
memoria + CPU + acceso a dispositivos + otros recursos. Notemos que un proceso
necesita de ciertos recursos (como CPU, memoria, archivos, dispositivos de E/S, etc.)
para realizar su tarea.
Podemos ver entonces que un proceso es una entidad activa, mientras que un programa
una entidad pasiva.
Sabiendo entonces que es un proceso, podemos decir entonces que el sistema operativo
es el encargado de su administración. Es el encargado de proveer servicios para que
cada proceso pueda realizar su tarea. Entre los servicios se encuentran:
• Crear y destruir procesos
• Suspender y reanudar procesos
• Proveer mecanismos para la sincronización y comunicación entre procesos
• Proveer mecanismos para prevenir dead-locks o lograr salir de ellos
Administración de memoria
La memoria es un área de almacenamiento común a los procesadores y dispositivos,
donde se almacenan programas, datos, etc. El sistema deberá administrar el lugar libre y
ocupado, y será el encargado de las siguientes tareas:
• Mantener que partes de la memoria están siendo usadas, y por quien.
• Decidir cuales procesos serán cargados a memoria cuando exista espacio de
memoria disponible, pero no suficiente para todos los procesos que deseamos.
• Asignar y quitar espacio de memoria según sea necesario.
Subsistema de entrada/salida
El sistema operativo deberá ocultar las características específicas de cada dispositivo y
ofrecer servicios comunes a todos. Estos servicios serán, entre otros:
• Montaje y desmontaje de dispositivos
• Una interfaz entre el cliente y el sistema operativo para los device drivers.
• Técnicas de cache, buffering y spooling.
• Device drivers específicos
Administración de almacenamiento secundario
Dado que la memoria RAM es volátil y pequeña para todos los datos y programas que
se precisan guardar, se utilizan discos para guardar la mayoría de la información. El
sistema operativo será el responsable de:
• Administrar el espacio libre
• Asignar la información a un determinado lugar
• Algoritmos de planificación de disco (estos algoritmos deciden quien utiliza un
determinado recurso del disco cuando hay competencia por él)
Subsistema de archivos
Proporciona una vista uniforme de todas las formas de almacenamiento, implementando
el concepto de archivo como una colección de bytes. El Sistema Operativo deberá
proveer métodos para:
• Abrir, cerrar y crear archivos
• Leer y escribir archivos
Sistema de protección
Antes que nada, tener en cuenta que por protección nos referimos a los mecanismos por
los que se controla el acceso de los procesos a los recursos.
En un sistema multiusuario donde se ejecutan procesos de forma concurrente se deben
tomar medidas que garanticen la ausencia de interferencia entre ellos. Estas medidas
deben incorporar la posibilidad de definir reglas de acceso, entre otras cosas.
Estructura
La estructura interna de los sistemas operativos pueden ser muy diferentes, ya que se
debe tener en cuenta las metas de los usuarios (fácil uso, confiable, rápido, etc.) y las del
sistema (fácil de diseñar, implementar y mantener, eficiente, etc.).
Las siguientes son las principales estructuras de Sistemas operativos:
• Sistema Monolítico
Estos sistemas no tienen una estructura definida, sino que son escritos como una
colección de procedimientos donde cualquier procedimiento puede invocar a otro.
Ejemplos de estos sistemas pueden ser MS-DOS o Linux (aunque incluye algo de
capas). Es importante tener en cuenta que ningún sistema es puramente de un tipo.
• Sistema en capas
El diseño se organiza en una jerarquía de capas, donde los servicios que brinda una capa son consumidos solamente por la capa superior. La capa 0 es del Hardware y la N es la de los procesos de Usuario. Estos sistemas tienen como ventaja que son modulares y la verificación se puede hacer a cada capa por separado (son más mantenibles). Sin embargo el diseño es muy costoso y es menos eficiente que el sistema monolítico ya que pierde tiempo pasando por cada capa.
• Sistema con micronúcleo
La idea consiste en tener un núcleo que brinde los servicios mínimos de manejo de
procesos, memoria y que provea la comunicación entre procesos. Todos los restantes
servicios se construyen como procesos separados del micronúcleo, que ejecutan en
modo usuario.
Estos sistemas tienen como ventaja un diseño simple y funcional, que aumenta la
portabilidad y la escalabilidad. Para agregar un nuevo servicio no es necesario modificar
el núcleo, y es más seguro ya que los servicios corren en modo usuario.
(Facultad de Ingenieria Universidad de la republica - Uruguay)
Clasificación de S.O.
Monousuarios
Los sistemas operativos monousuarios son aquéllos que soportan a un usuario a la vez,
sin importar el número de procesadores que tenga la computadora o el número de
procesos o tareas que el usuario pueda ejecutar en un mismo instante de tiempo. Las
computadoras personales típicamente se han clasificado en este renglón.
Multiusuarios
Los sistemas operativos multiusuarios son capaces de dar servicio a más de un usuario a
la vez, ya sea por medio de varias terminales
...