[[!meta copyright="Copyright © 2013 Free Software Foundation, Inc."]]
[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable
id="license" text="Permission is granted to copy, distribute and/or modify this
document under the terms of the GNU Free Documentation License, Version 1.2 or
any later version published by the Free Software Foundation; with no Invariant
Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license
is included in the section entitled [[GNU Free Documentation
License|/fdl]]."]]"""]]
.
# IRC, freenode, #hurd, 2013-07-02
in any case, what I wanted to check is if current hurd support
PIE
I just saw samuel posted some fixes to have PIE working in hurd
are those included in the official image?
sure
it's just a trivial fixup in some address calculation code
youpi: nice
and does anyone know how complex would it be to implement some
hackish support to have non-overlapping virtual addresses for
applications supporting PIE?
not too difficult
really? I didn't expect such an answer XD
I'd like to have something similar to a SASOS
(single address space os)
?
you mean an sasos on top of mach ?
yes, but only for a few apps I want to evaluate
i see
the optimal would be to have all of hurd's servers on that mode
you'l probably need to implement a small allocator but other than
that it shouldn't be too hard, yes
uh ??
but running on 32 bits can be a problem here
and not hurdish at all
what's not hurdish?
we do want address space separation
well, you can have multiple address spaces (page tables), but
without overlapping addresses between them
that's exactly what I'm looking for
sorry i don't see what you mean
if you run several servers in the same address space, they can
corrupt each other
we don't want that
it's that simple
yes, sorry, I didn't explain myself
I want a separate address space on each server
but I want all memory allocations to be on addresses unique to
the whole OS
that still doesn't make sense
well, it will still be secure
but I know it does not make sense per se
I want to do some experiments with a simulator
why do you want them non overlapping if they're separate ?
well, in my simulator I wouldn't need to change the page tables,
protection is provided through other means
segmentation ?
that's one possibility
(small address spaces)
what do you have in mind ?
it wouldn't be on top of mach anyway then
mach implements paging
what I'm simulating is something of the likes of Mondriaan
(http://www.cs.utexas.edu/~witchel/pubs/mmp-asplos2002.pdf)
paging is ok for me
19:06 < xscript> well, in my simulator I wouldn't need to change
the page tables, protection is provided through other means
it didn't sound so
I meant switching page tables (cr3, etc)
mach does that
I know, I know, I can just ignore that part for the moment
ok
for now, I'd like to morph hurd into a SASOS using one page table
per process
I just wanted to know how hard that would be, without starting
with a full dive into the code
there are other options (OSes, microkernels), but none of them
provides as many readily-available applications as hurd
I suppose MINIX would also be easy to modify, but there's less
apps there, and I also would like to tamper with MIG
I just wonder how hard it would be to modify MIG