Soluciones Open Source para una Internet 3D.

in #utopian-io7 years ago (edited)

imagen_inicio_internet_3d_2.png
fuente

Abstract:


This is the first post about an analysis of the open source solutions for to implement a 3D web with virtual reality for a 3D Internet. In this post series we will to review distributed operating systems solutions, distributed file systems, virtual machine, Web developing with WebGL and WebAssembly, 3D design, render and virtual reality open source solutions.

In this first post we will evaluate EOS like distributed operating system.

Language: Spanish


Introducción

Con este post daremos inicio a una serie en la que evaluaremos diferentes soluciones open source que nos permitan una posible implementación de una Web 3D con realidad virtual.

¿Qué es la internet 3D o la Web 3D?:

Internet 3D es la combinación de tecnologías Web y gráficos 3D.

El objetivo de una internet 3D es generar páginas web que interactúan en tiempo real con el usuario a través de gráficos 3D en un ambiente de realidad virtual, similar a como se hace hoy con las páginas web 2D.

Actualmente Internet es una parte integral de nuestras vidas de forma casi omnipresente, y la llegada de las tecnologías de visores estereoscópicos permiten la inmersión en entornos virtuales de formas que antes no era posible, ¿por qué no unir estas tecnologías?. Sin embargo, en la actualidad internet sigue presentándose en un formato 2D, donde se puede ver la información de un producto, como su tamaño o peso de forma numérica o escrita, pero nuestros ojos y nuestro cerebro están diseñados para captar y entender un entorno tridimensional, por lo tanto es mucho más intuitivo, rápido y fácil comprender algo cuando se presenta en formato 3D.

El desarrollo de esta serie está orientada exclusivamente al análisis y evaluación de soluciones Open Source y Open Hardware.

Temas generales de la serie:

  • Sistemas operativos distribuidos.
  • Almacenamiento distribuido.
  • Virtual Machine.
  • Sistemas WebGL 3D y animaciones 3D en web.
  • Diseño 3D. Procesos de renderizado en granjas y render en paralelo.
  • Realidad virtual / aumentada / mixta (VR/AR) en la red.

Iniciaremos el estudio de una Internet 3D Open Source desde los sistemas operativos distribuidos donde veremos sus características y ejemplos:

  • EOS (Sistema Operativo Blockchain).
  • DC/OS.
  • Apache Mesos.
  • DEOS.

Posteriormente veremos unas soluciones propuestas de almacenamiento distribuido:

  • IPFS (InterPlanetary File System).
  • Dat Project.

Luego estudiaremos un poco sobre la soluciones de máquina virtual:

  • LVVM.
  • Emscripten.

Lo anterior dará pie al estudio de WebAssembly y su capacidad de programación para el procesamiento de imágenes 3D en web con WebGL. Seguido veremos una solución en el diseño 3D como es Blender y su presentación sobre la web con Blend4Web, esto nos llevará a revisar sistemas de renderizado por granjas o en paralelo con Blender Network Render o Blender Gnu Parallel, y para finalizar realizaremos un estudio sobre una solución open source para realidad virtual y aumentada como lo es OSVR.


Temas del post:

  • Sistemas operativos distribuidos EOS.
  • Conclusiones.

Sistemas Operativos Distribuidos:

Uno de los principales obstáculos para alcanzar una Internet 3D es esencialmente el hardware. El proceso de renderizado de los gráficos 3D requiere de procesadores, GPU y una elevada capacidad de memoria RAM, que muchos equipos móviles no logran desarrollar, incluso equipos de mesa o portatiles que no son económicamente viables para cualquier persona. Así que básicamente el problema de hardware es delegado a los servidores, lo que implicaría enormes costos energéticos y de procesamiento para el renderizado cuando son demasiados usuarios. Por lo tanto la gestión efectiva de los recursos para estos procesos es un pilar que podría solucionarse con los sistemas operativos distribuidos:

OS1.gif
Gif hecho en Blender por @NamRa

Como sabemos, un sistema operativo es aquel software que media entre los programas de usuario y la máquina, gestionando los recursos como procesador, memoria, disco duro, entre otros. También administra los permisos o autorizaciones que tengan los programas o usuarios sobre los recursos de la máquina, como puertos USB en Serie o paralelo. Igualmente gestiona la información y el almacenamiento de los archivos ya sea en dispositivos locales o periféricos.

Un sistema operativo distribuido es aquel que permite una gestión de los recursos como CPU, RAM y almacenamiento de los equipos que participen en una red.

DQmUTkQ1tEXByviZJdAXKhKaD95JULVbheGmz5wnNzc4xs9.png
fuente

EOS es básicamente un sistema operativo distribuido que permite utilizar y compartir los recursos hardware de los equipos participantes de la red blockchain, creando una especie de supercomputadora global que permite soportar otras plataformas blockchain, redes sociales o cualquier aplicación que necesite enormes recursos físicos para soportar miles de millones de transacciones por segundo y millones de usuarios simultáneamente.

OS_EOS1.gif
Gif hecho en Blender por @NamRa

EOS identifica tres tipos de recursos para gestionar:

  • Ancho de banda (bandwidth) y almacenamiento (Log Storage) = (Disco) : Este tiene dos componentes: uso instantáneo y el uso a largo plazo. Una blockchain debe mantener muchos registros (Logs) de todos los mensajes y estos logs son almacenados y descargados por todos los nodos. Con estos logs de mensajes es posible reconstruir el estado de las aplicaciones.

  • Respaldo o deuda computacional = CPU son cálculos que se deben ejecutar para reconstruir el estado de los registros o logs de los mensajes.

  • Almacenamiento de estado = RAM es información que es asequible desde la lógica de la aplicación. En la blockchain incluye información como libros de ordenes (order books) y balances de cuentas.

Aquellos que producen los bloques están permanentemente publicando su capacidad disponible para ancho de banda, deuda computacional y almacenamiento de estado. El sistema EOS le permite a cada cuenta consumir un porcentaje de la capacidad disponible proporcional a la cantidad de tokens que tenga en un contrato de 3 días. Por ejemplo, si una cuenta tiene un total del 1% de tokens distribuibles por una blockchain, entonces esa cuenta tiene el potencial de uso de un 1% de la capacidad total del almacenamiento de estado.

Cuando una cuenta no está utilizando cierta capacidad de recursos los puede ceder o arrendar a terceros. Los productores de bloques que usen EOS reconocen esta delegación de capacidad y la asignará como corresponda.

Cabe destacar que los productores de bloques reciben una recompensa por medio de tokens cada vez que un bloque es generado.

Conclusiones:

Aunque no profundizaremos en este estudio de EOS como blockchain, ya que solo estamos evaluando sus características como sistema operativo distribuido, cabe anotar que para el montaje de una web 3D que requiera vastos recursos de hardware, puede ser una buena opción recompensar a los participantes que deleguen estos recursos mediante tokens de una blockchain.

EOS como sistema operativo distribuido está orientado a sostener aplicaciones distribuidas tipo blockchain y la gestión de sus recursos de hardware está dirigida exclusivamente con esos fines, por lo tanto no sería una opción viable para el montaje de una Web 3D.

Es importante tener en cuenta la capacidad del sistema operativo distribuido con un sistema de autogestión de los recursos sobre la red de forma que sea totalmente transparente para el usuario final. Igualmente se debe revisar si el sistema operativo gestiona los recursos de GPU.

En el próximo post evaluaremos el sistema operativo open source DC/OS.



Posted on Utopian.io - Rewarding Open Source Contributors

Sort:  

Thank you for the contribution. It has been approved.


Please, edit your post:

  • There is not difference between headers and general text.
  • Center used images or include them in a better way. They look misaligned.
  • There is a list item with bad format in the "EOS identifica tres tipos de recursos para gestionar" section (*- Log=Registro).
  • Your post looks plain. Please Fix the headers and try to provide a unique and consistent format.

You can contact us on Discord.
[utopian-moderator]

Done, thanks for your recommendations, I'll improve my future posts.

Muy interesante. Me pregunto si EOS dejará a ethereum obsoleto

Pienso que si dejará a Etherum obsoleto, incluso a EOS le llaman Etherum killer, porque con el algoritmo DPOS y la gestión distribuida y en paralelo de recursos hardware, podrá manejar tranquilamente decenas de millones de usuarios activos por día. Según entendí en el whitepaper, se podrían montar varios Etherum sobre EOS. Precisamente por eso es un sistema operativo para soportar muchas blokchains.

para esto de procesamiento descentralizado está también https://golem.network/

Muy bueno @elguille, lo iré a revisar, gracias.

Gran post!
Esperando el siguiente..

Gracias por el comentario, he estado encontrando algunas soluciones alternativas ademas de las que ya anuncie en este post, así que creo que saldrán todavía más post de los pensados.

Los seguire sin duda
Especialmente si tratan de EOS

voy a esperar el otro post me interesa... un saludo

Saludos @araidc, Gracias por el comentario, estoy trabajando en ello, aunque no soy desarrollador y me toma más tiempo la comprensión de algunos temas, sin embargo es apasionante.

Hey @namra I am @utopian-io. I have just upvoted you!

Achievements

  • You have less than 500 followers. Just gave you a gift to help you succeed!
  • Seems like you contribute quite often. AMAZING!

Suggestions

  • Contribute more often to get higher and higher rewards. I wish to see you often!
  • Work on your followers to increase the votes/rewards. I follow what humans do and my vote is mainly based on that. Good luck!

Get Noticed!

  • Did you know project owners can manually vote with their own voting power or by voting power delegated to their projects? Ask the project owner to review your contributions!

Community-Driven Witness!

I am the first and only Steem Community-Driven Witness. Participate on Discord. Lets GROW TOGETHER!

mooncryption-utopian-witness-gif

Up-vote this comment to grow my power and help Open Source contributions like this one. Want to chat? Join me on Discord https://discord.gg/Pc8HG9x

Coin Marketplace

STEEM 0.20
TRX 0.25
JST 0.038
BTC 96656.73
ETH 3341.70
USDT 1.00
SBD 3.20