delorie.com/archives/browse.cgi   search  
Mail Archives: opendos/1997/03/11/17:00:46

From: jdashiel AT eagle1 DOT eaglenet DOT com
Date: Tue, 11 Mar 1997 16:43:34 -0500 (EST)
To: mharris AT blackwidow DOT saultc DOT on DOT ca
Cc: yeep AT xs4all DOT nl, opendos AT mail DOT tacoma DOT net
Subject: Re: [opendos] BAD Filesystems
In-Reply-To: <Pine.LNX.3.95.970311044656.741A-100000@capslock.com>
Message-Id: <Pine.NXT.3.95.970311162945.5034A-100000@eagle1>
Mime-Version: 1.0
Sender: owner-opendos AT mail DOT tacoma DOT net

The shared libraries problem is a rather trivial relational data base
problem.
two data bases would reside in /usr/apps,
libsdat and apps.dat.
The field structure for libs.dat is sequential and contains:
record number (key),
directory path,
library name,
apps count.

apps.dat contains:
app name,
variable number of fields containing lib names record numbers.

When an application is installed, a check is done for what shared libs it
uses.
If any shared libs are used, the app count field is incremented by 1.
The application name is stored along with each of the record numbers for
each shared lib.
If more than 1 shared lib is used by an application,
each associated app count is incremented by 1.

When an uninstall happens,
each associated app count number is decremented by 1.
Only when a shared lib has an app count of zero can it be removed from
the disk safely.  If a shared lib is needed and not on the disk,
installation
programs will have to prompt the user for the system disk that has the
lib on it and copy that lib into the directory.
awk or perl could probably handle a data base application like this one.
My normal method is to use dBase for them, but that's how I earned my
money for the navy the past few years.



jude <jdashiel AT eagle1 DOT eaglenet DOT com>

- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019