[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: