|
Howdy! Ales Casar wrote:
Hja, alpha je propisna 64 bitna platforma in kolikor sem se lahko spomnil, je bil sizeof(void*) kar 8. Torej bi lahko načeloma alociral hudo velike kose pomnilnika. Seveda pa ima lahko libc (in s tem malloc) kakšne omejitve.
Kernel bo začel pobijati random procese. Po možnosti samega sebe ;)
Imaš več razlogov. Recimo ia32 s kakšnim EM64: če ti kernel to podpira (in ni razloga, da ne bi), potem imaš lahko recimo 16G fizičnega pomnilnika, pa boš še vedno lahko alociral le 4G v enem kosu. Lahko pa skupno alociraš vseh 16G, pač v več kosih. Alpha je rahlo druga štorija (verjetno pa z enako posledico): ko sem še imel alfe pod prsti, sem lahko videl, da je bila fizična širina pomnilniškega vodila odvisna nekoliko od konkretne platforme. Navadno pa so bile cifre tam okoli (ali nekaj nad) 40 bitov. Torej kljub temu, da je to 64 bitna platforma še vedno ne moreš direktno naslavljati vseh tistih 18 zeta bajtov ampak samo kakšen peta bajt. Vse skupaj pa ne velja le za fizični pomnilnik pač pa za virtualnega. Kolikor vem gre vse skupaj preko MMUja, tudi dostop do swapa. Na koncu pa je najbrž omejitev libc. -- Peace! Mkx ---- perl -e 'print $i=pack(c5,(41*2),sqrt(7056),(unpack(c,H)-2),oct(115),10);' ---- echo 16i[q]sa[ln0=aln100%Pln100/snlbx]sbA0D4D465452snlb xq | dc |
_______________________________________________ lugos-prog mailing list [email protected] http://liste2.lugos.si/cgi-bin/mailman/listinfo/lugos-prog
