sistemas operativos, caracteristicas y familias

44

Click here to load reader

Upload: universidad-de-cundinamarca

Post on 22-Jun-2015

1.885 views

Category:

Engineering


4 download

DESCRIPTION

Un sistema operativo es un programa o conjunto de programas que en un sistema informático gestiona los recursos de hardware y provee servicios a los programas de aplicación, ejecutándose en modo privilegiado respecto de los restantes.

TRANSCRIPT

Page 1: Sistemas operativos, caracteristicas y familias

SISTEMAS OPERATIVOS, CARACTERISTICAS Y FAMILIAS [1]

Ms. Ing. Jairo E. Márquez D.

Introducción

Un sistema operativo es un programa o conjunto de programas que en un sistemainformático gestiona los recursos de hardware y provee servicios a los programasde aplicación, ejecutándose en modo privilegiado respecto de los restantes. [2]

Nótese que es un error común muy extendidodenominar al conjunto completo de herramientassistema operativo, es decir, la inclusión en el mismotérmino de programas como el explorador de ficheros,el navegador web y todo tipo de herramientas quepermiten la interacción con el sistema operativo,también llamado núcleo o kernel. Esta identidad entrekernel y sistema operativo es solo cierta si el núcleoes monolítico. Otro ejemplo para comprender estadiferencia se encuentra en la plataforma Amiga,donde el entorno gráfico de usuario se distribuía porseparado, de modo que, también podía reemplazarsepor otro, como era el caso de directory Opus oincluso manejarlo arrancando con una línea decomandos y el sistema gráfico. De este modo, al

arrancar un Amiga, comenzaba a funcionar con el propio sistema operativo quellevaba incluido en una ROM, por lo que era cuestión del usuario decidir sinecesitaba un entorno gráfico para manejar el sistema operativo o simplementeotra aplicación. Uno de los más representativos ejemplos de esta diferencia, es elnúcleo de Linux, usado en las llamadas distribuciones Linux, ya que al estartambién basadas en Unix, proporcionan un sistema de funcionamiento similar.Este error de precisión, se debe a la modernización de la informática llevada acabo a finales de los 80, cuando la filosofía de estructura básica defuncionamiento de los grandes computadores [3] se rediseñó a fin de llevarla a loshogares y facilitar su uso, cambiando el concepto de computador multiusuario,(muchos usuarios al mismo tiempo) por un sistema monousuario (únicamente unusuario al mismo tiempo) más sencillo de gestionar. (Véase AmigaOS, beOS oMacOS como los pioneros[4] de dicha modernización, cuando los Amiga fueronbautizados con el sobrenombre de Video Toasters [5] por su capacidad para la

Page 2: Sistemas operativos, caracteristicas y familias

Edición de vídeo en entorno multitarea round robin1, con gestión de miles decolores e interfaces intuitivos para diseño en 3D.

Uno de los propósitos del sistema operativo que gestiona el núcleo intermediarioconsiste en gestionar los recursos de localización y protección de acceso delhardware, hecho que alivia a los programadores de aplicaciones de tener que

1 Round robin es un método para seleccionar todos los elementos en un grupo de manera equitativa y en unorden racional, normalmente comenzando por el primer elemento de la lista hasta llegar al último yempezando de nuevo desde el primer elemento. El nombre del algoritmo viene del principio de Round-Robinconocido de otros campos, donde cada persona toma una parte de un algo compartido en cantidades parejas.

Una forma sencilla de entender el round robin es imaginar una secuencia para "tomar turnos". En operacionescomputacionales, un método para ejecutar diferentes procesos de manera concurrente, para la utilizaciónequitativa de los recursos del equipo, es limitando cada proceso a un pequeño período (quantum), y luegosuspendiendo este proceso para dar oportunidad a otro proceso y así sucesivamente. A esto se le denominacomúnmente como Planificación Round-Robin.

Round Robin es un algoritmo de planificación de procesos simple de implementar, dentro de un sistemaoperativo se asigna a cada proceso una porción de tiempo equitativa y ordenada, tratando a todos los procesoscon la misma prioridad. En Sistemas operativos, la planificación Round Robin da un tiempo máximo de usode CPU a cada proceso, pasado el cual es desalojado y retornado al estado de listo, la lista de procesos seplanifica por FIFO, primero llegado, primero atendido.

Pasos de ciclos

Para averiguar los pasos de ciclos de procesos totales se toman todos los números de procesos y se calculancon los procesos necesarios para la realización de estos...

Suponga que hay tres procesos y se desea averiguar cuánto tarda.

proceso A: 3 vecesproceso B: 4 vecesproceso C: 5 veces

siguiendo

tp=tProceso+[(tProcesoultimo-tProceso))-(tProcesoultimo-tProcesoproximo)]+tProceso

La planificación Round Robin puede ser aplicada también a otros problemas de planificación, como laplanificación de redes. En las redes inalámbricas, donde varios servidores comparten un mismo canal, estealgoritmo provee a cada servidor un intervalo regular de tiempo para transmitir o recibir informaciónmediante el canal compartido. Esto hace parecer a Round Robin como un algoritmo justo, pero, de todosmodos, por ser mucho menos eficiente que el "algoritmo de proporcionalidad justa", es muy difícil proveer unbuen servicio a los suscriptores. El operador de la red también sufrirá capacidad reducida en la red. La causaprincipal es que este algoritmo no tiene en cuenta el cambio de condiciones de recepción en los diferentesreceptores, por lo que planeará transmisiones desde/hacia los suscriptores de la mitad de tiempo cuando suscondiciones de recepción sean peores que las habituales. En contraste, el planeamiento de proporcionalidadjusta tendrá en cuenta el cambio de condiciones de recepción en los diferentes receptores y agendará lastransmisiones desde/hacia los suscriptores cada vez que las condiciones de recepción estén peores que lonormal.

Fuente. Planificación Round-robin. Recuperado el 9 de marzo de 2013.

http://es.wikipedia.org/wiki/Planificaci%C3%B3n_Round-robin

Page 3: Sistemas operativos, caracteristicas y familias

tratar con estos detalles. La mayoría de aparatos electrónicos que utilizanmicroprocesadores para funcionar, llevan incorporado un sistema operativo(teléfonos móviles, reproductores de DVD, computadoras, radios, enrutadores,etc.). En cuyo caso, son manejados mediante una Interfaz Gráfica de Usuario, ungestor de ventanas o un entorno de escritorio, si es un celular, mediante unaconsola o control remoto si es un DVD y, mediante una línea de comandos onavegador web si es un enrutador.

Llamadas al sistema operativo

Las llamadas son aquellas que ejecutan los programas de aplicación para pediralgún servicio al SO.

Cada SO implementa un conjunto propio de llamadas al sistema. Ese conjunto dellamadas es la interfaz del SO frente a las aplicaciones. Constituyen el lenguajeque deben usar las aplicaciones para comunicarse con el SO. Por ello sicambiamos de SO, y abrimos un programa diseñado para trabajar sobre elanterior, en general el programa no funcionará, a no ser que el nuevo SO tenga lamisma interfaz. Para ello:

- Las llamadas correspondientes deben tener el mismo formato.- Cada llamada al nuevo SO tiene que dar los mismos resultados que la

correspondiente del anterior.

Modos de ejecución en un CPU

Las aplicaciones no deben poder usar todas las instrucciones de la CPU. Noobstante el Sistema Operativo, tiene que poder utilizar todo el conjunto de

Page 4: Sistemas operativos, caracteristicas y familias

instrucciones del CPU. Por ello, una CPU debe tener (al menos) dos modos deoperación diferentes:

- Modo usuario: el CPU podrá ejecutar sólo las instrucciones del juegorestringido de las aplicaciones.

- Modo supervisor: la CPU debe poder ejecutar el juego completo deinstrucciones.

“Una aplicación, normalmente no sabe dónde está situada la rutina de servicio dela llamada. Por lo que si ésta se codifica como una llamada de función, cualquiercambio en el SO haría que hubiese que reconstruir la aplicación. Pero lo másimportante es que una llamada de función no cambia el modo de ejecución de laCPU. Con lo que hay que conseguir llamar a la rutina de servicio, sin tener queconocer su ubicación, y hacer que se fuerce un cambio de modo de operación dela CPU en la llamada (y la recuperación del modo anterior en el retorno).

Esto se hace utilizando instrucciones máquina diseñadas específicamente paraeste cometido, distintas de las que se usan para las llamadas de función.Bibliotecas de interfaz de llamadas al sistema las llamadas al sistema no siempretienen una expresión sencilla en los lenguajes de alto nivel, por ello se crean lasbibliotecas de interfaz, que son bibliotecas de funciones que pueden usarse paraefectuar llamadas al sistema. Las hay para distintos lenguajes de programación.La aplicación llama a una función de la biblioteca de interfaz (mediante unallamada normal) y esa función es la que realmente hace la llamada al sistema.” [6]

Llamadas al sistema

Una aplicación, normalmente no sabe dónde está situada la rutina de servicio dela llamada. Por lo que si ésta se codifica como una llamada de función, cualquiercambio en el S.O. haría que hubiera que reconstruir la aplicación. Lo másimportante, es que una llamada de función no cambia el modo de ejecución de laCPU. Con lo que hay que conseguir llamar a la rutina de servicio, sin tener queconocer su ubicación, y hacer que se fuerce un cambio de modo de operación dela CPU en la llamada (y la recuperación del modo anterior en el retorno).

Esto se hace utilizando instrucciones máquina diseñadas específicamente paraeste cometido, distintas de las que se usan para las llamadas de función.

Observe detenidamente la siguiente gráfica, en la que se citan las diversasinterfaces de llamadas al sistema operativo según sus elementos constitutivos.

Page 5: Sistemas operativos, caracteristicas y familias

Fuente. http://commons.wikimedia.org/wiki/File:Interfaces_de_llamadas_al_sistema.PNG

Bibliotecas de interfaz de llamadas al sistema

Las llamadas al sistema no siempre tienen una expresión sencilla en los lenguajesde alto nivel, por ello se crean las bibliotecas de interfaz, que son bibliotecas defunciones que pueden usarse para efectuar llamadas al sistema. Las hay paradistintos lenguajes de programación.

La aplicación llama a una función de la biblioteca de interfaz (mediante unallamada normal) y esa función es la que realmente hace la llamada al sistema.

Interrupciones y excepciones

El SO ocupa una posición intermedia entre losprogramas de aplicación y el hardware. No selimita a utilizar el hardware a petición de lasaplicaciones ya que hay situaciones en las que esel hardware el que necesita que se ejecute códigodel SO. En tales situaciones el hardware debepoder llamar al sistema, pudiendo deberse estasllamadas a dos condiciones:

- Algún dispositivo de E/S necesita atención.- Se ha producido una situación de error al intentar ejecutar una instrucción

del programa (normalmente de la aplicación).

Page 6: Sistemas operativos, caracteristicas y familias

En ambos casos, la acción realizada no está ordenada por el programa deaplicación, es decir, no figura en el programa.

Según los dos casos anteriores se tiene las interrupciones y las excepciones:

Interrupción: señal que envía un dispositivo de E/S a la CPU para indicar que laoperación de la que se estaba ocupando, ya ha terminado.

Excepción: una situación de error detectada por la CPU mientras ejecutaba unainstrucción, que requiere tratamiento por parte del SO.

Tratamiento de las interrupciones

Una interrupción se trata después de terminar la ejecución de la instrucción encurso. El tratamiento depende de cuál sea el dispositivo de E/S que ha causado lainterrupción, ante la cual debe poder identificar el dispositivo que la ha causado.

Fuente. http://geneura.ugr.es/~gustavo/aco/teoria/arquitectura/html/node7.html

La ventaja de este procedimiento es que no se tiene que perder tiempo ejecutandocontinuamente rutinas para consultar el estado del periférico. El inconveniente esque el dispositivo debe tener los circuitos electrónicos necesarios para acceder alsistema de interrupciones del computador.

Page 7: Sistemas operativos, caracteristicas y familias

Importancia de las interrupciones

El mecanismo de tratamiento de las interrupciones permite al SO utilizar la CPUen servicio de una aplicación, mientras otra permanece a la espera de queconcluya una operación en un dispositivo de E/S.

El hardware se encarga de avisar al SO cuando el dispositivo de E/S ha terminadoy el SO puede intervenir entonces, si es conveniente, para hacer que el programaque estaba esperando por el dispositivo, se continúe ejecutando.

En ciertos intervalos de tiempo puede convenir no aceptar señales de interrupción.Por ello las interrupciones pueden inhibirse por programa (aunque esto no debenpoder hacerlo las mismas).

Un ejemplo de sincronismo por interrupción es el almacenamiento de caracteresintroducidos mediante el teclado. Cuando se introduce un carácter, se codifica enel registro de datos del dispositivo y además se activa un bit del registro de estadoquien crea una interrupción en el hardware. El procesador deja temporalmente latarea que estaba completando y ejecuta la rutina de atención a la interrupcióncorrespondiente. El teclado almacena el carácter en el vector de memoriaintermedia (llamado buffer) asociada al teclado y despierta el proceso que habíaen el estado de espera de la operación de entrada/salida.

Otro ejemplo más elevado en cuanto a su nivel de complejidad se da en lasexcepciones de Oracle8 (PL/SQL)

Fuente. http://www.mundoracle.com/excepciones.html?Pg=sql_plsql_14.htm

Excepciones

Cuando la CPU intenta ejecutar una instrucción incorrectamente construida, launidad de control lanza una excepción para permitir al SO ejecutar el tratamiento

Page 8: Sistemas operativos, caracteristicas y familias

adecuado. Al contrario que en una interrupción, la instrucción en curso esabortada. Las excepciones al igual que las interrupciones deben estaridentificadas.

Clases de excepciones

Las instrucciones de un programa pueden estar mal construidas por diversasrazones:

- El código de operación puede ser incorrecto.- Se intenta realizar alguna operación no definida, como dividir por cero.- La instrucción puede no estar permitida en el modo de ejecución actual.- La dirección de algún operando puede ser incorrecta o se intenta violar

alguno de sus permisos de uso.

Importancia de las excepciones

El mecanismo de tratamiento de las excepciones es esencial para impedir, junto alos modos de ejecución de la CPU y los mecanismos de protección de la memoria,que las aplicaciones realicen operaciones que no les están permitidas. Encualquier caso, el tratamiento específico de una excepción lo realiza el SO.

Como en el caso de las interrupciones, el hardware se limita a dejar el control alSO, y éste es el que trata la situación como convenga.

Page 9: Sistemas operativos, caracteristicas y familias

Es bastante frecuente que el tratamiento de una excepción no retorne al programaque se estaba ejecutando cuando se produjo la excepción, sino que el SO abortela ejecución de ese programa. Este factor depende de la pericia del programadorpara controlar la excepción adecuadamente.

SISTEMA OPERATIVO DE RED [7]

Este tipo de SO permite la interconexión de ordenadores para poder acceder a losservicios y recursos. Al igual que un equipo no puede trabajar sin un sistemaoperativo, una red de equipos no puede funcionar sin un sistema operativo de red.Si no se dispone de ningún sistema operativo de red, el equipo, no puedencompartir recursos y los usuarios no podrán utilizar estos recursos.

Dependiendo del fabricante del sistema operativo de red, tenemos que el softwarede red para un equipo personal se puede añadir al propio sistema operativo delequipo o integrarse con él.

NetWare de Novell es el ejemplo más familiar de SO de red, donde el software dered del equipo cliente se incorpora en el SO del equipo. El equipo personalnecesita ambos sistema operativos para gestionar conjuntamente las funciones dered y las funciones individuales.

El software del sistema operativo de red se integra en un número importante desistemas operativos conocidos, incluyendo Windows 2000 Server/Professional,Windows NT Server/Workstation, Windows 95/98/ME y Apple Talk.

Cada configuración (sistemas operativos de red y del equipo separado, o sistemaoperativo combinando las funciones de ambos) tiene sus ventajas e

Page 10: Sistemas operativos, caracteristicas y familias

inconvenientes. Por tanto, nuestro trabajo como especialistas en redes esdeterminar la configuración que mejor se adapte a las necesidades de nuestra red.

Es un componente software de una computadora que tiene como objetivocoordinar y manejar las actividades de los recursos del ordenador en una red deequipos. Consiste en un software que posibilita la comunicación de un sistemainformático con otros equipos en el ámbito de una red.

COMPONENTES DE UN SISTEMA OPERATIVO [8]

Gestión de procesos

Un proceso es simplemente, un programa en ejecución que necesita recursospara realizar su tarea: tiempo de CPU, memoria, archivos y dispositivos de E/S. ElSO es el responsable de:

- Crear y destruir procesos.- Parar y reanudar procesos.- Ofrecer mecanismos para que los procesos puedan comunicarse y se

sincronicen.- La gestión de procesos podría ser similar al trabajo de oficina. Se puede

tener una lista de tareas a realizar y a estas fijarles prioridades alta, media,baja por ejemplo. Debemos comenzar haciendo las tareas de prioridad altaprimero y cuando se terminen seguir con las de prioridad media y despuéslas de baja. Una vez realizada la tarea se tacha. Esto puede traer unproblema que las tareas de baja prioridad pueden que nunca lleguen aejecutarse. y permanezcan en la lista para siempre. Para solucionar esto,se puede asignar alta prioridad a las tareas más antiguas.

Page 11: Sistemas operativos, caracteristicas y familias

Gestión de la memoria principal

La memoria es una gran tabla de palabras o bytes que se referencian cada unamediante una dirección única. Este almacén de datos de rápido acceso escompartido por la CPU y los dispositivos de E/S, es volátil y pierde su contenidoante fallos del sistema. El SO es el responsable de:

- Conocer qué partes de la memoria están siendo utilizadas y por quién.- Decidir qué procesos se cargarán en memoria cuando haya espacio

disponible.- Asignar y reclamar espacio de memoria cuando sea necesario.

Gestión del almacenamiento secundario

Un sistema de almacenamiento secundario es necesario, ya que la memoriaprincipal (almacenamiento primario) es volátil y además muy pequeña paraalmacenar todos los programas y datos. También es necesario mantener los datosque no convenga mantener en la memoria principal. El SO se encarga de:

- Planificar los discos.- Gestionar el espacio libre.- Asignar el almacenamiento.- Verificar que los datos se guarden en orden.

El sistema de entrada y salida

Consiste en un sistema de almacenamiento temporal (caché), una interfaz demanejadores de dispositivos y otra para dispositivos concretos. El sistemaoperativo debe gestionar el almacenamiento temporal de E/S y servir lasinterrupciones de los dispositivos de E/S.

Sistema de archivos

Los archivos son colecciones de información relacionada, definidas por suscreadores. Éstos almacenan programas (en código fuente y objeto) y datos talescomo imágenes, textos, información de bases de datos, etc.

“Lo habitual es utilizar dispositivos de almacenamiento de datos que permiten elacceso a los datos como una cadena de bloques de un mismo tamaño, a vecesllamados sectores, usualmente de 512 bytes de longitud (También denominadosclústers). El software del sistema de archivos es responsable de la organizaciónde estos sectores en archivos y directorios y mantiene un registro de qué sectorespertenecen a qué archivos y cuáles no han sido utilizados. En la práctica, unsistema de archivos también puede ser utilizado para acceder a datos generados

Page 12: Sistemas operativos, caracteristicas y familias

dinámicamente, como los recibidos a través de una conexión de red (sin laintervención de un dispositivo de almacenamiento).

Los sistemas de archivos tradicionales proveen métodos para crear, mover,renombrar y eliminar tanto archivos como directorios, pero carecen de métodospara crear, por ejemplo, enlaces adicionales a un directorio o archivo (enlace duroen Unix) o renombrar enlaces padres (".." en Unix).

El acceso seguro a sistemas de archivos básicos puede estar basado en losesquemas de lista de control de acceso o capacidades. Las listas de control deacceso hace décadas que demostraron ser inseguras, por lo que los sistemasoperativos experimentales utilizan el acceso por capacidades. Los sistemasoperativos comerciales aún funcionan con listas de control de acceso.” [9]

El SO es responsable de:

- Construir y eliminar archivos y directorios.- Ofrecer funciones para manipular archivos y directorios.- Establecer la correspondencia entre archivos y unidades de

almacenamiento.- Realizar copias de seguridad de archivos.- Existen diferentes sistemas de archivos, es decir, existen diferentes formas

de organizar la información que se almacena en las memorias(normalmente discos) de los ordenadores. Por ejemplo, existen lossistemas de archivos FAT, FAT32, EXT3, NTFS, XFS, etc.

- Desde el punto de vista del usuario estas diferencias pueden parecerinsignificantes a primera vista, sin embargo, existen diferencias muyimportantes. Por ejemplo, los sistemas de ficheros FAT32 y NTFS, que seutilizan fundamentalmente en sistemas operativos de Microsoft, tienen unagran diferencia para un usuario que utilice una base de datos con bastanteinformación ya que el tamaño máximo de un fichero con un sistema dearchivos FAT32 está limitado a 4 gigabytes, sin embargo, en un sistemaNTFS el tamaño es considerablemente mayor.

“La estructura de directorios suele ser jerárquica, ramificada o "en árbol", aunqueen algún caso podría ser plana. En algunos sistemas de archivos los nombres dearchivos son estructurados, con sintaxis especiales para extensiones de archivos ynúmeros de versión. En otros, los nombres de archivos son simplemente cadenasde texto y los metadatos de cada archivo son alojados separadamente.

Page 13: Sistemas operativos, caracteristicas y familias

En los sistemas de archivos jerárquicos, usualmente, se declara la ubicaciónprecisa de un archivo con una cadena de texto llamada "ruta" —o path eninglés— La nomenclatura para rutas varía ligeramente de sistema en sistema,pero mantienen por lo general una misma estructura. Una ruta viene dada por unasucesión de nombres de directorios y subdirectorios, ordenados jerárquicamentede izquierda a derecha y separados por algún carácter especial que suele ser unadiagonal ('/') o diagonal invertida ('\') y puede terminar en el nombre de un archivopresente en la última rama de directorios especificada.” [10]

Normalmente los archivos y carpetas se organizan jerárquicamente. Fuentehttp://es.wikipedia.org/wiki/Sistema_de_archivos

Ejemplo de 'ruta' en un sistema Unix

Así, por ejemplo, en un sistema tipo Unix como GNU/Linux, la ruta para la canciónllamada "La canción.ogg" del usuario "Alvaro" sería algo como:

/home/Jairo/música/canción.ogg

Donde:

'/' representa el directorio raíz donde está montado todo el sistema dearchivos.

'home/Jairo/música/' es la ruta del archivo. 'canción.ogg' es el nombre del archivo.

Page 14: Sistemas operativos, caracteristicas y familias

Que se establece como único.

Ejemplo de 'ruta' en un sistema Windows

Un ejemplo análogo en un sistema de archivos de Windows se vería como:

C:\Archivos de programa\Android\android-sdk

Donde:

'C:' es la unidad de almacenamiento en la que se encuentra el archivo. '\Archivos de programa\Android\ ' es la ruta del archivo. ' android-sdk' es el nombre del archivo.

Para la mayoría de los sistemas operativos modernos la extensión del archivo esun complemento burocrático solo útil para la observación del usuario, ya que losentornos de administración de archivos y aplicaciones varias, analizan lainformación contenida en el principio del interior del archivo (MIME2 headers) para

2 Multipurpose Internet Mail Extensions o MIME ("extensiones multipropósito de correo de internet") son unaserie de convenciones o especificaciones dirigidas al intercambio a través de Internet de todo tipo de archivos(texto, audio, vídeo, etc.) de forma transparente para el usuario. Una parte importante del MIME está dedicadaa mejorar las posibilidades de transferencia de texto en distintos idiomas y alfabetos. En sentido general lasextensiones de MIME van encaminadas a soportar:

- Texto en conjuntos de caracteres distintos de US-ASCII;- Adjuntos que no son de tipo texto;- Cuerpos de mensajes con múltiples partes (multi-part);- Información de encabezados con conjuntos de caracteres distintos de ASCII.

Prácticamente todos los mensajes de correo electrónico escritos por personas en Internet y una proporciónconsiderable de estos mensajes generados automáticamente son transmitidos en formato MIME a través delprotocolo SMTP. Los mensajes de correo electrónico en Internet están tan cercanamente asociados con elSMTP y MIME que usualmente se les llama mensaje SMTP/MIME.1

MIME está especificado en seis Request for Comments o RFC ("solicitud de comentarios): RFC 2045, RFC2046, RFC 2047, RFC 4288, RFC 4289 y RFC 2077.

Los tipos de contenido definidos por el estándar MIME tienen gran importancia también fuera del contexto delos mensajes electrónicos. Por ejemplo, algunos protocolos de red tales como HTTP de la Web. HTTPrequiere que los datos sean transmitidos en un contexto de mensajes tipo e-mail aunque los datos pueden noser un e-mail propiamente dicho.

En la actualidad ningún programa de correo electrónico o navegador de Internet puede considerarse completosi no acepta MIME en sus diferentes facetas (texto y formatos de archivo).

Fuente. Multipurpose Internet Mail Extensions. Recuperado el 9 de marzo de 2013.http://es.wikipedia.org/wiki/MIME

Page 15: Sistemas operativos, caracteristicas y familias

determinar su función o asociación, la cual normalmente está catalogada en latabla MIME Content-Type en el sistema.

Archivos del sistema operativo de Linux

El sistema Windows permite ocultar la extensión de los archivos si el usuario lodesea, de no hacerlo la extensión aparece en los nombres de todos los archivos.En el sistema operativo Windows XP, si el usuario cambia la extensión de unarchivo, éste puede quedar inutilizable si la nueva extensión lo asocia a unprograma que no tenga la capacidad de editar o reproducir ese tipo de archivo.Algunos usuarios aun así habilitan la visualización de las extensiones en lossistemas Windows como medida de precaución para evitar virus que utiliceníconos o nombres parecidos a los archivos personales del usuario, ya que laextensión permite identificar a los ficheros .EXE, los ejecutables en Windows.

Page 16: Sistemas operativos, caracteristicas y familias

Resumen de características de los sistemas de Archivos [11]

- Seguridad o permisos.- Listas de control de acceso (ACLs).- UGO (Usuario, Grupo, Otros, o por sus siglas en inglés, User, Group,

Others).- Capacidades granuladas.- Atributos extendidos (ej.: sólo añadir al archivo pero no modificar, no

modificar nunca, etc.).- Mecanismo para evitar la fragmentación.- Capacidad de enlaces simbólicos o duros.- Integridad del sistema de archivos (Journaling).- Soporte para archivos dispersos.- Soporte para cuotas de discos.- Soporte de crecimiento del sistema de archivos nativo.

Tipo de sistemas de archivos

Sistemas de archivos de disco: Está diseñado para el almacenamiento dearchivos en una unidad de disco, que puede estar conectada directa oindirectamente a la computadora.

Ejemplos de sistemas de archivos de disco: [12]

- AOFS (Amiga Old File System)- AFFS (Amiga Fast File System)- ASFS (Amiga Smart File System)- Btrfs (De Oracle Corporation para GNU/Linux y Kurisu OS 3 Beta)- EFSa- ext2 (Para Kernel Linux)- ext3 (Para Kernel Linux y Kurisu OS 2)- ext4 (Para Kernel Linux)- FAT (File Allocation Table, usado en DOS y Windows hasta Windows ME)- FAT32 (File Allocation Table 32, usado Windows y en casi todas las

memorias usb y tarjetas de memoria])- GPFS (De IBM)- UMSDOS (Linux sobre FAT)- FFS (Berkeley Fast File System)- Fossil- HFS (para Mac OS)- HFS+ (para Mac OS X)- HPFS

Page 17: Sistemas operativos, caracteristicas y familias

- ISO 9660 (de solo lectura, para CD-ROM)- JFS (Journaling File System)- kfs- MFS (para Mac OS)- MINIX FS- NTFS (New Technology File System, usado en Windows NT y derivados,

como XP, Vista, 7 u 8)- OFS (Object File System)- ReiserFS (Soportado por Linux)- Reiser4 (Disponible en Kernel Linux)- UDF (usado en DVD y en algunos CD-ROM)- UFS- WinFS (Windows File System, se planeaba su incorporación en Windows

Vista y más tarde en Windows 7, pero nunca se concretó)- XFS- ZFS (sistema de archivos de Sun Microsystems)

Algunos de estos son sistemas de archivos de registro por diario.3

3 El journaling es un mecanismo por el cual un sistema informático puede implementar transacciones.También se le conoce como «registro por diario». Se basa en llevar un journal o registro de diario en el que sealmacena la información necesaria para restablecer los datos afectados por la transacción en caso de que éstafalle.

El procedimiento es básicamente el siguiente:

- Se bloquean las estructuras de datos afectadas por la transacción para que ningún otro proceso puedamodificarlas mientras dura la transacción.

- Se reserva un recurso para almacenar el journal. Por lo general suelen ser unos bloques de disco, demodo que si el sistema se para de forma abrupta (corte eléctrico, avería, fallo del sistemaoperativo...) el journal siga disponible una vez reiniciado el sistema.

- Se efectúan una a una las modificaciones en la estructura de datos. Para cada una:. Se apunta en el journal como deshacer la modificación y se asegura de que esta información seescribe físicamente en el disco.. Se realiza la modificación.

Si en cualquier momento se quiere cancelar la transacción se deshacen los cambios uno a uno leyéndolos yborrándolos del journal. Si todo ha ido bien, se borra el journal y se desbloquean las estructuras de datosafectadas.

Las aplicaciones más frecuentes de los sistemas de journaling se usan para implementar transacciones desistemas de bases de datos y, más recientemente, para evitar la corrupción de las estructuras de datos en lasque se basan los sistemas de archivos modernos. En el caso concreto de los sistemas de archivos, el journalingse suele limitar a las operaciones que afectan a las estructuras que mantienen información sobre:

- Estructuras de directorio.- Bloques libres de disco.- Descriptores de archivo (tamaño, fecha de modificación...)

Page 18: Sistemas operativos, caracteristicas y familias

Sistemas de archivos de red

Un sistema de archivos de red es el que accede a sus archivos a través de unared. Dentro de esta clasificación encontramos dos tipos de sistemas de archivos:los sistemas de archivos distribuidos (no proporcionan E/S en paralelo) y lossistemas de archivos paralelos (proporcionan una E/S de datos en paralelo).

Ejemplos de sistemas de archivos distribuidos:

- AFS- AppleShare- CIFS (también conocido como SMB o Samba, usado en redes Microsoft)- Coda- InterMezzo- NSS (Para sistemas Novell Netware 5)- NFS

Mientras que para los sistemas de archivos paralelos tendríamos:

- PVFS- PAFS

Sistemas de archivos de propósito especial

(Special purpose file system). Aquellos tipos de sistemas de archivos que no sonni sistemas de archivos de disco, ni sistemas de archivos de red. Ejemplos: acme

El hecho de que no se suela implementar el journaling de los datos concretos de un archivo suele carecer deimportancia, puesto que lo que persigue el journaling de sistemas de archivos es evitar los engorrosos y largoschequeos de disco que efectúan los sistemas al apagarse bruscamente, ya que el sistema al arrancar solodeberá deshacer el journal para tener un sistema coherente de nuevo.

Sistemas de archivos con journaling

Ext3 de LinuxExt4 de LinuxNTFS de Windows NTReiserFS de LinuxReiser4 de LinuxUFS de SUN SolarisXFS de IRIX y LinuxJFS de Linux, OS/2 y AIXHFS+ de Mac OS XVMFS-3 de VMwareSmart File System de AmigaOS

Fuente. Journaling. Recuperado el 9 de marzo de 2013. http://es.wikipedia.org/wiki/Journaling

Page 19: Sistemas operativos, caracteristicas y familias

(Plan 9), archfs, cdfs, cfs, devfs, udev, ftpfs, lnfs, nntpfs, plumber (Plan 9), procfs,ROMFS, swap, sysfs, TMPFS, wikifs, LUFS, etc.

Nota: “Existe un sistema de archivos virtual (VFS) o conmutador de sistemade archivos virtual, que es una capa de abstracción encima de un sistema dearchivos más concreto. Su propósito es permitir que las aplicaciones clientetengan acceso a diversos tipos de sistemas de archivos concretos de una manerauniforme. Puede ser utilizada para tender un puente sobre las diferencias en lossistemas de archivos de Windows, de Mac OS y Unix, de modo que lasaplicaciones pudieran tener acceso a archivos en los sistemas de archivos localesde esos tipos sin tener que saber a qué tipo de sistema de archivos están teniendoacceso.

Un VFS especifica un interfaz (o un contrato) entre el kernel y un sistema dearchivos en concreto. Por lo tanto, es fácil agregar nuevos sistemas de archivos alkernel simplemente satisfaciendo el contrato. Los términos del contrato puedenvolverse incompatibles de una versión a otra, lo que requeriría que sistemas dearchivos concretos fuesen recompilados, y posiblemente modificados antes de larecompilación, para permitirles trabajar con un nuevo lanzamiento del sistemaoperativo; o el proveedor del sistema operativo pueda realizar solamente cambiosretrocompatibles al contrato, de modo que un sistema de archivos concreto

Page 20: Sistemas operativos, caracteristicas y familias

construido para un lanzamiento dado del sistema operativo trabaje con lasversiones futuras del mismo sistema operativo.

Otros mecanismos de sistema de archivos virtual en sistemas tipo UNIX incluyenel Interruptor de Sistema de Archivos en System V Release 3, el Sistema deArchivos Genérico en Ultrix, y el VFS en GNU/Linux. En OS/2 y MicrosoftWindows, el mecanismo de sistema de archivos virtual se llama Sistema deArchivos Instalable.

El mecanismo del sistema de archivos en espacio de usuario (FUSE (Linux))permite que el código de espacio de usuario se acople en el mecanismo delsistema de archivos virtual en GNU/Linux, FreeBSD, de OpenSolaris, y Mac OS X.

En Microsoft Windows, los sistemas de archivos virtuales pueden tambiénimplementarse a través de las extensiones de consola de nombre de usuario enespacio de usuario, sin embargo, no soportan las interfaces de programación deaplicaciones del sistema de más bajo nivel de acceso de archivos, de modo queno todas las aplicaciones serán capaces de acceder sistemas de archivos que sehayan implementado como extensiones de nombre de usuario.

KIO y el GNOME VFS proveen de mecanismos similares en los entornos deescritorio de KDE y de GNOME, con limitaciones similares, aunque pueden serhechos para utilizar técnicas FUSE y por lo tanto integrarse suavemente en elsistema.” [13]

Sistemas de protección

Mecanismo que controla el acceso de los programas o los usuarios a los recursosdel sistema. El SO se encarga de:- Distinguir entre uso autorizado y no autorizado.- Especificar los controles de seguridad a realizar.- Forzar el uso de estos mecanismos de protección.

Sistema de comunicaciones

Para mantener las comunicaciones con otros sistemas es necesario podercontrolar el envío y recepción de información a través de las interfaces de red.También hay que crear y mantener puntos de comunicación que sirvan a lasaplicaciones para enviar y recibir información, y crear y mantener conexionesvirtuales entre aplicaciones que están ejecutándose localmente y otras que lohacen remotamente.

Page 21: Sistemas operativos, caracteristicas y familias

Programas de sistema

Son aplicaciones de utilidad que se suministran con el SO pero no forman parte deél. Ofrecen un entorno útil para el desarrollo y ejecución de programas, siendoalgunas de las tareas que realizan:

- Manipulación y modificación de archivos.- Información del estado del sistema.- Soporte a lenguajes de programación.- Comunicaciones.

Gestor de recursos

Como gestor de recursos, el sistema operativo administra:

- La unidad central de procesamiento (donde está alojado elmicroprocesador).

- Los dispositivos de entrada y salida.- La memoria principal (o de acceso directo).- Los discos (o memoria secundaria).- Los procesos (o programas en ejecución).- Y en general todos los recursos del sistema.

CLASIFICACIÓN DE LOS SISTEMAS OPERATIVOS [14]

Page 22: Sistemas operativos, caracteristicas y familias

Administración de tareas

- Monotarea: Solamente permite ejecutar un proceso (aparte de los procesosdel propio SO) en un momento dado. Una vez que empieza a ejecutar unproceso, continuará haciéndolo hasta su finalización y/o interrupción.

- Multitarea: Es capaz de ejecutar varios procesos al mismo tiempo. Este tipode SO. normalmente asigna los recursos disponibles (CPU, memoria,periféricos) de forma alternada a los procesos que los solicitan, de maneraque el usuario percibe que todos funcionan a la vez, de forma concurrente.

Administración de usuarios

- Monousuario: Si sólo permite ejecutar los programas de un usuario almismo tiempo.

- Multiusuario: Si permite que varios usuarios ejecuten simultáneamente susprogramas, accediendo a la vez a los recursos de la computadora.Normalmente estos sistemas operativos utilizan métodos de protección dedatos, de manera que un programa no pueda usar o cambiar los datos deotro usuario.

Manejo de recursos

- Centralizado: Si permite usar los recursos de una sola computadora.- Distribuido: Si permite utilizar los recursos (memoria, CPU, disco,

periféricos...) de más de una computadora al mismo tiempo.

CATEGORÍAS DE SISTEMAS OPERATIVOS [15]

Los Sistemas Operativos se pueden categorizar por su tecnología, su propietario olicenciatario, el estado de desarrollo, su uso o por muchas otras características. Enla práctica, muchos de estos grupos se solapan.

Page 23: Sistemas operativos, caracteristicas y familias

Por Propietario

Acorn Computers

Acorn MOS (en el BBC Micro y BBC Master) Arthur ARX RISC OS RISC iX (basado en 4.3BSD)

ADAFComputers

FS OS

Amiga

AmigaOS

- AmigaOS 1.0-3.9 (68k)- AmigaOS 4 (PowerPC)- AmigaOS 4.0- AmigaOS 4.1

Amiga Unix (tcc Amix)

Apollo Computer

AEGIS

Domain/OS Uno de los primeros sistemas basados en red. Corría sobre hardwareApollo/Domain. Adquirido por Hewlett-Packard.

Apple Inc.

Apple II series

- Apple DOS- ProDOS

Apple III

- SOS (Sophisticated Operating System)

Apple Lisa

- Lisa OS

Page 24: Sistemas operativos, caracteristicas y familias

Macintosh

Mac OS

- System 1- System 2- System 3- System 4- System 5- System 6- System 7 (nombre en clave "Big Bang")- Mac OS 8- Mac OS 9

Unix-like (*NIX)

- A/UX- Darwin (código abierto)- iOS (antes "iPhone OS")- MkLinux- Mac OS X

Mac OS X v10.0 (tcc Mac OS X 10.0 "Cheetah")Mac OS X v10.1 (tcc Mac OS X 10.1 "Puma")Mac OS X v10.2 (tcc Mac OS X 10.2 "Jaguar")Mac OS X v10.3 (tcc Mac OS X 10.3 "Panther")Mac OS X v10.4 (tcc Mac OS X 10.4 "Tiger")Mac OS X v10.5 (tcc Mac OS X 10.5 "Leopard")Mac OS X v10.6 (tcc Mac OS X 10.6 "Snow Leopard")Mac OS X v10.7 (tcc Mac OS X 10.7 "Lion")Mac OS X v10.8 (tcc Mac OS X 10.8 "Mountain Lion")Mac OS X Server

- Newton OS

Atari

- Atari DOS (para ordenadores de 8 bits)- Atari TOS- Atari MultiTOS

BAE Systems

- XTS-400

Be Incorporated

Page 25: Sistemas operativos, caracteristicas y familias

BeOS

- BeIA

Zeta (copia ilegal de BeOS desarrollada originalmente por yellow TAB einterrumpida por magnussoft)

Burroughs Corporation

- Burroughs MCP

Convergent Technologies

Convergent Technologies Operating System (adquirido por Unisys)

Digital/Tandem Computers/Compaq/HP

- OS/8- ITS (para los PDP-6 y PDP-10)- Multi-Programming Executive (de HP)- TOPS-10 (para el PDP-10)- WAITS (para los PDP-6 y PDP-10)- TENEX (de BBN, para el PDP-10)- TOPS-20 (para el PDP-10)- RSTS/E (sistema multiusuario y de tiempo compartido, para el PDP-11)- RSX-11 (sistema multiusuario y multitarea para el PDP-11)- RT-11 (sistema monousuario para el PDP-11)- VMS (creado por DEC, adquirido por HP) para el mini-ordenador VAX,

Alpha y el Intel Itanium 2; renombrado como OpenVMS)- Domain/OS (originalmente llamado Aegis, creado por Apollo Computer, que

fue adquirida por HP)- RTE (Real Time Executive, corría en el HP 1000)- TSB (Time Share Basic, corría en los HP de la serie 2000)- Unix-like (*NIX)

Digital UNIX (derivado del OSF/1, se convirtió en el Tru64 UNIX de HP)HP-UXUltrix

- NonStop Kernel (Creado originalmente por Tandem Computers para susplataformas, llamado Guardian). Soporta la ejecución simultánea de:GuardianOSS (Open System Services)

Page 26: Sistemas operativos, caracteristicas y familias

Fujitsu

- Towns OS

Green Hills Software

- INTEGRITY- INTEGRITY-178B Una versión certificada DO-178B del INTEGRITY.- µ-velOSity Un microkernel ligero.

Haiku Inc.

Haiku (sistema operativo); proyecto de código abierto que busca recrear el sistemaoperativo BeOS.

Hewlett-Packard

- HP Real-Time Environment; corría sobre máquinas HP1000.- HP Multi-Programming Executive; (MPE, MPE/XL, y MPE/iX) corría sobre

los miniordenadores HP3000 y HPe3000.- HP-UX; corría sobre máquinas HP9000 e Itanium.

Honeywell

GCOS Multics OLERT-E; OnLine Executive for Real Time - Corría sobre ordenadores

Honeywell DDP-516.

Intel Corporation

iRMX; sistema operativo en tiempo real creado originalmente para soportar lasfamilias de procesadores Intel 8080 and 8086.

IBM

OS/360 y sucesores

- OS/360 (Primer SO oficial enfocado a la arquitectura System/360)PCP (Primary Control Program)MFT (Multi-Programming Fixed Tasks)MVT (Multi-Programming Variable Tasks)

- OS/VS (El port oficial del OS/360 enfocado a la arquitectura de memoriavirtual de los System/370.)SVS (Single Virtual Storage (tanto el VS1 como el VS2 comenzaron somosistemas SVS))

Page 27: Sistemas operativos, caracteristicas y familias

OS/VS1 (Operating System/Virtual Storage 1, versión de memoria virtualdel OS/MFT)OS/VS2 (Operating System/Virtual Storage 2, versión de memoria virtualdel OS/MVT)- OS/VS2 R2 (llamado Multiple Virtual Storage, MVS, eliminó todanecesidad del VS1)

- MVS/SE- MVS/SP (MVS System Package)- MVS/XA (31 bits)- MVS/ESA- OS/390 (Mejora del MVS, con un entorno *NIX.)- z/OS (versión del OS/390 que soportaba direccionamientos z/Architecture,

de 64bits.)

DOS/360 y sucesores

- BOS/360 (Versión inicial del DOS/360, brevemente disponible)- TOS/360 (Similar al BOS, capaz de arrancar y funcionar con dispositivos de

cintas de la serie 2x00)- DOS/360 (Disk Operating System). El primer SO disponible para el

System/360 debido a problemas en el proyecto OS/360).DOS/360/RJE (DOS/360 con una extensión del programa de control queposibilitaba el control de dispositivos de entrada remotos conectados porlíneas de teléfono dedicadas.)

- DOS/VS (El primer DOS ofertado para sistemas de la serie System/370)- DOS/VSE (actualización del DOS/VS)- VSE/SP (rebautizado; es el DOS/VSE)- VSE/ESA (DOS/VSE con un soporte de memoria virtual expandido para

direcciones de 32 bits)- z/VSE (La última versión de la vieja serie DOS. Soporta direcciones de 64

bits, multiproceso, multiprograma, SNA, TCP/IP y otras características)

CP/CMS y sucesores

- CP-40/CMS (para System/360 Modelo 40)- CP-67/CMS (para System/360 Modelo 67)- VM/370 Virtual Machine / Conversational Monitor System, VM (sistema

operativo) para el System/370 con memoria virtual.- VM/XA VM (sistema operativo) eXtended Architecture para el System/370

con memoria virtual extendida.- VM/ESA Virtual Machine /Extended System Architecture (ESA), con

direccionamientos de 32 bits para la serie VM.

Page 28: Sistemas operativos, caracteristicas y familias

- z/VM Versión z/Architecture del SO VM (direccionamientos de 64 bits).

TPF para mainframes de IBM

- ACP (Airline Control Program)- TPF (Transaction Processing Facility)- z/TPF (extensión z/Architecture)

Unix-like para mainframes de IBM

- UTS- AIX/370- AIX/ESA- Linux (Linux para System z, z/Linux)- OpenSolaris (OpenSolaris para IBM System z)

Otros Sistemas Operativos para mainframes de IBM

- IBSYS (SO basado en cintas para los IBM 7090 e IBM 7094)- CTSS (Compatible Time-Sharing System, desarrollado en el Centro de

Computación del MIT)- RTOS/360 (Real Time Operating System, corría sobre 5 sistemas

personalizados System/360/75s de la NASA. Constituyeron el punto álgidodel desarrollo del OS/360.)

- MTS (Michigan Terminal System para el System/360 de IBM)- TSS/360 (Time Sharing System para el System/360 de IBM)- MUSIC/SP (desarrollado por la Universidad McGill para el IBM System/370)- IJMON (Un monitor arrancable para cargar programas en los IBM 1400 e

IBM 1800.)

IBM Series/1

- EDX (Event Driven Executive)- RPS (Realtime Programming System)

IBM 8100

- DPCX (Distributed Processing Control eXecutive)- DPPX (Distributed Processing Programming eXecutive)

IBM System/34, IBM System/36

- SSP (System Support Program)

IBM System/38

Page 29: Sistemas operativos, caracteristicas y familias

- CPF (Control Program Facility)

IBM System/88

- Stratus VOS (desarrollado por Stratus, y utilizado en computadoras IBMSystem/88)

AS/400, iSeries, System i, Power Systems i Edition

- OS/400 (descendiente del System/38 CPF, incluye un entorno System/36SSP.)

- i5/OS (mejora el OS/400 con características significativas deinteroperabilidad)

- IBM i (mejora el i5/OS.)

UNIX en IBM POWER

- AIX (Advanced Interactive eXecutive)- AOS (una versión BSD Unix)

IBM PC y sucesores con arquitectura x86

- PC DOS / IBM DOSPC DOS 1.x, 2.x, 3.x (desarrollado conjuntamente con Microsoft)IBM DOS 4.x, 5.0 (desarrollado conjuntamente con Microsoft)PC DOS 6.x, 7, 2000

- OS/2OS/2 1.x (desarrollado conjuntamente con Microsoft)OS/2 2.xOS/2 Warp V3OS/2 Warp V4eComStation

Others

- IBM Workplace OS (SO basado en microkernel, desarrollado y canceladoen los años 90)

- K42 (SO de investigación de código abierto para sistemas multiprocesadorPowerPC o x86)

- Dynix (desarrollado por Sequent, y usado en los IBM NUMA-Q)

International Computers Limited

- GEORGE 2/3/4 GEneral ORGanisational Environment, utilizado en los ICL1900

Page 30: Sistemas operativos, caracteristicas y familias

- ICL VME

LynuxWorks (originalmente Lynx Real-time Systems)

- LynxOS

Micrium Inc.

- MicroC/OS-II

Microsoft

- Xenix (versión de Unix; licenciada a SCO en 1987)- MSX-DOS (desarrollado por MS Japan para el ordenador de 8 bits MSX)- MS-DOS (desarrollado conjuntamente con IBM, versiones 1.0–6.22)- Windows CE (SO para ordenadores de mano, dispositivos integrados, y

aplicaciones en tiempo real)Windows CE 3.0Windows Mobile (basado en Windows CE)Windows CE 5.0Windows CE 6.0Windows Mobile 5.0Windows Mobile 6Windows Mobile 6.1

- Windows basado en DOSWindows 1.0Windows 2.0Windows 3.0 (la primera versión que tuvo un impacto comercial notable)Windows 3.1Windows 3.2 (edición exclusivamente china)

Familia Windows 9x

- Windows 95 (tcc Windows 4.0) (Nombre en clave: Chicago)- Windows 98 (tcc Windows 4.1) (Nombre en clave: Memphis)- Windows Millennium Edition (normalmente abreviado a Windows Me) (tcc

Windows 4.9)

OS/2 (desarrollado conjuntamente con IBM)

- Windows NT- Windows NT 3.1- Windows NT 3.5- Windows NT 3.51

Page 31: Sistemas operativos, caracteristicas y familias

- Windows NT 4.0- Windows 2000 (tcc Windows NT 5.0)- Windows XP (tcc Windows NT 5.1) (Nombre en clave: Whistler)- Windows Server 2003 (aka Windows NT 5.2) (Nombre en clave: Whistler

Server)- Windows Fundamentals for Legacy PC- Windows Vista (tcc Windows NT 6.0) (Nombre en clave: Longhorn)- Windows Home Server- Windows Server 2008 (tcc Windows NT 6.0) (Nombre en clave: Longhorn

Server)- Windows 7 (Nombre en clave: Blackcomb) (renombrado posteriormente

como Vienna)- Windows Preinstallation Environment (WinPE)

Singularity

Midori

Windows_8

Novell

- NetWare- Open Enterprise Server, el sucesor de NetWare.- SUSE Linux

QANTEL

BEST - Business Executive System for Timesharing

RCA

TSOS

ReactOS Foundation

ReactOS; ReactOS tiene como meta lograr compatibilidad binaria con aplicacionesy drivers de dispositivos para sistemas NT (XP, 2003) usando una arquitecturasimilar y proveyendo una interfaz pública completa y equivalente.

RoweBots

- Unison RTOS- DSPnano RTOS- Unison/Reliant V3

Page 32: Sistemas operativos, caracteristicas y familias

SCO / The SCO Group

- Xenix- Xenix 286- Xenix 386- SCO Unix- SCO Open Desktop- SCO OpenServer 5- UnixWare 2.x- UnixWare 7- SCO OpenServer 6

Unicoi Systems

- Fusion RTOS- DSPOS

Wind River Systems

VxWorks

Basados en Lisp

- Máquina LispSymbolics

Otros

- EOS (Operating System)- EMBOS- GCOS- PC-MOS/386- SINTRAN III- THEOS- TinyOS- TRS-DOS- NewDos/80- TX990/TXDS, DX10 y DNOS (sistemas operativos para los

miniordenadores TI-990)- MAI Basic Four- Michigan Terminal System- MUSIC/SP- TSX-32- OS ES

Page 33: Sistemas operativos, caracteristicas y familias

- Prolog-Dispatcher (utilizado para controlar la nave espacial soviética Buran)

Otros sistemas basados en UNIX o compatibles con POSIX

- Aegis- Amiga Unix- Clix- Coherent- DC/OSx- DG/UX- DNIX- DSPnano RTOS- INTERACTIVE UNIX- IRIX- MeikOS- NeXTSTEP- OS-9- OS9/68K- OS-9000- OSF/1- OpenStep- QNX- Rhapsody- RISC/os- RMX- SCO UNIX- SINIX- Solaris- SunOS- SUPER-UX- System V- System V/AT, 386- Trusted Solaris- UniFLEX- Únicos- Unison RTOS- SDC (Sistemas de Datos Científicos)- CP (Control Program)- TRON Project- TRON- UNIVAC (más tarde Unisys)

Page 34: Sistemas operativos, caracteristicas y familias

- EXEC I- EXEC II- EXEC 8- VS/9- Wavecom- Open AT OS- No propietarios

*NIX

Sistemas operativos *NIX y otros compatibles con POSIX

Minix Plan 9 Inferno Plan B Solaris Unix (SO desarrollado por los Laboratorios Bell en los años 70) Xinu

*NIX Libres/Código abierto

BSD FreeBSD DesktopBSD PC-BSD DragonFly BSD NetBSD OpenBSD GNU Linux

GNU/Linux: Sistema Operativo de Software de Código Abierto (softwareLibre) combinado con el Núcleo Linux

OpenDarwin OpenSolaris SSS-PC Syllable VSTa Jari OS AuroraUX

Page 35: Sistemas operativos, caracteristicas y familias

Otros TUNIS No *NIX Sistemas de investigación no *NIX Amoeba Croquet House ILIOS EROS CapROS Coyotos L4 Mach MONADS SPEEDOS Nemesis Singularity Spring V

Sistemas libres/de código abierto no *NIX

FullPliant FreeDOS FreeVMS osFree

DOS

86-DOS

PC DOS MS-DOS

DR-DOS

Concurrent DOS Multiuser DOS

FreeDOS

ProDOS

Page 36: Sistemas operativos, caracteristicas y familias

PTS-DOS

RDOS

TurboDOS DESQview

De red

Cambridge Ring CSIRONET CTOS Data ONTAP SAN-OS Enterprise OS Fabric OS JUNOS NetWare NOS Novell Open Enterprise Server OliOS Plan 9

InfernoPlan BTurboDOS

XPATH OS

Sistemas operativos Web

amoebaos desktoptwo g.ho.st youos browser os eyeos jooce glide os 3.0 craythur goowy orca purefect

Page 37: Sistemas operativos, caracteristicas y familias

Genéricos/comodidades y otros

BLIS/COBOL Bluebottle BS1000 by Siemens AG BS2000 by Siemens AG BS3000 by Siemens AG CP/M

CP/M-80CP/M-86CP/M-68kCP/M-8000MP/M-80MP/M-86

FLEX9 FutureOS GEM GEOS JavaOS JNode JX KERNAL MERLIN MorphOS nSystem NetWare Oberon (sistema operativo) OSD/XC by Fujitsu-Siemens OS-IV Pick PRIMOS Sinclair QDOS SkyOS SSB-DOS SymbOS Symobi TripOS TurboDOS UCSD p-System

Page 38: Sistemas operativos, caracteristicas y familias

UMIX VOS VOS VM2000 VisiOn VPS/VM aceos Miraculix

Para Elektronika BK

ANDOS AO-DOS BASIS CSI-DOS DOSB10 DX-DOS FA-DOS HC-DOS KMON MicroDOS MK-DOS NORD NORTON-BK RAMON PascalDOS RT-11

RT-11SJOS BK-11

Turbo-DOS BKUNIX OS/A WASP

Afición

AROS AtheOS DexOS DSPnano RTOS EROS

Page 39: Sistemas operativos, caracteristicas y familias

FAMOS HelenOS KolibriOS LoseThos LSE/OS MenuetOS Möbius operating system NewOS Syllable Desktop Unison RTOS Visopsys TajOS

Integrados/empotrados

A/ROSE DSPnano RTOS Embedded Linux FreeBSD FreeRTOS Inferno LynxOS pSOS Nucleus RTOS CMX uC/OS eCos RTEMS MINIX 3 .NET Micro Framework OS/RT Open AT OS polyBSD QNX RTXC Quadros RTOS ROM-DOS T2 SDE Unison RTOS VxWorks

Page 40: Sistemas operativos, caracteristicas y familias

RTLinux Windows XP Embedded Windows CE

PDAs

Inferno Palm OS Palm webOS EPOC Windows CE

Pocket PCWindows Mobile

Linux DOS Newton OS VT-OS Internet Tablet OS Magic Cap

Reproductores de música

DSPnano RTOS ipodlinux Pixo RockBox iPhone OS iriver clix UI

Teléfonos inteligentes

BlackBerry OS Embedded Linux

AndroidOpenmoko LinuxMobilinuxMontaVistaMotoMagxQtopiaLiMo Platform

- iOS- JavaFX Mobile

Page 41: Sistemas operativos, caracteristicas y familias

- Palm OS- Symbian OS- Windows CE

Windows Mobile

Routers

AlliedWare AlliedWare Plus AirOS CatOS Cisco IOS CyROS DD-WRT Inferno IOS-XR IronWare JunOS RouterOS ROX ScreenOS Timos Unison RTOS

Microcontroladores, tiempo real

BeRTOS ChibiOS/RT ChorusOS Contiki DSPnano RTOS eCos FreeRTOS Fusion RTOS INtime RTOS para Windows iRMX Inferno Integrity LUnix LynxOS

Page 42: Sistemas operativos, caracteristicas y familias

MenuetOS MontaVista Nucleus OS-9 Operating System Embedded OSEK OS/RT Phoenix-RTOS Prex QNX RTAI RTEMS RTLinux RTXC Quadros RTOS SCIOPTA RTOS ThreadX TRON Project μClinux uKOS µOS++ Unison Operating System VRTX VxWorks XMK Xenomai

Basados en capacidad

KeyKOS

- EROS- CapROS- Coyotos

MONADS

- SPEEDOS

V

VLEGO Mindstorms

Page 43: Sistemas operativos, caracteristicas y familias

- BrickOS- leJOS- ChyanOS

Taller:

1. Averiguar sobre el formato de disco (como funciona en su totalidad,con ejemplos incluidos).

2. Averiguar Tipos de software de sistema (con sus respectivosejemplos):

- Cargadores de programas- Sistemas operativos (y sus componentes, muchos de los cuales

pueden considerarse como software de sistema)- Controladores de dispositivos- Herramientas de programación: compiladores, ensambladores,

enlazadores, etc.- Programas utilitarios- Entorno de escritorio / Interfaz gráfica de usuario (que pueden incluir

Gestores de ventanas)- Línea de comandos- BIOS- Hipervisores- Bootloaders (Gestor de arranque)

Este trabajo se evalúa.

Page 44: Sistemas operativos, caracteristicas y familias

Referencias

[1] Fuente de consulta. Sistemas operativos. Recuperado y adaptado por el autorel 8 de marzo de 2013. http://es.wikipedia.org/wiki/Anexo:Sistemas_operativos.

[2] Cfr., entre otros: Tanenbaum, A. (1992) Modern Operating Systems,Englewood Cliffs: Prentice-Hall; Haldar, S. y Aravind, A. A. (2010) OperatingSystems, Pearson Education India, pp. 12 y ss.; Turner, R. W. (1986) OperatingSystems: design and implementation, MacMillan.

[3] Cisco Systems (1992). cisco.com (ed.): «Fundamentos de UNIX»(certificación). Consultado el 10 de febrero de 2013.

[4] Toastytech.com (ed.): «BeOS 5.0 Personal Edition» (en inglés) (2010).Consultado el 10 de febrero de 2013.

[5] «Amiga Video Toaster» (en inglés). NewTek, Inc. (2010). Consultado el 1 defebrero de 2013.

[6] Modos de ejecución en una CPU. Recuperado el 9 de marzo de 2013.http://trabajoinforioolgamasalema.blogspot.com/2008/12/modos-de-ejecucin-en-un-cpu.html

[7] Sistema operativo de red. Recuperado el 9 de marzo de 2013.http://es.wikipedia.org/wiki/Sistema_operativo_de_red

[8] Anexo. Sistemas operativos. Recuperado el 9 de marzo de 2013.http://es.wikipedia.org/wiki/Anexo:Sistemas_operativos

[9] Sistema de archivos. Recuperado el 9 de marzo de 2013.http://es.wikipedia.org/wiki/Sistema_de_archivos

[10] Ibid.

[11] ibídem.

[12] Sistema de archivos de disco. Recuperado el 9 de marzo de 2013.http://es.wikipedia.org/wiki/Anexo:Sistemas_de_archivos_de_disco

[13] Sistema de archivos virtual. Recuperado el 9 de marzo de 2013.http://es.wikipedia.org/wiki/Sistema_de_archivos_virtual

[14] Clasificación de los sistemas operativos. Recuperado el 9 de marzo de 2013.http://es.wikipedia.org/wiki/Sistema_operativo

[15] Anexo. Sistemas operativos. Recuperado el 9 de marzo de 2013.http://es.wikipedia.org/wiki/Anexo:Sistemas_operativos