Path: utzoo!yunexus!geac!syntron!jtsv16!uunet!tank!ncar!ames!amdahl!oliveb!pyramid!prls!philabs!micomvax!belanger From: belanger@micomvax.UUCP (Robert Belanger) Newsgroups: comp.lang.c Subject: memory allocation Summary: malloc Message-ID: <1262@micomvax.UUCP> Date: 6 Sep 88 13:02:42 GMT Article-I.D.: micomvax.1262 Reply-To: belanger@micomvax.UUCP (Robert Belanger) Distribution: comp.lang.c,comp.os.misc Organization: Philips Electronics Ltd. (TDS - Montreal) St. Laurent QC, Canada Lines: 42 Hi everybody, We are in the process of speeding up memory allocation. Because we have a CPU with a linear address space, but no (easy) access to disk. We have four(4) megabytes of DRAM available. What we want to do is avoid any system in order to speed up memory allocation and also reduce the overhead associated with memory allocation. We tought of several scheme 1) we could allocate a long block of memory and manage it ourselves (by maintaining headers to our data blocks) but two problems arises 1) when we free a block then we have to scan the whole area in order to see if we could merge two blocks together. 2) scanning the list (on other system with swap space) induce a lot of disk swapping. 2) we could allocate a long block of memory and also create two lists in memory (one for free blocks the other for used ones). problems 1) when somebody frees up a list we have to maintain in the block (or just before) where in our used list is the header to refers to it. 2) it looks awfully complex to maintain a stable relation between the lists and the actual data. So, I am asking your help, what do you think? do you know (or think) of any other alternative? Thank you very much #if enough_interest I post a summary of answers #endif =============================================================================== Philips Electronics Ltd. Robert L. Belanger 600 Frederick Philips Blvd Advanced Development Group St-Laurent, Quebec, CANADA ECHO project H4M 2S9 (514)-744-8200-2495 Eternity is very long!! Especially in the end!!! E-MAIL: philabs!micomvax!belanger "Je me laissai fondre comme un suppositoire dans le derriere du 'Moonshine Bowling'", Francois, Au clair de la lune. ===============================================================================