DragonFly commits List (threaded) for 2005-02
[
Date Prev][
Date Next]
[
Thread Prev][
Thread Next]
[
Date Index][
Thread Index]
Re: cvs commit: src/lib/libthread_xu Makefile pthread.map src/lib/libthread_xu/arch Makefile.inc src/lib/libthread_xu/arch/alpha Makefile.inc src/lib/libthread_xu/arch/alpha/alpha pthread_md.c src/lib/libthread_xu/arch/alpha/include pthread_md.h src/lib/libthread_xu/arch/amd64 ...
:This is an optimisation for the intra-program switch if you want to call it so.
:I would argue that the normal switch case is either user -> kernel or to
:a different kernel thread.
You pretty much always want to have just a single page table with a
threaded program. The %cr3 optimization is a nice plus, but it isn't
why the page table is being shared. The page table is being shared
because trying to build a threaded program WITHOUT sharing the page
table is extremely expensive. Every time you'd allocate memory or map
something it would have to be replicated across N page tables.
Performance would be destroyed.
-Matt
[
Date Prev][
Date Next]
[
Thread Prev][
Thread Next]
[
Date Index][
Thread Index]