[linux] ako funguju kniznice ?

Matus "fantomas" Uhlar uhlar na fantomas.sk
Neděle Září 3 13:49:26 CEST 2000


-> vsimli ste si, kolko mega ma libc v redhat 6.2 ? 4.3 mega. kedze skoro
-> kazdy program pouziva libc (iba tie staticky linkovane nie), tak to sa
-> nam libc zakazdym "mmap"uje do pameti ? pokial som to pochopil spravne
-> tak sa aj relokuje a potom, kedze nechceme prepisovat subor libc mmapuje
-> sa cez prot_private, pri pouziti copyonwrite nam vznikaju stale nove
-> stranky a my prichadzame o pamet. pochopil som to spravne ? 

uplne zle. vsetky binarky aj kniznice sa mapuju do pamate s flagmi PROT_READ
a MAP_SHARED (man mmap); to znamena ze nech namapujes binarku al;ebo
kniznicu milionkrat, pamatovy priestor je zdielany (a vdaka strankovaniu
pamate su v pamati vacsinou len skutocne namapovane stranky, a malokedy cele
binarky a kniznice). copy_on_write sa pouziva hlavne pre pripady typu fork()
kde sa na linuxe duplikuje len PID a tabulky a pri pripadnom zapise do dat
sa tieto zduplikuju...

-> nebolo by efektivenjsie vymysliet nejaky system bez takejto relokacii,
-> resp.  inu relokaciu ? mimochodom, kedyi davno malo libc 600kb a vsetci
-> boli spokojni a fungovalo to. co preboha je v tyvh 4.3 mb ?

viac vlastnosti viac moznosti vacsia efektivita a rychlost staci ?

-- 
 Matus "fantomas" Uhlar, sysadmin at NEXTRA, Slovakia; IRCNET admin of *.sk
 uhlar na fantomas.sk ; http://www.fantomas.sk/ ; http://www.nextra.sk/
 "To Boot or not to Boot, that's the question." [WD1270 Caviar]



Další informace o konferenci linux