Commit graph

13 commits

Author SHA1 Message Date
Christian Thaeter
9d0985feb7 remove the refcounter from filedescriptor and use a list to attach files 2008-12-15 01:17:22 +01:00
Christian Thaeter
a0cff36066 some smaller fixes in filedescriptor
* change mode for created files to 0666 (TODO: from config)
 * some members where not properly initialized yet
 * docing fixes
2008-12-15 01:17:21 +01:00
Christian Thaeter
208f7e2d76 Refactored filehandle acquisition to filehandle.c (duh!)
some old ad-hoc code slipped in which did that in file.c
2008-12-15 01:17:21 +01:00
Christian Thaeter
e938b36071 WIP: mmap management first go
Quite some code which was hold back in favor of the config and plugin stuff
implements:

 * mmapcache: mru cache for unused memory mappings
 * mmap: single mmaped areas
 * mmapings: manages mmaps established for one filedescriptor
2008-12-15 01:17:21 +01:00
Christian Thaeter
a1bd3ee1f5 use psplay trees for the filedescriptor registry 2008-09-06 12:41:03 +02:00
Christian Thaeter
07f06d0d88 big mutex update, dropped old acquirer
Acquiring mutexes is now wraped in a easy to use MUTEX_SECTION macro.
This scheme will be extended for chained lock propagation soon.

Notes:
 * NoBug resourcemanagement is now part of the lower layer,
   RESOURCE_ENTER/RESOUCE_LEAVE are maintained automatically
 * one must still call RESOURCE_ANNOUNCE/RESOURCE_FORGET, because we want
   to maintain high level information about resources.
 * MUTEX_SECTIONS must not be left with any kind of jump
2008-08-10 12:19:09 +02:00
Christian Thaeter
444b142d85 Correct File flag masking
The hash lookup needs to ignore O_EXCL|O_TRUNC|O_CREAT as well as file
reopening must not use this flags.
2008-05-19 16:27:29 +02:00
Christian Thaeter
00b9dff106 Doxygen config update
* set EXPORT_ALL=NO to leave out undcoumented entities.
* Fix a lot @file directives
2008-05-19 16:27:29 +02:00
Christian Thaeter
8311316a92 Doxydocing for the filehandling stuff 2008-05-19 16:27:28 +02:00
Christian Thaeter
b11ff40fbe Filedescriptor updates
* make registry initialization singleton, no parameters.
 * remove registry init from all functions, has to be called explicitly.
 * some nobug improvements
2008-05-19 16:27:28 +02:00
Christian Thaeter
bb98bb434b add nobug resource tracking to filedescriptors 2008-05-19 16:27:28 +02:00
Christian Thaeter
5286838886 filedescriptor handling basics working, including some tests
It is now possible to acquire/release filedescriptors for existing files
and files to be created.

Filedescriptors are managed in a registry by refcounts, they get
automatically destructed when the last user releases them.
2008-05-19 16:27:28 +02:00
Christian Thaeter
791f42c104 WIP: Low level file management
We have 'File' which associates a name with a file and will be used to
offer an interface for the application.

Posix 'Filehandles' which are managed in a 'Filehandlecache' to utilize
a limited number of fd's at optimum.

Internally we use 'Filedescriptor's which manage files, mapping and all
kinds of metadata. Filedescriptors weak referenced by a registry and freed
when the last user vanishes.
2008-05-19 16:27:27 +02:00