Está en la página 1de 25

Pgina 1

Procedia Ingeniera 100 (2015) 1696 - 1705


1877-7058 2015 los autores. Publicado por Elsevier Ltd Este es un artculo de
acceso abierto bajo la licencia CC BY-NC-ND
(Http://creativecommons.org/licenses/byncnd/4.0/).
Revisin por pares bajo la responsabilidad de DAAAM Internacional de Viena
doi: 10.1016 / j.proeng.2015.01.545
ScienceDirect
Disponible en lnea en www.sciencedirect.com
25 DAAAM Simposio Internacional sobre la fabricacin inteligente y
Automatizacin, DAAAM
2014
Un Estudio de la nube / IX sistema operativo para los datos basados en ARM
Plataforma Centro Servidor
Yury Leokhin
un
*, Peter Panfilov
a, b
un
Universidad Nacional de Investigacin - Escuela Superior de Economa,
Myasnitskaya St. 20, Mosc 101000, Federacin Rusa
segundo
Ministerio de Desarrollo Econmico, 1
st
Tverskaya-Yama St. 1,3, Mosc 125993, Federacin Rusa
Abstracto
El crecimiento exponencial de la produccin de datos y una tendencia importante
en la arquitectura del centro de datos de diseo - un cambio de hardware costoso
hacia una multitud de servidores simples - plantean nuevas tareas y exigir el uso
de diferentes estrategias para los arquitectos de centros de datos. En
este trabajo, se analizan unas nuevas soluciones para el diseo de sistemas
distribuidos, que se basa en Plan9 modelo de sistema operativo. Nosotros
primera aplicacin visin general y proyectos de investigacin incluyendo el
proyecto de portar a la Plan9 / L superordenador IBM Blue Gene,
proyecto de la utilizacin Plan9 en centros de datos y sistemas de nubes, y
proyectos dirigidos a sistemas embebidos distribuidos. Entonces nosotros
introducir un sistema operativo Nube / IX para las plataformas de servidores
basados en ARM, que tambin sigue el modelo Plan9 y es
implementado en la parte superior de uno de los llamados derivados del Plan 9
9front - un sistema operativo de software libre distribuido. Tambin presentamos
el

configuracin de banco de pruebas experimental y los resultados de un estudio


experimental de la nube / IX el conjunto de servidores de varios equipos en el
centro de datos real
ambiente.
2015 Los Autores. Publicado por Elsevier Ltd.
Revisin por pares bajo la responsabilidad de DAAAM Internacional de Viena.
Palabras clave: sistemas operativos; sistemas distribuidos; Plan de modelo del
sistema operativo 9; plataformas de servidores; centros de datos; sistema
operativo cloud / IX
1. Introduccin
Los centros de datos modernos se ven muy diferente al que tena hace 10 aos y
no slo que 10 aos es quizs
ms tiempo que cualquier vida til del equipo. La aparicin de grandes
volmenes de datos, computacin en nube, los datos 4G Mobile, y otra
las tendencias modernas cambiaron drsticamente el espectro de tareas y
problemas de la industria. Los recientes avances en la ciencia, tales
* Autor correspondiente. Tel .: + 7-495-916-88-98; fax: + 7-495-917-81-54.
E-mail: yleokhin@hse.ru
2015 Los Autores. Publicado por Elsevier Ltd Este es un artculo de acceso
abierto bajo la licencia CC BY-NC-ND
(Http://creativecommons.org/licenses/byncnd/4.0/).
Revisin por pares bajo la responsabilidad de DAAAM Internacional de Viena
Pgina 2

1697
Yury Leokhin y Peter Panfilov / Ingeniera Procedia 100 (2015) 1696 - 1705
como la secuenciacin gentica y la investigacin nuclear se asegur de que
podemos asumir con seguridad que la produccin masiva de datos y
el procesamiento en paralelo (MPP) contina su crecimiento exponencial. La
integracin con, servidor privado y las nubes pblicas
consolidacin y virtualizacin completa, ms amplio conjunto de habilidades del
personal de los centros de datos son todas las consecuencias de esta
crecimiento explosivo. Esto plantea nuevas tareas y exige el uso de diferentes
estrategias para centros de datos arquitectos (DC).
Un aumento en el consumo de energa en los pases en desarrollo constituye el
principal problema para el desarrollo del mercado de CC. Energacostes relacionados representan aproximadamente la mitad del total de los costes
de mantenimiento del servidor de titularidad del centro de datos, mientras que la
mayor parte de
stos van a la disposicin de fuente de alimentacin y enfriamiento a los
servidores. En general, podemos considerar dos enfoques

a la solucin del problema de la eficiencia energtica, a saber: un uso eficiente de


las instalaciones y recursos existentes (por ejemplo, el uso de
la virtualizacin y la computacin en la nube, lo que permite aumentar la tasa de
utilizacin de los recursos disponibles y reducir la
las necesidades de equipo), y nuevas soluciones arquitectnicas a los diseos de
centros de datos (por ejemplo, Cisco Unified Computing
Sistema).
El problema de la eficiencia energtica del diseo de servidor se acerc a
diferentes niveles, desde un ncleo de procesador,
a travs de un nico servidor, y hasta la granja de servidores. A nivel de
procesador, el procesador ARM de bajo consumo
arquitectura [1] en la actualidad se considera una solucin de eleccin para el
desarrollo de hardware del servidor. De acuerdo a
Previsiones de IDC, en 2015 la arquitectura ARM pueden ganar cuota de
mercado superior al 15% del hardware del servidor. En
Septiembre de 2010, la compaa britnica ARM Holdings entraron por primera
vez a este mercado con el procesador Cortex-A15 sobre la base de
Versin ARMv7-architecture.Their del ARM Cortex A15 MPCore, diseado para
los relojes de CPU de hasta 2,5 GHz,
demostrado la mejora del rendimiento cinco veces con respecto a los
procesadores utilizados en los telfonos inteligentes durante
manteniendo los mismos niveles de consumo de energa. Recientemente, ARM
ha dado a conocer los primeros procesadores de 64 bits - Cortex
A57 y A53, y una nueva arquitectura de 64 bits - ARMv8, que est casi listo para
la produccin en masa.
Para aprovechar las ventajas que las nuevas ofertas arquitectura de procesador de
bajo consumo, lo soliciten los arquitectos de servidor
nuevas soluciones de software, tanto a nivel de sistemas operativos como a nivel
de las capas de virtualizacin de servidores. Un
ejemplo de evolucin en este mbito es el compilador x86 cdigo binario para la
arquitectura ARM diseado por el
Elbrus Tecnologa [2]. Permite la migracin de software escrito para servidores
basados en x86 para el procesador ARM
arquitectura. Emulador de software permitir correr sin cambios de las
aplicaciones compiladas para la arquitectura x86 en el
Servidor de ARM. Recientemente, ARM han publicado adiciones de paquetes en
el kernel de Linux, que proporcionan apoyo a la
conjunto de instrucciones de la ARMv8 ncleos. Estas adiciones se aplican ahora
en un nmero de sabores de Linux, incluyendo
Ubuntu.

Por lo tanto, el diseo y desarrollo de un sistema operativo para servidores


basados en la arquitectura de procesador ARM
sigue siendo una tarea de gran importancia, una solucin de calidad a la que se
espera para permitir la creacin de la eficiente
granjas de servidores distribuidos en trminos de rendimiento, consumo de
energa, y la escalabilidad.
En este trabajo se describe nuestra solucin a los problemas de diseo de
sistemas distribuidos que nos acercamos a la
el desarrollo de un nuevo sistema operativo llamado Nube / IX. El diseo de
nuestro propio sistema operativo sigue la Plan9
modelo y se implementa en la parte superior de uno de los llamados derivados
del Plan 9 9front - un operativo de software libre distribuido
sistema [3]. Se presentan las caractersticas generales del enfoque de Plan 9
basado en el diseo de sistemas distribuidos, y
introducir el sistema operativo / IX de la nube de servidores de centros de datos
basados en procesadores ARM. Seccin 2 proporciona rpida
anlisis de espectro de aplicaciones de sistemas distribuidos en su relacin con
los problemas de arquitectura de computadores. Seccin
3 presenta las caractersticas clave del Plan 9, acompaado de los ejemplos de
Plan 9 uso en diversas computacin distribuida
reas de aplicacin. Estos incluyen proyectos de portar Plan 9 a la plataforma
superordenador (por MPP cientfica
aplicaciones informticas), proyecto de la utilizacin de Plan 9 en la plataforma
de servidor de centro de datos (para sistemas distribuidos y en la nube
aplicaciones), y un proyecto de investigacin de la adicin de la programacin en
tiempo real en el Plan 9 para sistemas embebidos distribuidos
(DES) aplicaciones. La seccin 4 describe nuestro sistema operativo Nube / IX
para las plataformas de servidores basados en ARM. los
banco de pruebas experimental y los resultados de las pruebas experimentales de
la nube / IX se discuten en la Seccin 5. Por ltimo, algunos
conclusiones y los trabajos futuros se muestran en la Seccin 6.
2. Aplicaciones Distribuidas y su Impacto en el ordenador Arquitectura
Existe una enorme clase de tareas que pueden estar bien en paralelo, lo hace
mucho ms fcil para ejecutarlos en mltiples nodos
arquitecturas de computadora - esto incluye tareas computacionales en su
mayora, tales como la dinmica de fluidos y la modelizacin ptica como
as como el procesamiento de datos genrico, es decir, la secuenciacin gentica
y de procesamiento de texto, incluyendo bsqueda en la Web y la indexacin.
Buscar en la Web y la indexacin es, de hecho, uno de los ms, si no es el uso
ms generalizado de los recursos informticos en la actualidad.
Pgina 3

1698
Yury Leokhin y Peter Panfilov / Ingeniera Procedia 100 (2015) 1696 - 1705
Segn algunas estimaciones, el porcentaje de ciclos de CPU en todo el mundo
gastado en ella hasta el 35%, lo que suena creble
si se incluye a ciencia cierta que un motor de bsqueda no slo consume recursos
de su propio hardware, sino tambin cada uno y
indexa de cada servidor.
Esto caus una tendencia prominente en el centro de datos de diseo de la
arquitectura - un cambio de hardware potente y caro
(como los mainframes hace 25 aos y HP Superdome aproximadamente una
dcada ms tarde) hacia una multitud de servidores simples.
Estas arquitecturas masivamente paralelos pueden utilizar cualquiera de las
granjas de servidores de Google como construidos a partir de hardware off-theshelf o
bloques de propiedad que forman lo que hoy se llama un superordenador (IBM
Blue Gene).
2.1. Las tendencias en la investigacin y el desarrollo de sistemas operativos
Mientras que el hardware del ordenador evolucion a la gran velocidad, la
alternativa software, obviamente, no poda seguir siendo el
mismo. Los primeros sistemas operativos creadores no importa mucho para la
arquitectura - nadie en el momento tuvo la experiencia de
escribir un programa de este tamao. Como una de las consecuencias, aquellos
primeros sistemas operativos carecan de la estructura modular, y cada uno
cada subrutina podra ser llamado a nivel mundial, y toda la cosa fue un gran
"burbuja" monoltica. Este escalado hecho y
expansin extremadamente difcil. En primer lugar OS / 360 de liberacin se
llev 5 aos y 5.000 personas para escribir y acumul poco ms de 1
millones de lneas de cdigo. Masillas su sucesor, lanzado en 1975, ya se
aument a 20 millones de lneas. Parece que la estrategia
sin revisin radical de los principios de diseo ms avances eran imposibles.
De este modo, naci paradigma modular, y la mayor parte del desarrollo de la
ingeniera de software moderno todava se basa en
o sus variantes. El diseo modular de forma natural llev a mdulos con
funcionalidad similar agrupacin juntos y
estratificacin del sistema operativo en el modelo jerrquico. Prcticamente todos
los sistemas operativos modernos pueden subdividirse en los niveles siguientes:
El soporte de hardware
Cdigo dependiente de la mquina
Mecanismos del ncleo comn
Administrador de recursos
Las llamadas al sistema API

Utilidades.
A veces los niveles estn divididos o combinados, como en nanokernel y
microkernel arquitecturas, a veces incluso
intercambi (exokernel), pero la estructura bsica sigue siendo ms o menos lo
mismo.
Otro gran paso en el diseo de sistemas operativos se hizo cuando IBM introdujo
su mquina virtual que abstrae la
hardware subyacente desde el nivel ms bajo del sistema operativo. Este hecho
posible particin del sistema y ejecutar varias
instancias de sistema operativo en la mquina fsica nica. Durante un par de
dcadas, la virtualizacin era exclusivamente de mainframe
funcin, pero era, por supuesto, obligado a propagar en el mundo de servidores y
estaciones de trabajo. Hoy en da, todos los principales procesador
fabricantes incluyen soporte de hardware de virtualizacin (VT para x86,
TrustZone para ARM) [4].
Se estima que hoy en da ms del 50 por ciento de todas las cargas de trabajo de
servidores estn virtualizados y esta cifra se prev que
llegar a 86 por ciento en 2016 [5]. La virtualizacin tambin se extendi a las
estaciones de trabajo donde se usa ampliamente como un bajo costo
software alternativo para la adquisicin de hardware dedicado para fines de
prueba y depuracin. ltimamente, se hizo an ms a la
segmentos mviles e integrados del mercado, en el que sus beneficios son la
seguridad, la interoperabilidad y, una vez ms,
ahorrando en hardware - un procesador multimedia virtual puede ser tan bueno
como un ser fsico dedicado [6].
La virtualizacin permite compartir recursos computacionales y la particin, pero
tambin se necesita para exactamente el
contrario - no cortar el sistema existente en un nmero de mquinas virtuales,
pero la unin de los recursos de mltiples
sistemas en un "supersistema" ms grande y ms potente.
Mientras que las tcnicas de virtualizacin son hoy en da en todas partes,
incluyendo el apoyo de f
bricantes de hardware '(VT para

x86, TrustZone para ARM) y soluciones de software conocidos (servidores y


estaciones de Oracle, VBox, Xen) de VMWare,
la agregacin es un problema mucho ms complejo. En pocas palabras, si un
nodo virtual, desde el punto de vista del software, es
indistinguible de un sistema fsico, la topologa de un sistema de agregado es
bastante diferente de un solo nodo.

Y, por supuesto, el uso eficaz de estos recursos agregados requiere algunas


tcnicas sofisticadas.

pgina 4
1699
Yury Leokhin y Peter Panfilov / Ingeniera Procedia 100 (2015) 1696 - 1705
2.2. Infraestructuras de computacin en paralelo modernas para sistemas
distribuidos
Tal vez todas las tareas distribuidas se pueden poner en dos grandes grupos procesamiento de transacciones y la supercomputacin. En
procesamiento transaccional que hay una necesidad para el servicio de gran
cantidad de datos y / o transacciones, mientras que la supercomputacin
implica actividad principalmente computacional. En otras palabras, uno es
pesado en la I / O, el otro - en ciclos de CPU. Estos das,
la mayora de procesamiento de transacciones se realiza en clusters Linux que
ejecutan MapReduce o alguna de sus variantes. Web
aplicaciones de bsqueda son los principales responsables de la emergencia de
las infraestructuras de computacin en paralelo como Google de
MapReduce [6] y Microsoft Dryad [7].
Por otro lado, los superordenadores (o, ms bien, los ordenadores MPP)
incluyen tradicionalmente dos sabores de nodos - I / O
los nodos de interconexin del mundo exterior y que ejecutan Linux y nodos de
computacin con casi siempre de propiedad y
bien elaborado para los ncleos de rendimiento que minimizan
cuidadosamente eventos caros, como el cambio de contexto y la memoria
cach
paliza. IBM Compute Node Kernel (CNK) utilizado en la familia Blue Gene de los
superordenadores de IBM es uno de esos
ejemplo.
Linux se meti en su posicin dominante en la industria debido a la enorme
masa de cdigo - casi todos y cada uno
solicitud ha sido portado all, y, tampoco en el pasado, debido al apoyo de los
gigantes de la industria como IBM, HP y
Cisco. Otros jugadores notables incluyen la familia de FreeBSD / OpenBSD /
NetBSD de sistemas, QNX, VxWorks y, por supuesto

Microsoft Windows.
3. funciona relacionadas: sistema operativo Plan9 revisited
Hoy en da, hay un renovado inters en otro OS - Plan9 y sus derivados. Plan9
es un sistema operativo desarrollado en el
a finales de 1980 y principios de 1990 en el AT & T Bell Laboratories por el
grupo de investigadores e ingenieros que inclua algunos
de los creadores originales de UNIX [8]. En el diseo Plan9 intentaron
enderezar lo que pensaban que sali mal
con UNIX y sus antepasados. Cuando se introdujo a la comunidad USENIX en
1992, que fue recibido muy bien, con
Las opiniones van desde cuidadosamente optimista pura y simple de xtasis
que calificaron de "un asesino en UNIX".
Matar UNIX no sucedi - slo podemos adivinar por razones especficas, pero el
consenso general parece ser que
mientras que Plan 9 fue en muchos aspectos superior a UNIX, slo pudo ganar
masa crtica en las mejoras [9].
En pocas palabras, UNIX y Linux ms tarde como uno de los sabores de UNIX
no eran tan elegante, pero todava lo suficientemente bueno. Esta,
combinado con su base masiva de cdigo, lo puso en una posicin lder en la
industria.
Plan9, por su parte, encontr un nicho como aficionado y de
investigacin. Tiene, como cualquier gran proyecto, pero de bajo rendimiento
hara, un pequeo pero dedicado ejrcito de seguidores. Su pedigr impecable y
elegante diseo tambin hacen que sea muy
atractiva como asignatura en los cursos de sistemas operativos en el mundo
acadmico.
Plan9 se basa en tres principios fundamentales:
Todos los recursos son nombrados y representados por archivos en un sistema
de archivos
Hay un protocolo estndar, 9P, para acceder a archivos a travs de fronteras
de nodo
Sistemas de archivos separados se pueden unir en un nico espacio de
nombres privado
Era aplicacin agresiva de estos principios que mantiene constantemente Plan9
compacto y robusto a travs de la
aos y uno de los principales de la reanudacin en el perodo 2000-2004.

Algunas de las caractersticas Plan9 result ser tan atractivo que fueron
adoptados por UniXS corriente principal. Ms prominente
de ellos es, quizs, una interfaz de sistema de archivos del sistema de
estadsticas de cada proceso - / proc. / Sys sistema de archivos de Linux
que representa los recursos de todo el sistema es otro guio en esa
direccin. Plan9 tambin introdujo UTF-8, una completa y honesta
norte
2
conjunto de nativos y compiladores cruzados y enlazadores para todas las
arquitecturas soportadas, y algunas otras innovaciones ingeniosas.
Una
de
las
cualidades
ms
atractivas
Plan9
es
compacto. Histricamente, se introdujo "cuando las cosas eran

su

tamao

pequea "e incluso Linux no era el monstruo que conocemos hoy. Y es que
logr mantenerse a travs de los aos. por
ejemplo, la huella de gato residente utilidad en Ubuntu 12.04 es 384 K,
mientras que su contraparte Plan9 es slo 11K. Similar,
la mayora de las utilidades estndares comunes para ambos sistemas
muestran un factor de 10 a 30 en el consumo de memoria. Uso de la cach es,
de
Por supuesto, mucho ms conservador en Plan9, as, que es an ms
importante para el rendimiento.
Este paradigma 'apretado y robusto' hizo Plan9 un candidato atractivo para el
diseo de sistemas embebidos. All estaba
siempre, aunque marginalmente, presente sobre todo en equipos y sistemas de
almacenamiento en red. el distribuida

pgina 5
1700
Yury Leokhin y Peter Panfilov / Ingeniera Procedia 100 (2015) 1696 - 1705
modelo de procesamiento de Plan 9 es muy eficaz y flexible, y es atractivo para
los sistemas embebidos. El protocolo 9P
es til para la comunicacin entre sistemas. El espacio de nombres privado de
Plan 9 tambin permite flexible y segura descentralizada
procesamiento en sistemas embebidos. Plan 9 se puede ejecutar en varias
plataformas de hardware y es muy adecuado para la construccin de grandes

sistemas distribuidos. Una instalacin tpica de Plan 9 comprendera uno o ms


servidores de archivos, algunos servidores CPU y una
gran nmero de terminales (estaciones de trabajo de usuario). El pequeo
tamao y la estructura simple de (la mayora de) su fuente
cdigo, y la baja carga de administracin del sistema, lo hace especialmente
adecuado para sistemas embebidos distribuidos (DES)
aplicaciones. El mundo de los servidores, sin embargo, la desea para el Plan de
9 otras funciones - y ante todo un protocolo relativamente delgada 9P
y la facilidad de comunicacin entre nodos mediante la manipulacin de
espacios de nombres. Esto lleva a un nivel ms alto de abstraccin aplicaciones son agnsticos de sus detalles de ejecucin. Ellos pueden ejecutar
en cualquier lugar en cualquier nodo en el sistema, en cualquier
arquitectura. El cliente puede ejecutar, dentro de una sesin, varios programas
en mquinas separadas geogrficamente. Esta
mejora la modularidad de cualquier proyecto mediante la representacin de
cualquier informacin o datos como un conjunto de archivos de civil [10].
Protocolo 9P se llev a cabo para varios sistemas extranjeros, incluyendo
Linux. En realidad, para Linux hay es un 9P
servidor que permite acceder a archivos en un servidor Linux de la estacin de
Plan9 y 9P cliente para acceder a los archivos desde Linux Plan9
computadora. Esto es muy til para el desarrollo de plataforma cruzada.
Como prueba del inters renovado en OS Plan9 vamos a echar un vistazo en
tres proyectos.
3.1. OS Plan9 en la plataforma de Supercomputacin
El primer proyecto fue realizado conjuntamente por IBM, Bell Labs y Sandia
National Labs y portar involucrado en Plan 9
IBM Blue Gene / L superordenador [11]. Despus de que fue punto de
referencia [12], los resultados iniciales fueron bastante desalentadores en un nodo de clculo en que se desempeaba hasta 30 veces ms lento en
saxpy corre de nodo dedicado cmputo del ncleo.
Entonces, despus de que se atribuy al alto nmero de fallos de pgina
debido al tamao de pgina ms pequeo en el Plan 9 (4 KB en contra
Se utiliz una versin personalizada de Plan 9 con 1 MB de tamao de pgina 1
MB de CNK) y, se lleva a cabo a la par e incluso ligeramente
mejor que CNK (vase la Tabla 1).
Tabla 1. El rendimiento relativo de CNK y Plan9 en IBM Blue Gene / L.

Paso
CNK
Plam9
Plan9 (pgina 1 MB)
1 3.7539700e-01
3.8000000e-01
3.7000000e-01
101
3.7721600e-01
1.6400000e + 00
3.8000000e-01
201
3.7926300e-01
3.4000000e + 00
3.8000000e-01
301
3.8119100e-01
4.9100000e + 00
3.8000000e-01
401
3.8263600e-01
6.3300000e + 00
3.8000000e-01
501
3.8444400e-01
7.7600000e + 00
3.9000000e-01
601
3.8661300e-01
7.7700000e + 00

3.9000000e-01
701
3.8841900e-01
7.7600000e + 00
3.9000000e-01
801
3.8986500e-01
7.7600000e + 00
3.9000000e-01
901
3.9227500e-01
7.7700000e + 00
3.9000000e-01
1001
3.9444300e-01
1.1750000e + 01
4.0000000e-01
Esto, de hecho, anim a los equipos que participan en estos proyectos para
proceder a disear superordenador basado Plan 9
sistema operativo llamado NIX [13, 14].
3.2. OS Plan9 en la plataforma de servidor
Otro proyecto reciente es Clive [15] dirigido para su uso en sistemas
distribuidos y en la nube. Arquitectura Clive se basa
en Plan9 y Nix. Clive est escrito en Go y se distribuye bajo licencia MIT. Es de
particular inters porque
es:

Pgina 6
1701
Yury Leokhin y Peter Panfilov / Ingeniera Procedia 100 (2015) 1696 - 1705

Uno de los diseos de un sistema distribuido alrededor de un estilo CSP-como


con el uso de aplicaciones y componentes CSP
canales de comunicacin - redes, tuberas y otras E / S
Un interesante intento de eliminar la pila de software en las nubes, la ejecucin
de aplicaciones escritas en Ir sin ningn sistema operativo,
en la parte superior de un simple hipervisor de hardware o incluso desnudo.
El ncleo del proyecto est a Go compilador y tiempo de ejecucin modificada,
la adopcin de apoyo y operacin de interfaz de red
sin el sistema operativo subyacente. En efecto, una naturaleza compacta y
robusta de OS kernel basado en Plan9 permite para cada uno y
todas las aplicaciones que tiene su propio ncleo del sistema operativo.
La eleccin de Go como idioma del sistema se basa en su carcter paralelo con
las operaciones del canal. Esto se adapta de forma natural
programacin y distribuido resuelve problemas latencias de red. Clive est
construido alrededor de "ZX" - recurso universal
protocolo de acceso basado en 9P de Plan9 con la semntica de nombres de
recursos y la manipulacin de espacio de nombres similares.
3.3. Plan9 OS en sistemas integrados y Sistemas De Tiempo Real
Plan 9 es un sistema operativo altamente porttil diseado para un mundo en
red. Se ha ejecutado en sistemas que van
desde pequeos dispositivos embebidos a superordenadores. Mientras Plan 9
en IBM Blue Gene / L, NIX y Clive son todas las investigaciones
proyectos, podemos recordar tambin el uso comercial exitosa del Plan 9. Esto
incluye ahora eliminado y NIX
LocalDirector proyectos de Cisco y varios productos de almacenamiento en
curso por Coraid. Plan 9 tambin se utiliza en varios
sistemas empotrados. Por ejemplo, es el sistema en el interior del viaducto, un
sistema informtico que proporciona una
Puente cifrada entre ordenadores domsticos empleados Lucent y la intranet
de la empresa [16].
En muchos sistemas integrados, algunas aplicaciones tienen requisitos de
tiempo real exigentes. Tradicionalmente, generallos sistemas operativos de propsito nunca han sido buenos en los plazos que
garanticen. Varios intentos se han hecho para
introducir programadores en tiempo real a los sistemas operativos de propsito
general. Plan 9 es un sistema operativo de propsito general

que se utiliza cada vez ms como una plataforma de sistemas


embebidos. Recientemente, los investigadores de los Laboratorios Bell han
comenzado
el uso de Plan 9 como base para una estacin de base inalmbrica, lo que
requiere un sistema de tiempo real. Su experiencia con el
diseo, implementacin, integracin y uso de un planificador de tiempo real en
su Plan 9 del sistema operativo como una
sistema operativo embebido se puede encontrar en [17].
Otro ejemplo de los proyectos de sistemas operativos basados en Plan 9 para
sistemas embebidos es un sistema operativo LP49
[18]. Este es un sistema operativo de investigacin que tiene la intencin de
combinar las mejores caractersticas del sistema operativo Plan 9 con mejores
caractersticas de microkernel L4.
Por un lado, Plan 9 es una orientada a componentes inteligentes OS: Los
servidores de archivos, etc., estn organizados como procesos normales.
Dispositivos del kernel (por ejemplo devxxx) tambin estn orientados al
componente. Si las funciones del sistema operativo se pueden extender
simplemente aadiendo
componentes, un desarrollador de sistemas embebidos pueden utilizar siempre
el sistema operativo ptimo. Adems, los servidores del sistema en Plan
9 son los procesos en modo usuario; por lo tanto, Plan 9 permite un fcil
desarrollo del programa. Por otro lado, L4 es un microkernel
pequeas micro-kernel que proporciona hilos muy eficientes y tiene una
funcin IPC muy eficiente y flexible.
Los investigadores han adaptado el microkernel L4 y son la construccin de los
mdulos del sistema operativo Plan 9 basados en L4. Un micro-kernel
OS tiene muchos procesos, y corren con la intercomunicacin. Por lo tanto, el
rendimiento del IPC domina la
rendimiento del sistema operativo. De alta velocidad del microkernel L4 IPC les
permite construir un sistema operativo de alto rendimiento, y
Instalaciones inteligentes de Plan 9 alcanzan procesamiento distribuido y
flexible. LP49 implementar el protocolo 9P, as que puede
comunicarse con el Plan 9. Las aplicaciones asumidos de LP49 son sistemas
embebidos. Estas aplicaciones utilizan diferentes
tipos de dispositivos, y por lo tanto, se deben desarrollar muchos tipos de
controladores de dispositivos.

4. El sistema operativo de la nube / IX - una solucin basada en Plan9 para


armar basados en plataformas de servidores
Al seleccionar el entorno operativo bsico para el desarrollo de la nube OS / IX
utilizamos criterios mltiples,
incluyendo entre otros el apoyo a las operaciones distribuidas, la escalabilidad,
la pureza, la licencia base para la migracin de dispositivo
controladores y aplicaciones, despliegue fcil y de apoyo, interfaces estndar,
mnimo generales servicios del sistema.
La ventaja principal del sistema de 9front para aplicacin de servidor
distribuido es su protocolo IXP, lo que permite
la gestin de los recursos locales y distribuidos por asignaciones simples sobre
el espacio de nombres.
Tal vez la desventaja ms notable de 9front es la diferencia entre su conjunto
de interfaces del sistema y la
POSIX, que es una solucin estndar tradicional para los productos similares.

pgina 7
1702
Yury Leokhin y Peter Panfilov / Ingeniera Procedia 100 (2015) 1696 - 1705
Aqu podemos considerar dos enfoques diferentes para la solucin de este
problema. En primer lugar, un APE (ANSI / POSIX
Paquete de Medio Ambiente) fue desarrollado para 9front - la mejor
aproximacin de las interfaces del sistema a la POSIX.
En segundo lugar, nuestro equipo en asociacin con la compaa AltLinux
emprender esfuerzos de portar Linux en el brazo y
plataforma de servidores basados en MicroTCA (ARM, MicroTCA). Esto permitir
la adaptacin fcil de la plataforma de destino de
muchas aplicaciones desarrolladas para Linux, incluyendo las aplicaciones de
racimo tradicionales.
Cabe sealar que muchas caractersticas tiles de diseo 9front se adaptaron a
Linux. Esto se aplica, en particular, a
el protocolo IXP, cuyo uso en Linux es ahora posible a nivel de los sistemas de
archivos montados que permite
intercambio de archivos entre Linux y 9front.

Desde nuestra Nube / IX se basa en 9front, hereda todas las caractersticas de


su prototipo. El sistema se basa en tres
principios:
Los recursos son nombrados y estn disponibles como archivos en un sistema
de archivos jerrquico
IXP protocolo estndar para el acceso a los recursos locales y remotos
jerarquas sin lmites proporcionados por diversos servicios estn unidos entre
s en un propio espacio de nombres de archivos jerrquico.
IXP protocolo implementa las transacciones mltiples, cada uno de los cuales
enva una solicitud del proceso de cliente a lo local
o servidor remoto y devuelve el resultado. IXP controla el sistema de archivos,
no slo los archivos. El acceso a los archivos se produce en el
nivel de byte, no bloques, que distingue IXP de protocolos como NFS y RFS
[19].
En la actualidad, una -versin del sistema operativo de la nube / IX se
desarrolla, y un trabajo se lleva a cabo en portar la
la mayora de las aplicaciones de software populares y de uso comn (por
ejemplo, nginx - un servidor web y un servidor proxy de funcionamiento
electrnico
en sistemas operativos basados en Unix).
5. Los experimentos con Nube / IX
Hemos llevado a cabo pruebas del prototipo de software de la plataforma de
servidor basado en ARM con el fin de estudiar la
la estabilidad de la nginx portado http-servidor en el sistema de nube / IX
heterognea y su escalabilidad. Las pruebas fueron
realizado en el Centro de Datos en el Sistemas y Soluciones Ltd en un sistema
informtico distribuido que comprende 24
Los equipos basados en x86 (servidores blade), organizadas en 3 bastidores del
sistema, cada uno con 8 servidores blade. Todos los servidores blade son
equipada con al menos un controlador de Ethernet de 1000 Mbps.
5.1. Configuracin experimental
Durante el ensayo experimental, se ha monitoreado el nivel de carga en los
nodos del clster con servicios del sistema operativo (por separado
para cada subsistema), lo que permite concluir acerca de las formas
potenciales de mejora del rendimiento. Para mostrar la

resultados de la supervisin, un software de propsito especial fue desarrollado


para recopilar estadsticas de varios nodos de una
clster, a agregarse en el nodo nico, y para transformar los resultados del
monitoreo en el formato adecuado para el anlisis
y mostrar en tiempo real. El software recibe datos sobre las cargas de trabajo y
la interfaz de red del nodo y del
lo muestra en una forma visual en una pgina web. La solucin se implementa
mediante el siguiente conjunto de tecnologa:
Parte del servidor de aplicacin est escrito en Clojure - una implementacin de
Lisp-dialecto para la JVM y bibliotecas: Anillo,
Compojure, Webbit, CLJ-JSON
Parte del cliente se implementa en ClojureScript - un dialecto de Clojure que se
traduce en un JavaScript regular,
ejecutado en el navegador
Aplicacin del mecanismo de paso de mensajes desde el servidor al cliente se
basa en la tecnologa WebSockets
La representacin dinmica de los elementos grficos se realiza mediante el
trabajo con elemento Canvas (HTML5
especificacin).
Para generar las solicitudes al equilibrador de carga Nginx se utiliza la utilidad
httpperf. Httpperf mide el rendimiento de
servidor web y proporciona un entorno flexible para la generacin de cargas de
trabajo para el servidor HTTP y para medir su
actuacin. Al final de la prueba de funcionamiento, se genera un informe, que
contiene tres secciones: resultados generales, un grupo

pgina 8
1703
Yury Leokhin y Peter Panfilov / Ingeniera Procedia 100 (2015) 1696 - 1705
dedicada a compuestos y grupo. En el modo de generacin de carga, genera
peticiones con la sustitucin de la
nmero cada vez mayor, que los dgitos se utilizan como componentes de la
ruta de acceso al recurso.
Escenario de probar la eficacia de equilibrio de carga requiere la creacin de
una jerarqua de archivos nginx uno cada

nodo, de manera que sus trayectorias con respecto al directorio raz de nginx
coinciden con la consulta, formado por httpperf, y por lo tanto la
cantidad total de datos excedera el tamao de RAM en cada nodo. En estas
condiciones, el subsistema de disco
se convierte en el cuello de botella en cada nodo, de modo que se hace posible
evaluar el efecto de paralelizacin carga de trabajo.
La misma secuencia de solicitudes no recurrentes se presenta al equilibrador y
para el nodo separado, y el
resultados se comparan. Rendimiento de los componentes individuales y de
todo el clster tambin se prueba por repetida
(idnticos) consultas. Httpperf le permite ajustar el nmero de solicitudes por
unidad de tiempo, lo que se refleja en el
nmero de peticiones procesadas en paralelo. El ensayo se lleva a cabo por
separado para la descarga de archivos de gran tamao y para
la descarga de archivos pequeos, lo que permite identificar los diversos
posibles cuellos de botella en el nginx portado. En esta prueba
escenario, todo el contenido del archivo en la memoria cach del sistema
operativo, y un subsistema de disco ya no es una
embotellamiento.
Queramos que los resultados de la prueba para reflejar el rendimiento de las
soluciones de servidor (nginx), en oposicin a la totalidad
complejo de cliente-servidor. Para esto, se requiere ya sea una presencia de
varios equipos cliente, para generar las consultas
simultneamente, o el uso de un sistema para la ejecucin del cliente, que
supera significativamente a un conjunto de todos los nodos del
clster (sin subsistema de disco que no es utilizado por el cliente de forma
activa). Para este estudio, hemos optado por la segunda
solucin.
5.2. Resultados experimentales
La principal medida de los resultados de la prueba es el nmero de solicitudes
procesadas por segundo para las estadsticas finales
httpperf. Otro indicador, que es de gran importancia en el anlisis de contenido
de las cargas de trabajo y los cuellos de botella la tasa de solicitudes (nmero de solicitudes por unidad de tiempo) en el que el
servidor se detiene con xito manejar todas las conexiones.

Para obtener esta a varias carreras de httpperf se llevan a cabo, donde la


opcin - se incrementa constantemente tasa,
acompaado de un cheque estadsticas de solicitudes exitosas. El seguimiento
de los nodos del clster de carga con operativo
los servicios de sistema (por separado para cada subsistema) durante la
prueba de esfuerzo, tambin permite efectuar conclusiones sobre
posibles medidas de mejora del rendimiento (Figura 1).
Higo. 1. Niveles de carga de la CPU y el adaptador de red del nodo clave
durante la prueba.
Se realizaron cuatro series de experimentos durante la
experimental. En cada uno, un grupo de cuchillas de un tamao de

prueba

4-24 se utiliz (Tabla 2). La tabla muestra la escalabilidad de servidor nginx,


corriendo bajo la nube de funcionamiento / IX
sistema en el Centro de Datos.

pgina 9
1704
Yury Leokhin y Peter Panfilov / Ingeniera Procedia 100 (2015) 1696 - 1705
Tabla 2. Resultados de las pruebas de la nube / IX.
Prueba
serie
conexiones por
seg., promedio
El tiempo de prueba, seg.,
promedio
La tasa de respuesta, mn.,
conn./sec.
La tasa de respuesta,
mod .., conn./sec.
La tasa de respuesta,
max., conn./sec.
,%

1 128,0
1022.6
74,4
128,0
196,8
7.4
2 324,0
404.9
177,6
321,6
477,6
9.8
3 416,0
315,3
258,2
414,4
592,0
11,4
4 1054,6
125,9
750,0
1051,6
1591,2
16,8
Sin embargo, en el curso de los experimentos, hemos puesto de manifiesto
algunos problemas asociados con las conexiones
entre los servidores nginx que se ejecutan en la nube / IX. Cuando los
servidores estaban sobrecargados con solicitudes, nginx descartado
paquetes (conexin rechazada) que llegaron durante la fase de procesamiento
de la conexin de otro paquete. Una trama de la

fraccin de fallos para una serie de experimentos 2 con respecto a la tasa de


solicitud se muestra en la Figura 2. Creemos que
esto es debido al procesamiento incorrecto de enchufes en la nube / IX, as
como debido a las peculiaridades de la pila TCPaplicacin en la distribucin 9front, que se utiliza como base para nuestro
propio desarrollo. Despus de examinar la forma en 9front
se refiere al protocolo TCP, se ha encontrado que antes de la SYN + ACK el
ncleo 9front no comprueba si la
cliente tiene suficiente espacio en la cola de procesamiento, y descarta RST
despus de que se establece la conexin, que es
consistente con RFC793. RFC793 no describe cmo el servidor debe manejar el
desbordamiento en una cola: antes o
despus de la ACK. Por lo tanto, el problema antes mencionado en relacin con
el trabajo con la pila TCP puede ser tratada como una
peculiaridad de la nube / IX, que debe ser tenido en cuenta en futuros trabajos
con el software que utiliza el TCP
protocolo.
Higo. 2. La dependencia de la proporcin de negativas sobre la tasa de
solicitud, ms Comm./100.
Adems, este sistema operativo Nube / IX no fue hecho originalmente para el
uso de tomas de corriente, y por su
portado aplicacin se tomaron BSD sockets, que no toman en cuenta las
caractersticas arquitectnicas de la
pila de red de la nube / IX. Con base en los resultados de las pruebas se supone
que el rendimiento de la red puede ser
mejorado significativamente mediante el uso de tomas de corriente, que
tengan en cuenta estas caractersticas. En el futuro, la aplicacin de la
protocolo BSD-zcalo en la parte superior de 9p, que se utiliza en la nube / IX.
A diferencia de muchos otros sistemas operativos, Nube / IX desde el principio
no est proporcionando un especial programada
interfaces para acceder a los dispositivos. En lugar de ello, el sistema se
supone que el control de las interacciones a travs del sistema de archivos,
que se puede acceder a travs del protocolo 9p, incluyendo dispositivos. La
interaccin est destinado a ser realizado por
Me convencional / O operaciones. Este hecho explica la ausencia de las
cuencas en la nube / IX y por lo tanto los desarrolladores estn

desafiado con su aplicacin en el sistema operativo.


Tras los resultados de experimentos en un banco de pruebas, se ha descubierto
que las aplicaciones de servidor de red
puede ser portado a y utilizado en el sistema de nube / IX y demostrar un
rendimiento comparable al de otros dispositivos similares. En
Adems, se identificaron una serie de caractersticas de la 9front-ncleo y los
desarrolladores tienen el reto de encontrar maneras de trabajar
con ellos y su descripcin.

pgina 10
1705
Yury Leokhin y Peter Panfilov / Ingeniera Procedia 100 (2015) 1696 - 1705
6. Conclusin
En este trabajo, presentamos el enfoque de diseo de sistemas distribuidos,
que se basa en el Plan del sistema operativo 9
modelo. Hemos demostrado que los principios subyacentes de Plan 9 OS son
muy adecuadas para capturar el procesamiento distribuido
mecanismos derivados de modelos de clculo paralelo y distribuido /
programacin utilizando superordenador, servidor
plataformas, y ejemplos de sistemas embebidos distribuidos. La definicin de la
interfaz del sistema de ficheros, junto con la facilidad
de comunicacin entre nodos mediante la manipulacin de los espacios de
nombres de archivos permite la generacin de aplicaciones sin tener en cuenta
la
peculiaridades de su hardware sistema de ordenador subyacente. Ellos pueden
ejecutar en cualquier lugar en cualquier nodo en el sistema, en
cualquier arquitectura. Esto resulta en la aplicacin que
funcionalidad completa capturada por el modelo, as como la

incluye

la

necesidades de comunicacin impuestas por la asignacin de cargas de trabajo


en un sistema informtico distribuido. El protocolo 9P
incluido en el Plan 9 aplicacin proporciona la base para la construccin de
arquitecturas escalables de sistemas distribuidos y una
idea para la distribucin de tareas a los nodos del sistema disponibles. Esto
mejora la modularidad de cualquier proyecto mediante la representacin

cualquier informacin o datos como un conjunto de archivos planos. Adems,


los servidores del sistema de Plan 9 son procesos en modo de usuario;
por lo tanto, Plan 9 permite un fcil desarrollo del programa.
Para resumir, podemos ver claramente la tendencia del recientemente
renovado inters en el Plan 9 OS y sus derivados. Existen
varios proyectos en curso se centran en tiempo real y las extensiones de apoyo
MPP a Plan 9.
Expresiones de gratitud
Este trabajo fue financiado por el "Desarrollo de proyectos y organizacin de la
produccin de alta tecnologa de la energa
complejos de servidores multiprocesador hardware-software eficientes para el
gobierno y los sistemas de informacin corporativos y
los centros de datos ", que se ha llevado a cabo en la Universidad Nacional de
Investigacin de la Escuela Superior de Economa (HSE).
referencias
[1] S. Orlov. Revolucin ARM. Diario de soluciones de red. LAN 11, 2012.
Disponible en: http://www.osp.ru/lan/2012/11/13032394/ .
[2] emulador de inicio Elbrus Technologies permitir a los procesadores ARM
para
trabajar
con
aplicaciones-x86. Disponible
en: http://servernews.ru/596643 .
[3] "Plan 9 del Frente Popular de cat-v.org (9front)", NineTimes 17 de junio de
2011, recuperado 13 de septiembre de 2012.
[4] T. Laplante, virtualizacin ha superado el 50 por ciento de todas las cargas
de trabajo de servidor, DataCenterPost.com, 20 de marzo de 2014. Disponible
en:
http://datacenterpost.com/2014/03/virtualization-surpassed-50-percent-serverworkloads.html.
[5] O.
Kharif, virtualizacin
va
mvil, Bloomberg
Semana de negocios. Technology, abril
22,
2008.
Disponible

a:
http://www.businessweek.com/stories/2008-04-22/virtualization-goesmobilebusinessweek-business-news-stock-market-and-financial-advice.
[6] J. Dean, S. Ghemawat, MapReduce: Tratamiento de datos simplificado en los
racimos grandes, 6

Simposio sobre Sistemas Operativos Design &


Implementacin (OSDI'04), 6-8 de diciembre de 2004, USENIX 2004, pp.137149. [ PDF ].
[7] M. Isard, M. Budiu, Y. Yu, A. Birrell, D. Fetterly, Dryad: Distributed DataProgramas paralelos secuenciales a partir de bloques de construccin, Europeo
Conferencia sobre Computer Systems (EuroSys'07), Lisboa, Portugal, Marzo 2113, 2007. [ PDF ].
[8] R. Pike, D. Presotto, S. Dorward, B. Flandrena, K. Thompson, H. Trickey, y P.
Winterbottom, Plan 9 from Bell Labs, sistemas de computacin,
vol. 8,
no. 3,
1995,
labs.com/sys/doc/9.html.

pp.

221-225. Disponible

en:

http://plan9.bell-

[9] ES Raymond, El arte de la programacin Unix, Thyrsus Empresas de 2003.


[10] D. Presotto, P. Winterbottom, la organizacin de redes en el Plan 9.
Disponible en: http://plan9.bell-labs.com/sys/doc/net/net.html.
[11] E. Van Hensbergen, C. Forsyth, J. McKie, y R. Minnich, Plan de Petascale 9
en la Blue Gene, 2007 USENIX Conferencia Tcnica Anual
(USENIX ATC'07), 17-22 de junio de 2007, Sesin de psters. [ Resumen ].
[12] RG Minnich, J. Floren, y A. Nyrhinen, la medicin de rendimiento del ncleo
en Blue Gene / P con el sistema operativo Plan 9 investigacin, en:
Actas de la 6

Taller Internacional de Plan 9 (IWP9), Atenas, GA, EE.UU., 12 de octubre de


2009. [ PDF ].
[13] J. McKie, J. Floren, desplazando hacia Exaescala con NIX. [ PDF ]
[14] NIX es un nuevo sistema operativo multi-ncleo
Plan9. Disponible en: http://code.google.com/p/nix-os/.

basado

en

[15] FJ Ballesteros, Red de estilo CSP, archivos y servicios del sistema de


Clive. Lsub Systems Lab, Universidad Rey Juan Carlos, Madrid, Proyecto de TR,
23 de mayo de 2014. [ PDF ].

[16] SJ Mullender, PG Jansen, Tiempo real en un sistema operativo real, en: (et
al.) Herbert, Andrew James (Eds.), Computer Systems. Teora,
Tecnologa y Aplicaciones, Springer, 2004, pp. 213-221. ISBN 978-0-387-218212. [ PDF ].
[17] SJ Mullender, J. McKie, Tiempo real en Plan 9, en: Actas del 1er Taller
Internacional sobre Plan 9 (IWP9), 4-5 de diciembre de 2006,
Madrid, Espaa. [ PDF ].
[18] Y. Sato, K. Maruyama, LP49: Sistemas de Respaldo OS basado en L4 y Plan
9, en: Actas del 4

Taller Internacional de Plan 9


e Inferno (IWP9), Atenas, GA, EE.UU., 21-23 de febrero de 2009. [ PDF ].
[19] H. Trikey, - El ANSI / POSIX Medio Ambiente, Plan 9 del Manual del
programador, volumen 2, y Bell Laboratories, Murray Hill, Nueva Jersey,
1991

También podría gustarte