Are Processes Objects? [djg11]
David Garfield
david@davgar.arlington.va.us
Fri, 26 Mar 1993 22:06:10 EST
In the beginning there was the question "Are Objects Processes".
At first, I thought yes.
Now, I'm not sure.
I will admit that process management is done through objects that are
associated one-to-one with the processes, however I have come to
belief that they should be seperate.
I feel that each process should provide drivers for 0 or more classes,
provide 0 or more public functions, and optionally include a startup
and shutdown functions.
The startup function will be invoked when the process is started. For
a purely procedural program, this will be the program.
The shutdown function will be invoked by the system (kernel or some
manager) when the system believes it is ok to terminate the process
and thinks it would be good to do so. The shutdown function will then
have three choices, say no, say yes, or terminate its process. Saying
no will normally be because the process feels it is still needed. A
TCP/IP handling process might be like this, as to terminate because
the system is low on memory would stop all future remote access
attempts. Saying yes would mean that the process is willing to
terminate, and would normally be given only if the request was "are
you willing to terminate". Terminating itself would be done if the
process feels it has nothing more to do at this time and that it can
be restarted if needed. Most graphics interface processes would
probably do this if there are not running graphics applications.
The classes information would define what classes this process can
respond to methods of, what methods of these classes are handled by
this processes, and define the base classes of the classes.
The public function table would provide similar information (under the
constraints of not being object oriented).
Among other things, I am not sure what a process object would do with
methods to itself besides what I just said, and I don't see any of
what I already said requiring the process itself to receive messages
to its management object.
Arguments? Flames?
--
David Garfield/2250 Clarendon Blvd/Arlington, VA 22201 (703)522-9416
Email: david%davgar@uunet.uu.net or garfield@snoopy.sra.com