[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Help-smalltalk] IO and Process Scheduler

From: kraehe
Subject: [Help-smalltalk] IO and Process Scheduler
Date: Mon, 30 May 2005 12:58:00 +0200
User-agent: Mutt/1.5.9i

Moin Guru's,

  i've walked through the C code of GST 2.1.10 to realised, that
  IO is blocking the complete Smalltalk system and not only a
  co-process. I think FileOp: 3, 4, 13 and 14 should yield()
  interp.c>>next_scheduled_process() which would use the select()
  system call to deceide for the next co-process to run. This
  feature should be a flag for files, and turned off by default
  for performance reasons and atomic contrains.

  The alternate would be to provide a select() primitive. So
  a MUD server is a single Smalltalk process implementing its
  own scheduler.

  I might have a patch against libgst/{prims.def,input.c,interp.c,...}
  within the week - but the questions beforehands :
  - has anyone already implemented a FileOp: select() primitive ?
  - is anyone interested in cross reading and testing the patch ?
  - is 2.1.10 a good start - or where to find active CVS development ?

  last not least, i've suggest to change the EMACS interface to use
  IAC GA "\377\371" to signal the prompt conforming to 854 line mode
  telnet, so one could exchange the EMACS interface with other clients.
  It would be even better to move the prompt from input.c>>my_getc()
  to somewhere higher in Smalltalk code of the REPL and to refactor
  the REPL that a single Smalltalk can run several REPLs to work with
  stdio and sockets concurrently.

Bye Michael
  mailto:address@hidden             UNA:+.? 'CED+2+:::Linux:2.4.29'UNZ+1'           CETERUM CENSEO WINDOWS ESSE DELENDAM

reply via email to

[Prev in Thread] Current Thread [Next in Thread]