UNIX – COMUNICACIONES

       TEMA: “ 6 ”

       GRUPO: 24

 

        INTEGRANTES:

                                DUARTE, NANCY L.

                                CAINELLI,  R. ADRIANA

                                LEAL, EDIT

                                      SILVESTRI , MARCOS

                                      ROFFE, MARIO R.

 

 Fin de Página

 

 

 

·              INTRODUCCIÓN

 

·              HISTORIA

 

·              ALGUNAS DIFERENCIAS DE UNÍX Y DOS

 

·              CARACTERÍSTICAS GENERALES

 

·              EL SHELL

 

·              LLAMADA DEL SISTEMA OPERATIVO

 

·              COMUNICACIONES

 

·             COMUNICACIONES ENTRE PROCESOS A TRAVEZ DE LIBRERÍA DE COMUNICACIÓN(BSD)

·              COMUNICACIÓN ENTRE MAQUINAS

 

·               COMUNICACIÓN ENTRE USUARIO

 ·             TERMINOS UTILIZADOS Y DEFINICIONES 

 

 ·             CONCLUSION

        

·              BIBLIOGRAFIA

 

 

 

 

 INTRODUCCION- UNIX

 

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. 

El primer paso para acceder a Internet, es familiarizarse con UNIX y más que nada con el conjunto de protocolos de TCP/IP, que son los que nos permiten establecer la comunicación con los demás equipos, en la RED. Al igual que en máquinas monousuario, existen diversas versiones de este sistema.

 

 

Historia

 

El desarrollo de este sistema operativo comenzó como un proyecto de fin de semana de un investigador para realizar un juego y actualmente se ha convertido en una industria multimillonaria.

Unix se desarrollo inicialmente en los laboratorios Bell y llegó a ser operativo en 1970.

EL trabajo sobre Unix en los laboratorios Bell y en otros lugares produjo una serie de versiones de Unix .Llevar el sistema Unix de una PDP-7 a uno PDP-11 fue el 1er paso que demostró que  Unix podría ser un sistema operativo para todas las computadoras. El 2do paso importante fue la reescritura de Unix  en el lenguaje de programación C la implementación en C demostró las ventajas de usar un lenguaje de alto nivel para mayor parte o bien todo el código del sistema. Hoy en día, casi todas las implementaciones de Unix están escritas en  C.     

 

Esta primera versión de UNIX fue muy popular en los laboratorios Bell. En 1974 el sistema UNIX fue escrito por primera vez en una revista técnica. Esto despertó interés en el sistema. Se otorgan licencia de UNIX a Instituciones y Universidades. La primera versión ampliamente difundida en los laboratorios Bell  fue la versión 6, en 1976. La  versión 7, lanzada en 1978 es el antepasado de la mayoría de los sistemas Unix modernos.

Hacia 1982 los laboratorios Bell había cambiado distintas variantes de UNIX de AT & T (fue realizado en la universidad de Berkeley, California, que no llego a desarrollarse, ejecutaba primero en una PDP y más tarde en maquina VAX) en un único sistema que fue comercializado como UNIX S ΙΙΙ. Posteriormente se le añadieron características mas hasta llegar al UNIX S V.

 

 

 

 

Diferencias de Unix con DOS

 

 

El sistema operativo Unix posee muchas diferencias con el sistema operativo DOS que manejan las computadoras personales, entre otras podemos mencionar las siguientes:

Acceso Restringido: Mientras que en el sistema operativo DOS el acceso a una máquina no tiene restricción, es decir, cualquier usuario puede entrar a ver el contenido del disco duro de una computadora personal, e inclusive puede correr aplicaciones que se encuentren disponibles (Windows, Corel Draw, Word, Excel etc.) en un sistema UNIX el acceso es restringido, se necesita tener una cuenta con un login asignado y un password o contraseña para poder acceder a esta máquina.

Permisos para los archivos: En El sistema operativo DOS no existen permisos de ejecución para los archivos; solamente se pueden correr los programas cuyas extensiones acaben en .EXE .COM .BAT cualquier usuario podrá ejecutar los programas que se tengan. En un sistema UNIX, se tienen una serie de permisos (9 en total) para los 3 tipos de usuarios diferentes dentro de un servidor de esta clase: El propio Usuario, El grupo al que pertenece el usuario y todos.

Nombre de los archivos: En DOS el nombre de un archivo consta como máximo de 8 caracteres y 3 para la extensión en contraparte, un sistema Unix se pueden tener archivos cuyos nombres pueden contener hasta 256 caracteres además no hay diferencia para las extensiones, es común tener extensiones como.tar.Z y son válidas. En Unix existe también una distinción entre lo que son archivos binarios y archivos ASCII.

Unix es un Sistema Operativo Sensible al cambio MAY/min: Así es, en este sistema operativo todos los comandos se escriben con letras minúsculas, así mismo se debe tener cuidado con las direcciones de correo electrónico.

Unix es un sistema operativo multitarea: Esto significa que no se tiene que esperar a acabar de ejecutar un proceso para iniciar otro como en el caso de una computadora personal (Windows 95 permite actualmente ejecutar varias tareas, sin que sea realmente un sistema multitarea), sino que es factible abrir muchos procesos y al mismo tiempo se ejecutan muchas tareas.

 

Características Generales

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

- Está escrito en un lenguaje de alto nivel: C.

- Dispone de un lenguaje de control programable llamado SHELL.

- Ofrece facilidades para la creación de programas y sistemas y el ambiente adecuado para las tareas de diseños de software.

- Emplea manejo dinámico de memoria por intercambio o paginación.

- Tiene capacidad de interconexión de procesos.

- Permite comunicación entre procesos.

- Emplea un sistema jerárquico de archivos, con facilidades de protección de archivos, cuentas y procesos.

- Tiene facilidad para redireccionamiento de Entradas / salidas.

- Garantiza un alto grado de portabilidad.

 El sistema se basa en un Núcleo llamado Kernel, que reside permanentemente en la memoria, y que atiende a todas las llamadas del sistema, administra el acceso a los archivos y el inicio o la suspensión de las tareas de los usuarios.

La comunicación con el sistema UNIX se da mediante un programa de control llamado SHELL. Este es un lenguaje de control, un intérprete, y un lenguaje de programación, cuyas características lo hacen sumamente flexible para las tareas de un centro de cómputo. Como lenguaje de programación abarca los siguientes aspectos:

- Ofrece las estructuras de control normales: secuenciación, iteración condicional, selección y otras.

- Paso de parámetros.

- Sustitución textual de variables y Cadenas.

- Comunicación bidireccional entre órdenes de shell.

El shell permite modificar en forma dinámica las características con que se ejecutan los programas en UNIX:

Las entradas y salidas pueden ser redireccionadas o redirigidas hacia archivos, procesos y dispositivos; es posible interconectar procesos entre sí.

 

El Shell

Introducción:

      Al arrancar el ordenador en modo multiusuario, el programa INIT se encarga de la inicialización de la máquina, creando la estructura que soporta los procesos multiusuario. Por cada puerto de terminal activo se inicia la ejecución de un programa getty que se encarga de establecer la velocidad de comunicación, tipos de terminal y modo. Luego, este mismo programa obtiene la cadena login que aparece en el terminal invitando al usuario a conectarse.

      Una vez entrado el nombre de usuario, el mismo programa invoca al programa login con el nombre de usuario como argumento. Este programa se ocupa de comprobar el logname y la contraseña. Si todo está correcto, llama al programa sh que se encarga a su vez de ejecutar los comandos que se encuentran en el fichero.profile en el directorio HOME de cada usuario. Finalmente genera en pantalla el prompt. A partir de aquí, se queda esperando que se introduzcan comandos. El programa sh es el shell.

      Cada vez que se introduce un comando, el shell analiza la línea, verifica la sintaxis y lo ejecuta. El ciclo se repite hasta que el usuario se desconecta. Entonces, el programa sh termina su ejecución e INIT recobra el control iniciando una nueva ejecución de getty para el terminal.

      El shell es, por tanto, un procesador de comandos. Pero también ejerce otras responsabilidades: Es el encargado de la redirección de entradas y salidas, es también un lenguaje de programación interpretado, es el encargado de proveer los comandos y variables para controlar y modificar el entorno de usuario (es decir, tiene la función de ser internase de usuario.

 

 

 

El caparazón:

      

El shell es la parte visible por el usuario del UNIX. Es el intermediario entre el sistema operativo básico (kernel) y el usuario. Existen varios tipos de shell:

 

·       ·        Bourrne shell: es  interprete de comandos básicos.

·       ·        C-Shell: es interprete de comandos.

·       ·        Korn shell: se basa en los dos anteriores. Añade posibilidades de programación avanzada, facilidades aritmética y mayor rapidez de ejecución.

 

 

 

 

 

 

Programación en shell:

      Además de las variables de entorno existen otras que son definidas por el usuario, es decir, las variables de usuario. Estas variables pueden contener cadenas de caracteres. Estos caracteres, a su vez, pueden que tengan un significado especial para el shell. También es posible asignar comandos a las variables y combinarlas con otras que contengan cadenas de caracteres o parámetros especiales.

      Aparte de estas variables, el shell en UNIX permite agrupar comandos en un programa, dando como beneficio para el usuario un ahorro considerable de tiempo y atención. Para crear este tipo de utilidades en UNIX, disponemos del lenguaje de programación del propio shell. Este lenguaje es un lenguaje interpretado cada línea del programa es leída y a continuación ejecutada.

      El lenguaje de programación shell es mucho más de lo que se necesita para hacer utilidades de tipo batch. Es un lenguaje completo, de alto nivel, que incluye las estructuras fundamentales de la programación. Maneja variables, dispone de instrucciones que controlan procesos iterativos tales como for, while, until; permite parámetros de sustitución y una serie de instrucciones como entrada de datos (read), ejecuciones condicionales (if, case), etc., adecuadas para desarrollar utilidades muy sofisticadas. Sobre todo, este lenguaje permite la posibilidad de emplear todos los comandos del sistema dentro de los propios programas.

 

Llamadas al sistema operativo

La comunicación del usuario con el sistema operativo Unix es a través de funciones llamadas "system calls" -SC- (llamadas al sistema). Por ejemplo una llamada al sistema para leer desde un archivo sería:

nro_bytes_leidos = read (fichero, buffer, nbytes);


El SC devuelve en nro_bytes_leidos los bytes que realmente ha leído. Este valor suele ser el mismo que nbytes, pero podría ser inferior si, por ejemplo, se hubiera alcanzado el fin del fichero durante la lectura.

Si la llamada no puede realizarse por algún error de algún tipo la función retornaría nro_bytes_leidos=-1 (un valor <0 es una condición de error en todas las llamadas) y el número de error se almacenaría en "errno". Esta variable se puede visualizar mediante la función de tratamiento de error .

Una de las llamadas más importantes de un sistema Unix es la llamada fork(). El fork() es la llamada para crear procesos en Unix. Su funcionalidad es similar a la planteada por Peterson (estudiada en SOpI) como instrucción Fork/Join pero aquí (en Unix no existe la primitiva Join) por lo cual los árboles de procesos son árboles abiertos y si se desean sincronizar procesos se deberán utilizar semáforos.

Cuando quiere crear un proceso hijo a partir de un proceso padre en el fichero del código fuente deberán estar el código de ambos,

 

 

Comunicaciones

Para comunicar procesos el SC más común es el pipe(). Esta llamada sólo permite comunicar procesos que tienen el mismo padre (o como caso particular el padre y el hijo). Esta utiliza la ventaja que los procesos hijos heredan del padre una duplicación de las variables por lo cual si el pipe lo abre el proceso padre todos los hijos creados a partir de este momento heredarán el pipe. El pipe está representado por un par de descriptores: uno de lectura y otro de escritura que se le pasan como parámetros a la llamada pipe, por ejemplo: int fd[2]; ...; pipe(&fd[0]); donde fd[0] es el descriptor de lectura y fd[1] el de escritura. Ya que los procesos hijos heredarán los dos descriptores accediendo al adecuado cada uno podrán comunicarse. El usuario no debe preocuparse por la sincronización ni el control de la comunicación ya que esto lo realiza el SOp. Si que el usuario debe cerrar estos descriptores cuando termina de usarlos, por ejemplo close(fd[0]); close(fd[1]); en todos los procesos que lo han heredado.

Cuando se crea un proceso en Unix recibe tres descriptores abiertos que son identificados con el 0 (entrada estándar generalmente teclado), él 1 (salida estándar generalmente pantalla) y el 2 (salida de error estándar generalmente pantalla), de esta forma un proceso que realice por ejemplo un printf("Hola Pirulo") es equivalente a fprintf(1,"Hola Pirulo") y él "Hola Pirulo" saldrá por pantalla, excepto que se ejecute el programa con > fichero lo cual el shell redirecciona la salida estándar a fichero pero el programa no se entera (sigue escribiendo en 1). Es decir, es el shell quien cambia la dirección donde apunta el 1 (display) para que apunte al fichero.

 

Comunicaciones entre procesos a través de librerías estándar de comunicaciones (BSD)

Las librerías BSD IPC (Berkeley Software Distribution Interprocess Communication son un conjunto de llamadas al sistema operativo escritas en C para implementar comunicaciones en el nivel más general.

Esta librería permiten crear aplicaciones distribuidas que intercambian datos ya sea sobre la misma maquina o sobre máquinas diferentes sin que el usuario necesite conocer todas las capas de comunicación ni los protocolos. Estas llamadas (cuando se utilizan correctamente) permite crear punto de comunicación llamados sockets dentro del programa y transferir datos entre ellos.

Para conocer el modelo general de BSC IPC, es necesario definir algunos términos tales como socket, socket descriptor, binding.

Socket

Es el punto final de comunicación. Un par de sockets conectado provee una internase simular a la de los pipes pero sin la restricción que los procesos deber ser creados por el mismo padre (recordar que esta condición es necesaria en el pipe ya que los hijos deben heredar los descriptores del pipe abierto por el padre). Un socket es identificado por un socket descriptor.

Socket Descriptor

Este es un file descriptor es decir un apuntador similar al que se obtiene cuando se abre un archivo pero que hace referencia a un socket (punto de comunicación) y no a un archivo normal. Este descriptor será utilizado para leer, escribir o cualquier otra actividad que se pueda realizar con un fichero normal (con las limitaciones propias del mismo) una vez que la comunicación está establecida. Todas las BSD IPC utilizan el socket como argumento.

Binding

Antes que un socket pueda ser accedido a través de la red, este debe ser asociado a una dirección (bound). Esta asociación (binding) hace el socket accesible por otros sockets sobre la red a través de la dirección a la cual éste ha sido asociado.

Dónde se utilizan los BSD IPC

La mayoría de las utilidades de comunicación sobre Unix utilizan BSD IPC (telnet, mail, ftp, htpp, etc.). Utilizando BSD IPC se pueden escribir aplicaciones distribuidas para diferentes áreas tales como: bases de datos remotos, acceso a ordenadores desde múltiples sitios, distribución de subtareas entre varios ordenadores, etc.

Modelo Client-Servidor

Las aplicaciones típicas de BSD IPC consisten de 2 procesos no relacionados: un proceso (cliente) pide una conexión y el otro proceso (server) acepta este pedido.

El proceso server crea el socket, asocia este a una dirección (binds), e inicializa éste un mecanismo llamado colas de pedidos (listen queue) para recibir pedido de conexión. El proceso cliente crea un socket y solicita la conexión al proceso server. Una vez que el proceso server acepta la conexión y ésta está establecida, los procesos se pueden comunicar entre los dos sockets en forma full-duplex. Dependiendo de las necesidades de la comunicación el modelo aplicado puede ser simétrico o asimétrico. En una aplicación simétrica cualquiera de los dos procesos pueden ser server o cliente. En caso contrario (asimétrico) está claramente definido quién es el server y quién es el cliente

 

  

Comunicaciones entre Maquinas

 

El UNIX fue diseñado pensando en redes de computadora. Por ello cuenta con una serie de programas especiales que permiten la comunicación entre máquinas.

ftp

ftp[opciones] [nombre de máquina] Programa para transferir archivos entre computadoras conectadas a la red. El programa proporciona el prompt: ftp>,indicando que espera comandos de parte del usuario. El comando  brinda ayuda sobre los comandos de ftp.

login

Programa con el que se inicia una sesión de UNIX y se identifica al usuario.

talk

talk usuario[@nombre de máquina] [tty] Comunicación interactiva por medio de teclado con otro usuario que se encuentra conectado a la misma máquina o a otro sitio. Útil para intercambio breve de información, cuando no es posible comunicarse por teléfono o correo electrónico. La sesión se termina con Ctrl-C.

telnet

telnet [nombre de máquina] Programa para comunicarse con otra máquina usando los protocolos de TELNET. El nombre de máquina puede ser un nombre o una dirección de Internet (formato numérico).

write

write usuario[tty] mensaje... Programa para iniciar o responder una conversación con usuario. La sesión se termina con Ctrl-D.

 

Transfiriendo archivos con ftp

Con este programa se pueden transferir archivos entre las diversas computadoras. Por ejemplo, para transferir archivos entre los sistemas UNIX y la PC´s conectadas a la red. Para las transferencias, hay que hacer distinción entre dos clases de archivos: los archivos ASCII y los binarios. Los archivos ASCII estándar (i.e. caracteres cuyos códigos ASCII son valores menores que 128), son aquellos archivos de texto, que contienen sólo caracteres del alfabeto inglés. El alfabeto español contiene caracteres que no pertenecen al ASCII estándar. Por ejemplo, los caracteres: á, é, í, ó, ú, ¿, ¡, pertenecen al ASCII extendido (i.e. códigos ASCII con valores mayores a 128). Por lo tanto, un texto en español, se considera un archivo binario. Los archivos binarios, son aquellos que no son ASCII estándar. Por ejemplo los programas ejecutables; archivos de varios procesadores de palabras como el wl Word, Word Perfect, etc.; todas las imágenes GIF, TIF, etc.; todos los archivos comprimidos *.zip, *.Z, etc. Los comandos más usados en el programa ftp se presentan en la tabla. Un ejemplo de una sesión de transferencia sería la siguiente.

 

 

 

?

Lista los comandos de ftp.

¡

Salir al shell.

append

Agregar a un archivo.

ascii

Preparar transferencia tipo ASCII.

binary

Preparar transferencia tipo binario.

bye

Terminar la sesión ftp y salir.

cd

Cambiar de directorio en máquina remota.

close

Cerrar la conexión remota.

delete

Borrar un archivo en la máquina remota.

dir

Listado largo de archivo en máquina remota.

get

Recibir archivo remoto.

hash

Útil para monitorear la transferencia de archivos.

help

Describe cada comando de ftp.

lcd

Cambiar de directorio de trabajo en máquina local.

ls

Lista de archivos de máquina remota.

mget

Recibir múltiples archivos.

mkdir

Crear un directorio en máquina remota.

mput

Enviar múltiples archivos.

prompt

Forza transferencias múltiples interactivos.

put

Enviar archivo a máquina remota.

pwd

Informar sobre el directorio de trabajo en máquina remota.

quit

Terminar la sesión y el programa ftp.

status

Informa sobre el estado de variables ftp.

user

Envía información sobre nuevo usuario.

verbose

Activa o desactiva la información adicional sobre transferencia

 

OBSERVACIONES ADICIONALES: Cuando se transfieran archivos entre los sistemas UNIX y las PC´s, hay que tener en cuenta dos cosas.

Primero, el UNIX es sensible a las mayúsculas y minúsculas, mientras que el DOS no lo es. Es posible confundirse con los distintos nombres.

Segundo, los nombres de los archivos en DOS están restringidos a ocho letras a la izquierda del punto, y tres a la derecha del punto para la extensión del archivo. En UNIX, no existe tal restricción, por ello puede haber truncamiento e incluso cambio en el último carácter antes del truncamiento.

 

 

Comunicación con talk.

Algunos sistemas permiten realizar charlas usando el teclado (3). Para llevar a cabo la sesión de talk, se requiere conocer cual es el nombre de la máquina en donde se conecta la contraparte y si se encuentra trabajando en ese momento en esa máquina. El programa finger podría ayudar en esta tarea.(4)

 

·         ·         (3) El funcionamiento de este programa depende de la configuración de los sistemas UNIX en ambos lados de la conexión. Es posible que las versiones de talk entre diferentes sistemas no sean compatibles. Existen versiones corregidas como el ntalk, que permiten interaccionar con más tipos de plataformas UNIX, pero dependerá que se haya instalado correctamente en la máquina de la contraparte.
·         ·         (4) Se requiere que el otro sitio acepte las indagaciones del programa finger.

 

Sesiones remotas con telnet.


Este programa, nos permite realizar sesiones de trabajo en otras máquinas. Esto quizás sea porque se cuenta con recursos distintos a los de la máquina local. Por ejemplo, puede ser que en ese sitio la maquina con algún compilador especial o CPU más potente, que existan base de datos específicos como ficheros de las bibliotecas, etc. Para la conexión a otros sitios, es necesario contar con una cuenta de usuario o al menos saber si hay cuentas de cortesía de algún servicio

Comunicándose con Write.

El programa write permite la comunicación entre dos usuarios conectados al mismo sistema. Es necesario saber el nombre de la terminal tty a la que se encuentra conectada la contraparte. El programa who permite conocer esta información

Aunque puede establecerse una conversación con este programa, se requiere negociar los turnos de quien escribe a un tiempo y cuando se hace el cambio de comunicador, esto se debe hacer por cuestiones de claridad en los mensajes que aparecerán en la pantalla.

 

 

Inicio

Comunicación entre usuarios

 

     

 En el sistema UNIX se dispone de una serie de medios para establecer distintos sistemas de comunicaciones entre los usuarios. A continuación se describen los diferentes comandos que permiten comunicarse entre sí a los usuarios.




Correo (mail):

      Este comando permite a los usuarios enviarse mensajes entre sí, por medio de sus correspondientes buzones. Si el usuario receptor estuviera identificado ante el sistema, se le enviará un mensaje a su pantalla indicándole la recepción, en su buzón, del nuevo mensaje. El mensaje recibido será:

   You have mail

      Si el receptor no estuviese conectado al sistema, el mensaje se almacenará en su buzón, y al usuario se le enviaría este mismo mensaje en el momento de la conexión ante el sistema.

      El receptor no está obligado a leer el correo inmediatamente. Si no lo hace, el mensaje se repetirá periódicamente para recordarle que tiene correo en su buzón.

      Este comando permite tanto el envío como la lectura de los mensajes recibidos.

 

Write:

      Este comando permite la comunicación interactiva y directa con otros usuarios conectados actualmente al UNIX. Cuando el receptor de un comando write lo recibe en pantalla, aparecerá en ésta el siguiente mensaje:

   Message from  

      Si desea conectarse con ese usuario deberá enviarle un comando write. Una vez enviado, se establece comunicación directa entre ambos, por lo que se deberá establecer un protocolo que regule el envío mutuo de mensajes. El estandarizado es:

o        O        Cuando escriba la primera vez a un usuario, espere a que el usuario le responda antes de empezar a enviar su mensaje.

o        o        Cada parte terminará cada mensaje con una señal distintiva; por ejemplo: -o-- Cada parte usará una señal distintiva cuando desee termina la conversación; por ejemplo -oo-.

 

Wall (write all):

      Este comando permite escribir a todos los usuarios que en ese momento estén trabajando con el sistema. Los mensajes van siempre precedidos por la siguiente cabecera:

   Broadcast Message from ...

      Suele ser frecuente su empleo como un sistema busca personas, o bien, para avisar a los usuarios de una inminente desconexión del sistema.

      Este comando es más una herramienta del administrador del sistema que de usuario.



News:

      El comando news es utilizado para poder acceder a los mensajes tipo news que pueda haber enviado el administrador. El comando lee la información localizada en el directorio /usr/news. Una vez leídos los items enviados por el administrador no aparecerán de nuevo y no podrán ser accedidos.

 

  

Términos utilizados y definiciones

 

Paquete (Packet)

Un mensaje o unidad de datos que es transmitida entre dos procesos que se comunican

Peer

Proceso remoto con el cual un proceso se comunica

Addressing

Identificación de un socket así éste puede ser distinguido de otros socket sobre la misma máquina (host).

Communication Domain

Un conjunto de propiedades que describe las características de los procesos que se comunican a través de sockets.

Address Family

Dos tipos de familias pueden ser utilizadas: AF_INET es la Internet family y AF_UNIX es la Unix Domain family. La primera permite una comunicación en el sentido más general mientras que la segunda esta restringida a procesos dentro del mismo host.

Internet address

Una dirección en cuatro bytes separada por puntos asignada por un organismo oficial (en España RedIris) que identifica un nodo (host) sobre la red. Por ejemplo el hoteui tiene 158.109.240.6

Port

Es un identificador utilizado para diferenciar diferentes comunicaciones sobre la misma dirección Internet. Los valores posibles son 1-65535, pero para el usuario están disponibles a partir desde 1024 (los restantes son reservados para el Sistema).

Socket address

Para la familia AF_INET un socket address consiste de: internet address, port address, address family. Para la familia AF_UNIX la socket address es un nombre en el árbol de directorio de ficheros al cual se asocia el socket (recordar que los procesos son todos locales).

 

 

Protocolos

Existen dos protocolos (utilizados en las capas de transporte de la comunicación). Ellos son TCP el cual implementa stream sockets y UDP que implementa datagram sockets.

TCP (Transmisión Control Protocolo)

Provee el soporte de comunicaciones para stream sockets. TCP es utilizado para implementar una comunicación fiable, en secuencia, con control de flujo de mensajes en los dos sentidos basada en byte streams (flujo o cadenas de bytes). Para este tipo de comunicación deben el proceso cliente y el server estar comunicados al momento de realizar la transferencia de datos, es decir es una comunicación rigurosa.

UDP (User Datagram Protocol)

Provee el soporte para comunicaciones con datagram sockets. UDP es un protocolo no fiable. Un proceso que recibe mensajes sobre un datagram socket podría encontrar que los mensajes están duplicados, fuera de secuencia o bien se han perdido. Esta situación se da porque para comunicarse dos procesos no se establece primero la comunicación, es decir, este protocolo permite enviar o recibir mensajes sin establecer la comunicación. Cada mensaje posee la dirección destino y los procesos involucrados no necesitan tener una relación cliente-servidor necesariamente.

 

 

CONCLUSION

 

 

Durante los últimos veinte años, el sistema  UNIX sé a convertido en un sistema operativo potente, flexible y versátil. Se adapta a todo tipo de computadoras

incluyendo las personales y las estaciones de trabajo de ingeniería , microcomputadoras multiusuario, mini computadoras , mainframe ,y supercomputadoras .

el número de computadoras que funciona con sistema UNIX ha crecido de forma exponencial . El éxito de este sistema se debe a muchos factores entre los que se incluyen su portabilidad a un gran abanico de máquinas, su adaptabilidad y simplicidad , el amplio rango de tareas que puede ejecutar su naturaleza multiusuario

y multitareas y su adecuación a las redes que ha ido creciendo en importancia en la misma medida en que lo hizo Internet.

 

 

 

 

BIBLIOGRAFIA

 

                   Sistema operativo Principio de diseño e interioridades

                     (William Stallings)

 

                   Unix Sistema V Version  4

                     (Kenneth H. Rosen , Richard R. Rosinski , James M. Farber , Douglas A. Host)

 

                  Diversas  Páginas Web

 

PRINCIPIO DE PAGINA

 

 

 

 

                     

   Anterior          Índice          Siguiente

Para mayor información, seleccione una opción:

Número de visitas efectuadas desde el 17/12/2001: 
 
Estadísticas diarias desde el 10/07/2002:    

Número de visitantes actuales disponible desde el 14/07/2002:

 

AddFreeStats.com Free Web Stats in real-time !  

 

 

 

Autor: lrmdavid@exa.unne.edu.ar

Ó FACENA - http://exa.unne.edu.ar

Servicios WEB: webmaster@exa.unne.edu.ar