Si, hay versiones gratuitas.

2011/6/24 Guillermo Schwarz <[email protected]>:
> Andres,
> Yo nunca. No sé si hay una versión gratuita.
> Saludos,
> Guillermo.
>
> 2011/6/24 Andres Valloud <[email protected]>
>>
>> Usaste GemStone?
>>
>> 2011/6/24 Guillermo Schwarz <[email protected]>:
>> > Hernán,
>> > Está bueno, creo que no es factible solucionarlo en Smalltalk dado como
>> > se
>> > manejan las tareas.
>> > En Java, cuando habìan GreenThreads en vez de threads del sistema
>> > operativo
>> > pasaba lo mismo y lo resolvieron justamente usando threads del sistema
>> > operativo.
>> > Lo que encuentro interesante del asunto es que el modelo de programación
>> > en
>> > Smalltalk es lineal, como si los threads/tareas no existieran, a
>> > excepción
>> > del "yield" ocasional que dice "ahora sí me pueden interrumpir". Otro
>> > modelo
>> > similar pero sin yield es el de los EJBs. Lo interesante es que en el
>> > mnundo
>> > J2EE se prohibe el uso de threads y de sincronización, sin embargo por
>> > debajo todo corre con threads, de modo que se podrìa decir que un
>> > programador de EJBs es un progrmador de Smalltalk que actúa de manera
>> > completamente ignorante de que por debajo todo ejecuta en paralelo, y
>> > eso es
>> > posible porque no puede ocupar un singleton (que serìa la memoria
>> > compartida), ni ocupar synchronized ni nada de eso, sino que todo debe
>> > pasar
>> > por la base de datos.
>> > Ahora bien, la base de datos es un sistema más. Si lo tienes programado
>> > por
>> > ejemplo en H2, todo sigue estando en Java y ejecutando en threads, de
>> > modo
>> > que ¿còmo se resuelven los temas de sincronización? Lo ùnco que has
>> > hecho es
>> > trasladar el problema del espacio Java de los EJBs al espacio de las
>> > transacciones en BD, pero sigue siendo el mismo problema y sigue siendo
>> > un
>> > problema a resolver en Java... y está resuelto. ¿Cómo lo hace entonces?
>> > Entonces te encuentras con que en el mundo de las BD este tema tiene 2
>> > modos
>> > de resolución:
>> > 1. El sistema típico que pasan introducción a las BD en la U en el que
>> > se
>> > bloquean los registros de las tablas y en caso de deadlock se mata una
>> > transacción y luego se rehace, o bien se establece un orden por tabla y
>> > por
>> > registro para tomar locks y evitar los deadlocks.
>> > 2. El sistema que no es tan típico pero que es más eficiente, conocido
>> > como
>> > versionamiento de registros o lock free synchronization, en los que se
>> > minimiza el uso de locks (en el tiempo y en el espacio), de modo que
>> > casi
>> > nunca se topan 2 locks y cuando se topan, se sigue la misma estrategia
>> > del
>> > punto 1.
>> > De ahí tengo la intuición que debería poder hacerse algo parecido en
>> > Smalltalk, sòlo que deberìa ser necesario construir un modelo de
>> > programación similar a EJB SLSB (Stateless Session Beans) en la que el
>> > estado se maneje en una BD necesariamente, y luego esa BD sea
>> > implementada
>> > de nuevo en Smalltalk con transacciones con lock free synchronization.
>> > La experiencia que he tenido con los EJBs es que si los haces funcionar
>> > así
>> > funcionan rapidísimo y es muy escalable, quizás no tanto como Terracotta
>> > (acá hablan de 80 mil transacciones por
>> >
>> > segundo http://www.theserverside.com/news/1364132/Terracottas-Scalability-Story),
>> > pero sigue siendo impresionante.
>> > Saludos,
>> > Guillermo.
>> > 2011/6/24 Hernan Wilkinson <[email protected]>
>> >>
>> >> Cuando se graba la imagen, como en todo smalltalk común, la misma se
>> >> freeza. Pero uno de los grandes problemas que tuvieron que resolver los
>> >> chicos fue el tema de la circularidad... o sea, como grabar los objetos
>> >> que
>> >> graban? :-)
>> >>
>> >> 2011/6/24 Guillermo Schwarz <[email protected]>
>> >>>
>> >>> Hernán,
>> >>> Què interesante. La ùnica duda que me surgió es si al hacerlo sìncrono
>> >>> significa que la imagen Smalltalk queda suspendida hasta que se
>> >>> resuelve o
>> >>> bien que otros threads de la misma imagen pueden seguir ejecutando
>> >>> mientras
>> >>> tanto. Todo esto lo pregunto porque resolver un acceso a disco con la
>> >>> tecnología actual (sin SSD) es del orden de entre 10 y 100 veces más
>> >>> caro
>> >>> que un acceso a RAM.
>> >>> Saludos,
>> >>> Guillermo.
>> >>>
>> >>> 2011/6/24 Hernan Wilkinson <[email protected]>
>> >>>>
>> >>>> por si les interesa...
>> >>>>
>> >>>> ---------- Forwarded message ----------
>> >>>> From: Hernan Wilkinson <[email protected]>
>> >>>> Date: 2011/6/24
>> >>>> Subject: Defensa de Tesis de Licenciatura - Persistencia en SqueakNOS
>> >>>> To: docentes <[email protected]>, alumnos <[email protected]>
>> >>>>
>> >>>>
>> >>>> Defensa de Tesis de Licenciatura
>> >>>> Aula 2, Pab I, 1ro de Julio de 2011, de 17hrs. a 18hrs.
>> >>>> Título: Persistencia en SqueakNOS
>> >>>> Alumnos: Guido Chari y Javier Pimás
>> >>>> Directores: Hernán Wilkinson y Gerardo Richiarte
>> >>>> Jurado: Máximo Prieto y Gabriela Arevalo.
>> >>>> Resumen:
>> >>>> SqueakNOS es una reificación de los conceptos de "Computadora" y de
>> >>>> "Sistema Operativo" dentro del dialecto Squeak del lenguaje de
>> >>>> programación
>> >>>> Smalltalk.
>> >>>> La filosofía de SqueakNOS establece que el desarrollo del mismo debe
>> >>>> hacerse completamente en Smalltalk, utilizando código de bajo nivel
>> >>>> únicamente en los casos en que no sea posible utilizar Smalltalk o
>> >>>> que el
>> >>>> deterioro de rendimiento sea extremadamente ostensible.
>> >>>> El proyecto es un trabajo aún en desarrollo, y como tal, varias
>> >>>> funcionalidades comunes a los Sistemas Operativos no han
>> >>>> sido implementadas
>> >>>> aún debido a su complejidad. Es por ello que esta investigación se
>> >>>> centra en
>> >>>> analizar varios interrogantes relacionados con la persistencia de los
>> >>>> objetos, interrogantes que se presentan al momento de querer grabar
>> >>>> el grafo
>> >>>> de objetos que representa el modelo desarrollado.
>> >>>> Para poder responder estos interrogantes, se desarrolló un
>> >>>> controlador
>> >>>> de discos ATA y un modelo de filesystem FAT32 completamente en
>> >>>> Smalltalk, lo
>> >>>> que brinda compatibilidad con otros sistemas operativos y con
>> >>>> el entorno
>> >>>> Squeak genérico. Así por ejemplo, se logra acceder al código fuente
>> >>>> de los
>> >>>> métodos y se avanza hacia el grabado de la imagen, característica que
>> >>>> aún no
>> >>>> estaba disponible en el sistema.
>> >>>> Luego, se desarrolló una técnica de persistencia cuyo objetivo
>> >>>> principal
>> >>>> era la simplicidad y su principal desventaja el requerir una
>> >>>> utilización
>> >>>> importante y de manera ineficaz de memoria. A pesar de sus
>> >>>> desventajas, fue
>> >>>> el primer paso para lograr la atomicidad necesaria para grabar los
>> >>>> objetos
>> >>>> mientras estos estaban siendo modificados.
>> >>>> Finalmente, se implementó un esquema de manejo de memoria basado en
>> >>>> paginación, modificando el mecanismo de manejo de interrupciones
>> >>>> original de
>> >>>> SqueakNos para que pudiera funcionar en forma sincrónica, requisito
>> >>>> indispensable para resolver los fallos de página. Esta solución
>> >>>> permitió  resolver los fallos de página completamente desde
>> >>>> Smalltalk, lo
>> >>>> cual dio lugar a la experimentación y al desarrollo de formas
>> >>>> novedosas de
>> >>>> utilización del mismo. Gracias a esto, resultó posible por ejemplo,
>> >>>> implementar una técnica alternativa de persistencia de la imagen, que
>> >>>> utiliza mucha menos memoria que la original debido a la asistencia
>> >>>> del
>> >>>> mecanismo de paginación y la utilización de la técnica de copy on
>> >>>> write.
>> >>>> Por último, se analizan aspectos relacionados con la manera de
>> >>>> trabajar
>> >>>> en este tipo de entornos y plataformas, sus ventajas, sus
>> >>>> dificultades y
>> >>>> complicaciones.
>> >>>>
>> >>>>
>> >>>>
>> >>>>
>> >>>>
>> >>>> --
>> >>>> Hernán Wilkinson
>> >>>> Agile Software Development, Teaching & Coaching
>> >>>> Mobile: +54 - 911 - 4470 - 7207
>> >>>> email: [email protected]
>> >>>> site: http://www.10Pines.com
>> >>>>
>> >>>> --
>> >>>> To post to this group, send email to [email protected]
>> >>>> To unsubscribe from this group, send email to
>> >>>> [email protected]
>> >>>>
>> >>>> http://www.clubSmalltalk.org
>> >>>
>> >>>
>> >>> --
>> >>> Saludos cordiales,
>> >>>
>> >>> Guillermo Schwarz
>> >>> Sun Certified Enterprise Architect
>> >>>
>> >>> --
>> >>> To post to this group, send email to [email protected]
>> >>> To unsubscribe from this group, send email to
>> >>> [email protected]
>> >>>
>> >>> http://www.clubSmalltalk.org
>> >>
>> >>
>> >> --
>> >> Hernán Wilkinson
>> >> Agile Software Development, Teaching & Coaching
>> >> Mobile: +54 - 911 - 4470 - 7207
>> >> email: [email protected]
>> >> site: http://www.10Pines.com
>> >> Address: Paraguay 523, Floor 7 N, Buenos Aires, Argentina
>> >>
>> >> --
>> >> To post to this group, send email to [email protected]
>> >> To unsubscribe from this group, send email to
>> >> [email protected]
>> >>
>> >> http://www.clubSmalltalk.org
>> >
>> >
>> > --
>> > Saludos cordiales,
>> >
>> > Guillermo Schwarz
>> > Sun Certified Enterprise Architect
>> >
>> > --
>> > To post to this group, send email to [email protected]
>> > To unsubscribe from this group, send email to
>> > [email protected]
>> >
>> > http://www.clubSmalltalk.org
>>
>> --
>> To post to this group, send email to [email protected]
>> To unsubscribe from this group, send email to
>> [email protected]
>>
>> http://www.clubSmalltalk.org
>
>
> --
> Saludos cordiales,
>
> Guillermo Schwarz
> Sun Certified Enterprise Architect
>
> --
> To post to this group, send email to [email protected]
> To unsubscribe from this group, send email to
> [email protected]
>
> http://www.clubSmalltalk.org

-- 
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to 
[email protected]

http://www.clubSmalltalk.org

Responder a