Está en la página 1de 8

“AÑO DE LA LUCHA CONTRA LA

CORRUPCIÒN E IMPUNIDAD”

“FACULTAD DE INGINERÌA DE SISTEMAS Y MECÁNICA


ELÉCTRICA - BAGUA”

CURSO: SISTEMAS OPERATIVOS


TEMA: MECANISMO QUE USA UN SISTEMA OPERATIVO
WINDOWS Y LINUX PARA GESTIONAR LA CONCURRENCIA
ING: IVAN ADRIANZEN OLANO

ESTUDIANTE: JOSÈ GEAN FERNÀNDEZ VALQUI

2019

0
1
INTRODUCCIÓN
Evidentemente, que Linux sea gratuito y Windows no, es otra gran ventaja. Aunque en este
punto, muchos usuarios de Windows dirán que este también es gratuito, lo copias y ya está,
pero en estos últimos años Windows esta apretando con el “Windows Genuine Advantaje” y
dificultando el modo de activación de Windows Vista. Esta claro que tarde o temprano siempre
sale un parche, un crack o algo similar, pero, ¿no estáis cansado de parchear? Linux es todo libre,
ni parches ni problemas, pensadlo.

2
OBJETIVOS
La situación final pretende que todos los equipos de la red, tanto clientes como
servidores, ejecuten prácticamente sólo software libre, basado en Debían GNU/Linux
como sistema operativo base. El nuevo entorno de trabajo debe suplir plenamente la
funcionalidad que actualmente ofrece Windows NT.
A continuación, se presentan los objetivos básicos a conseguir, sopesando las posibles
alternativas que en algunos casos pueden existir. Así, son puntos fundamentales:
 Entorno gráfico, que debe ser estable, cómodo y fácil de usar para el usuario final.
Actualmente se baraja el uso de KDE 2.2.2 y Gnomo 2.
 Uso de aplicaciones orientadas a Internet: correo, web, news, etc.
 Uso de aplicaciones ofimáticas. Existe en la actualidad un amplio abanico de suites
basadas en software libre: OpenOffice.org, StarOffice, Kword, Knotes, Abiword,
etc.
 Sistema de instalación automatizada y sencilla de equipos, al estilo del usado en
la actualidad en el MAP. Para ello se está sopesando el uso de alguna de las
siguientes aplicaciones libres: SystemImager, Partition Image for Linux, FAI, etc.

3
MARCO TEORICO
CONCURRENCIA
Dos tareas se dice que son concurrentes si transcurren durante el mismo intervalo de tiempo.

Se entiende por programación concurrente el conjunto de técnicas y notaciones que sirven para
expresar el paralelismo potencial en los programas, así como resolver problemas de
comunicación y sincronización.

Cuando se trabaja en entornos distribuidos o con máquinas con múltiples procesadores, se suele
hablar de programación distribuida o paralela, respectivamente.

PROGRAMA DE CONCURRENCIA
Programación Concurrente en CSharpInformación sobre la plantilla Proc.JPG Concepto:
Conjunto de técnicas y notaciones que sirven para expresar el paralelismo potencial en los
programas Programación Concurrente. Se entiende por programación concurrente el conjunto
de técnicas y notaciones que sirven para expresar el paralelismo potencial en los programas, así
como resolver problemas de comunicación y sincronización.

MANEJO DE CONCURRENCIA EN WINDOWS

Con la llegada de los procesadores multi núcleo el mundo de la programación a dado un


interesante giro para los desarrolladores, imponiendo nuevos retos y sobre todo mayores
cuidados a la hora de manejar la sincronización entre hilos y procesos asíncronos, es por esta
razón que escribo este artículo con el fin de dar una mirada general de los diferentes métodos
de sincronización entre hilos en situaciones especificas.

SISTEMAS DE SINCRONIZACIÓN ENTRE HILOS SOBRE WINDOWS

En windows podemos encontrar diferentes métodos para sincronizar hilos como lo pueden ser:

 Mutex
 Semáforos
 Secciones Críticas
 Eventos
 SpinLocks( En Drivers )

La pregunta que sale de estos diversos métodos es cual nos ofrece una implementación sencilla,
redituable en performance y totalmente efectiva en cuanto a exclusión mutua se refiere.

En este artículo analizaremos una de las más extendidas y redituables en cuanto a performance
como lo son las Secciones Criticas y una nueva API introducida con windows vista llamada
variables condicionales.

4
MECANISMOS DE CONCURRENCIA EN LINUX

Linux incluye todos los mecanismos de concurrencia encontrados en otros sistemas UNIX como
SVR4, incluyendo tuberías, mensajes, memoria compartida y señales. Adicionalmente, Linux 2.6
incluye un rico conjunto de mecanismos de concurrencia específicamente creados para usarse
cuando un hilo se está ejecutando en modo kernel. O sea, estos mecanismos se usandentro del
kernel para proveer concurrencia en la ejecución de código a nivel kernel. Aquí examinamos los
mecanismos de concurrencia del núcleo de Linux.

OPERACIONES ATÓMICAS

Linux provee un conjunto de operaciones que garantizan las operaciones atómicas sobre una
variable. Estas operaciones pueden usarse para evitar condiciones de competencia simples. Una
operación atómica se ejecuta sininterrupción y sin interferencia. En un sistema con un solo
procesador, un hilo llevando a cabo una operación atómica no puede ser interrumpido una vez
que la operación ha iniciado hasta que esta termina. Adicionalmente, en un sistema
multiprocesador, se bloquea el acceso a la variable sobre la que se está operando por parte de
otros hilos hasta que la operación ha concluido.

Hay dos tipos deoperaciones atómicas definidas en Linux: las operaciones enteras, que operan
en una variable entera, y las operaciones de mapa de bits que operan en un bit de un mapa de
bits (tabla 1). Estas operaciones deben implementarse en cualquier arquitectura que
implemente Linux. Para algunas arquitecturas, existen las correspondientes instrucciones en
lenguaje ensamblador para las operaciones atómicas. Enotras arquitecturas, se usan
operaciones que bloquean el bus de memoria para garantizar que la operación es atómica.

MANEJO DE CONCURRENCIA EN WINDOWS

Con la llegada de los procesadores multi núcleo el mundo de la programación a dado un


interesante giro para los desarrolladores, imponiendo nuevos retos y sobre todo mayores
cuidados a la hora de manejar la sincronización entre hilos y procesos asíncronos, es por esta
razón que escribo este artículo con el fin de dar una mirada general de los diferentes métodos
de sincronización entre hilos en situaciones específicas.

5
CONCLUSIONES
En mi opinión hay una gran diversidad de sistemas operativos hoy en día, empezando por el Unix
y MS-DOS desde hace más de 30 años los sistemas operativos han ido evolucionando. En el
trabajo que he realizado los sistemas operativos que me han parecido los más importantes
aunque no hay machísimos más.

Ahora el mundialmente usado es el sistema operativo de Microsoft-Windows, Windows 7 es el


más recientemente que han desarrollado Microsoft. No he tenido la oportunidad de usarlo
mucho, tengo amigos que recientemente se han comprado algún ordenador ya están con el
Windows 7 incorporado, les he preguntado que les pareció, y parece que por ahora están
contentos, mejor que el Windows Vista. No es tan pesado como el Windows Vista que la mayoría
de la gente lo ha clasificado como un fracaso total de la compañía Microsoft.

El mejor sistema operativo para utilizarlo para navegar por Internet es Linux, un sistema
operativo de código abierto y gratuito en comparativa a Windows. Linux es un sistema operativo
muy seguro y sobre todo gratuito.

Ahora bien, la mayoría de las aplicaciones y juegos que hay en la actualidad son compatibles con
el sistema operativo de Microsoft, lo que causa muchos problemas de incompatibilidad a la hora
de instalarte Linux y utilizar las aplicaciones informáticas de Windows.

6
BIBLIOGRAFÌA
http://codeinthehell.blogspot.com/2010/02/manejo-de-concurrencia-en-windows.html
https://webprogramacion.com/43/sistemas-operativos/concurrencia-de-procesos.aspx