[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Rep:Rep:Re: [f-cpu] little feed-back from the libre softawre meeting



Et bien ! You're blown my mail box !

I) Page size

From my last talk with Neal (the guy who port L4 to the Hurd and try to
design a new VM for it), it appears that he's needs for page size are :
- small for passing message, in that case increasing the page size
doesn't decrease the number of the page because we allways have at least
one page per message.
- one medium for typical code and data.
- one big for frame buffer and kernel page
- one hudge for data base

small could be 4 Kb. 

Neal propose at the beginning 64 kb for medium but if you do "top" on
you're linux bow you will see very few program using 64 kb of memory (i
beleive that one program have at least 3 pages). So maybe 16 kb or even
8 kb could be enought. Most of the time current OS use only a single
size for paging system, so this size must be carefully choosen.
If it's too big they will use the smallest size.

big are 4 Mo for like for intel big pages.

hudge could be 256 Mo, it's for data base system that used hudge amount
of memory and use it's own memory allocator (so it will ask almost all
the system's memory at start and then manage it). 

Page size are important. Many object are page aligned. for example :
library and files. If the page are too big, copy-on-write technique
became less efficient.( on the average there is more data to copy than
needed by smaller sized page).

The otherdraw back of many different size is that the OS must find "big
and aligned hole" in memory to give such pages to a program and that
could be hard !(having many sized from 4kb could help to reduice such
problem)

It could be very important to have 2 tlb (one for data and one for
code), it's quite unusual to mix the 2 kind of pages. So you could save
one port to the tlb or double the bandwith of the all system. (it could
be very important if we keep the L1 cache in the physical address space
and check at allmost every memory access the tlb)

If we could have how many size we want for page, it could be great but i
can't see how look such tlb.

---
II) kernel space
I have always read that kernel run in the adress space of the running
process otherwise it became very tricky to pass data from user space to
kernel space. And it became very hard to avoid copy.
x86 use a global bit because it didn't used asid number, i think.


 
______________________________________________________________________________
ifrance.com, l'email gratuit le plus complet de l'Internet !
vos emails depuis un navigateur, en POP3, sur Minitel, sur le WAP...
http://www.ifrance.com/_reloc/email.emailif


*************************************************************
To unsubscribe, send an e-mail to majordomo@seul.org with
unsubscribe f-cpu       in the body. http://f-cpu.seul.org/