| Linux Forum Index » Linux Development - System » safely shifting task address space... |
|
Page 1 of 1 |
|
| Author |
Message |
| Balban... |
Posted: Thu Oct 15, 2009 12:16 am |
|
|
|
Guest
|
Hi,
Is it possible to shrink/shift virtual address space of a process
without breaking it? I am guessing that executables with a global
offset table compiled as position-independent can do this. I also have
a feeling that most elf binaries go into this category, in the name of
being portable. Would that be a correct assumption? What are the
caveats I need to think about?
Thanks,
Bahadir |
|
|
| Back to top |
|
|
|
| David Schwartz... |
Posted: Thu Oct 15, 2009 8:09 am |
|
|
|
Guest
|
On Oct 15, 10:36 am, Joe Pfeiffer <pfeif... at (no spam) cs.nmsu.edu> wrote:
Yeah, really. Virtual memory is not really a scarce resource.
DS |
|
|
| Back to top |
|
|
|
| Joe Pfeiffer... |
Posted: Thu Oct 15, 2009 11:36 am |
|
|
|
Guest
|
Balban <bilgehan.balban at (no spam) gmail.com> writes:
Quote: Hi,
Is it possible to shrink/shift virtual address space of a process
without breaking it? I am guessing that executables with a global
offset table compiled as position-independent can do this. I also have
a feeling that most elf binaries go into this category, in the name of
being portable. Would that be a correct assumption? What are the
caveats I need to think about?
Of course, you don't mean the question exactly as stated, since the
process virtual address space goes from 0 to a limit defined by the
number of address bits available. Presumably you mean moving segments
around or shrinking them.
"Possible" is one of those words that is far too broad. You certainly
could identify calls in to a library and effectively unwind the work
done by dlopen(), for instance.
But... why?
--
As we enjoy great advantages from the inventions of others, we should
be glad of an opportunity to serve others by any invention of ours;
and this we should do freely and generously. (Benjamin Franklin) |
|
|
| Back to top |
|
|
|
|