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

Re: killer net app



On 4 Aug 1997, Alexander L. Belikoff wrote:

> Amos Shapira <amos@gezernet.co.il> writes:
> 
> > 
> > ury@memco.co.il wrote:
> > 
> > > To freeze a process ? This is difficult. There are numerous data
> > > structures in the kernel that you have to keep. Just the process table can
> > > be a mess. I don't think UNIX's design fits for that. Doing that on JavaOS
> > > is much easier.
> > 
> > It has been done - Gil Shwed (today more known as "Checkpoint CEO")
> > wrote such a library for fortran and C programs when he worked at the
> > Chemistry dept. at HUJI.  Worked very nicely on VAX'es and CCI Tahoe.
> > 

He is the man who ported Sockets to SYSVR2 . He is good.
He also worked in the MOSIX project, which is the same idea but in the
kernel. ( and more ).

Also I don't think it can be done

> > Programs which wanted to use it linked with his library instead of the
> > standard lib and called a couple of functions to save their context once
> > in a while.  When we (the system admins) booted the machine it would
> > restore the process' memory and status from the saved core files, executable
> > and some context info (file names opened and such).  It was good enough
> > for the number crunching processes.
> > 
> 
> AFAIK, in some programming FAQ (c-faq?) the non-standard unexec()
> system call was mentioned, which allowed a process to dump it's
> context. Also, see emacs sources - emacs used to dump itself somewhow.
> 

Actually , any core dump contain all the process image. But, BUT, the
process image is NOT enough. What about kernel stuctures? What if you are
in the middle of a read from a socket ? a file ? What about the status of
file descriptors ? mbufs ? Process groups ? locked vnode ? and much more !

> There are many non-standard ways to acheive it. If you want to go
> portable - just write your data every NNN secs. Otherwise - try to
> create a more or less portable library of the appropriate routines,
> which would call non-standard sytem calls.

Doing it on a system call replacement base won't work complitly. 

> 
> -- 
> -Alexander
> 
> ==============================================================================
> Alexander L. Belikoff			abel@bfr.co.il
> Berger Financial Research Ltd.
> =============================================================================
> 

-------------------------------------------------------------------------------
Ury Segal  |                Ate quando agosto dois ???
052-651629 |                -------------------------           janeiro oito
http://www.cs.huji.ac.il/~ury    

Hiroshima '45           Tschernobyl '86              Windows '95


References: