[comp.arch] "Watchdogs"

roskos@csed-1.UUCP (Eric Roskos) (02/13/88)

In article <1449@sugar.UUCP>, peter@sugar.UUCP (Peter da Silva) writes:
> check out the USENIX transcripts
> for "Watchdogs", [a program]
> executed when you do a system call that references a
> file; [it] can let requests default to their
> normal behaviour, refuse them, or fill in their own behaviour.

As a historical note, a similar feature was provided on TOPS-10 (the old
operating system for DECSystem-10's), called "File Daemons;" maybe
this was the inspiration for "Watchdogs"?
-- 
Eric Roskos, IDA (...dgis!csed-1!roskos or csed-1!roskos@HC.DSPO.GOV)

hitz@mips.COM (David Hitz) (02/15/88)

In article <271@csed-47.csed-1.UUCP> roskos@csed-1.UUCP (Eric Roskos) writes:
>As a historical note, a similar feature was provided on TOPS-10 (the old
>operating system for DECSystem-10's), called "File Daemons;" maybe
>this was the inspiration for "Watchdogs"?

At USENIX one of the authors claimed that "Watchdogs" were inspired by 
a Max Headroom espisode.

-- 
Dave Hitz
UUCP: {decvax,ucbvax,ihnp4}!decwrl!mips!hitz 	DDD: hitz@408-991-0345

mac3n@babbage.acc.virginia.edu (Alex Colvin) (02/16/88)

> > for "Watchdogs", [a program]
> > executed when you do a system call that references a
> 
> As a historical note, a similar feature was provided on TOPS-10 (the old
> operating system for DECSystem-10's), called "File Daemons;" maybe

As a further historical note, a similar feature was provided on the old
versions of DTSS, called "slave traps" (master traps were wired into the
kernel).

Slave traps were run when a file was opened and determined access rights.
They could be used to implement ACLs.

The problem was that slave traps could do almost anything.  Severe time limits
had to be imposed against traps that got stuck in loops, hanging the open().
Other traps opened the trapped files, causing an infinite regress.  One
example, "soap", renamed the trapped file, so that it could never be grasped.
Often the system couldn't be shut down cleanly because of processes hung
on trapped opens.

Slave traps were deleted when the kernel was rewritten.