Hi Denis,

�� �� as others have pointed out one can subclass Process.�� One can also add instance variables to Process.�� The constraint is that the first four (*) instance variables must be left unaltered.�� The VM makes use of the first four:

Object subclass: #Link
instanceVariableNames: 'nextLink'
Link subclass: #Process
instanceVariableNames: 'suspendedContext priority myList...

(*five when we have the multithreaded FFI, the fifth being threadId used to bind processes to specific OS threads when required)

The same goes for ProcessorScheduler - the VM uses��quiescentProcessLists & activeProcess, and Semaphore - the VM uses��firstLink lastLink & excessSignals.

On Thu, Aug 17, 2017 at 5:03 AM, Denis Kudriashov <dionisiydk@gmail.com> wrote:
Hi.

Is it allowed to subclass Process?�� I remember that there were some problems with it but I could not find any information. ��

Generally I think about system processes which can be represented by concrete subclasses. For example explicit UIProcess can be used to remove many #isUIProcess conditions from system.

Best regards,
Denis



--
_,,,^..^,,,_
best,��Eliot