Careful.
The VM space is shared _separately_ from other data structures, which
means that you can _not_ user per-VM virtual address areas and expect them
to scale with load. And than some VM happens to have thousands of threads,
and you're dead.
> Some things
> have to be global (well, easier at least) like the task_struct,
> but the kernel stacks could be moved out with a little work,
> files, vm_area_structs, etc.
Kernel stacks most certainly can't do this easily, since you'll just hit
the scalability problem somewhere else (ie many threads, same VM).
And files, for example, can not only be many files for one VM, you can
have the reverse too, ie many VM's, one file table.
Linus
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/