Investigacion Unidad 2 Sistemas Operativo

Descargar como pdf o txt
Descargar como pdf o txt
Está en la página 1de 16

INSTITUTO TECNOLOGICO DE

CHINÁ

SISTEMAS OPERATIVOS II

INGENIERIA INFORMATICA

ALUMNO: Humberto Rodriguez Cambranis

DOCENTE: Gerardo Raúl Ramírez Uc

UNIDAD: 2

ACTIVIDAD 1

4IA

HUMBERTO RODRIGUEZ CAMBRANIS ARQUITECTURA DE COMPUTADORAS INFORMATICA - 20830093 1


Contenido
Introducción ........................................................................................................................................ 3
2. Procesos y comunicación................................................................................................................. 4
2.1 Procesos......................................................................................................................................... 4
2.2 Comunicación ................................................................................................................................ 5
2.3 Nombres ...................................................................................................................................... 10
Nominación característica y Estructuras ............................................................................... 10
2.4 Sincronización
Conclusión ......................................................................................................................................... 15
Bibliografía......................................................................................................................................... 16

HUMBERTO RODRIGUEZ CAMBRANIS ARQUITECTURA DE COMPUTADORAS INFORMATICA - 20830093 2


Introducción
En esta investigación documental se presentan los temas de la unidad 2 de la
materia de sistemas operativos, esta unidad tratara básicamente de los procesos
y comunicación que tienen los sistemas operativos como tal, se mostrar que es
un proceso, la comunicación, los tipos de comunicación que existen, los nombres
y la sincronización. Esta pequeña investigación va dirigida todas aquellas
personas que requieran o busquen la información necesaria con respecto a esta
unidad.

HUMBERTO RODRIGUEZ CAMBRANIS ARQUITECTURA DE COMPUTADORAS INFORMATICA - 20830093 3


2. Procesos y comunicación

2.1 Procesos
Un proceso no es más que un programa en ejecución, e incluye los valores actuales del
contador de programa, los registros y las variables. Conceptualmente cada uno de estos
procesos tienen su propia CPU virtual. Desde luego, en la realidad la verdadera CPU conmuta
de un proceso a otro.

Un proceso es un concepto manejado por el sistema operativo que consiste en el conjunto

formado por:

• Las instrucciones de un programa destinadas a ser ejecutadas por el microprocesador.


• Su estado de ejecución en un momento dado, esto es, los valores de los registros de la
CPU para dicho programa.
• Su memoria de trabajo, es decir, la memoria que ha reservado y sus contenidos.
• Otra información que permite al sistema operativo su planificación.

Esta definición varía ligeramente en el caso de sistemas operativos multihilo, donde un proceso
consta de uno o más hilos, la memoria de trabajo (compartida por todos los hilos) y la
información de planificación. Cada hilo consta de instrucciones y estado de ejecución.
Los procesos son creados y destruidos por el sistema operativo, así como también este se debe
hacer cargo de la comunicación entre procesos, pero lo hace a petición de otros procesos. El
mecanismo por el cual un proceso crea otro proceso se denomina bifurcación (fork). Los nuevos
procesos pueden ser independientes y no compartir el espacio de memoria con el proceso que
los ha creado o ser creados en el mismo espacio de memoria.
HUMBERTO RODRIGUEZ CAMBRANIS ARQUITECTURA DE COMPUTADORAS INFORMATICA - 20830093 4
En los sistemas operativos multihilo es posible crear tanto hilos como procesos. La diferencia
estriba en que un proceso solamente puede crear hilos para sí mismo y en que dichos hilos
comparten toda la memoria reservada para el proceso.
En este modelo: todo software ejecutable de la computadora, lo que a menudo incluye al
sistema operativo, está organizado en una serie del proceso secuenciales, o simplemente
procesos.
La idea clave aquí es que un proceso es una actividad de algún tipo: tiene programa, entrada,
salida y un estado. Se puede compartir un procesador entre varios procesos, usando algún
algoritmo de planificación para determinar cuándo debe de trabajar en un proceso para atender
a_uno_distinto.

Los sistemas operativos que manejan el concepto de proceso deben contar con algún
mecanismo para crear todos los procesos necesarios. en los sistemas muy sencillos, o en los
diseñados para ejecutar solo una aplicación.
En otros sistemas operativos existen llamadas al sistema para crear un proceso, cargar su
memoria y ponerlo en ejecutar. Sea cual sea la naturaleza exacta de la llamada al sistema. Los
procesos necesitan poder crear otros procesos.
En MINIX, los procesos se crean con la llamada al sistema FORK (bifurcar), que crea una copia
idéntica del proceso invocador. El proceso hijo también puede ejecutar FORK, así que es
posible tener un árbol de proceso

2.2 Comunicación
La comunicación entre procesos, en inglés IPC (Inter-process Communication) es una función
básica de los sistemas operativos. Los procesos pueden comunicarse entre sí a través de
compartir espacios de memoria, ya sean variables compartidas o buffers, o a través de las
herramientas provistas por las rutinas de IPC. La IPC provee un mecanismo que permite a los
procesos comunicarse y sincronizarse entre sí, normalmente a través de un sistema de bajo
nivel de paso de mensajes que ofrece la red subyacente.
La comunicación se establece siguiendo una serie de reglas (protocolos de comunicación). Los
protocolos desarrollados para internet son los mayormente usados: IP (capa de red), protocolo
de control de transmisión (capa de transporte) y protocolo de transferencia de archivos,
protocolo de transferencia de hipertexto (capa de aplicación).
Los procesos pueden estar ejecutándose en una o más computadoras conectadas a una red.
Las técnicas de IPC están divididas dentro de métodos para: paso de mensajes, sincronización,
memoria compartida y llamadas de procedimientos remotos (RPC). El método de IPC usado
puede variar dependiendo del ancho de banda y latencia (el tiempo desde el pedido de

HUMBERTO RODRIGUEZ CAMBRANIS ARQUITECTURA DE COMPUTADORAS INFORMATICA - 20830093 5


información y el comienzo del envío de la misma) de la comunicación entre procesos, y del tipo
de datos que están siendo comunicados.

Conceptos básicos
El sistema operativo provee mínimamente dos primitivas, enviar y recibir, normalmente
llamadas send y receive. Asimismo, debe implementarse un enlace de comunicación entre los
procesos de la comunicación. Este enlace puede ser unidireccional o multidireccional según
permita la comunicación en solo uno o en varios sentidos.

Tipos de comunicación. La comunicación puede ser:

• Síncrona o asíncrona
• Persistente (persistent) o momentánea (transient)
• Directa o indirecta
• Simétrica o asimétrica
• Con uso de buffers explícito o automático
• Envío por copia del mensaje o por referencia
• Mensajes de tamaño fijo o variable
• Síncrona
Quien envía permanece bloqueado esperando a que llegue una respuesta del receptor antes
de realizar cualquier otro ejercicio.

HUMBERTO RODRIGUEZ CAMBRANIS ARQUITECTURA DE COMPUTADORAS INFORMATICA - 20830093 6


Asíncrona: Quien envía continúa con su ejecución inmediatamente después de enviar el
mensaje al receptor.
Persistente: El receptor no tiene que estar operativo al mismo tiempo que se realiza la
comunicación, el mensaje se almacena tanto tiempo como sea necesario para poder ser
entregado (Ej.: e-Mail).
Momentánea (transient): El mensaje se descarta si el receptor no está operativo al tiempo que
se realiza la comunicación. Por lo tanto no será entregado.
Directa: Las primitivas enviar y recibir explicitan el nombre del proceso con el que se
comunican. Ejemplo: enviar (mensaje, A) envía un mensaje al proceso A. Es decir se debe
especificar cual va a ser el proceso fuente y cual va a ser el proceso Destino. Las operaciones
básicas Send y Receive se definen de la siguiente manera: Send (P, mensaje); envía un
mensaje al proceso P (P es el proceso destino). Receive (Q, mensaje); espera la recepción de
un mensaje por parte del proceso Q (Q es el proceso fuente).
Nota: Receive puede esperar de un proceso cualquiera, un mensaje, pero el Send sí debe
especificar a quién va dirigido y cuál es el mensaje.
Indirecta: La comunicación Indirecta: Es aquella donde la comunicación está basada en una
herramienta o instrumento ya que el emisor y el receptor están a distancia.
Simétrica: Todos los procesos pueden enviar o recibir. También llamada bidireccional para el
caso de dos procesos.
Asimétrica: Un proceso puede enviar, los demás procesos solo reciben. También llamada
unidireccional. Suele usarse para hospedar servidores en Internet.
Uso de buffers automático: El transmisor se bloquea hasta que el receptor recibe el mensaje
(capacidad cero).

Comunicación SOD
En un sistema distribuido no existe la memoria compartida y por ello toda la naturaleza de la
comunicación entre procesos debe replantearse.
Los procesos, para comunicarse, deben apegarse a reglas conocidas como protocolos. Para
los sistemas distribuidos en un área amplia, estos protocolos toman frecuentemente la forma
de varias capas y cada capa tiene sus propias metas.

• Los mensajes se intercambian de diversas formas, existiendo muchas opciones de diseño


al respecto; una importante opción es la “llamada a un procedimiento remoto”.
• También es importante considerar las posibilidades de comunicación entre grupos de
procesos, no solo entre dos procesos.
HUMBERTO RODRIGUEZ CAMBRANIS ARQUITECTURA DE COMPUTADORAS INFORMATICA - 20830093 7
PROTOCOLOS CON CAPAS

• Protocolos con Capas


• Cuando el proceso “A” quiere comunicarse con el proceso “B”:
• Construye un mensaje en su propio espacio de direcciones.
• Ejecuta una llamada al sistema para que el S. O. busque el mensaje y lo envíe a través de
la red hacia “B”.
• Para evitar el caos, “A” y “B” deben coincidir en el significado de los bits que se envíen.

REFERENCIAS HACIA EL MODELO OSI

• Identifica en forma clara los distintos niveles.


• Estandariza los nombres de los niveles.
• Señala cuál nivel debe realizar cuál trabajo

Comunicación Cliente Servidor Sockets


El Modelo Cliente/Servidor tiene como idea fundamental la estructuración del S. O. como:

1. Un grupo de procesos en cooperación, llamados servidores, que ofrecen servicios


a los usuarios.
2. Un grupo de procesos usuarios llamados clientes.
3. El Modelo Cliente/Servidor se basa en un “protocolo
4. solicitud/ respuesta”
5. Es sencillo y sin conexión.
6. No es complejo y orientado a la conexión como OSI o TCP / IP.
7. El cliente envía un mensaje de solicitud al servidor pidiendo cierto servicio.

HUMBERTO RODRIGUEZ CAMBRANIS ARQUITECTURA DE COMPUTADORAS INFORMATICA - 20830093 8


DIRECCIONAMIENTO EN C - S
Para que un cliente pueda enviar un mensaje a un servidor, debe conocer la dirección de éste.
Un esquema de direccionamiento se basa en la dirección de la máquina destinataria del
mensaje:
Es limitativo si en la máquina destinataria se ejecutan varios procesos, pues no se sabría para
cuál de ellos es el mensaje.
Otro esquema de direccionamiento se basa en identificar los procesos destinatarios en vez de
a las máquinas:

• Elimina la ambigüedad acerca de quién es el receptor.


• Presenta el problema de cómo identificar los procesos.

2.1.2 Comunicación con RPC


RCP (REMOTE PROCEDURE CALL)
El mecanismo general para las aplicaciones cliente-servidor se proporciona por el paquete
Remote Procedure Call (RPC). RPC fue desarrollado por Sun Microsystems y es una colección
de herramientas y funciones de biblioteca. Aplicaciones importantes construidas sobre RPC son
NIS, Sistema de Información de Red y NFS, Sistema de Ficheros de Red. Es un protocolo que
permite a un programa de ordenador ejecutar código en otra máquina remota sin tener que
preocuparse por las comunicaciones entre ambos.

HUMBERTO RODRIGUEZ CAMBRANIS ARQUITECTURA DE COMPUTADORAS INFORMATICA - 20830093 9


Comunicación en Grupo
BROADCAST O DIFUSION FORZADA: Transmisión de un paquete que será recibido por
todos los dispositivos en una red.
MULTICAST: Consiste en la entrega de paquetes a través de una red a varios destinos de
forma simultánea evitando al máximo el duplicar los paquetes, esto es, se duplican paquetes
exclusivamente cuando se bifurca el camino a los diferentes destinos finales.
UNICAST o POINTCAST: Un nodo emite y otro recibe, solo escucha aquel a quien se dirigió
el mensaje una clasificación adicional es la realizada en base a grupos.

2.3 Nombres
Nominación característica y Estructuras
Un nombre es más que una cadena de caracteres. Representa un punto de acceso hacia un
objeto.
La característica principal de un sistema de nombre es que no debe de presentar
ambigüedades, para un momento dado, un nombre refiere a uno y sólo un recurso en el sistema
Tipos de nombres usuario y de sistema

• Identificadores de puertos y procesos.


• Nombres textuales de servicios.
• Identificadores de recursos.
• Nombres de archivos.
• Direcciones físicas y lógicas de redes.

HUMBERTO RODRIGUEZ CAMBRANIS ARQUITECTURA DE COMPUTADORAS INFORMATICA - 20830093 10


• El nombre de un objeto, por ejemplo, un recurso o servidor; especifica lo que busca un
proceso.
• Una dirección especifica dónde se encuentra el objeto.
• Una ruta especifica cómo llegar ahí.
La modificación no autorizada del iPhone OS constituye una fuente muy importante de
inestabilidad, interrupciones de los servicios y otros problemas.

Se pueden clasificar a las violaciones de seguridad en tres categorías.

Liberación no autorizada de información: Ocurre cuando una persona no autorizada tiene


la posibilidad de leer y tomar ventaja de la información almacenada en una computadora.
También se incluye el uso no autorizado de un programa.
Modificación no autorizada de información: Este tipo de violación se da cuando una persona
tiene la posibilidad de alterar la información almacenada en un sistema computacional.
Bloqueo no autorizado de servicios: Se da cuando una persona no autorizada bloquea la
capacidad de algún usuario autorizado, a acceso a la información almacenada en un sistema
computacional.
Seguridad externa:(llamada comúnmente seguridad física), se encarga de regular el acceso al
hardware del sistema, incluyendo: discos, cintas, reguladores y no-break, acondicionadores de
aire, terminales, procesadores.
Seguridad interna: se encarga del acceso y uso del software almacenado en el sistema. A
diferencia de la seguridad física, existe el tema de autenticación, en el cual el usuario se registra
(login) en el sistema para acceso al recurso de hardware y software del mismo.

Resolución de nombres de dominio


El mecanismo que consiste en encontrar la dirección IP relacionada al nombre de un ordenador
se conoce como "resolución del nombre de dominio". La aplicación que permite realizar esta
operación (por lo general, integrada en el sistema operativo se llama "resolución". Cuando una
aplicación desea conectarse con un host conocido a través de su nombre de dominio (por
ejemplo, "es.kioskea.net"), ésta interroga al servidor de nombre de dominio definido en la
configuración de su red. De hecho, todos los equipos conectados a la red tienen en su
configuración las direcciones IP de ambos servidores de nombre de dominio del proveedor de
servicios.

HUMBERTO RODRIGUEZ CAMBRANIS ARQUITECTURA DE COMPUTADORAS INFORMATICA - 20830093 11


Servidores y agentes de nombres
En la actualidad, la ICANN está formalmente organizada como una corporación sin fines de
lucro y de utilidad pública. Está administrada por una Junta de directores, que está compuesta
por seis representantes de las organizaciones de apoyo, sub-grupos que se ocupan de las
secciones específicas de las políticas de ICANN en virtud de la competencia, ocho
representantes independientes del interés público general, seleccionados a través de un Comité
de nominaciones que representan a todas las circunscripciones de la ICANN, y el presidente y
director ejecutivo, nombrado por el resto de la Junta.

Mapeo de Direcciones
El mapeo de direcciones corresponde en la relación de equivalencia entre un tipo de nombre a
otro tipo de nombre; por ejemplo, de un nombre de usuario a un nombre de sistema.

Mapeo de Rutas
El mapeo de rutas consiste en la relación de equivalencia entre un tipo de ruta u otro tipo.
Recordar que las rutas consisten en la serie de ubicaciones para poder acceder a un recurso.
Otro nombre que recibe el mapeo de rutas es el de encaminamiento.
Modelo de Terry
El problema principal de cualquier sistema de nombre reside en encontrar de manera fácil,
sencilla y rápida cualquier recurso a través del identificador (nombre) dado. Para solucionar
este problema, Terry y otros propusieron un modelo de facilidades que debe de poseer todo
sistema de nombres, dichas características son las siguientes:

HUMBERTO RODRIGUEZ CAMBRANIS ARQUITECTURA DE COMPUTADORAS INFORMATICA - 20830093 12


• Facilidad centralizada de nombramiento
• Facilidad replegada de nombramiento
• Facilidad descentralizada de nombramiento
• Facilidad distribuida de nombramiento
• Facilidad jerárquica de nombramiento

2.4 Sincronización
En muchos casos, los procesos se reúnen para realizar tareas en conjunto, a este tipo de
relación se le llama procesos cooperativos. Para lograr la comunicación, los procesos deben
sincronizarse, de no ser así pueden ocurrir problemas no deseados. La sincronización es la
transmisión y recepción de señales que tiene por objeto llevar a cabo el trabajo de un grupo
de procesos cooperativos.

Es la coordinación y cooperación de un conjunto de procesos para asegurar la comparación de


recursos de cómputo. La sincronización entre procesos es necesaria para prevenir y/o corregir
errores de sincronización debidos al acceso concurrente a recursos compartidos, tales como
estructuras de datos o dispositivos de E/S, de procesos contendientes. La sincronización entre
procesos también permite intercambiar señales de tiempo (ARRANQUE/PARADA) entre
procesos cooperantes para garantizar las relaciones específicas de precedencia impuestas por
el problema que se resuelve.

Sin una sincronización adecuada entre procesos, la actualización de variables compartidas


puede inducir a errores de tiempo relacionados con la concurrencia que son con frecuencia
difíciles de depurar. Una de las causas principales de este problema es que procesos
concurrentes puedan observar valores temporalmente inconsistentes de una variable
compartida mientras se actualizan. una aproximación para resolver este problema es realizar

HUMBERTO RODRIGUEZ CAMBRANIS ARQUITECTURA DE COMPUTADORAS INFORMATICA - 20830093 13


actualizaciones de variables compartidas de manera mutuamente exclusiva. Se pueden mejorar
permitiendo que a lo más un proceso entre a la vez en la sección critica de código en la que se
actualiza una variable compartida o estructura de datos en particular.

Para que los procesos puedan sincronizarse es necesario disponer de servicios que permitan
bloquear o suspender bajo determinadas circunstancias la ejecución de un proceso. Los
principales mecanismos de sincronización que ofrecen los sistemas operativos son:

▪ Señales
▪ Tuberías
▪ Semáforos
▪ Mutex y variables condicionales
▪ Paso de mensajes

HUMBERTO RODRIGUEZ CAMBRANIS ARQUITECTURA DE COMPUTADORAS INFORMATICA - 20830093 14


Conclusión
Como se pudo notar, en esta investigación se presentaron todos los temas, los cuales son de
suma importancia, porque sirven para reforzar el conocimiento.
Sabemos que un proceso es un programa en ejecución, e incluye los valores actuales del
contador de programa, los registros y las variables. Conceptualmente cada uno de estos
procesos tienen su propia CPU virtual. También sabemos que la comunicación es una función
básica de los sistemas operativos. Los procesos pueden comunicarse entre sí a través de
compartir espacios de memoria, ya sean variables compartidas o buffers, o a través de las
herramientas provistas por las rutinas de IPC. Otro de los temas que se abarco son los nombres,
los cuales se denominan o sirven para diferentes funciones y acciones, por ultimo se vio lo que
es la sincronización básicamente consiste en la coordinación y cooperación de un conjunto de
procesos para asegurar la comparación de recursos de cómputo. También la sincronización
entre procesos es necesaria para prevenir y/o corregir errores de sincronización debidos al
acceso concurrente a recursos compartidos, tales como estructuras de datos o dispositivos de
E/S, de procesos contendientes

HUMBERTO RODRIGUEZ CAMBRANIS ARQUITECTURA DE COMPUTADORAS INFORMATICA - 20830093 15


Bibliografía
de, C. (2022). 2.1 Concepto de proceso - Materia SisOperativos. Google.com.
https://sites.google.com/site/materiasisoperativo/unidad-2-administrador-del-proceso-y-del-
procesador/2-1-concepto-de-proceso

cluster. (2022). Comunicacion entre procesos - cluster. Google.com.


https://sites.google.com/site/clusterdistri/week-1-and-beyond

Sistemas Operativos II. (2022, March 31). UNIDAD II. Blogspot.com. http://equipo-
sistem.blogspot.com/2012/05/unidad-ii.html

HUMBERTO RODRIGUEZ CAMBRANIS ARQUITECTURA DE COMPUTADORAS INFORMATICA - 20830093 16

También podría gustarte