9fans - fans of the OS Plan 9 from Bell Labs
 help / color / mirror / Atom feed
* Re: [9fans] Stack initialisation
@ 2000-08-30 14:17 lucio
  2000-08-30 15:36 ` ozan s. yigit
  0 siblings, 1 reply; 26+ messages in thread
From: lucio @ 2000-08-30 14:17 UTC (permalink / raw)
  To: 9fans

> By the way, it took me just a couple of hours each to convert
> Rio and Acme from Alef to the new threaded C. It's not hard to
> do.

Granted.  And practice would be the right way to learn.  Please don't
take it as stubborness, I have a Limbo program I want to port to Plan
9 (I'm still saving up for the Inferno distribution, US$300 is quite a
lot of money down here) and I was wondering how difficult it would be
to get Alef up and running.

I accept that portability is critical, and that Bell Labs' efforts to
provide a C thread library should not be dismissed lightly.  On the
other hand, there's room for taste, and I hope I'm not the only one to
believe that the elegance of Alef should not be entirely sacrificed on
the altar of pragmatism.

With a bit of luck, there will be a community (are you listening,
Charles?)  of interested parties willing to put in some effort and
supplement Bell Labs' offering with some of our own.

It is easy enough for Bell Labs to point out that use of Alef is not
supported and is deprecated.

++L



^ permalink raw reply	[flat|nested] 26+ messages in thread
* Re: [9fans] Stack initialisation
@ 2000-08-31 10:25 lucio
  0 siblings, 0 replies; 26+ messages in thread
From: lucio @ 2000-08-31 10:25 UTC (permalink / raw)
  To: 9fans

[-- Attachment #1: Type: text/plain, Size: 409 bytes --]

In Elliott Hughes' words:
> 
> Limbo isn't the same as purgatorio, and Paradiso is just outside
> Bellinzona, Switzerland.  There are many other places called
> Paradiso in Italy, but the Swiss one was the first I ever saw.
> It's OK, there's even a McDonald's nearby.
> 
Touché.  And to think that I actually plodded through the first two
books of the Divina Commedia.  I stand corrected.

++L


[-- Attachment #2: Type: message/rfc822, Size: 2327 bytes --]

From: Elliott Hughes <elliott.hughes@genedata.com>
To: 9fans@cse.psu.edu
Subject: Re: [9fans] Stack initialisation
Date: Thu, 31 Aug 2000 09:26:10 GMT
Message-ID: <39ae17fa@news.core.genedata.com>

"Lucio De Re" <lucio@proxima.alt.za> wrote in message
news:20000830184427.F3753@cackle.proxima.alt.za...
> ...  Inferno and Limbo (hm, where's Paradiso?)

Limbo isn't the same as purgatorio, and Paradiso is just outside Bellinzona,
Switzerland. There are many other places called Paradiso in Italy, but the
Swiss one was the first I ever saw. It's OK, there's even a McDonald's
nearby.

- Elliott

^ permalink raw reply	[flat|nested] 26+ messages in thread
* Re: [9fans] Stack initialisation
@ 2000-08-31  0:25 okamoto
  0 siblings, 0 replies; 26+ messages in thread
From: okamoto @ 2000-08-31  0:25 UTC (permalink / raw)
  To: 9fans

>> alef is an island, elegant or not.
>> 
>Maybe.  But it is also a proof of principle, and it has a following.

I completely agree with your concept.
In Plan 9, every real world's restriction should be kicked out! ☺

Kenji



^ permalink raw reply	[flat|nested] 26+ messages in thread
* Re: [9fans] Stack initialisation
@ 2000-08-30 16:45 forsyth
  2000-08-30 16:55 ` Boyd Roberts
  0 siblings, 1 reply; 26+ messages in thread
From: forsyth @ 2000-08-30 16:45 UTC (permalink / raw)
  To: 9fans

>>the password winding up in a core dump -- taunton dry blackthorn
>>cider was required).

presumably IMAP4 would have required old peculier or owd roger



^ permalink raw reply	[flat|nested] 26+ messages in thread
* Re: [9fans] Stack initialisation
@ 2000-08-30 15:26 lucio
  0 siblings, 0 replies; 26+ messages in thread
From: lucio @ 2000-08-30 15:26 UTC (permalink / raw)
  To: 9fans

Charles Forsyth says:
> on the other hand, if you or someone else is still keen, i can
> contribute the powerpc Alef port i did a few years ago for the
> 2nd edition.  i did it mainly to have Acme on the powerpc.
> 
I'd appreciate that.  I'll only be able to play some sort of
coordination role (a private CVS repository?)  as I have no access to
hardware other than scrappy Intel boxes (not even a multiprocessor :-(

But I'll be very pleased if something like Alef makes Plan 9 stand out
in the crowd of Unix look-alikes.

++L



^ permalink raw reply	[flat|nested] 26+ messages in thread
* Re: [9fans] Stack initialisation
@ 2000-08-30 14:35 forsyth
  0 siblings, 0 replies; 26+ messages in thread
From: forsyth @ 2000-08-30 14:35 UTC (permalink / raw)
  To: 9fans

>>With a bit of luck, there will be a community (are you listening,
>>Charles?)  of interested parties willing to put in some effort and
>>supplement Bell Labs' offering with some of our own.

yes, although I'm busy enough not to want to support Alef as well.
i'm not sure I would do so if I had the time.  I had only a few Alef
programs and I converted one set to C <thread.h> and the
other set to Limbo.

on the other hand, if you or someone else is still keen, i can contribute
the powerpc Alef port i did a few years ago for the 2nd edition.
i did it mainly to have Acme on the powerpc.

the use of a different calling sequence contributes to the nuisance
of maintaining Alef, because all the libraries need to be converted
(and in fact was not done completely last time).  sometimes that's good,
when they weren't previously thread-safe, but often it's just a nuisance
and a headache for maintenance.



^ permalink raw reply	[flat|nested] 26+ messages in thread
* Re: [9fans] Stack initialisation
@ 2000-08-30 13:45 rob pike
  0 siblings, 0 replies; 26+ messages in thread
From: rob pike @ 2000-08-30 13:45 UTC (permalink / raw)
  To: 9fans

By the way, it took me just a couple of hours each to convert Rio and Acme
from Alef to the new threaded C.   It's not hard to do.

-rob



^ permalink raw reply	[flat|nested] 26+ messages in thread
* Re: [9fans] Stack initialisation
@ 2000-08-30 13:44 rob pike
  0 siblings, 0 replies; 26+ messages in thread
From: rob pike @ 2000-08-30 13:44 UTC (permalink / raw)
  To: 9fans

We didn't include Alef with the 3rd edition because it introduces
a portability issue: it requires maintenance of a second compiler
and set of libraries.  We only had an Alef compiler for the 386,
Mips, and Sparc, only two of which are current kernel architectures.
We don't have an Alef compiler for the Alpha, Power PC, or ARM,
which are.  Rather than port the compiler and libraries, we decided
to port the few Alef applications back to C.  Otherwise, getting a
new architecture running is just too much work.

So I congratulate you on getting Alef running on the 386 again, but
remind you that it wasn't included in the second edition for a reason.
We're not going to be enthusiastic about redistributing Alef again
unless someone is willing to do the other ports, and even that's
probably not reason enough.  Of course, you're free to redistribute
it yourself to 2nd edition licensees, who are the only people likely
to have old Alef programs lying around anyway.

Sorry, guys, but it's not quite a pure PC world, at least not yet.

-rob



^ permalink raw reply	[flat|nested] 26+ messages in thread
* Re: [9fans] Stack initialisation
@ 2000-08-30  6:14 okamoto
  2000-08-30  6:23 ` Lucio De Re
  0 siblings, 1 reply; 26+ messages in thread
From: okamoto @ 2000-08-30  6:14 UTC (permalink / raw)
  To: 9fans


>Without a doubt.  You're a holder of a 2ed licence, so I see no
Don't doubt me, Lucio, please!  I have its licence for my Univ.☺

You may deliver me from the restriction of two file servers, 2ed and 3ed.
It may save the wasteful power consumption of our Univ.  ☺

Kenji



^ permalink raw reply	[flat|nested] 26+ messages in thread
* Re: [9fans] Stack initialisation
@ 2000-08-30  5:44 okamoto
  2000-08-30  6:00 ` Lucio De Re
  0 siblings, 1 reply; 26+ messages in thread
From: okamoto @ 2000-08-30  5:44 UTC (permalink / raw)
  To: 9fans

>and now I have
>a version of Alef for 3rd Edition Plan 9 that (apparently) compiles
>and executes programs on my i386 PC. 

Wao!
I'm now in trouble to bring a Alef program (not graphics) to 3ed
C thread version. (sigh)

Can I see your change, Lucio?

Kenji



^ permalink raw reply	[flat|nested] 26+ messages in thread
* Re: [9fans] Stack initialisation
@ 2000-08-29 22:08 forsyth
  2000-08-30  5:19 ` Lucio De Re
  0 siblings, 1 reply; 26+ messages in thread
From: forsyth @ 2000-08-29 22:08 UTC (permalink / raw)
  To: 9fans

>>	Ptab    = 0xbfff5000,    /* Private stack */
>>	Execstk = 0xbf001000,    /* Exec stack linkage area */

the values are related to those of USTKTOP and USTKSIZE
in the  2nd edition kernel, both of which differ in the 3rd edition
kernel, since the arrangement of virtual memory has changed slightly
(on the PC at least).
the exec stack grabs addresses at the low end of the virtual memory
region reserved for the stack, presumably on the grounds that most
Alef processes haven't used the full 16 megabytes.  it is
space that will be reclaimed automatically after the exec.
that's from memory of doing the Alef port to the powerpc
and looking at the various definitions.


^ permalink raw reply	[flat|nested] 26+ messages in thread
* Re: [9fans] Stack initialisation
@ 2000-08-29 16:45 rob pike
  0 siblings, 0 replies; 26+ messages in thread
From: rob pike @ 2000-08-29 16:45 UTC (permalink / raw)
  To: 9fans

Are you referring to the local stack?  Each true process (proc) has a
private stack, so it's possible to do things like place a pointer in high
memory that points to memory unique to that process, a storage class
that's hard to get in fully shared memory.

-rob



^ permalink raw reply	[flat|nested] 26+ messages in thread
* Re: [9fans] Stack initialisation
@ 2000-08-29 16:45 rob pike
  2000-08-29 16:58 ` Lucio De Re
  0 siblings, 1 reply; 26+ messages in thread
From: rob pike @ 2000-08-29 16:45 UTC (permalink / raw)
  To: 9fans

Are you referring to the local stack?  Each true process (proc) has a
private stack, so it's possible to do things like place a pointer in high
memory that points to memory unique to that process, a storage class
that's hard to get in fully shared memory.

-rob



^ permalink raw reply	[flat|nested] 26+ messages in thread
* [9fans] Stack initialisation
@ 2000-08-29 14:30 Lucio De Re
  0 siblings, 0 replies; 26+ messages in thread
From: Lucio De Re @ 2000-08-29 14:30 UTC (permalink / raw)
  To: 9fans mailing list

In 2nd Edition Plan 9, Alef allocated some private memory in what
seems like arbitrary locations on the i386, Mips and Sparc
architectures.

I can't find either an equivalent private allocation for the C
compiler, nor a clarification as to how this works for Alef.  Can
someone explain quite how this private allocation works, how it
interacts with the underlying system?  Specially if it is different
in 3rd Edition Plan 9?

Thanks.

++L


^ permalink raw reply	[flat|nested] 26+ messages in thread

end of thread, other threads:[~2000-08-31 10:25 UTC | newest]

Thread overview: 26+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2000-08-30 14:17 [9fans] Stack initialisation lucio
2000-08-30 15:36 ` ozan s. yigit
2000-08-30 16:12   ` Lucio De Re
2000-08-30 16:32     ` Boyd Roberts
2000-08-30 16:44       ` Lucio De Re
2000-08-30 16:59         ` Boyd Roberts
2000-08-30 17:06           ` Lucio De Re
2000-08-31  9:26         ` Elliott Hughes
  -- strict thread matches above, loose matches on Subject: below --
2000-08-31 10:25 lucio
2000-08-31  0:25 okamoto
2000-08-30 16:45 forsyth
2000-08-30 16:55 ` Boyd Roberts
2000-08-30 15:26 lucio
2000-08-30 14:35 forsyth
2000-08-30 13:45 rob pike
2000-08-30 13:44 rob pike
2000-08-30  6:14 okamoto
2000-08-30  6:23 ` Lucio De Re
2000-08-30  5:44 okamoto
2000-08-30  6:00 ` Lucio De Re
2000-08-29 22:08 forsyth
2000-08-30  5:19 ` Lucio De Re
2000-08-29 16:45 rob pike
2000-08-29 16:45 rob pike
2000-08-29 16:58 ` Lucio De Re
2000-08-29 14:30 Lucio De Re

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).