delorie.com/archives/browse.cgi | search |
Message-ID: | <3776881A.E1420D39@unb.ca> |
From: | Endlisnis <s257m AT unb DOT ca> |
Organization: | Nortel Networks |
X-Mailer: | Mozilla 4.51 [en] (Win98; U) |
X-Accept-Language: | en |
MIME-Version: | 1.0 |
Newsgroups: | comp.os.msdos.djgpp |
Subject: | Re: Linear addressing using brk() and sbrk() |
References: | <ehYc3.1130$Dl DOT 33483 AT news DOT clear DOT net DOT nz> |
Lines: | 34 |
Date: | Sun, 27 Jun 1999 20:22:19 GMT |
NNTP-Posting-Host: | 209.226.124.235 |
X-Trace: | news20.bellglobal.com 930514939 209.226.124.235 (Sun, 27 Jun 1999 16:22:19 EDT) |
NNTP-Posting-Date: | Sun, 27 Jun 1999 16:22:19 EDT |
To: | djgpp AT delorie DOT com |
DJ-Gateway: | from newsgroup comp.os.msdos.djgpp |
Reply-To: | djgpp AT delorie DOT com |
Bruce Hoyt wrote: > Question 3: Is it very bad to do the following? > > unsigned desired_address = 0x100000; > unsigned desired_size = 0x80000; > if(sbrk((void *)desired_address - sbrk(0)) == (void *)-1) { > printf("Can't adjust brk to %X\n", desired_address); > return memory_error1; > } > if(sbrk(desired_size) == (void *)-1) { > printf("Can't allocate %X bytes for image\n", > desired_size); > return memory_error2; > } Is it bad... I don't know, but it wastes upwards of 1Meg of RAM. And it wouldn't work if you had already allocated more than 1Meg of RAM for your current program. > And what happens when I malloc some more memory? How do I keep > the heap from overlapping desired_address ? The malloced memory will be AFTER the block you've allocated (it will not overlap). -- (\/) Endlisnis (\/) s257m AT unb DOT ca Endlisnis AT HotMail DOT com ICQ: 32959047
webmaster | delorie software privacy |
Copyright © 2019 by DJ Delorie | Updated Jul 2019 |