lunes, 29 de febrero de 2016

actividad 2 unidad 2

Clasificación de los Sistemas Operativos


Mediante este mapa conceptual podremos conocer el concepto del sistema operativo y así mismo la clasificación de ellos tomando en cuenta y el más importante para esta clase los sistemas operativos distribuidos. Primero definiremos que es un sistema operativo y es  un conjunto de sistemas y procedimientos que actúan como intermediarios entre el usuario y el hardware  de un computador  y su propósito es proporcionar un entorno en el cual el usuario pueda ejecutar programas.
Así mismo conoceremos  la clasificación de los sistemas operativos uno de ellos el sistema operativo por lotes este trabaja por bloques para desempeñar más rápido el trabajo y sea eficaz, otra clasificación es la monolítica Es  la  estructura  utilizada en los primeros SO en la que las  funciones  se implementan en el  kernel, por capas: Corresponde a una estructura  jerárquica que se divide en distintos niveles, maquina virtual: Se trata de un tipo de sistemas  operativos que presentan una interfaz a cada proceso, mostrando una máquina que parece idéntica a la maquina  real. 
El sistema operativo distribuido, es aquel que  desempeñan las mismas funciones que un sistema operativo normal, pero con la diferencia de trabajar en un entorno distribuido. Su Misión principal consiste en facilitar el acceso y la gestión de los recursos distribuidos en la red.
En un sistema operativo distribuido los usuarios pueden acceder a recursos remotos de la misma manera en que lo hacen para los recursos locales. Permiten distribuir trabajos, tareas o procesos, entre un conjunto de procesadores. Puede ser que este conjunto de procesadores esté en un equipo o en diferentes, lo cual es transparente para el usuario.
Entre los diferentes Sistemas Operativos distribuidos que existen tenemos los siguientes: Sprite, Solaris-MC, Mach, Chorus, Spring, Amoeba, Taos, etc.


Por su estructura interna
·          Monolítica: Es  la  estructura  utilizada en los primeros SO en la que las funciones  se implementan en el  kernel.
·          Por capas: Corresponde a una estructura  jerárquica que se divide en distintos niveles.
·          Maquina virtual: Se trata de un tipo de sistemas  operativos que presentan una interfaz a cada proceso, mostrando una máquina que parece idéntica a la maquina  real. 


Por los modos de explotación: maneras que puede  funcionar un SO

·          Procesamiento por lotes: Es la agrupación por bloques  de los  trabajos  similares, existe la ausencia  de interacción entre el usuario y el proceso mientras se  ejecuta.
·          Multiprogramación: El SO se encarga de distribuir  la carga  computacional entre los procesadores existentes, con el fin de  incrementar el procesamiento de la máquina.
·          Tiempo real: Un SO  en tiempo real  es aquel en el cual los resultados  son correctos  también es correcto  en el  tiempo que se producen los resultados.
·         Híbrido: Estos SO intentan ser  una mezcla    de los dos anteriores.

Por los servicios ofrecidos

Esta clasificación se tiene en cuenta la visión  del usuario  final 
Por el número de usuario:

·         Monousuario: Son aquellos que únicamente  soportan un usuario a la vez.
·          Multiusuario: Son capaces de dar  servicio  a  mas de un usuario a la vez

Por el número de tareas:
·         Monotarea:  son aquellas que solo permiten una tarea a la vez
·          Multitarea: Es aquella que  permite al usuario  estar realizando  varios  trabajos al mismo  tiempo.

Por el número de procesadores:

·         Monoproceso: Son los que  solamente permiten realizar un proceso a la vez
·         Multiproceso: son aquellos  que permiten realizar varios procesos simultáneamente y son  capaces de  ejecutar varias  tareas  al mismo tiempo.
Por la forma de ofrecer los servicios.

·         Sistema centralizado: Con este  tipo de modelo  los computadores  mainframe se encargaban de todo el procesamiento  y los usuarios manejaban únicamente terminales  tontas.
·         Sistemas de Red: Estos SO son aquellos que mantienen  a dos o mas computadoras  unidas  a través de un medio  de comunicación  con  el objetivo primordial  de poder  compartir  los diferentes recursos  y la  información  del sistema, cada computador mantienen  su propio SO.
·          Sistemas distribuidos: Son sistemas  cuasi-independientes  que permiten distribuir los trabajos, tareas  o procesos  entre  un conjunto  de procesadores .



Puede ocurrir  que  este  conjunto de procesadores se encuentren en el mismo equipo  o en equipos distintos.


ü  Nivel 1: consta de circuitos electrónicos, donde los objetos que se tratan son registros, celdas de memoria y puertas lógicas.
ü  Nivel 2: Es el conjunto de instrucciones del procesador. sumar, restar, cargar y depositar.
ü  Nivel 3: Añade el concepto de procedimiento o subrutina, así como las operaciones de llamada y retorno.
ü   Nivel 4: Introduce las interrupciones, las cuales hacen que el procesador salve el contexto actual. Estos primero cuatro niveles no forman parte del sistema operativo, sino que constituyen el hardware del procesador
ü  Nivel 5: En este nivel se introduce la noción de proceso como un programa en ejecución. La cual ofrece múltiples procesos se incluye la capacidad de suspender y reanudar los procesos.
ü   Nivel 6: Tiene que ver con los dispositivos de almacenamiento secundario del computador. Sus funciones de ubicación de cabeza de lectura y escritura.
ü  Nivel 7: Crea un espacio de direcciones lógicas para los procesos. Este nivel organiza bloques que se pueden mover entre la memoria principal y la memoria secundaria. Hasta este punto, el sistema operativo se ocupa de los recursos de un solo procesador.
ü  Nivel 8: Se dedica a la información y mensajes entre los procesadores. La herramienta mas potente es el tubo (pipe), que es un canal flujo de datos entre los procesos.
ü   Nivel 9: Da soporte al almacenamiento a largo plazo de los archivos con nombre. En este nivel los datos se contemplan en términos de entidades abstractas de longitud variable.
ü  Nivel 10: Es el que acceso a los dispositivos externos mediante interfaces estandarizadas.
ü  Nivel 11: Es responsable de mantener la asociación entre los identificadores externos e internos de los recursos y objetos del sistema. El identificador externo viene a ser un nombre que puede ser usado por un usuario.  El identificador interno es una dirección que se encarga el sistema operativo para ubicar y controlar un objeto.
ü  Nivel 12: proporciona servicios completos de soporte a los soportes. En este nivel se da soporte a toda la información necesaria de los procesos.
ü   Nivel 13: Ofrece al usuario una interfaz con el sistema operativo. Se denomina caparazón o Shell porque separa al usuario de los detalles y le presenta el sistema operativos como un simple conjunto de servicios











cuestionario unidad 2

¿Qué es un proceso?
en esencia un programa en ejecución, cada proceso tiene asociado un espacio de direcciones en una lista de ubicaciones que va desde algo mínimo hasta un cierto valor máximo.

Menciona las jerarquías de los procesos:
proceso padre
proceso hijo, etc.


Hay 4 eventos principales que provocan la creación de procesos. Menciónalos:

*arranque del sistema
*la ejecución, desde un proceso, de una llamada al sistema para la creación de procesos
*una petición de usuario para crear un proceso
*el inicio de un trabajo por lotes.


Una vez que se crea un proceso, empieza a ejecutarse y realiza el trabajo  al que está destinado. Este proceso tarde o temprano terminara, menciona bajo qué condiciones:

salida normal (voluntaria)
salida por error (voluntaria)
error fatal (voluntaria)
eliminada por otroproceso( voluntaria)


¿A que se refiere con un estado listo?

Ejecutable, se detuvo temporalmente para dejar que otro proceso se ejecute.


Menciona que es una transición en los procesos:

Un proceso puede encontrarse en estado de ejecución, bloqueado o listo (que también se llama ejecutable).  De estos estados de los procesos se derivan las transiciones y estados


¿Qué es un hilo?

Un hilo tendrá lo siguiente:

*Estado.
*Contexto del procesador. Punto en el que estamos ejecutando, la instrucción concretamente en la que nos hallamos. Es útil a la hora de reanudar un hilo que fue interrumpido con anterioridad, puesto que al guardar el contexto, guardamos la ultima instrucción que ejecutamos, y así podemos conocer por donde tenemos que continuar la ejecución del hilo.

*Pila de ejecución donde se irá metiendo y sacando instrucciones. (Lugar donde almacenaremos las instrucciones que van a ser ejecutadas).

*Espacio de almacenamiento estático donde almacenará las variables.


*Acceso a los recursos de la tarea, que son compartidos por todos los hilos de la tarea.

 ventajas:

*Se tarda menos tiempo en crear un hilo de una tarea existente que en crear un nuevo proceso.

*Se tarda menos tiempo en terminar un hilo que en terminar un proceso.

*Se tarda menos tiempo en cambiar entre dos hilos de una misma tarea que en cambiar entre dos procesos (porque los recursos no cambian, por ejemplo)

*Es mas sencillo la comunicación (paso de mensajes por ejemplo) entre hilos de una misma tarea que entre diferentes procesos.

*Cuando se cambia de un proceso a otro, tiene que intervenir el núcleo del sistema operativo para que haya protección. Cuando se cambia de un hilo a otro, puesto que la asignación de recursos es la misma, no hace falta que intervenga el sistema operativo.

¿Cuándo se implementa el modelo de procesos en el sistema operativo?


Debe contener una tabla ( un arreglo de estructuras), llamada tabla de procesos, con solo una entrada por cada proceso (llamadas bloques de control de procesos)

martes, 23 de febrero de 2016

cuestionario unidad 1

1.- ¿ Que es la multiprogramacion ?
El concepto de multiprogramación se refiere a la idea general de poder cargar múltiples programas dentro de un mismo computador para que sean ejecutados en un determinado momento. Para lograr manejar múltiples programas, es necesario primero definir que compone a un programa. En general, se puede decir que un programa está compuesto por dos partes: su representación en memoria que incluye el código, datos y stack del programa, y su estado de ejecución que incluye los valores almacenados en los registros de la CPU (PC, registros acumuladores, SP, Status register, etc.) que indican el estado actual del programa en la máquina. Para lograr trabajar con múltiples programas, entonces, es necesario permitir el manejo de múltiples representaciones en memoria y de múltiples estados de ejecución.

2.-  ¿ Que es spooling? ¿ Cree usted que las computadoras personales avanzadas tendrán spooiling como característica estándar en el futuro?

Otra característica importante de los sistemas operativos de tercera generación fue la capacidad para leer trabajos en tarjetas y colocarlos en el disco tan pronto como se llevaban al cuarto de computadoras.
Así, cada vez que terminaba un trabajo en ejecución, el sistema operativo podía cargar un nuevo trabajo del disco en la partición que entonces estaba vacía y lo ejecutaba.

NO,Ya que las máquinas 1401 no eran ya necesarias y desapareció la mayor parte del trabajo de transportar las cintas.

3.- En la primeras computadoras. cada byte de datos leídos o escritos se manejaban mediante la CPU ( es decir, no había DMA). ¿Que implicaciones tiene esto para la multiprogramacion?


La solución a la que se llegó fue dividir la memoria en varias secciones, con un trabajo distinto en cada partición. Mientras un trabajo estaba esperando que terminara su E/S, otro podía estar usando la CPU. Si se podían tener en la memoria principal suficientes trabajos a la vez, la CPU podía mantenerse ocupada casi todo el tiempo. Tener múltiples trabajos en la memoria a la vez requiere hardware especial para proteger cada trabajo contra espionaje o p por parte de los demás, pero la 360 y otros sistemas de tercera generación estaban equipados con este hardware.

 4.- La idea de una familia de computadoras fue introducida en la década de 1960 con las mainfranes IBM system/360 ¿ Esta muerta esta idea ahora o sigue en pie?


Se   mantiene   porque   a   partir   de   los años   60 se   produjo   la   invención   del circuito integrado o microchip, por parte de Jack St.Claire Kilby y Robert Noyce.



5.- Una razón por la cual las GUI no se adaptaron con rapidez en un principio fue el costo del hadware necesario para darles soporte. ¿Cuanta RAM de vídeo se necesita para dar soporte a una pantalla de texto monocromatico de 25 lineas x 80 caracteres?  4 KB de memoria RAM 
¿cuanta se necesita para un mapa  de bits de 1024 x 768 pixeles y colores 24 bits? 25165824
 ¿Cual fue el costo de esta RAM con precios de 1980 (5 dolares/KB)?  122880
¿ Cuanto vale ahora? 467001