Article View: pl.comp.lang.c
Article #815Re: Rezerwacja pamieci
From: milosz danielewski
Date: Fri, 23 Jan 1998 00:41
Date: Fri, 23 Jan 1998 00:41
48 lines
2803 bytes
2803 bytes
On Thu, 22 Jan 1998 17:23:01 +0100, Marek Kotowski <mkot@imm.org.pl> wrote: >Mirek Prywata wrote: >> Co do huge, to zgodze sie w zupelnosci. Natomiast jezeli chodzi o >> graniczenia typu 32767... >[...] > >> Przy dzisiejszych wielkosciach RAMu, dbalosc o to, by pojedyncze bloki >> byly mniejsze niz 32kB uwazam za pewna przesade. >> Czy nie jest tez tak, ze zgodnie z ANSI ostatnio zmieniono 32kB na 64kB? >> I czy w ANSI ogranczenie to dotyczy tylko tablic statycznych (caly moj >> wywyod dotyczy tylko tablic dynamicznych)? >3. Pragne zwrocic uwage, ze w poscie wyjsciowym byl pomysl >alokacji obszaru ok. 300K. To juz jest konstrukcja, z ktora >- smiem twierdzic - duza czesc, jesli nie wiekszosc kompilatorow >sobie nie poradzi. Co wiecej: sposob dzialania modeli huge >jest rozny w rozych kompilatorach. Zatem stosujac taki >model pamieci, ryzykuje sie, ze zmiana kompilatora na inny, >takze obslugujacy model huge, moze wymagac zmian w programie. Bo tego sie nie robi w zadnym huge, tylko flat i wiekszosc kompilatorow sobie z tym poradzi. >4. Wbrew pozorom ograniczenie rozmiaru zmiennych >do 32767 nie jest niezyciowe. Zdarzylo mi sie kilka razy >miec tablice wskaznikow w modelu small (male dane). Tablice >te nie przekraczaly owego limitu 32K. Otoz zmiana modelu na >large (duze dane) spowodowala, ze rozmiar wskaznikow >podwoil sie i tym samym podwoila sie tablica. Wprawdzie >przekroczyla limit 32K, ale zmiescila sie w limicie 64K, >i w programie nie trzeba bylo nic zmieniac (chociaz stal >sie on formalnie nieprzenosny). Formalnie to on byl nieprzenosny bo zakladal okreslony rozmiar wskaznika, co bylo bledem ! Tak wiec byl nieprzenosny od poczatku a nie po zmianie modelu. > Gdybym w modelu small >zwiekszyl tablice do rozmiaru 40K, mialbym juz klopoty >z przeniesieniem jej do modelu large (linker nie >przyjmowal obiektow wiekszych niz 64K). > I prawde rzeklszy, czyz male nie jest piekne? :-) 32KB to ma byc malo ? Proponuje poszukac na sieci programow z serii "4KB intro" albo nawet 256 bajtowych. milosz danielewski
Technical Details
Message-ID:
<34c8d557.3192627@news.icm.edu.pl>Path:
mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!pingwin.icm.edu.pl!news.icm.edu.pl!not-for-mailReferences:
<34C4F3AB.C34902CC@willow.iie.pz.zgora.pl> <34C5BEC9.2018@imm.org.pl> <34c73f51.1429095@news.icm.edu.pl> <34C70746.46AB@imm.org.pl> <34C7636B.33829801@fuw.edu.pl> <34C77265.11BB@imm.org.pl>Show Full Headers
Complete Article Headers
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!pingwin.icm.edu.pl!news.icm.edu.pl!not-for-mail From: mdaniel@priv.onet.pl (milosz danielewski) Newsgroups: pl.comp.lang.c Subject: Re: Rezerwacja pamieci Date: Fri, 23 Jan 1998 00:41:46 GMT Organization: ICM's news server Lines: 48 Message-ID: <34c8d557.3192627@news.icm.edu.pl> References: <34C4F3AB.C34902CC@willow.iie.pz.zgora.pl> <34C5BEC9.2018@imm.org.pl> <34c73f51.1429095@news.icm.edu.pl> <34C70746.46AB@imm.org.pl> <34C7636B.33829801@fuw.edu.pl> <34C77265.11BB@imm.org.pl> NNTP-Posting-Host: rap-wct375.katowice.tpnet.pl Mime-Version: 1.0 X-Newsreader: Forte Agent 1.5/32.451 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit