SISOPE 1 - TRABAJO 1
Transcript of SISOPE 1 - TRABAJO 1
-
8/19/2019 SISOPE 1 - TRABAJO 1
1/24
Sistemas Operativos I
Escuela de Ingeniería Informática Universidad Nacional de Trujillo
Mario Fernando Vásquez Alvarado1 de 24
Sistemas operativos distribuidos
Autor: Mario Fernando Vásquez Alvarado
Los sistemas operativos distribuidos abarcan los servicios de los sistemas operativos de red, logrando
integrar recursos (impresoras, unidades de respaldo, memoria, procesos, unidades centrales de proceso) en
una sola máquina virtual que el usuario accede en forma transparente. Es decir, ahora el usuario ya no
necesita saber la ubicación de los recursos, sino que los conoce por nombre y simplemente los usa como si
todos fuesen locales a su lugar de trabajo habitual. Al menos eso es lo que en teoría se desearía tener como
sistema operativo distribuido, pero en la realidad no se ha conseguido crear uno del todo, por la
complejidad que suponen como por ejemplo: Distribuir los procesos de las varias unidades de
procesamiento, reintegrar sub resultados, resolver problemas de concurrencia y paralelismo, recuperarse de
fallas de algunos recursos distribuidos y consolidar la protección y seguridad entre los diferentes
componentes del sistema y los usuarios. Los avances tecnológicos en las redes de área local y la creación demicroprocesadores de 32 y 64 bits lograron que computadoras más o menos baratas tuvieran el suficiente
poder en forma autónoma para desafiar en cierto grado a los mainframes, y a la vez se dio la posibilidad de
intercomunicarlas, sugiriendo la oportunidad de partir procesos muy pesados en cálculo en unidades mas
pequeñas y distribuirlas en los varios microprocesadores para luego reunir los sub resultados, creando así
una máquina virtual en la red que exceda en poder a un mainframe, El sistema integrador de los
microprocesadores, y todos los demás recursos como una sola entidad en forma transparente se llama
sistema operativo distribuido. Las razones para crear o adoptar sistemas distribuidos se dan por dos razones
principales: por necesidad (debido a que los problemas a resolver son inherentemente distribuidos) o
porque se desea tener más confiabilidad y disponibilidad de recursos.
En Resumen un sistema distribuido se define como: una colección de computadoras separados físicamente y
conectados entre sí por una red de comunicaciones distribuida; cada máquina posee sus componentes de
hardware y software que el usuario percibe como un solo sistema (no necesita saber qué cosas están en qué
máquinas). El usuario accede a los recursos remotos (RPC) de la misma manera en que accede a recursos
locales, o un grupo de computadores que usan un software para conseguir un objetivo en común.
Los sistemas distribuidos deben ser muy confiables, ya que si un componente del sistema se descompone
otro componente debe de ser capaz de reemplazarlo, esto se denomina Tolerancia a Fallos.
El tamaño de un sistema distribuido puede ser muy variado, ya sean decenas de hosts (red de área local),
centenas de hosts (red de área metropolitana), y miles o millones de hosts (Internet); esto se denomina
escalabilidad.
-
8/19/2019 SISOPE 1 - TRABAJO 1
2/24
Sistemas Operativos I
Escuela de Ingeniería Informática Universidad Nacional de Trujillo
Mario Fernando Vásquez Alvarado2 de 24
1.CARACTERÍSTICAS:
1. Para cada uno de los usuarios debe de ser similar al trabajo en el Sistema Centralizado.
2. Seguridad interna en el sistema distribuido.
3. Se ejecuta en múltiples Computadoras.
4. Tiene varias copias del mismo Sistema Operativo o de diferentes Sistemas Operativos que proveen los
mismos servicios.
5. Entorno de trabajo cómodo.
6. Dependiente de redes (LAN, MAN, WAN, etc.).
7. Compatibilidad entre los dispositivos conectados.
8. Transparencia (El uso de múltiples procesadores y el acceso remoto debe de ser invisible).
2.OBJETIVO:
La computación distribuida ha sido diseñada para resolver problemas demasiado grandes para cualquier
supercomputadora y mainframe, mientras se mantiene la flexibilidad de trabajar en múltiples problemas
más pequeños. Por lo tanto, la computación en grid es naturalmente un entorno multiusuario; por ello, las
técnicas de autorización segura son esenciales antes de permitir que los recursos informáticos sean
controlados por usuarios remotos.
-
8/19/2019 SISOPE 1 - TRABAJO 1
3/24
Sistemas Operativos I
Escuela de Ingeniería Informática Universidad Nacional de Trujillo
Mario Fernando Vásquez Alvarado3 de 24
3.ESTRUCTURA Y COMPONENTES DEL SISTEMA OPERATIVO DISTRIBUIDO DOS):
Como ya se definió anteriormente un sistema operativo distribuido consiste en una colección de
computadores conectados por una red de comunicaciones, que el usuario percibe como un solo sistema (no
necesita saber qué cosas están en qué máquinas). El usuario accesa a los recursos remotos de la mismamanera en que accesa a recursos locales, o un grupo de computadores que usan un software para conseguir
un objetivo en común.
Los sistemas distribuidos deben de ser muy confiables, ya que si un componente del sistema se descompone
otro componente debe de ser capaz de reemplazarlo.
El objetivo de un sistema distribuido es integrar los recursos y servicios conectados por una red de
comunicación. Desde el punto de vista del usuario y de las aplicaciones, un sistema distribuido proporciona
una visión de máquina única y no difiere de uno centralizado (Figura 1). En cambio, el punto de vista del
diseñador (el sistema como gestor de los recursos) la estructura interna está condicionada por la
distribución física de los recursos (Figura 2).
Aplicaciones
Servicios del sistema
Hardware (distribuido)
Figura 1: Un sistema distribuido desde el punto de vista del usuario.
Lo habitual es que el sistema operativo integre los servicios de red, que ofrecen protocolos abiertos de
comunicación, como es el caso de TCP y UDP. Sobre estos se disponen los soportes adicionales para la
comunicación distribuida, como es el caso de RPC, RMI o DSM, y los servicios específicos que proporcionan
las propiedades del sistema distribuido (servicios middleware), como es el caso de la gestión de tiempos,
eventos y estado global, sobre los que se asientan las aplicaciones.
-
8/19/2019 SISOPE 1 - TRABAJO 1
4/24
Sistemas Operativos I
Escuela de Ingeniería Informática Universidad Nacional de Trujillo
Mario Fernando Vásquez Alvarado4 de 24
Aplicaciones Aplicaciones Aplicaciones
Servicios
Middleware
Servicios
Middleware … Servicios
Middleware
Sistema operativo
y protocolos de
red
Sistema operativo
y protocolos de
red
Sistema operativo
y protocolos de
red
Hardware distribuido y red de interconexión
Figura 2: Estructura de un sistema distribuido.
El tamaño de un sistema distribuido puede ser muy variado, ya sean decenas de hosts (Local Area Network),
centenas de hosts (Metropolitan Area Network), y miles o millones de hosts (Internet).
Ejemplo de sistema distribuido simple
3.1. Estructura General De Los DOS
Menos autonomía entre computadores da la impresión de que solo hay un sistema operativo controlando la
red
-
8/19/2019 SISOPE 1 - TRABAJO 1
5/24
Sistemas Operativos I
Escuela de Ingeniería Informática Universidad Nacional de Trujillo
Mario Fernando Vásquez Alvarado5 de 24
3.2. Estructura General De Un Sistema Distribuido Basado En Middleware
Middelware es una capa adicional por encima de un sistema operativo de red, que implementa servicios de
propósito general. Middlware es una capa de software intermedia. En los Sistemas distribuidos basados en
Middlware, los protocolos usados por cada capa middlware deben ser los mismos así como las interfaces
que ofrecen a las aplicaciones.
Middleware es un software que enmascara el hardware y los sistemas operativos.Se aplican en los sistemas distribuidos como sistema de comunicación que proporciona alto grado de
transparencia, administración de recursos por nodos, no tienen el mismo sistema operativo en todos los
nodos y ofrece n numero de copias del sistema operativo.
En sistemas distribuidos:
El Middleware es un software de conectividad que permite ofrecer un conjunto de servicios que hacen
posible el funcionamiento de aplicaciones distribuidas sobre plataformas heterogéneas. Funciona como una
capa de abstracción de software distribuida que se sitúa entre las capas de aplicaciones y las capas inferiores
(sistema operativo y red).
El Middleware nos abstrae de la complejidad y heterogeneidad de las redes de comunicaciones subyacentes,así como de los sistemas operativos y lenguajes de programación, proporcionando una API para la fácil
programación y manejo de aplicaciones distribuidas.
4. Sistemas Operativos Distribuidos Existentes
Sprite, Solaris-MC, Mach, Chorus, Spring, Amoeba, Taos, Seti, etc.
-
8/19/2019 SISOPE 1 - TRABAJO 1
6/24
Sistemas Operativos I
Escuela de Ingeniería Informática Universidad Nacional de Trujillo
Mario Fernando Vásquez Alvarado6 de 24
SISTEMA OPERATIVO PROPIETARIO
Como su nombre lo indica es un sistema operativo privado, significa que no es gratuito, y su código
fuente no es accesible excepto para la empresa que lo creo. Un ejemplo de este tipo de sistemas
es Windows, su código es accesible solo para los empleados de Microsoft y su uso es gratuito solo
para lo mismos (de ahí el término"Propietario", es propiedad de Microsoft). Muy costoso por cierto,
por eso encontramos tantas versiones falsificadas en Internet que por lo general no se pueden
actualizar.
WINDOWS
Un Sistema Operativo serio, capaz de competir en el mercado con otros como Unix que ya tienen una
posición privilegiada, en cuanto a resultados, debe tener una serie de características que le permitan
ganarse ese lugar. Algunas de estas son: Que corra sobre múltiples arquitecturas de hardware y plataformas.
Que sea compatible con aplicaciones hechas en plataformas anteriores, es decir que corrieran la
mayoría de las aplicaciones existentes hechas sobre versiones anteriores a la actual, nos referimos en
este caso particular a las de 16-bit de MS-DOS y Microsoft Windows 3.1.
Reúna los requisitos gubernamentales para POSIX (Portable Operating System Interface for Unix).
Reúna los requisitos de la industria y del gobierno para la seguridad del Sistema Operativo.
Sea fácilmente adaptable al mercado global soportando código Unicode.
Sea un sistema que corra y balancee los procesos de forma paralela en varios procesadores a la vez.
Sea un Sistema Operativo de memoria virtual.
Uno de los pasos más importantes que revolucionó los Sistemas Operativos de la Microsoft fue el diseño y
creación de un Sistema Operativo extensible, portable, fiable, adaptable, robusto, seguro y compatible con
sus versiones anteriores (Windows NT).
Y para ello crearon la siguiente arquitectura modular:
http://www.monografias.com/trabajos13/mercado/mercado.shtmlhttp://www.monografias.com/trabajos36/sistema-unix/sistema-unix.shtmlhttp://www.monografias.com/trabajos/manualdos/manualdos.shtmlhttp://www.monografias.com/trabajos13/quienbill/quienbill.shtmlhttp://www.monografias.com/trabajos16/industria-ingenieria/industria-ingenieria.shtmlhttp://www.monografias.com/trabajos4/derpub/derpub.shtmlhttp://www.monografias.com/trabajos/seguinfo/seguinfo.shtmlhttp://www.monografias.com/trabajos12/eticaplic/eticaplic.shtmlhttp://www.monografias.com/trabajos5/sisope/sisope.shtmlhttp://www.monografias.com/trabajos5/segu/segu.shtmlhttp://www.monografias.com/trabajos5/segu/segu.shtmlhttp://www.monografias.com/trabajos5/sisope/sisope.shtmlhttp://www.monografias.com/trabajos12/eticaplic/eticaplic.shtmlhttp://www.monografias.com/trabajos/seguinfo/seguinfo.shtmlhttp://www.monografias.com/trabajos4/derpub/derpub.shtmlhttp://www.monografias.com/trabajos16/industria-ingenieria/industria-ingenieria.shtmlhttp://www.monografias.com/trabajos13/quienbill/quienbill.shtmlhttp://www.monografias.com/trabajos/manualdos/manualdos.shtmlhttp://www.monografias.com/trabajos36/sistema-unix/sistema-unix.shtmlhttp://www.monografias.com/trabajos13/mercado/mercado.shtml
-
8/19/2019 SISOPE 1 - TRABAJO 1
7/24
Sistemas Operativos I
Escuela de Ingeniería Informática Universidad Nacional de Trujillo
Mario Fernando Vásquez Alvarado7 de 24
La cual está compuesta por una serie de componentes separados donde cada cual es responsable de sus
funciones y brindan servicios a otros componentes. Esta arquitectura es del tipo cliente – servidor ya que
los programas de aplicación son contemplados por el sistema operativo como si fueran clientes a los que hay
que servir, y para lo cual viene equipado con distintas entidades servidoras.
Ya creado este diseño las demás versiones que le sucedieron a Windows NT fueron tomando esta
arquitectura como base y le fueron adicionando nuevos componentes.
Uno de las características que Windows comparte con el resto de los Sistemas Operativos avanzados es la
división de tareas del Sistema Operativo en múltiples categorías, las cuales están asociadas a los modos
actuales soportados por los microprocesadores. Estos modos proporcionan a los programas que corren
dentro de ellos diferentes niveles de privilegios para acceder al hardware o a otros programas que están
corriendo en el sistema. Windows usa un modo privilegiado (Kernel) y un modo no privilegiado (Usuario).
Uno de los objetivos fundamentales del diseño fue el tener un núcleo tan pequeño como fuera posible, en el
que estuvieran integrados módulos que dieran respuesta a aquellas llamadas al sistema que necesariamente
se tuvieran que ejecutar en modo privilegiado (modo kernel). El resto de las llamadas se expulsarían del
núcleo hacia otras entidades que se ejecutarían en modo no privilegiado (modo usuario), y de esta manera el
núcleo resultaría una base compacta, robusta y estable.
El Modo Usuario es un modo menos privilegiado de funcionamiento, sin el acceso directo al hardware. El
código que corre en este modo sólo actúa en su propio espacio de dirección. Este usa las APIs (System
Application Program Interfaces) para pedir los servicios del sistema.
El Modo Kernel es un modo muy privilegiado de funcionamiento, donde el código tiene el acceso directo a
http://www.monografias.com/Computacion/Programacion/http://www.monografias.com/trabajos11/sercli/sercli.shtmlhttp://www.monografias.com/trabajos11/introwin/introwin.shtmlhttp://www.monografias.com/trabajos11/micro/micro.shtmlhttp://www.monografias.com/trabajos16/objetivos-educacion/objetivos-educacion.shtmlhttp://www.monografias.com/trabajos15/direccion/direccion.shtmlhttp://www.monografias.com/trabajos15/direccion/direccion.shtmlhttp://www.monografias.com/trabajos16/objetivos-educacion/objetivos-educacion.shtmlhttp://www.monografias.com/trabajos11/micro/micro.shtmlhttp://www.monografias.com/trabajos11/introwin/introwin.shtmlhttp://www.monografias.com/trabajos11/sercli/sercli.shtmlhttp://www.monografias.com/Computacion/Programacion/
-
8/19/2019 SISOPE 1 - TRABAJO 1
8/24
Sistemas Operativos I
Escuela de Ingeniería Informática Universidad Nacional de Trujillo
Mario Fernando Vásquez Alvarado8 de 24
todo el hardware y toda la memoria, incluso a los espacios de dirección de todos los procesos del modo
usuario. La parte de WINDOWS que corre en el modo Kernel se llama Ejecutor de Windows, que no es más
que un conjunto de servicios disponibles a todos los componentes del Sistema Operativo, donde
cada grupo de servicios es manipulado por componentes que son totalmente independientes (entre ellos el
Núcleo) entre sí y se comunican a través de interfaces bien definidas.
Todos los programas que no corren en Modo Kernel corren en Modo Usuario. La mayoría del código del
Sistema Operativo corre en Modo Usuario, así como los subsistemas de ambiente (Win32 y POSIX que serán
explicados en capítulos posteriores) y aplicaciones de usuario. Estos programas solamente acceden a su
propio espacio de direcciones e interactúan con el resto del sistema a través de mensajes Cliente/Servidor.
1.Modo Kernel:
1.1 Capa de Abstracción de Hardware HAL).
Conocido por sus siglas en inglés HAL (Hardware Abstraction Layer) es una interfaz entre el hardware y el
resto del Sistema Operativo, está implementada como una biblioteca de enlace dinámico (dll) y es
responsable de proteger el resto del sistema de las especificaciones del hardware, tales como controladoresde interrupción e interfaces de entrada/salida. Esta abstracción hace al sistema más portable ya que el resto
del sistema no tiene que preocuparse sobre que plataforma está corriendo. Cada plataforma en que el
sistema corre necesita un HAL específico. El diseño intenta que cuando Windows sea portado a una nueva
arquitectura de procesador, el HAL sea reescrito para el nuevo procesador, pero el resto del sistema
simplemente debe ser recompilado.
Este también suministra la interfaz para el multiprocesamiento simétrico (conocido por sus siglas en inglés
SMP). Las versiones Server contienen dos HALs para arquitectura de procesador (Intel, MIPS, PowerPC y and
Alpha), el primero es usado para soportar un solo procesador, mientras que el segundo soporta hasta cuatro
procesadores.
Para cada procesador físico que existe en la computadora el HAL representa un procesador virtualizado al
microkernel. La idea es que el procesador virtualizado esconda las características especiales del propio
procesador al sistema operativo, quiere esto decir que si por ejemplo se tiene dos sistemas
multiprocesadores, uno corriendo sobre un procesador Intel y otro corriendo con un Alpha, los HALs en
cada sistema serían diferentes, pero los procesadores virtualizados que este presenta al microkernel en
ambos casos pudieran ser idénticos. Sobre un sistema SMP (Multiprocesamiento Simétrico) para cada
procesador físico en el sistema el HAL representa un procesador virtualizado al microkernel.
A este componente solo pueden acceder componentes del Ejecutor de Windows y nunca se llama por los
programas del Modo Usuario. El HAL también intenta ser la única pieza de software dentro del sistema que
se comunique con el hardware, la ventaja de esto es que otros programas no pueden escribir información enel hardware ni accidentalmente, ni intencionalmente y causar una caída del sistema, también impidiendo
que programas lean información directamente del hardware.
Aunque la meta de Windows es que todas las llamadas relacionas con el hardware sean a través del HAL, la
realidad es que un número pequeño de llamadas de los drivers y del Kernel bordean al HAL e interactúan
directamente con el hardware.
http://www.monografias.com/trabajos16/memorias/memorias.shtmlhttp://www.monografias.com/trabajos14/dinamica-grupos/dinamica-grupos.shtmlhttp://www.monografias.com/trabajos15/medio-ambiente-venezuela/medio-ambiente-venezuela.shtmlhttp://www.monografias.com/trabajos16/manual-ingles/manual-ingles.shtmlhttp://www.monografias.com/trabajos10/ponency/ponency.shtmlhttp://www.monografias.com/trabajos5/sisope/sisope.shtmlhttp://www.monografias.com/trabajos15/computadoras/computadoras.shtmlhttp://www.monografias.com/Computacion/Software/http://www.monografias.com/trabajos7/sisinf/sisinf.shtmlhttp://www.monografias.com/trabajos7/plane/plane.shtmlhttp://www.monografias.com/trabajos7/plane/plane.shtmlhttp://www.monografias.com/trabajos7/sisinf/sisinf.shtmlhttp://www.monografias.com/Computacion/Software/http://www.monografias.com/trabajos15/computadoras/computadoras.shtmlhttp://www.monografias.com/trabajos5/sisope/sisope.shtmlhttp://www.monografias.com/trabajos10/ponency/ponency.shtmlhttp://www.monografias.com/trabajos16/manual-ingles/manual-ingles.shtmlhttp://www.monografias.com/trabajos15/medio-ambiente-venezuela/medio-ambiente-venezuela.shtmlhttp://www.monografias.com/trabajos14/dinamica-grupos/dinamica-grupos.shtmlhttp://www.monografias.com/trabajos16/memorias/memorias.shtml
-
8/19/2019 SISOPE 1 - TRABAJO 1
9/24
Sistemas Operativos I
Escuela de Ingeniería Informática Universidad Nacional de Trujillo
Mario Fernando Vásquez Alvarado9 de 24
La capa de Abstracción de Hardware conocida por sus siglas en inglés (HAL) es una biblioteca de
manipulación de hardware con rutinas suministradas por Microsoft o por el fabricante del hardware. Esta
capa queda en el nivel más bajo del Ejecutor de Windows (entre el hardware y el resto del Sistema
Operativo), esta esconde las características de la plataforma para que todas las plataformas y arquitecturas
parezcan igual al Sistema Operativo, esto permite al SO correr sobre diferentes plataformas con uno o
varios procesadores, facilitando además a los drivers de dispositivos adaptarse a distintas arquitecturas deE/S sin tener que ser modificados en gran medida.
1.2 MicroKernel
Es el responsable de todas las acciones que se realizan sobre le sistema y casi todas las funciones del sistema
pasan a través de él.
El diseño de este componente asigna muchas de las funciones normalmente asignadas al Kernel en los
Sistemas Operativos tradicionales a un grupo de programas llamado Ejecutor de Windows, del cual el
microkernel es parte, corre en el modo privilegiado y ambos (el ejecutor y el microkernel) se comunican a
través de primitivas del sistema operativo a bajo nivel.
La principal tarea de este componente es la planificación de ejecución de hilos (segmento de código
perteneciente a un proceso particular). A cada hilo es asignada una prioridad de 0 a 31, este entonces envía
hilos a correr en dependencia de su número de prioridad y los permite ejecutarse un tiempo determinado
antes de apropiarse de ellos y permitir que otro proceso corra.
Aquí es importante aclarar que el microkernel no planifica la ejecución de procesos, sino que planifica la
ejecución de hilos en el entorno de un proceso, este procedimiento es el que hace posible la multitarea con
preferencia al ser el microkernel el que planifica la ejecución de todo el código que corre en el sistema.
En un sistema multiprocesador, una copia del microkernel corre en cada procesador. Estos segmentos del
microkernel son usados para mantener la coherencia de los recursos del sistema que son compartidos yaque son accedidos por los hilos que corren en todos los procesadores.
Este también es responsable de la manipulación de interrupciones del sistema desde dispositivos físicos.
Normalmente cuando el sistema es interrumpido, el microkernel se apropia del hilo que este corriendo en
ese momento para procesar la interrupción.
El microkernel también manipula las excepciones del procesador, donde estas excepciones ocurren cuando
el procesador intenta hacer alguna operación que no se le está permitida, como el intento de escribir en una
porción de memoria a la cual no tiene acceso o cuando se divide por cero.
El uso final del microkernel es suministrar un soporte para la recuperación del sistema de una caída de
energía. Si el sistema esta equipado con un suministrador de energía ininterrumpible (más conocido por sussiglas inglés UPS) el microkernel es advertido cuando la caída de energía es detectada, entonces este
coordina un cierre ordenado del sistema, el cual incluye la advertencia a los dispositivos de Entrada/Salida
de la caída de la energía y permitir entonces restaurarse consecuentemente.
Puesto que el Microkernel está involucrado en la mayoría de las acciones asumidas por el Sistema
Operativo, las porciones críticas de este son escritas en lenguaje ensamblador para garantizar que este
http://www.monografias.com/trabajos4/acciones/acciones.shtmlhttp://www.monografias.com/trabajos13/mapro/mapro.shtmlhttp://www.monografias.com/trabajos4/refrec/refrec.shtmlhttp://www.monografias.com/trabajos35/concepto-de-lenguaje/concepto-de-lenguaje.shtmlhttp://www.monografias.com/trabajos14/lenguaje-ensamblador/lenguaje-ensamblador.shtmlhttp://www.monografias.com/trabajos14/lenguaje-ensamblador/lenguaje-ensamblador.shtmlhttp://www.monografias.com/trabajos35/concepto-de-lenguaje/concepto-de-lenguaje.shtmlhttp://www.monografias.com/trabajos4/refrec/refrec.shtmlhttp://www.monografias.com/trabajos13/mapro/mapro.shtmlhttp://www.monografias.com/trabajos4/acciones/acciones.shtml
-
8/19/2019 SISOPE 1 - TRABAJO 1
10/24
Sistemas Operativos I
Escuela de Ingeniería Informática Universidad Nacional de Trujillo
Mario Fernando Vásquez Alvarado10 de 24
pueda correr lo más rápido y eficientemente posible, lo que trae consigo que su optimización sea un factor
crítico de funcionamiento cuando el sistema es portado a diferentes arquitecturas.
El microkernel está situado en el corazón de Windows, trabaja muy estrechamente con el HAL (Nivel de
Abstracción de Hardware), este planifica la ejecución de hilos y manipula las interrupciones y excepciones
de procesos. El papel de este es mantener a los procesadores lo mas ocupado posible. En sentido general este
se encarga de las funciones más básicas de todo el SO, como son:
Ejecución de subprocesos.
Sincronización multiprocesador.
Manejo de las interrupciones de hardware.
1.3 El Ejecutor de Windows.
El Ejecutor de Windows se encarga de las tareas importantes, las que son de vital importancia para el
sistema completo, ya que el microkernel está casi siempre demasiado ocupado para dirigirse directamente.
Una definición clara es que el Ejecutor de Windows provee los fundamentos del sistema operativo que seránsuministradas a todas las aplicaciones que corren sobre el sistema. Este incluye servicios como
la Administración de Objetos, de Memoria virtual, de Entrada-Salida y de Procesos.
El Ejecutor de Windows corre exclusivamente en Modo Kernel y es llamado por los subsistemas de ambiente
protegido cuando estos necesitan de sus servicios. Debido a la jerarquía de Windows las aplicaciones que
corren en Modo Usuario no pueden llamar segmentos del Ejecutor de Windows directamente, sino servicios
de demanda de los subsistemas de ambiente (explicado en capítulos posteriores), como Win32 y POSIX los
que a su vez se encargan de llamar los componentes del Ejecutor de Windows.
1.4 El Administrador de Objetos.
El Administrador de Objetos (Object Manager) es usado para crear, modificar y eliminar objetos (tipos dedatos abstractos que son usados para representar recursos del Sistema Operativo) usados por todos los
sistemas que conforman el Ejecutor de Windows. Este también proporciona información sobre el estado de
los objetos a todo el Sistema Operativo.
Los objetos pueden ser cosas concretas, tales como puertos de dispositivos, o pueden ser más abstractos
como hilos. Cuando un objeto es creado a este se le da un nombre por el cual otros programas pueden
accederle. Cuando un proceso necesita acceder al objeto este solicita un tratamiento de objeto al
administrador de objetos. El manipulador de objetos suministra un puntero que es usado para localizar al
objeto, así como una información de controlde acceso que dice como se puede acceder a el. Esta
información de control de acceso es suministrada por el subsistema de seguridad (tema que se abordará en
próximos temas).
Este también se asegura que los objetos no consuman muchos recursos (por lo regular la memoria),
manteniendo cuotas para los diferentes tipos de objetos.
Además el Administrador de Objetos se encarga de limpiar objetos huérfanos (objetos que parecen no tener
dueño), esto es conocido como recolección de basura. La carencia de esta facilidad en Windows 3.x era la
http://www.monografias.com/trabajos5/ancar/ancar.shtmlhttp://www.monografias.com/trabajos36/administracion-y-gerencia/administracion-y-gerencia.shtmlhttp://www.monografias.com/trabajos10/gesmem/gesmem.shtml#VIRTUhttp://www.monografias.com/trabajos/ofertaydemanda/ofertaydemanda.shtmlhttp://www.monografias.com/trabajos10/habi/habi.shtmlhttp://www.monografias.com/trabajos11/basdat/basdat.shtmlhttp://www.monografias.com/trabajos11/basdat/basdat.shtmlhttp://www.monografias.com/trabajos12/elorigest/elorigest.shtmlhttp://www.monografias.com/trabajos14/control/control.shtmlhttp://www.monografias.com/trabajos11/recibas/recibas.shtmlhttp://www.monografias.com/trabajos11/recibas/recibas.shtmlhttp://www.monografias.com/trabajos14/control/control.shtmlhttp://www.monografias.com/trabajos12/elorigest/elorigest.shtmlhttp://www.monografias.com/trabajos11/basdat/basdat.shtmlhttp://www.monografias.com/trabajos11/basdat/basdat.shtmlhttp://www.monografias.com/trabajos10/habi/habi.shtmlhttp://www.monografias.com/trabajos/ofertaydemanda/ofertaydemanda.shtmlhttp://www.monografias.com/trabajos10/gesmem/gesmem.shtml#VIRTUhttp://www.monografias.com/trabajos36/administracion-y-gerencia/administracion-y-gerencia.shtmlhttp://www.monografias.com/trabajos5/ancar/ancar.shtml
-
8/19/2019 SISOPE 1 - TRABAJO 1
11/24
Sistemas Operativos I
Escuela de Ingeniería Informática Universidad Nacional de Trujillo
Mario Fernando Vásquez Alvarado11 de 24
causa de muchos problemas, ya que cuando un programa colapsaba o manipulaba incorrectamente los
recursos del sistema, los recursos consumidos por este no eran devueltos al sistema para que volvieran a
estar disponibles produciendo un error por falta de recursos del sistema. De hecho esto era un escape de
memoria.
A modo de resumen el Administrador de Objetos se encarga de crear, destruir y gestionar todos los objetos
del Ejecutor de Windows.
1.5 El Administrador de Procesos.
El Administrador de Procesos (Process Manager) es el responsable de crear, quitar y modificar los estados de
todos los procesos e hilos. Este también proporciona información sobre el estado de procesos e hilos al resto
del sistema.
Un proceso, por la definición, incluye un espacio de dirección virtual, uno o más hilos, un segmento de
código del programa ejecutable, y un conjunto de recursos del sistema. Un hilo es un objeto ejecutable que
pertenece a un solo proceso y contiene a un contador del programa que apunta a su posición actual en el
segmento de código ejecutable del proceso, dos pilas, y un conjunto de valores del registro.
El Administrador de Procesos, como todos los miembros del Ejecutor de Windows, juega un papel vital en el
funcionamiento del sistema entero. Cuando una aplicación comienza su ejecución, se crea como un proceso
lo que requiere una llamada al Administrador de Procesos. Como todo proceso debe tener por lo menos un
hilo, el Administrador de Procesos es invocado de nuevo para crear el hilo.
El Administrador de Procesos se usa para manejar los hilos, pero no tiene su propio conjunto
de políticas sobre cómo planificar la ejecución de procesos e hilos. Estas políticas son determinadas por el
propio microkernel.
El administrador de Procesos (Process Manager) es el responsable de crear, quitar y modificar los estados de
todos los procesos e hilos, así como de proporcionar información sobre el estado de procesos e hilos al restodel sistema.
1.6 El Administrador de Memoria Virtual.
El Administrador de Memoria Virtual (Virtual Memory Manager o VMM) proporciona la gestión de
memoria virtual del sistema. La memoria virtual es un esquema que permite usar los recursos del disco en
lugar de la memoria física del sistema moviendo las páginas al disco cuando estas no están siendo usadas y
recuperándolas cuando se les necesitan. Este es un segmento integral de Windows el cual asigna espacios de
direcciones de 32 bit a cada proceso sin preocuparse de la cantidad de memoria física del sistema.
A cada proceso se asigna un espacio de memoria virtual de 4GB. De este espacio, los dos giga bites
superiores son reservados para el uso del sistema, mientras que los otros dos giga bites restantes son para el
uso del proceso. El Administrador de Memoria Virtual es el responsable de traducir las direcciones de
memoria del proceso a las direcciones de memoria reales del sistema. Si la dirección de memoria del proceso
hace referencia a un segmento de memoria que ha sido paginada hacia el disco, el Administrador de
Memoria Virtual recupera la página del disco.
El Administrador de Memoria Virtual se encarga de todo lo relacionado con la política de gestión de la
http://www.monografias.com/trabajos15/calidad-serv/calidad-serv.shtml#PLANThttp://www.monografias.com/Computacion/Programacion/http://www.monografias.com/trabajos12/elorigest/elorigest.shtmlhttp://www.monografias.com/trabajos11/pila/pila.shtmlhttp://www.monografias.com/trabajos14/nuevmicro/nuevmicro.shtmlhttp://www.monografias.com/trabajos7/regi/regi.shtmlhttp://www.monografias.com/trabajos10/poli/poli.shtmlhttp://www.monografias.com/Fisica/index.shtmlhttp://www.monografias.com/Politica/index.shtmlhttp://www.monografias.com/Politica/index.shtmlhttp://www.monografias.com/Fisica/index.shtmlhttp://www.monografias.com/trabajos10/poli/poli.shtmlhttp://www.monografias.com/trabajos7/regi/regi.shtmlhttp://www.monografias.com/trabajos14/nuevmicro/nuevmicro.shtmlhttp://www.monografias.com/trabajos11/pila/pila.shtmlhttp://www.monografias.com/trabajos12/elorigest/elorigest.shtmlhttp://www.monografias.com/Computacion/Programacion/http://www.monografias.com/trabajos15/calidad-serv/calidad-serv.shtml#PLANT
-
8/19/2019 SISOPE 1 - TRABAJO 1
12/24
Sistemas Operativos I
Escuela de Ingeniería Informática Universidad Nacional de Trujillo
Mario Fernando Vásquez Alvarado12 de 24
memoria, determina los conjuntos de trabajo de cada proceso, mantiene un conjunto de páginas libres, elige
páginas que se van a pasar a la memoria real, sube y baja páginas entre la memoria RAM y elarchivo de
intercambio en disco.
1.7 Servicios de Llamadas a Procedimientos Locales.
El Servicio de Llamadas a Procedimientos Locales (Local Procedure Call Facility o LPC) se integran al diseñocliente/servidor de Windows. Este es la interfaz entre todos los procesos clientes y servidores que corren
localmente en el sistema.
La estructura del Servicio de Llamadas a Procedimientos Locales es muy similar a la de las llamadas a
Procedimientos Remotos (RPC), excepto que esta está optimizada y solamente soporta comunicación entre
procesos clientes y servidores localmente. Más específicamente, el LPC es un mecanismo que permite a dos
hilos en procesos diferentes intercambiar información.
Recuerde que nosotros dijimos que el subsistema de Win32 es una aplicación que corre en el Modo Usuario
y correrá en su propio espacio de memoria. Cuando un programa se quiere comunicar con el subsistema
Win32 para solicitar servicios, llama una función desde la DLL apropiada, esta función entonces usa la LPCpara pasar la petición al subsistema de procesos Win32, la que procesa la demanda y realiza
la acción pedida y devuelve un mensaje de realización a través de la LPC.
El Servicio de Llamadas a Procedimientos Locales es el módulo que se encarga de recibir y enviar las
llamadas de procedimiento locales entre las aplicaciones cliente y los subsistemas servidores.
1.8 El Monitor de Seguridad.
El Monitor de Seguridad (Security Reference Monitor o SRM) es el lecho de toda la seguridad dentro del
sistema WINDOWS y es el responsable de hacer cumplir todas las políticas de seguridad en
la computadora local.
Este componente trabaja conjuntamente con los subsistemas de tiempo de corrida, proceso de conexión al
sistema (conocido como logon process) y control de la seguridad local (local security authority). Cuando un
usuario intenta conectarse al sistema su identidad es verificada, el subsistema de proceso de conexión pide
una ficha de acceso de seguridad (conocido por sus siglas en inglés SAT o security access token) del usuario.
El SAT contiene una lista de los privilegios de usuarios y grupos. Este se usa como llave para ese usuario
durante la sesión de conexión. Siempre que el usuario quiera hacer algo, el SAT es presentado y usado para
determinar si el usuario puede realizar las acciones.
Este componente trabaja estrechamente con el Administrador de Objetos. Cada vez que un usuario intenta
acceder a un objeto el Administrador de Objetos crea un manipulador para acceder a este y llama al SRM
para determinar el nivel de acceso concedido por el manipulador. El SRM usa información contenida en laficha de acceso del usuario y lo compara con la lista de control de accesos sobre el objeto para ver si al
usuario debe concederse el nivel de acceso pedido. De esta forma el SRM tiene el control de la seguridad de
acceso de todos los objetos en el sistema.
1.9 El Administrador de Entrada-Salida.
El Administrador de Entrada-Salida (I/O Manager) es responsable de gestionar la comunicación entre los
http://www.monografias.com/trabajos10/historix/historix.shtmlhttp://www.monografias.com/trabajos11/memoram/memoram.shtmlhttp://www.monografias.com/trabajos7/arch/arch.shtmlhttp://www.monografias.com/trabajos13/mapro/mapro.shtmlhttp://www.monografias.com/trabajos14/verific-servicios/verific-servicios.shtmlhttp://www.monografias.com/trabajos7/mafu/mafu.shtmlhttp://www.monografias.com/trabajos35/categoria-accion/categoria-accion.shtmlhttp://www.monografias.com/trabajos5/losperif/losperif2.shtml#monihttp://www.monografias.com/trabajos15/computadoras/computadoras.shtmlhttp://www.monografias.com/trabajos14/cambcult/cambcult.shtmlhttp://www.monografias.com/trabajos5/basede/basede.shtmlhttp://www.monografias.com/trabajos11/grupo/grupo.shtmlhttp://www.monografias.com/trabajos11/grupo/grupo.shtmlhttp://www.monografias.com/trabajos5/basede/basede.shtmlhttp://www.monografias.com/trabajos14/cambcult/cambcult.shtmlhttp://www.monografias.com/trabajos15/computadoras/computadoras.shtmlhttp://www.monografias.com/trabajos5/losperif/losperif2.shtml#monihttp://www.monografias.com/trabajos35/categoria-accion/categoria-accion.shtmlhttp://www.monografias.com/trabajos7/mafu/mafu.shtmlhttp://www.monografias.com/trabajos14/verific-servicios/verific-servicios.shtmlhttp://www.monografias.com/trabajos13/mapro/mapro.shtmlhttp://www.monografias.com/trabajos7/arch/arch.shtmlhttp://www.monografias.com/trabajos11/memoram/memoram.shtmlhttp://www.monografias.com/trabajos10/historix/historix.shtml
-
8/19/2019 SISOPE 1 - TRABAJO 1
13/24
Sistemas Operativos I
Escuela de Ingeniería Informática Universidad Nacional de Trujillo
Mario Fernando Vásquez Alvarado13 de 24
distintos drivers de dispositivo, para lo cual implementa una interfaz bien definida que permite el
tratamiento de todos los drivers de una manera homogénea, sin que intervenga el cómo funciona
específicamente cada uno. Tiene una serie de subcomponentes que son:
Driver del Sistema de Archivos: este se encarga de establecer la comunicación con los drivers de los
Sistemas de Ficheros, ya que el sistema permite la coexistencia de múltiples Sistemas de Archivos en
diferentes particiones lógicas de la misma unidad física.
El servidor y el redirector de red.
Los drivers de dispositivo del sistema.
El administrador de caches (Cache Manager): este se encarga de manipular la cache para todo el Sistema
de Entrada y Salida. Este es un métodoque utilizan los sistemas de archivos para mejorar su rendimiento,
donde en lugar de leer y escribir en disco un fichero usado frecuentemente este se almacena en una
cache de memoria y la lectura y escritura de estos ficheros se realiza desde memoria. Este componente se
encarga de la magia negra que es a menudo necesaria para hacer que varios dispositivos se comuniquen
entre si y convivan juntos en un segmento. El Administrador de Entrada-Salida (I/O Manager) es
responsable de gestionar la comunicación entre los distintos drivers de dispositivo.
2.Modo Usuario:
2.1 Subsistemas de Ambiente Protegido
Dos de los objetivos de WINDOWS son personalidad y compatibilidad. Esto ha sido logrado a través de los
subsistemas de ambiente protegido.
La personalidad esencialmente significa que WINDOWS expone múltiples conjuntos de interfaces de
programas de aplicación (APIs) y puede actuar eficazmente como si fuera un sistema operativo diferente.
WINDOWS viene con una personalidad POSIX y OS/2 además de sus personalidades Win32, Win16 y DOS.
En WINDOWS, hay tres subsistemas de ambiente protegido:
El subsistema de Win32
El subsistema de POSIX
El subsistema de OS/2
Aunque algunas veces se muestran las personalidades Win16 y DOS incluidas en una lista de subsistemas
de ambiente protegido, ellas realmente son parte del subsistema Win32.
Los subsistemas de ambiente protegido actúan como los mediadores entre las aplicaciones del Modo Usuario
y el Ejecutor de Windows.
Recuerde que el Ejecutor de Windows y todos sus componentes viven en el Modo Privilegiado o Modo
Kernel, mientras que todos los demás viven en el Modo Usuario, esto incluye todos los subsistemas de
ambiente. Cuando una aplicación hace una llamada a un subsistema de ambiente, este es pasado a través de
una capa de servicios del Ejecutor de Windows.
Cada subsistema de ambiente guarda huella de sus propios procesos y trabaja independientemente de los
otros subsistemas. Cada aplicación sólo puede correr en el subsistema para el cual fue diseñado. Cuando
http://www.monografias.com/trabajos/lacomunica/lacomunica.shtmlhttp://www.monografias.com/Computacion/Redes/http://www.monografias.com/trabajos11/metods/metods.shtmlhttp://www.monografias.com/trabajos16/metodo-lecto-escritura/metodo-lecto-escritura.shtmlhttp://www.monografias.com/trabajos16/metodo-lecto-escritura/metodo-lecto-escritura.shtmlhttp://www.monografias.com/trabajos14/personalidad/personalidad.shtmlhttp://www.monografias.com/trabajos14/personalidad/personalidad.shtmlhttp://www.monografias.com/trabajos16/metodo-lecto-escritura/metodo-lecto-escritura.shtmlhttp://www.monografias.com/trabajos16/metodo-lecto-escritura/metodo-lecto-escritura.shtmlhttp://www.monografias.com/trabajos11/metods/metods.shtmlhttp://www.monografias.com/Computacion/Redes/http://www.monografias.com/trabajos/lacomunica/lacomunica.shtml
-
8/19/2019 SISOPE 1 - TRABAJO 1
14/24
Sistemas Operativos I
Escuela de Ingeniería Informática Universidad Nacional de Trujillo
Mario Fernando Vásquez Alvarado14 de 24
usted inicia una aplicación en WINDOWS, mira el encabezamiento representado por el archivo y determina
en cuál subsistema ejecutar la aplicación.
2.2 El Subsistema Win32
Win32 es el subsistema nativo y primario de WINDOWS. Las bases para este subsistema es el conjunto de
APIs de Win32. Muchos de estas API son extensiones directas de sus homólogas Win16.
Este subsistema actúa como un servidor para todos los otros subsistemas de ambiente soportados en
WINDOWS, los que actúan como clientes y traducen sus llamadas API hacia las API apropiadas de Win32.
El subsistema Win32 es responsable de toda la entrada y salida. Este posee el control de la pantalla,
el teclado, y el ratón. Cuando otros subsistemas, como OS/2 o POSIX, necesitan beneficiarse de estos
dispositivos, ellos piden los servicios al subsistema de Win32.
Algunos de los objetivos que se trazaron para mantener la compatibilidad con las aplicaciones hechas en
versiones anteriores fueron:
Permitir que los programas hechos sobre DOS pudieran correr sin modificación. Suministrar la capacidad para ejecutar la mayoría de las aplicaciones Windows de 16 bits sin
modificación
Proteger al sistema y otras aplicaciones de 32 bits de la interferencia de las aplicaciones de 16 bits y
DOS.
Permitir a las plataformas RISC (Reduced Instruction set Computer, microprocesador cuyo número de
instrucciones es reducido para lograr una frecuencia más alta de trabajo) ejecutar aplicaciones
Windows de 16 bits y DOS.
Suministrar un mecanismo para compartir datos entre aplicaciones Windows de 32 y 16 bits.
Muchas personas piensan en Windows 3.x como un Sistema Operativo. Técnicamente, no es un verdaderoSistema Operativo, sino una interfaz de usuario que es miembro del DOS, el verdadero Sistema Operativo.
Así que, el primer paso en proporcionar compatibilidad fue crear un ambiente de DOS. El ambiente de DOS
en WINDOWS se llama la máquina virtual de DOS (Machine DOS Virtual o VDM). El VDM es una
aplicación de modo usuario de 32 bits el cual solicita los servicios del subsistema de Win32 y en ocasiones
directamente a la capa de servicios del sistema. Es basado en DOS 5.0.
WINDOWS permite ejecutar tantas aplicaciones de DOS como uno desee, donde cada aplicación corre en su
propio VDM. Puesto que los VDMs son nada más que procesos normales bajo WINDOWS, ellos también son
multitarea preventiva al igual que otros procesos en el sistema. Por consiguiente, puede decirse que
WINDOWS permite la multitarea preventiva de programas de DOS.
Uno de los rasgos adicionales del VDM es que le da 620 KB de memoria "convencional" libre al usuario. Lo
milagroso sobre esto es que también da a las aplicaciones de DOS soporte de ratón, red, y CD-ROM.
El Subsistema Win32 es el más importante, ya que atiende no sólo a las aplicaciones nativas de Windows,
sino que para aquellos programas no Win32, reconoce su tipo y los lanza hacia el subsistema
correspondiente. En el caso de que la aplicación sea MS-DOS o Windows de 16 bits (Windows 3.11 e
http://www.monografias.com/trabajos5/sisope/sisope2.shtml#teclahttp://www.monografias.com/trabajos12/microco/microco.shtmlhttp://www.monografias.com/trabajos11/basda/basda.shtmlhttp://www.monografias.com/trabajos/multimediaycd/multimediaycd.shtmlhttp://www.monografias.com/trabajos/multimediaycd/multimediaycd.shtmlhttp://www.monografias.com/trabajos11/basda/basda.shtmlhttp://www.monografias.com/trabajos12/microco/microco.shtmlhttp://www.monografias.com/trabajos5/sisope/sisope2.shtml#tecla
-
8/19/2019 SISOPE 1 - TRABAJO 1
15/24
Sistemas Operativos I
Escuela de Ingeniería Informática Universidad Nacional de Trujillo
Mario Fernando Vásquez Alvarado15 de 24
inferiores), lo que hace es crear un nuevo subsistema protegido. Así, la aplicación DOS o Win16 se
ejecutaría en el contexto de un proceso llamado VDM (Virtual DOS Machine, máquina virtual DOS), que no
es más que un simulador de un ordenador funcionando bajo MS-DOS. El subsistema soporta una buena
parte del API Win32. Así, se encarga de todo lo relacionado con la interfaz gráfica con el usuario (GUI),
controlando las entradas del usuario y salidas de la aplicación.
2.3 El Subsistema POSIX.
Microsoft prestó mucha atención a los diferentes estándares de sistemas abiertos cuando Windows NT
estaba en vía de desarrollo. Ellos reconocieron el valor de soportar sistemas abiertos como un método para
ganar aceptación de su nuevo sistema operativo avanzado dentro del mercado.
Uno de los estándares más frecuentemente citados soportados por Windows es el POSIX (Interfaz de Sistema
operativo Portable Basado en Unix), el cual representa la interfaz del Sistema Operativo portable y fue
desarrollado por el IEEE (Instituto de Ingenieros en Electricidad y Electrónica) como un método de
proporcionar portabilidad a las aplicaciones hechas sobre plataformas UNIX. No obstante, POSIX se ha
integrado en muchos sistemas no UNIX.
Existen muchos niveles de obediencia con POSIX. Estos niveles representan un conjunto de evoluciones de
propuestas, aunque no todas han sido aprobadas como estándares.
El subsistema de POSIX requiere un mínimo de servicios que son proporcionados por WINDOWS. Cuando
una aplicación de POSIX corre en WINDOWS, el subsistema es cargado y traduce las llamadas API
del lenguaje C, requeridas para soportarlo en llamadas a APIs de Win32 las que son servidas por el
subsistema Win32.
Debido a la naturaleza limitada, el subsistema de POSIX en WINDOWS no suministra soporte para gestión
de redes o sistema de seguridad.
El Subsistema POSIX interacciona con el Ejecutor de Windows. Se encarga de definir aspectos específicos delSistema Operativo UNIX, como pueden ser las relaciones jerárquicas entre procesos padres e hijos (las
cuales no existen en el subsistema Win32, por ejemplo, y que por consiguiente no aparecen implementadas
directamente en el Ejecutor de Windows).
2.4 El Subsistema OS/2.
El subsistema de OS/2 está implementado como un subsistema de ambiente protegido, parecido al
subsistema POSIX. Este traduce las llamadas API de OS/2 en llamadas a APIs de Win32 que son servidas por
el subsistema de Win32.
El subsistema y sus aplicaciones corren en su propio espacio de memoria protegido de 32 bits y constituyen
multitarea preventiva unas respecto a otras y respecto a otras aplicaciones que corren en el sistema.
Además de un conjunto de motores APIs de OS/2, el subsistema implementa muchos APIs gestores
de LAN (Red de Área Local), incluyendo tuberías, NETBIOS y mailslots. De esta manera difiere del subsistema
POSIX ya que este no posee soporte para gestión de redes.
El Subsistema OS/2 igual que el subsistema POSIX proporciona un entorno para aplicaciones UNIX, este
http://www.monografias.com/trabajos14/deficitsuperavit/deficitsuperavit.shtmlhttp://www.monografias.com/trabajos14/nuevmicro/nuevmicro.shtmlhttp://www.monografias.com/trabajos10/nofu/nofu.shtmlhttp://www.monografias.com/trabajos5/electro/electro.shtmlhttp://www.monografias.com/trabajos4/lenguajec/lenguajec.shtmlhttp://www.monografias.com/trabajos36/naturaleza/naturaleza.shtmlhttp://www.monografias.com/trabajos10/motore/motore.shtmlhttp://www.monografias.com/trabajos15/redes-clasif/redes-clasif.shtmlhttp://www.monografias.com/trabajos15/redes-clasif/redes-clasif.shtmlhttp://www.monografias.com/trabajos10/motore/motore.shtmlhttp://www.monografias.com/trabajos36/naturaleza/naturaleza.shtmlhttp://www.monografias.com/trabajos4/lenguajec/lenguajec.shtmlhttp://www.monografias.com/trabajos5/electro/electro.shtmlhttp://www.monografias.com/trabajos10/nofu/nofu.shtmlhttp://www.monografias.com/trabajos14/nuevmicro/nuevmicro.shtmlhttp://www.monografias.com/trabajos14/deficitsuperavit/deficitsuperavit.shtml
-
8/19/2019 SISOPE 1 - TRABAJO 1
16/24
Sistemas Operativos I
Escuela de Ingeniería Informática Universidad Nacional de Trujillo
Mario Fernando Vásquez Alvarado16 de 24
subsistema da soporte a las aplicaciones OS/2. Proporciona la
interfaz gráfica y las llamadas al sistema; las llamadas son servidas con ayuda del Ejecutor de Windows.
-
8/19/2019 SISOPE 1 - TRABAJO 1
17/24
Sistemas Operativos I
Escuela de Ingeniería Informática Universidad Nacional de Trujillo
Mario Fernando Vásquez Alvarado17 de 24
SISTEMA OPERATIVO OPEN SOURCE
En español Open Source significa (Código abierto), significa que el Sistema Operativo es de distribución
gratuita y su código es totalmente accesible por cualquier usuario para proponer mejoras y cosas por elestilo, un ejemplo de ello es Linux. Una de las razones por la que en ciertas oportunidades Microsoft es
criticado, a todos nos gusta lo gratuito ¿Como no? Pero aun así Windows sigue siendo el jefe, pues es muy
bueno.
LINUX
Linux se puede dividir generalmente en cuatro componentes principales: el núcleo(kernel), el shell, el
sistema de archivos y las utilidades. El núcleo es el programa medular que ejecuta programas y gestiona
dispositivos de hardware tales como los discos y las impresoras. El shell proporciona una interfaz para el
usuario. Recibe órdenes del usuario y las envía al núcleo para ser ejecutadas. El sistema de archivos,
organiza la forma en que se almacenan los archivos en dispositivos de almacenamientotales como los discos.
Los archivos están organizados en directorios. Cada directorio puede contener un número cualquiera de
subdirectorios, cada uno de los cuales puede a su vez, contener otros archivos. El núcleo, el shell y el sistema
de archivos forman en conjunto la estructura básica del sistema operativo. Con estos tres elementos puede
ejecutar programas, gestionar archivos e interactuar con el sistema. Además, Linux cuenta con unos
programas de software llamados utilidades que han pasado a ser considerados como características estándar
del sistema. Las utilidades son programas especializados, tales como editores, compiladores y programas de
comunicaciones, que realizan operaciones de computación estándar. Incluso uno mismo puede crear suspropias utilidades
http://2.bp.blogspot.com/_YqzjMwXdf5w/TKpREeVCmmI/AAAAAAAAAtM/n4B07jA4nhU/s1600/03-kernelpio.gif
-
8/19/2019 SISOPE 1 - TRABAJO 1
18/24
Sistemas Operativos I
Escuela de Ingeniería Informática Universidad Nacional de Trujillo
Mario Fernando Vásquez Alvarado18 de 24
Como una alternativa a la interfaz de la línea de ordenes, Linux proporciona una interfaz gráfica de usuario
(GUI) llamada X-Windows que cuenta con varios administradores de ventana que puede utilizar. Un
administrador de ventana trabaja de forma muy parecida a los GUI de Windows y del Mac, posee ventanas
iconos y menús, todos ellos gestionados por medio del ratón. Dos de los administradores de programas más
populares son el Free Virtual Window Manager y el Open Look Window Managger, además de los
administradores de ventanas X-Windows también utiliza un administrador de archivos y uno deprogramas.
El sistema de archivos de Linux organiza los archivos en directorios, de forma similar al DOS. Todo el
sistema de archivos de Linux es un gran conjunto interconectado de directorios que están organizado en
una estructura jerárquica de árbol. Linux posee un gran número de utilidades que se pueden clasificar en
tres categorías: editores, filtros y programas de comunicaciones. Y a diferencia de otros sistemas operativos
se distribuye de forma gratuita bajo una licencia publica de GNU de la Free Software Foundation (Fundación
de programas libres) lo que básicamente significa que puede ser copiado libremente, cambiado y distribuido
dejando siempre disponible el código fuente.
El software de Linux es frecuentemente desarrollado por varios usuarios que deciden trabajar
conjuntamente en un proyecto. Una vez que se ha completado se instala en una localización ftp de Internet.Cualquier usuario de Linux puede acceder a la localización y descargar el software.
EL SHELL
El shell proporciona una interfaz entre el núcleo y el usuario. Se puede describir como un intérprete:
interpreta las órdenes que introduce el usuario y las envía al núcleo. La interfaz del shell es muy sencilla.
Normalmente consiste en un inductor desde el que se teclea una orden y después se pulsa enter. En cierta
forma, se está tecleando una orden en una línea. A menudo, esta línea se conoce como la línea de órdenes.
http://1.bp.blogspot.com/_YqzjMwXdf5w/TKpUz8oXnoI/AAAAAAAAAtQ/KI8FhYyOpao/s1600/shell.png
-
8/19/2019 SISOPE 1 - TRABAJO 1
19/24
Sistemas Operativos I
Escuela de Ingeniería Informática Universidad Nacional de Trujillo
Mario Fernando Vásquez Alvarado19 de 24
Como una alternativa a la interfaz de la línea de órdenes, Linux proporciona una interfaz gráfica de
usuario(GUI) llamada X-Windows, que cuenta con varios administradores de ventanas que puede utilizar.
Dos de los administradores de ventanas más populares son el Free Virtual Window Manager (fvwm) y el
Open Look Window Manager (olwm).
Aunque un administrador de ventanas constituye una interfaz flexible y vistosa, hay que tener presente que
tan solo es un añadido al shell. El administrador de ventanas simplemente le pasa al shell las órdenes querecibe, éste las interpreta y las envía de nuevo al núcleo, para ser ejecutadas.
A lo largo de los años se han hido desarrollando varios tipos de diferentes de shell. En la actualidad, hay tres
shells principales: Bourne, Korn y C-shell. El shell Bourne fue desarrollado en el Laboratorio Bell para el
sistemaV. El C-shell fue desarrollado para la versión BSD del Unix. El shell Korn es una mejora y ampliación
del shell Bourne. Linux usa versiones mejoradas o de dominio público de estos shells: el shell Bourne Again,
el TC-shell y el shell Korn. Una ves que inicie su sistema Linux, se encontrará en el shell Bourne Again;
donde se podrá acceder a los demás.
SISTEMA DE ARCHIVOS
Los directorios están organizados en una estructura jerárquica de árbol, que empieza en un directorio raíz
(root) inicial. Todos los demás directorios se derivan, en última instancia, de este primer directorio raíz.
CARACTERISTICAS
• Multitarea: La palabra multitarea describe la habilidad de ejecutar varios programas al mismo tiempo.
LINUX utiliza la llamada multitarea preventiva, la cual asegura que todos los programas que se están
utilizando en un momento dado serán ejecutados, siendo el sistema operativo el encargado de ceder tiempo
de microprocesador a cada programa.
http://4.bp.blogspot.com/_YqzjMwXdf5w/TKpVS30MbTI/AAAAAAAAAtU/h5Dd5VYwJjA/s1600/fhs-esp.jpg
-
8/19/2019 SISOPE 1 - TRABAJO 1
20/24
Sistemas Operativos I
Escuela de Ingeniería Informática Universidad Nacional de Trujillo
Mario Fernando Vásquez Alvarado20 de 24
• Multiusuario: Muchos usuarios usando la misma maquina al mismo tiempo.
• Multiplataforma: Las plataformas en las que en un principio se puede utilizar Linux son 386-, 486-.
Pentium, Pentium Pro, Pentium II,Amiga y Atari, tambien existen versiones para su utilizacion en otras
plataformas, como Alpha, ARM, MIPS, PowerPC y SPARC.
• Multiprocesador: Soporte para sistemas con mas de un procesador esta disponible para Intel y SPARC.
• Funciona en modo protegido 386.
• Protección de la memoria entre procesos, de manera que uno de ellos no pueda colgar el sistema.
• Carga de ejecutables por demanda: Linux sólo lee del disco aquellas partes de un programa que están
siendo usadas actualmente.
• Política de copia en escritura para la compartición de páginas entre ejecutables: esto significa que varios
procesos pueden usar la misma zona de memoria para ejecutarse. Cuando alguno intenta escribir en esa
memoria, la página (4Kb de memoria) se copia a otro lugar. Esta política de copia en escritura tiene dos
beneficios: aumenta la velocidad y reduce el uso de memoria.
• Memoria virtual usando paginación (sin intercambio de procesos completos) a disco: A una partición o un
archivo en el sistema de archivos, o ambos, con la posibilidad de añadir más áreas de intercambio sobre la
marcha Un total de 16 zonas de intercambio de 128Mb de tamaño máximo pueden ser usadas en un
momento dado con un límite teórico de 2Gb para intercambio. Este limite se puede aumentar fácilmente con
el cambio de unas cuantas líneas en el código fuente.
• La memoria se gestiona como un recurso unificado para los programas de usuario y para el caché de
disco, de tal forma que toda la memoria libre puede ser usada para caché y ésta puede a su vez ser reducida
cuando se ejecuten grandes programas.
• Todo el código fuente está disponible, incluyendo el núcleo completo y todos los drivers, las herramientas
de desarrollo y todos los programas de usuario; además todo ello se puede distribuir libremente. Hay
algunos programas comerciales que están siendo ofrecidos para Linux actualmente sin código fuente, pero
todo lo que ha sido gratuito sigue siendo gratuito.
-
8/19/2019 SISOPE 1 - TRABAJO 1
21/24
Sistemas Operativos I
Escuela de Ingeniería Informática Universidad Nacional de Trujillo
Mario Fernando Vásquez Alvarado21 de 24
• Emulación de 387 en el núcleo, de tal forma que los programas no tengan que hacer su propia emulación
matemática. Cualquier máquina que ejecute Linux parecerá dotada de coprocesador matemático. Por
supuesto, si el ordenador ya tiene una FPU (unidad de coma flotante), esta será usada en lugar de laemulación, pudiendo incluso compilar tu propio kernel sin la emulación matemática y conseguir un
pequeño ahorro de memoria.
• Soporte para muchos teclados nacionales o adaptados y es bastante fácil añadir nuevos dinámicamente.
• Consolas virtuales múltiples: varias sesiones de login a través de la consola entre las que se puede cambiar
con las combinaciones adecuadas de teclas (totalmente independiente del hardware de video). Se crean
dinámicamente y puedes tener hasta 64.
• Acceso transparente a particiones MS-DOS (o a particiones OS/2 FAT) mediante un sistema de archivosespecial: no es necesario ningún comando especial para usar la partición MS-DOS, esta parece un sistema
de archivos normal de Unix (excepto por algunas restricciones en los nombres de archivo, permisos, y esas
cosas). Las particiones comprimidas de MS-DOS 6 no son accesibles en este momento, y no se espera que lo
sean en el futuro. El soporte para VFAT (WNT, Windows 95) ha sido añadido al núcleo de desarrollo y estará
en la próxima versión estable.
• Un sistema de archivos especial llamado UMSDOS que permite que Linux sea instalado en un sistema de
archivos DOS.
http://3.bp.blogspot.com/_YqzjMwXdf5w/TKpZHwkJqsI/AAAAAAAAAtg/Tem5gVEBv04/s1600/linux-netbook.png
-
8/19/2019 SISOPE 1 - TRABAJO 1
22/24
Sistemas Operativos I
Escuela de Ingeniería Informática Universidad Nacional de Trujillo
Mario Fernando Vásquez Alvarado22 de 24
• Sistema de archivos de CD-ROM que lee todos los formatos estándar de CD-ROM.
• TCP/IP, incluyendo ftp, telnet, NFS, etc.
• Diversos protocolos de red incluidos en el kernel: TCP, IPv4, IPv6, AX.25, X.25, IPX, DDP, Netrom, etc.
CARACTERISTICAS GENERALES
Linux es un kernel monolítico
Es capaz de linkar módulos en tiempo de ejecución
No está diseñado a partir de hilos de núcleo
Tiene un diseño reentrante de modo que pueden existir varios procesos en modo núcleo 'ejecutándose' a la
vez.
Tiene soporte para aplicaciones de usuario multihilo
Compatible con estándares: POSIX, las APIs del UNIX SysV y los sockets BSDAdmite multiproceso simétrico (SMP)
No expropiativo
SEGURIDAD
Se debe tener cuidado con esté sistema. Verificando los registros (logs) del sistema, tales como
/var/log/messages y no perder de vista el sistema.
Se debe tener el sistema actualizado, estar seguro de que se ha instalado las versiones actuales de los
programas y estar al tanto de las nuevas alertas de seguridad.
http://4.bp.blogspot.com/_YqzjMwXdf5w/TKpW_OeuiKI/AAAAAAAAAtY/SFrkfeZDICY/s1600/linux-desbloquear-cd.png
-
8/19/2019 SISOPE 1 - TRABAJO 1
23/24
Sistemas Operativos I
Escuela de Ingeniería Informática Universidad Nacional de Trujillo
Mario Fernando Vásquez Alvarado23 de 24
Filosofías contradictorias
El software libre aboga por dar libertad al usuario para que pueda utilizar el software como más le
convenga: modificarlo y distribuirlo, o mejorarlo y venderlo, solucionar errores... lo que necesite. Es
software que apuesta por el bien común: se pueden mejorar aplicaciones hechas por otros desarrolladores;
lo cual lleva a que invirtiendo el mismo tiempo se crean aplicaciones mejores ya que no hay que comenzar a
desarrollarlas desde cero.
El software propietario limita el uso que podemos hacer del software a ciertas condiciones bajo la licencia
que compramos. Habitualmente no permite realizar copias ni usar una licencia en más de un ordenador al
mismo tiempo. Se debe a que han realizado una inversión en investigación, desarrollo, pruebas... y deben
proteger su trabajo para que nadie lo copie y puedan desarrollar productos similares ahorrando ese trabajo
previo.
¿Tienen sentido las restricciones del software propietario?
Cuando el desarrollo de un software crea una nueva tecnología (útil) es lógico que el creador quiera
proteger su trabajo ya que ha realizado una inversión en investigación, codificación, pruebas... que debe
añadir al precio del software. Si libera ese software cualquier otro desarrollador estaría en ventaja ya que
podría lanzar un producto similar o mejor, usando esa tecnología y ahorrándose los costes que el
desarrollador inicial ha tenido para crearla.
Una empresa podría optar por desarrollar software libre, por ejemplo, cuando ya existe un software
propietario que lidera el mercado. Sería el caso de OpenOffice. Ofrecer un producto similar pero libre (y
gratuito) anima a muchos usuarios a cambiar de producto, consiguiendo una ventaja tanto para el usuario
(tiene un producto similar y gratuito) como para la empresa (más usuarios significa más soporte técnico,
más instalaciones, más personalizaciones...) y todos salen ganando.
¿Por qué el software libre es gratuito?
Ésta es una creencia errónea y bastante común. El software libre lo es porque no pone restricciones, porque
da libertad al usuario para usarlo; nada tiene que ver con el precio. Comúnmente se dice que hay que
entender el concepto de "libre" como uso libre y no como barra libre. La confusión se debe a que este
software suele ser gratuito, pero no es ningún requisito. Un programa libre puede ser de pago; el problema
es que, debido a las características del software libre, otro desarrollador podría modificarlo y distribuirlo a
un precio más bajo. Al final, el precio tiende a cero; y por eso tiene que tener otras formas de financiación,como ya vimos cuando hablamos de cómo genera dinero el software libre.
Existe software libre comercial; aplicaciones que se distribuyen bajo software libre para las que los
desarrolladores ofrecen contratos de mantenimiento. Más información en GNU
http://gratis.portalprogramas.com/OpenOffice.htmlhttp://www.portalprogramas.com/milbits/informatica/como-genera-dinero-el-software-libre.htmlhttp://www.gnu.org/philosophy/categories.es.html#TOCcommercialSoftwarehttp://www.gnu.org/philosophy/categories.es.html#TOCcommercialSoftwarehttp://www.portalprogramas.com/milbits/informatica/como-genera-dinero-el-software-libre.htmlhttp://gratis.portalprogramas.com/OpenOffice.html
-
8/19/2019 SISOPE 1 - TRABAJO 1
24/24
Sistemas Operativos I
Escuela de Ingeniería Informática Universidad Nacional de Trujillo
¿Qué ventajas ofrece el software propietario?
Al haber una inversión detrás se garantiza una calidad mínima del producto así como
actualizaciones periódicas. En el software libre es común que proyectos pequeños queden desactualizados.
De hecho, la mayoría del software más utilizado es software propietario y la mayoría no tienen software
libre que ofrezca las mismas características: Nero, Photoshop, AVG antivirus...Es más fácil encontrar personal con conocimientos de software propietario que de software libre: Office,
Nero, Excel... son programas más comunes que OpenOffice o InfraRecorder, por tanto no hay que invertir
tiempo en aprender a usarlos.
Al haber una empresa detrás, el software propietario da más seguridad. En general, es la percepción que se
tiene pero la realidad es que detrás del software libre también hay muchas empresas que proporcionan
soporte de software libre, que ya vimos que era una de las formas de financiar el software libre.
¿Es mejor usar software libre o software propietario?
No hay una respuesta clara porque depende las necesidades en cada caso. Para la mayoría de usuarios quebuscan aplicaciones gratuitas, tanto las aplicaciones freeware como el software libre cubrirán sus
necesidades. En el caso de que se esté dispuesto a pagar el coste de tener más funcionalidades o servicios
adicionales, el software propietario es una excelente opción.
Como ya hemos visto, hay mercados en los que el software propietario no tiene rival, el ejemplo más claro es
Photoshop: una licencia de este programa de edición de imágenes cuesta alrededor de 1.000 euros, mientras
que alternativas libres como Gimp, con muchas menos funcionalidades, son gratuitas.
http://gratis.portalprogramas.com/Nero.htmlhttp://gratis.portalprogramas.com/Photoshop.htmlhttp://www.portalprogramas.com/gratis/antivirushttp://gratis.portalprogramas.com/microsoft-office.htmlhttp://www.portalprogramas.com/milbits/informatica/como-genera-dinero-el-software-libre.htmlhttp://gratis.portalprogramas.com/Gimp.htmlhttp://gratis.portalprogramas.com/Gimp.htmlhttp://www.portalprogramas.com/milbits/informatica/como-genera-dinero-el-software-libre.htmlhttp://gratis.portalprogramas.com/microsoft-office.htmlhttp://www.portalprogramas.com/gratis/antivirushttp://gratis.portalprogramas.com/Photoshop.htmlhttp://gratis.portalprogramas.com/Nero.html