miércoles, 27 de abril de 2016

CLASIFICACIÓN DE LOS SISTEMAS OPERATIVOS


  • S.O de Multiprogramación: Modo de funcionamiento disponible en algunos sitemas operativos, mediante el cuál una computadora procesa varias tareas al mismo tiempo. Se distinguen por sus habilidades para poder soportar la ejecución de dos o más trabajos activos al mismo tiempo.
  • S.O Monotareas: Es todo lo contrario a la multiprogramación; solo pueden manejar un proceso o solo puede realizar tareas de una en una.
  • S.O Monousuario: Solo puede atender a un solo usuario, por las limitaciones creadas por el hardware, los programas que se estén ejecutando.
  • S.O Multiusuario: Cumplen simultaneamente las necesidades de dos o más usuarios, que comparten el mismo recurso.
  • S.O por lotes: Procesan gran cantidad de trabajos con poca interacción entre los usuarios y programas en ejecución. Se reúnen todos los trabajos comunes para realizarlos al mismo tiempo, evitando la espera de dos o más trabajos como sucede en procesamiento en serie. 

ESTRUCTURA BÁSICA DEL SISTEMA OPERATIVO

Administración de Procesos: Un proceso es una entidad activa, mientras que un programa una entidad pasiva. Sabiendo entonces que es un proceso, podemos decir que el sistema operativo es el encargado de su administración, 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: Es un área de almacenamiento común a los procesadores y dispositivos, donde se almacenan programas, datos, etc. Administra 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: Se refiere 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.

KERNEL

El Kernel o núcleo de Linux se puede definir como el corazón de este sistema operativo. Es el encargado de que el software y el hardware del ordenador puedan trabajar juntos.

Las funciones más importantes del mismo, aunque no las únicas, son:

* Administración de la memoria para todos los programas y procesos en ejecución.
* Administración del tiempo de procesador que los programas y procesos en ejecucion utilizan.

* Es el encargado de que podamos acceder a los periféricos/elementos de nuestro ordenador de una manera cómoda.

miércoles, 20 de abril de 2016

S/O MULTIPROCESADOR PARALELOS Y DISTRIBUIDOS



Esta  clasificación de los sistemas  con barios procesadores  esta basada  en la maquina relaciona  con sus instrucciones de datos que tienen que procesar.

significado:


*SISD: (single,instruction,sigle data) se refiere a las computadoras convencionales  de von neuman.ejm pc's. en la categoría SISD esta la gran mayoría de las computadoras  existentes. son equipos con  un solo computador que trabajo con un solo dato  y a la vez,  a estos equipos se les llama también  computadores secuenciales .




 *SIMD:(single,instruction,multiple  data) arreglo de procesadores , cada procesador  sigue el conjunto de  de instrucciones , diferentes elementos  de información son signados  a cada procesador.utiliza memoria distribuida, son utilizada en redes neuronales.
Las computadoras tiene una sola unidad de control y múltiples unidades  unidades funcionales  . la unidad de control se encarga de enviar  la misma función a todas las unidades. estos equipos tiene un objetivo especifico es decir son apropiados para ciertas aplicaciones  particulares por ejem el procesamiento de imágenes.



*MISD: (single,instruction,sigle data) no son usados y no son significativos.                            PIPELINE: es una serie de modulo que son capases de ejecutar  fases de instrucciones , si un computador tiene dos pipeline  es capaz de ejecutar  dos instricciones en una sola  fase en un momento dado, cada uno de estas  piprline  , se lanza cada uno de de los dos  flujos resultados de afectuar o no el salto.



*MIMD: tienen un número de procesadores que funcionan de manera asíncrona e independiente



¿QUE FUNCIÓN TIENE  ?
Sistemas fuertemente acoplado
*Sistema de vilmente acoplado
*Sistemas operativos de red
*Sistemas operativos distribuidos


lunes, 11 de abril de 2016

MAQUINA VIRTUAL



Es un Sofware que simula una computadora, permitiendo la ejecución de programas y un sistema operativo, el almacenamiento de datos. Puede usarse cualquier sistema operativo (LINUX, UNIX, WINDOWS, por ejemplo).

PRINCIPALES VENTAJAS DE MAQUINAS VIRTUALES

1. Permite trabajar con programas de mayor tamaño que la memoria física.
2. Permite tener más programas cargados a la vez.
3. Permite que los programas se empiecen a ejecutarse antes.
4. Reduce la frecuencia de intercambios de procesos
5. Hay menor trabajo de E/S durante el intercambio de procesos.

SISTEMA OPERATIVO

Para que un ordenador pueda hacer funcionar un programa informático, debe contar con la capacidad necesaria para realizar cierta cantidad de operaciones preparatorias que puedan garantizar el intercambio entre el procesador, la memoria y los recursos físicos (periféricos). Se encarga de crear el vínculo entre los recursos materiales, el usuario y las aplicaciones (procesador de texto, videojuegos, etcétera). Cuando un programa desea acceder a un recurso material, no necesita enviar información específica a los dispositivos periféricos; simplemente envía la información al sistema operativo, el cual la transmite a los periféricos correspondientes a través de su driver (controlador). Si no existe ningún driver, cada programa debe reconocer y tener presente la comunicación con cada tipo de periférico.

Funciones del Sistema Operativo:
* Administración del procesador: el sistema operativo administra la distribución del procesador entre los distintos programas por medio de un algoritmo de programación. El tipo de programador depende completamente del sistema operativo, según el objetivo deseado.

* Gestión de la memoria de acceso aleatorio: el sistema operativo se encarga de gestionar el espacio de memoria asignado para cada aplicación y para cada usuario, si resulta pertinente. Cuando la memoria física es insuficiente, el sistema operativo puede crear una zona de memoria en el disco duro, denominada "memoria virtual".

* Gestión de entradas/salidas: el sistema operativo permite unificar y controlar el acceso de los programas a los recursos materiales a través de los drivers (también conocidos como administradores periféricos o de entrada/salida).

* Gestión de ejecución de aplicaciones: el sistema operativo se encarga de que las aplicaciones se ejecuten sin problemas asignándoles los recursos que éstas necesitan para funcionar. Esto significa que si una aplicación no responde correctamente puede "sucumbir".

* Administración de autorizaciones: el sistema operativo se encarga de la seguridad en relación con la ejecución de programas garantizando que los recursos sean utilizados sólo por programas y usuarios que posean las autorizaciones correspondientes.

* Gestión de archivos: el sistema operativo gestiona la lectura y escritura en el sistema de archivos, y las autorizaciones de acceso a archivos de aplicaciones y usuarios.


* Gestión de la información: el sistema operativo proporciona cierta cantidad de indicadores que pueden utilizarse para diagnosticar el funcionamiento correcto del equipo.


LINUX

Historia

1991,  nacido desde un pequeño número de archivos en lenguaje C bajo una licencia que prohíbe la distribución comercial a su estado actual de cerca de 296 MiBs de fuente bajo la Licencia pública general de GNU. Hurd demostró desarrollarse muy inactivamente, porque encontrar y reparar errores era muy difícil, debido a las características técnicas del diseño del micronúcleo.  Linus Torvalds se propone como entretenimiento hacer un sistema operativo que se comporte exactamente igual al sistema operativo Unix, pero que funcione sobre cualquier ordenador compatible PC. Linus escribió un pequeño núcleo que tenía lo necesario para leer y escribir ficheros en un disquette.

Desarrollo

En 1991, en Helsinki, Linus Torvalds comenzó un proyecto que llegó a ser el núcleo Linux. Torvalds solía tener acceso en los grandes servidores Unix de la universidad.  El sistema operativo que él usó durante el desarrollo fue Minix, y el compilador inicial fue el GNU C compiler, que aún es la opción principal para compilar Linux hoy. Un factor decisivo para el desarrollo y aceptación de Linux va a ser la gran expansión de Internet. Internet facilitó el trabajo en equipo de todos los que quisieron colaborar con Linus y fueron aportando todos los programas que vienen con Unix.

Ventajas

*  Es muy robusto, estable y rápido. Ideal para servidores y aplicaciones distribuidas. Puede funcionar en máquinas humildes: Linux puede correr servicios en un x86 a 200 MHz con calidad.

* Linux es libre. Esto implica no sólo la gratuidad del software, sino también que es modificable y tiene una gran cantidad de aplicaciones libres en Internet. Todo ello arropado por la inmensa documentación de Linux que puede encontrarse en la Red

* Linux ya no está restringido a personas con grandes conocimientos de informática: Los desarrolladores de Linux han hecho un gran esfuerzo por dotar al sistema de asistentes de configuración y ayuda, además de un sistema gráfico muy potente.

Desventajas


* Windows es incompatible con Linux: no quiere decir que no podamos tener instalados ambos Sistemas. Uno de los problemas es que desde Windows no podremos escribir en particiones Linux.

* En la mayoría de distribuciones Linux hay que conocer nuestro Hardware a la hora de instalar. Sin embargo, distribuciones de Linux como Knoppix reconocen todo el sistema a lo Windows.

Comunicación

Las comunicaciones entre usuarios del sistema operativo Linux son de una gran importancia, ya que permite al superusuario avisar a los usuarios de los cambios que se produzcan en el sistema, nuevos usuarios, nuevas normas, apagado del sistema, noticias, etc. Pero también se utilizan para comunicarse entre los usuarios.

Comandos:
write: Comunicación unidireccional con otro usuario que esté en el sistema en ese momento. Permite que un usuario envíe un mensaje a un terminal.
write nombreusuario < ficheromensaje o bien write nombreusuario
Escribir el mensaje: CTRL+D para finalizar el mensaje
En lugar del nombre de usuario podríamos poner el nombre del terminal (tty).
Para que el usuario o terminal puedan recibir mensajes tendremos que haber ejecutado la orden: mesg y.

echo: Comunicación unidireccional con otro usuario que esté en el sistema en ese momento. Básicamente realiza la misma función que el write pero utilizando un mecanismo diferente.
echo “hola que tal” >/dev/ttyp3

wall: Comunicación unidireccional con todos los usuarios que estén conectados al sistema en ese momento. Se utiliza para informar a todos los usuarios sobre algún tema que les afecte, por ejemplo, avisar que vamos a apagar el sistema. Normalmente este comando es utilizado por administrador del sistema.
wall ficheromensaje o bien wall.

Seguridad


Soporta múltiples usuarios, ofrece muchos modos de acceder al sistema, además de diversas herramientas y órdenes relativas a la seguridad. El tema de seguridad es muy amplio podemos distinguir en una primera categoría la protección que Linux proporciona al solicitar la identificación y contraseña la identificación a cada usuario para poder acceder al sistema de cualquiera de las formas posibles: local, remoto, etc. La segunda categoría es la protección de ficheros, tanto desde el sistema operativo, como de los ficheros de usuario.

UNIX

Historia


Unix en un sistema operativo que permite la ejecución de distintas tareas de forma simultánea, soporta tener múltiples usuarios y es portable, lo que significa que es capaz de ser usado en máquinas que poseen distintas arquitecturas. Fue desarrollado en Bell Labs de AT&T en el año 1969 por Ken Thompson, Dennis Ritchie y Douglas McIlroy, entre otros empleados que también trabajaban en aquella compañía.


Fue en 1970, cuando consiguieron el apoyo tecnológico de los laboratorios Bell, ya que consiguieron que Unix se pudiera ejecutar no solo en la máquina PDP-7 sino en la PDP-11/20. En aquel momento contaba con un programa para dar formato a textos y un editor de texto. En el año 1972, fue cuando se reescribió Unix con el lenguaje de programación C, lo que lo hizo portable y le dio un gran éxito, ya que pudo usarse en otras compañías y universidades. En la década de los ochentas, se fueron desarrollando versiones sucesivas de Unix y en años siguientes aparecieron versiones que emulaban sus funciones.

Ventajas

* Es un sistema operativo de tiempo compartido, controla los recursos de una computadora y los asigna entre los usuarios.

* Permite a los usuarios correr sus programas.

* Controla los dispositivos de periféricos conectados a la máquina.

* Es un sistema operativo multiusuario, con capacidad de simular multiprocesamiento y procesamiento no interactivo.

* El sistema de ficheros está basado en la idea de volúmenes, que se pueden montar y desmontar para lo que se les asigna un nodo del árbol como punto de anclaje. Un sistema físico puede dividirse en uno o más volúmenes.

Desventajas

* A pesar de ser tan estable y no "caerse" prácticamente nunca, resulta ser muy costoso en el sentido de mantenimiento y administración. Es decir, que por ejemplo, hay empresas que pierden más dinero con un equipo fuera de línea que pagando a un administrador del sistema.

* No muchas personas lo conocen, ya que no es un sistema que venga precargado en cada PC que se compra. En otras palabras, no están popular como Windows o incluso como Linux, y por tanto, es difícil encontrar los programas que se acostumbran a usar en esos otros sistemas operativos.

* El S.O UNIX puede requerir más horas de aprendizaje que el resto de las otras plataformas de sistemas operativos.

* Se utiliza un lenguaje de programación muy avanzado: C, aunque en algunos casos permite Fortran y Java.

Seguridad

Los sistemas Unix se constituyen  de los más seguros que existen. De entre los sistemas Unix cabe destacar una rama conocida como los Trusted Unix, ente los que se encuentran el ATT&T system V/MLS o el OSF/1. Estos son sistemas altamente seguros, que alcanzan niveles de seguridad A o B por la NSA(National Security Agency) americana. La otra gran parte de sistemas Unix como Solaris, Linux o AXT, están considerados con niveles de seguridad C2. En definitiva que Unix a pasado de ser un sistema totalmente arcaico en cuanto a seguridad a ser uno sin duda de los más seguros que existen con un alto nivel de fiabilidad.



WINDOWS

Historia

En los 70. En el trabajo, confiamos en las máquinas de escribir. Si necesitamos copia de un documento, probablemente usaremos un mimeógrafo o papel carbón. Pocos han escuchado sobre los microequipos, pero dos informáticos entusiastas, Bill Gates y Paul Allen, observan en la informática personal el camino hacia el futuro.

En 1975, Gates y Allen forman una sociedad bautizada Microsoft. Como la mayoría de los emprendimientos, Microsoft comienza siendo pequeño, pero con una gran visión: un equipo en cada escritorio y en cada hogar. Durante los siguientes años, Microsoft comienza a cambiar nuestra forma de trabajo.

Desarrollo

Windows 1 : Primera Versión de Microsoft Windows. Lanzado en 1985. Tomó un total de 55 programadores para desarrollarlo y no permitía ventanas en cascada.
Microsoft comenzó el desarrollo del "ADMINISTRADOR DE INTERFAZ", que posteriormente derivó en  Microsoft Windows en Septiembre de 1981. Las siguientes fueron las principales características de Windows 1.0:

Interfaz gráfica con menús desplegables, ventanas en cascada y soporte para mouse.
Gráficos de pantalla e impresora independientes del dispositivo.
Multitarea cooperativa entre las aplicaciones Windows.

 Windows 2 : Segunda versión de Microsoft Windows, lanzada en 1987. Windows 2 tenía más características que Windows 1, tales como iconos y ventanas traslapdas. Cuando se lanzó Windows/386, Windows 2 fue renombrado como Windows/286. Las siguientes fueron las principales características de Windows 2.0:

Ventanas traslapadas
Archivos PIF para aplicaciones DOS

Windows/386: En 1987 Microsoft lanzó Windows/386. A pesar de ser equivalente a su hermano Windows/286, mientras corrían aplicaciones Windows, éste proveía la capcidad de ejecutar múltiples aplicaciones DOS simultáneamente en memoria extendida. Las siguientes fueron las principales características de Windows/386:
Múltiples máquinas virtuales DOS con multitarea

Windows 3.0: Una completa reconstrucción de Windows con muchas nuevas facilidades tales como la habilidad de direccionar más allá de 640k. Fue lanzado en 1990, y vendió más de 10 millones de copias. Las siguientes fueron las principales características de Windows 3.0:
Modo estándard (286), con soporte de memoria grnade (large memory).
Medo Mejorado 386, com memoria grande y soporte de múltiples sesiones DOS.
Se agregó en Administrador de Programas y de Archivos
Soporte de Red
Soporte para más de 16 colores.
Soporte para combo boxes, menús jerárquico y los archivos .INI privados para capa aplicación empezaron a cobrar más valor.

Windows 3.1: Una versión de Windows con muchas mejoras a Windows 3.0. Incluye soporte para fuentes True Type y OLE. Esta versión fue testigo de la pérdida del modo real, lo cual significa que no corre en procesadores Intel 8086. Las siguientes fueron las principales características de Windows 3.1:
No hay soporte para el modo Real  (8086).
Fuentes TrueType.
Multimedia.
OLE - Object Linking and Embedding
Capacidad para que una aplicación reinicie la máquina.
Soporte de API de multimedia y red.

Windows 2000: Un cambio de nomenclatura para el sistema NT. Así, lo que habría sido Windows NT 5.0 se conoce ahora como Windows 2000. Hasta la versión 4.0 Windows NT se comercializaba en tres versiones: Workstation, Server, y Advanced Server. Ahora la nomenclatura es la siguiente:
Windows 2000 Professional, anteriormente NT Workstation.
Windows 2000 Server, anteriormente NT Server.
Windows 2000 Advanced Server, anteriormente NT Advanced Server.
Windows 2000 Datacenter Server. Producto nuevo y que es el nuevo y más poderoso sistema operativo de Microsoft con posibilidad de hasta 16 procesadores simétricos y 64 GB de memoria física.

Seguridad

Si se conecta a Internet, permite que otras personas usen el equipo o comparte los archivos con otros usuarios, debe tomar las medidas necesarias para impedir que el equipo sufra daños.  Porque hay delincuentes informáticos que atacan los equipos de otras personas. Estas personas pueden atacar directamente, mediante la irrupción en su equipo a través de Internet y el robo información personal, o indirectamente mediante la creación de software malintencionado diseñado para dañar el equipo.
Afortunadamente, puede protegerse tomando unas simples precauciones. En este artículo se describen las amenazas y qué puede hacer para defenderse contra ellas.

Protección del equipo:

* Hay diversas formas de proteger el equipo frente a posibles amenazas para la seguridad:

* Firewall. Un firewall puede ayudarle a proteger el equipo al impedir que los hackers o el software malintencionado obtengan acceso a él.

* Protección antivirus. Software antivirus que puede ayudarle a proteger un equipo frente a virus, gusanos y otras amenazas de seguridad.

* Protección contra spyware y otros tipos de malware. El software anti spyware puede ayudarle a proteger el equipo contra spyware y otro software potencialmente no deseado.

* Windows Update. Windows puede comprobar habitualmente las actualizaciones para el equipo e instalarlas de forma automática.