Ya hay nombre para la primera release Macaca Sylvanus. El futuro es mixto.
Páginas
-
Categorías
-
Archivos
Ya hay nombre para la primera release Macaca Sylvanus. El futuro es mixto.
El acceso al código de dotGNU no es trivial, he tenido verdaderos quebraderos de cabeza para poder acceder.ve Así que finalmente, he tenido que optar por utilizar mono para el proyecto (esperemos que no me afecte mucho eso del pago por la licencia para sistemas empotrados).
Me veo pagando a Novell
Toda la información disponible para acceder al subversión de mono está en
http://www.mono-project.com/SVN
Realmente completa y clara.
La verdad es que al principio barajé esta posibilidad, contribuir a uno de mis proyectos favoritos de software libre habría sido para mi un orgullo.
Lo que me echó para atrás y decidí declinar esa opción es un párrafo que viene en el FAQ de la licencia del proyecto Mono y que hace referencia a la utilización de este para proyectos emportrados, el párrafo es el siguiente:
When do I need to obtain a license from Novell to the Mono Runtime?
We only require licensing for uses of Mono and Moonlight on embedded systems, or systems where you are unable to fulfill the obligations of the GNU LGPL.
For example, if you manufacture a device where the end user is not able to do an upgrade of the Mono virtual machine or the Moonlight runtime from the source code, you will need a commercial license of Mono and Moonlight.
Or if you ship an application that requires to statically link the Mono runtime and you are not able to provide the object code to relink Mono, you must obtain a commercial license from Novell.
Use our Contact form with the information about your needs to discuss this.
Si traduzco únicamente el párrafo en cursiva vemos el porqué:
Sólo requieren de concesión de licencias para la utilización de Mono y Moonlight en sistemas embebidos, o sistemas donde no están en condiciones de cumplir con las obligaciones de la GNU LGPL.
Ese es el principal motivo, no creo que una aplicación de software libre deba estar restringida de esta manera (no es del todo libre) , además no creo que tenga presupuesto como pagarle a Novell nada para realizar un simple experimento con Linux y .Net.
Durante este mes de agosto, me he leido el libro Expert .Net Micro Framework. Un libro muy ameno sobre la programación bajo .Net Micro Framework.
Escrito por Jens Kühner, describe los fundamentos de la programación bajo .Net MicroFramework, haciendo sobre todo mucho incapié en los espacios de nombres propios y las limitaciones de su sistema de programación.
Un bueno libro le doy un 8/10.
.Net Microframework es una versión de .Net Framework para dispositivos que no soportan por sus características MS Windows CE y .Net Compac Framework.
.Net Microframework accede directamente al hardware y posee a grandes rasgos la siguiente estructura:
Asi tenemos el tinyCLR, que es una versión compatible con ECMA CLR pero que no incluye todas sus funcionalidades. El CLR (Common Languaje Runtime) según la wikipedia:
El CLR también permite otros servicios importantes, incluyendo los siguientes:
Las demás capas, tanto PAL como HAL serán las que tengan que ser adaptadas para que, en nuestro caso, dotRobot funcione. Opcionalmente HAL podrá ser sustituido por un sistema operativo para sistemas embebidos (p. e. Linux).
HAL son las iniciales de Capa de Abstracción sobre el Hardware (Hardware Abstraction Layer), dicha capa proporciona las funciones y las estructuras para acceder al hardware, cuando se usa un sistema operativo se utilizan las llamadas al sistema del propio sistema operativo y las estructuras de datos que el propio sistema operativo maneje.
PAL son las iniciales de Capa de Abstracción sobre la Plataforma, proporciona una capa más de abstracción unificando el uso de timers, bloques de memorias…
Así las capas especificadas para dotRobot cada una de las funcionalidades de las capas vendría dada por los siguientes elementos.
P.D.
En la medida en que se pueda admito sugerencias, modificaciones y comunicación de posibles erratas en la redacción de este documento. Son las 2 am de la mañana en España y casi seguro que algo se me ha pasado.
dotGNU es un proyecto liderado por el Proyecto GNU cuyo fin es construir un clón de .Net Framework de Microsoft utilizando los estándares ECMA.
De los clones de .Net es que va con más retraso con respecto a sus competidores, a parte de esto la diferencia fundamental entre los distintos clones se basa en el uso de la licencia. Así, el proyecto Mono utiliza de manera generalizada la licencia MIT, .Net Framework utiliza una licencia comercial y con derechos reservados y dotGNU utiliza la licencia GPL v3 (con las famosas 4 libertades).
La elección de dotGNU para el desarrollo de dotRobot ha sido por cuestiones de estrategia, dotGNU utiliza la licencia GPL v3 y además está en un estado desarrollo muy primario con lo que el código fuente puede ser más comprensible.
Además la licencia GPL v3 incluye una serie de obligaciones para los colaboradores, a menudo clasificadas de víricas por parte de la Industria del Software Clásica, que va a permitir el desarrollo de dotRobot de manera segura. Estas son:
Bienvenidos al blog de desarrollo de dotRobot. Este blog pretende ser un lugar de puesta en común de los desarrolladores de dotRobot, con el se pretende estar más cerca de la comunidad y que sea un espacio de intercambio de ideas sobre el desarrollo del proyecto.
dotRobot nació como un proyecto a presentar en el Primer Concurso de Software Libre de la Universidad de Huelva y el Segundo Concurso de Software Libre Organizado por la Universidad de Sevilla.
Actualmente y siguiendo la experiencia que han aportado ambos concursos, se pretende acercar a más desarrolladores la robótica desde la perspectiva del software libre a la vez que se aprende tecnología .Net (dotGnu o Mono) en otros ambientes que no son de la empresa Microsoft.