
 README

 DFC -- Dedicated File Cache -- Instructions

 Copyright (c) 2000 Edward V. POPKOV
 Distributed under GPL, see COPYING for details

 "Edward V. POPKOV" <evpopkov@carry.netnet.lv>

 $Id: README,v 0.5 2000/09/22 14:47:43 root Exp root $

 $Log: README,v $
 Revision 0.5  2000/09/22 14:47:43  root
 Fixed permissions on pidfile

 Revision 0.4  2000/09/21 21:56:07  root
 Fixed `after file' bug

 Revision 0.3  2000/04/19 20:49:26  root
 Optimized code, fixed includes/defines

 Revision 0.2  2000/04/18 01:08:17  root
 Bugfix (buffer overrun) in dfcd

 Revision 0.1  2000/04/07 15:00:00  root
 Signal handling workaround, bugfixes, added sample conf, backup on upgrade

 Revision 0.0  2000/04/06 13:45:28  root
 Initial check-in


 Contents

 1. What is DFC?
 2. Requirements
 3. Installation
 4. Distribution
 5. Acknowledgements
 6. How to contribute

 1. What is DFC?

 DFC is a descendant if DCS -- Directory Content Service, an experimental
service that provides data access through shared memory mechanism of SysV IPC.
Both DCS and DFC are sponsored and intensively used by Kevin M. Liang in a
very busy webserver enviroment.
 DFC examines its config file for the list of directories, all regular files
in these dirs are loaded into shared memory areas. Programs that need these
files can access the areas by ftok(). Owner and group of the area are set
after the original file, and permissions are 0440.
 Programs that access shared memory areas first must read sizeof( off_t )
bytes of the area to determine its full length:

 0123...................
 |-T-|-------L---------|

 T = L + sizeof( T )

 2. Requirements

 Development and testing platform is PC under Linux 2.0.38, libc5. You need to
have IPC support compiled into your kernel.

 3. Installation

 Proceed with configure;make install. Check output of ./configure --help for
special command line options. Makefile has uninstall tagret, so copy it to a
safe location before doing make distclean.
 Another usefull make target is upgrade. It only copies the files that have
changed since previous version, and also creates backup copies of the files
it replaces. Note that uninstall target doesn't currently removes backup
copies created by make upgrade.
 dfcd is a daemon, written to be executed in background and controlled with
a shell script. So, it doesn't process any command line options, all
configurable parameters are compiled in.
 To be able to lock shared memory segments (compiled with --enable-shm-lock),
dfcd needs root privileges. In any case, make sure that neither dfcd, nor its
control script dfcsv are writeable, and `others' have no access to these files.
 Refer to dfcsv and dfc.conf for more details.

 4. Distribution

 DFC is GPL'ed, see COPYING for details.

 5. Acknowledgements

 DFC project sponsor is "Kevin M. Liang" <kevinml@idig.net>.

 In my work I'm using:

  Linux, bash, vim, autoconf, make, sed, gcc, ld

 Thanks to developers of these and numerous other free and open source tools.

 6. Contributions

 Get in touch with me if you want to add to DFC.

 Thx and take care

Edward V. POPKOV
Independent Developer

-----BEGIN GEEK CODE BLOCK-----
Version: 3.1
GCS/CC d-(+) s:- a C$ UL+++>$ P+ L++(+++)>$ E--- W--(+) N
o? K? w$ !O M? V PS+ PE Y PGP t? 5? X? R !tv b++@ DI D+ G++
e h* r++ y+++
-----END GEEK CODE BLOCK-----

End of README
