mh@well.UUCP (Gremlin) (04/10/86)
Hello, I have a question involving the 'c' functions malloc() and free(). Just for reference I am using a Gimix w/Gimix III cpu and microware c-compiler. OS is OS9 level 2. My qustion is this, I have terminal that is constantly displaying system status (i.e procs e command) I have a comm program set up so that when I want to dial my modem it call's a subroutine that uses malloc to allocate memory to read a file into that has the phone#'s etc. when I leave the subroutine I call free to free up the allocated memory so as to use that memory only when I need it. Now when I watch this status program when I execute all of this the program starts off with only the amount of memory needed to do it's thing. When I call the dial program the extra memory is added (Mem Siz in procs e) but when I exit the dial portion i get no error indication from the free call but the procs e com still shows the Mem Siz as that which was allocated. Whats the scoop? Is the memory being free'd but as far as the module memory is concerned your still using it all or what? Repeated calls to the dial routine do not increase the Mem Siz indication any more so I think the malloc and free calls are working I just wonder why this is not reflected in the Mem Siz of the procs e command. thanx ..... dave