From owner-freebsd-hackers Tue Mar 14 20:45:24 1995 Return-Path: hackers-owner Received: (from majordom@localhost) by freefall.cdrom.com (8.6.10/8.6.6) id UAA08233 for hackers-outgoing; Tue, 14 Mar 1995 20:45:24 -0800 Received: from godzilla.zeta.org.au (godzilla.zeta.org.au [203.2.228.34]) by freefall.cdrom.com (8.6.10/8.6.6) with ESMTP id UAA08219 for ; Tue, 14 Mar 1995 20:44:55 -0800 Received: (from bde@localhost) by godzilla.zeta.org.au (8.6.9/8.6.9) id OAA31147; Wed, 15 Mar 1995 14:40:42 +1000 Date: Wed, 15 Mar 1995 14:40:42 +1000 From: Bruce Evans Message-Id: <199503150440.OAA31147@godzilla.zeta.org.au> To: bakul@netcom.com, freebsd-hackers@freefall.cdrom.com Subject: Re: install compressed binary patch Sender: hackers-owner@FreeBSD.org Precedence: bulk >Notice that decompression is a `pure' function; the same >compressed input will produce the same uncompressed output >every time. Can't this fact be used some way? >The idea is this: given a compressed binary `foo', create an >uncompressed binary somewhere. Upon every invocation of foo >check if the uncompressed version exists. If so continue as >if the user is really invoking the uncompressed version. >The uncompressed version disappears once the last running >instance is gone (or it may be cached for a while to save on >decompression cost). I think the gzip image activator already does a better job than this. Neither does a very good job with the following issues: - caching. Everything should probably be cached for a while (days?) if there is enough space. - transparency. readdir() should act as if only the uncompressed objects exist. Backups should act as if only the compressed objects exist (although this is inconsistent :-). read() and mmap() should give uncompressed objects. Bruce