Subject: Re: why python+pth?
To: Perry E.Metzger <firstname.lastname@example.org>
From: Nathan J. Williams <email@example.com>
Date: 11/18/2003 10:40:26
"Perry E.Metzger" <firstname.lastname@example.org> writes:
> "Nathan J. Williams" <email@example.com> writes:
> >> Can we fix that? This will improve things for a number of
> >> applications.
> > If it was easy I would have done it long ago. Most applications don't
> > know what the stack size is and don't care.
> Yes, but there is a subset for which it appears to be very important.
It's a smaller subset than you think. Most apps that believe they need
to change the stack size are wrong. So far, Python is the only
application I know of where there is a legitimate need.
> > On some architectures (alpha, sparc, maybe ppc), there's a register
> > avaliable for thread storage; I have some work in progress to use that
> > instead of stack identification on those systems. On others (mips,
> > arm, vax, sh) no such register is avaliable, so some kind of
> > stack-based ID is still needed (i386 is really more like the latter
> > case, but there are some possible segment register kluges).
> I thought that some segment register (FS?) was explicitly used by
> Microsoft in their ABI for threads and that our ABI could deal with
> that already.
Segment regesters are funny beasts; you can't just load arbitrary
values into them. The trick is not so much using the register in
userland as setting up the infrastructure that lets you install a
useful set of values in the register.
Besides, that just moves i386 into the non-stack-ID camp. I actually
care about the general problem.
> Does the stack size typically get set while we're still running only
> with one thread?