Angel:

Podes preguntarle a Ale. En el proyecto Chachara habia armado todo un
workbench para generar nuevos images de Squeak, desde 0. Hay varios
proyectos sobre el tema pero bueno, teniendo Smalltalking aca creo que es
para aprovechar.
Yo y otros estuvimos trabajando en ese proyecto pero sinceramente esas
partes las hacia Ale. No es muy difícil de entender, quizás el problema es
el tiempo necesario para llegara a implementarlo y que ande bien.
Nosotros teniamos en Squeak dos namespaces, el de Squeak y el del image a
generar, de esa forma podiamos generar desde images con objetos suficientes
para solo hacer 3+4 y mostrarlo en la consola hasta images con que corrian
unit tests. Creo que el proyecto se puede bajar o Ale te lo da no se.

Saludos
  GallegO


El 24 de noviembre de 2012 11:38, Angel Java Lopez
<[email protected]>escribió:

> Hola gente!
>
> Gracias @garduino, Sebastian.
>
> Si, maese @garduino, ese es el libro que tengo en papel, no se si es la
> misma edicion del enlace que enviaste (creo que habia una edicion que
> contenia un capitulo con mas detalles de los bytecodes que usaban entonces,
> y ese capitulo esta publicado en alguna parte de la web). Me voy a bajar
> ese libro, aunque aca esta tardando un tiempo, parece.
>
> Sebastian: ah! interesante!... el "viejo truco" de registrarse para que le
> recuerden que se desperto la imagen de nuevo :-). Bien, voy a investigar
> ese camino. Si, parece el camino a seguir.
>
> Nos leemos!
>
> Angel "Java" Lopez
> @ajlopez
> gh:ajlopez
>
>
> 2012/11/23 Sebastian Nozzi <[email protected]>
>
>> Hola Angel,
>>
>> fijate en la clase SmalltalkImage, en la categoría "startup list".
>> Mediante esos métodos es posible que las clases se "registren" para
>> ser invocadas al re-iniciarse Squeak/Pharo (cómo funciona esto en
>> detalle no lo sé, tendrías que investigar el código).
>>
>> Las clases registradas reciben el mensaje "startUp". De manera similar
>> existe "shutDown". Cuando se guarda la imágen (aunque no salgas) creo
>> que se simula un proceso de shutdown (buena tu pregunta). Por eso
>> existe también el método "shutDown: quitting", donde quitting es
>> true/false según corresponda.
>>
>> Clases que usen sockets usan este mecanismo (startUp) para volver a
>> re-establecer la conexión.
>>
>> Espero que te sirva.
>>
>> Saludos,
>>
>> Sebastian
>>
>>
>> 2012/11/23 Angel Java Lopez <[email protected]>:
>> > Hola gente!
>> >
>> > Estoy comenzando a trabajar en el tema de grabar y leer una imagen en mi
>> > implementacion casera de VM.
>> >
>> > Donde esta especificado que es lo que se ejecuta cuando se carga una
>> imagen?
>> > Creo que el libro Smalltalk-80 The Language and Its Implementation, no
>> dice
>> > nada sobre eso, o recuerdan capitulo/seccion?
>> >
>> > Recien busque en Google, y encuentro:
>> >
>> > http://book.seaside.st/book/getting-started/pharo/what-is-image
>> > An image is loaded and executed by a virtual machine. When you ran
>> Pharo in
>> > Section 2.1 you really were running the virtual machine on the
>> pre-packaged
>> > “One Click Image” image. For the sake of brevity we call this “running
>> the
>> > image.” The Smalltalk image includes active processes (Smalltalk
>> processes
>> > are more akin to “threads” in other languages). When you load an image
>> from
>> > a disk file you bring objects that were part of that image into RAM and
>> > resume execution of the active processes that were part of that image.
>> If
>> > you were debugging when you saved the image, you’ll still be debugging
>> when
>> > you load that image. We like to think of this as “picking up where you
>> left
>> > off” (note that there are limits to this model: transient objects like a
>> > network connection that was active when the image was saved will not be
>> > available when the image is re-loaded). As an example, the Seaside “One
>> > Click Image” image was saved with the Comanche web server running so,
>> when
>> > you load this image that web server process will be running. We’ll say
>> more
>> > about that later.
>> >
>> > Entiendo lo de los procesos, pero... hmmm... no falta algo? Por
>> ejemplo, ese
>> > servidor Comanche corriendo, no llega en algun momento a hacer un
>> Listen o
>> > algo, sobre una puerta TCP del sistema en el que esta albergado? Como
>> hace
>> > para que cuando se carga de nuevo la imagen, ese servidor termine
>> VOLVIENDO
>> > a escuchar por la puerta 8080?
>> >
>> > Hay algun initialize que se envia?
>> >
>> > Y cuando se graba una imagen, hay algun "suspend" o algo asi que se
>> envia a
>> > algun objeto?
>> >
>> > Gracias por cualquier info
>> >
>> > Nos leemos!
>> >
>> > Angel "Java" Lopez
>> > @ajlopez
>> > gh:ajlopez
>> >
>> >
>> >
>> > --
>> > 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
>>
>
>  --
> 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