I suspect if you talked to Intel, they’d say they didn’t put these features in the
IA64 because the OS doesn’t use them in the x86, so they are unnecessary…
-DH
“Moreira, Alberto” wrote in message news:xxxxx@ntdev…
>
> Have you noticed that whenever one proposes that an OS handle something in a
> more sophisticated way the usual argument against it is, “no, let’s not do
> it for compatibility sake, because only a Pentium has that hardware” ? Can’t
> take full advantage of static nesting, Algol style, because only a Pentium
> has a hardware stack. Can’t take advantage of big-time segmentation because
> only a Pentium has segmentation. Can’t take full advantage of protection
> because only a Pentium has protection. Can’t take advantage of repeat
> instructions because only the Pentium has them. Can’t take advantage of
> write-to-memory instructions because only the Pentium has them. Can’t take
> advantage of…
>
> Oh, heck, I could go on. The argument seems to be, let’s stick forever to C
> and a flat model, because only a Pentium has hardware to do anything more
> than that. And G-O-L-L-Y, see how fast I can run SpecBench in a flat model
> turbocharged RISC ?
>
> But what’s the point if I can’t even have floating point operations in my
> kernel-side OpenGL ICD ?
>
> On one plane, the IA64 has all the modern pipeline bells and whistles, but
> it is, still, a pretty straightforward flat model. And even then, the OOO
> pipeline of a modern Pentium system is pretty sophisticated too, and you
> only have to go to comp.arch to see people pooh-pooing the IA64. But the
> Pentium is a segmented architecture with a heavy emphasis in big-time
> protection, and all that is just not available in other architectures:
> segments, rings of protection, hardware-managed stack transitions, none of
> that exists in an IA64. So, the OS designer has to revert to a flat model
> because there’s nothing better available elsewhere, one has to revert to a
> two-tier user/kernel model because there’s nothing better available
> elsewhere, and so on. For example, I would have taken advantage of the
> Pentium architecture to implement the kernel in Ring 0, I/O in Ring 1,
> Shells at Ring 2 and Apps at Ring 3, I would have kept the stack as a
> separate segment, I would have lobbied Intel heavily to give me more segment
> registers, I would have implemented my run-time objects in my OO languages
> as segments, and I would have implemented message passing as a fundamental
> OS mechanism, where a message is implemented as an object, that is, as a
> segment. I would also have lobbied Intel heavily to add hardware queues to
> the architecture and to separate I/O processing from the CPU, a bit like we
> used to have at Sperry and CDC eons ago, or in the IBM 7044/7094, or even in
> the IBM/360 Multiplexer and Selector channels of old. As for parallelism,
> predication, I believe in massive parallelism: I’d rather use my gates to
> implement gobs of on-chip simple processors rather than to optimize one
> processor for ILP. So, my reation to the IA64 is, thanks but my heart is
> elsewhere. The machine I want to see is a CM2 in a chip, if you see what I
> mean: say, 256 processors connected as an 8-dimensional hypercube, that
> would beat an IA64 hands down.
>
> But this eons away from NTDEV ! Sorry for the off-topic post.
>
> Alberto.
>
>
>
> -----Original Message-----
> From: Bill McKenzie [mailto:xxxxx@driver.attbbs.com]
> Sent: Thursday, May 23, 2002 11:21 AM
> To: NT Developers Interest List
> Subject: [ntdev] Re: Problem with arrays
>
>
> You see IA64 as less sophisticated than the pentium architecture? I
> personally think the predicated instructions, register renaming engine,
> instruction level parallelism of a degree not seen before, data speculation,
> and the like, make it somewhat more sophisticated than the processors we are
> all likely running on today with technology circa 1980.
>
> Whether it will fly or not, and thus whether MS shoud bother with it, is a
> good question, but sophisticated? I think the HP boys have sufficiently
> out-classed their Intel counterparts with this one, (yes this is an HP
> design, not Intel’s, Intel bought it).
>
> –
> Bill McKenzie
>
>
>
> wrote in message news:xxxxx@ntdev…
> >
> > I propose an attitude of taking advantage of the underlying
> > hardware. In the case of the Pentium, the machine is so
> > overwhelmingly pervasive that I see no point in neglecting its good
> > features for the sake of compatibility with less sophisticated
> > systems.
> >
> > Alberto.
> >
> >
> > On 23 May 2002, at 1:50, Bill McKenzie wrote:
> >
> > > I don’t believe it would clearly show on an IA64 machine, or did you not
> > > catch the reference? Or are you purposing a complete rewrite of the
> entire
> > > memory manager, et al, for each new platform?
> > >
> > > –
> > > Bill McKenzie
> > >
> > >
> > >
> > > “Moreira, Alberto” wrote in message
> > > news:xxxxx@ntdev…
> > > >
> > > > It’s a feature that makes that one architecture easier to use and more
> > > > flexible, and a good OS should take advantage of it. I personally like
> > > > segments, if NT took advantage of it the superiority of a segmented
> > > > architecture would clearly show.
> > > >
> > > > Alberto.
> > > >
> > > >
> > > >
> > > > -----Original Message-----
> > > > From: Tony Mason [mailto:xxxxx@osr.com]
> > > > Sent: Wednesday, May 22, 2002 3:12 PM
> > > > To: NT Developers Interest List
> > > > Subject: [ntdev] Re: Problem with arrays
> > > >
> > > >
> > > > Does this not then assume a specific hardware architecture, notably a
> > > > segmented one? If so, I can easily see why they didn’t engineer it
> that
> > > > way. While I’m not sure about the i860, the MIPS does not have a
> > > segmented
> > > > memory model. Nor, unless I’m missing something in my dust-covered
> alpha
> > > > and PPC reference manuals, do they. The IA64 does have compatibility
> > > stuff,
> > > > but that doesn’t apply to the 64-bit kernel world… I must admit,
> I’m
> > > not
> > > > so sure about AMD64.
> > > >
> > > > A criticism of NT based upon the fact that they did not use a feature
> > > > present in the THIRD (of seven officially supported) CPU families
> seems
> > > week
> > > > at best.
> > > >
> > > > Even so, physical memory still must be tracked/maintained, which
> involves
> > > > some sort of tracking data structure which in turn requires
> serialization,
> > > > which in turn adds the issues of reentrancy and deadlock.
> > > >
> > > > Tony
> > > >
> > > > Tony Mason
> > > > Consulting Partner
> > > > OSR Open Systems Resources, Inc.
> > > > http://www.osr.com
> > > >
> > > > Hope to see you at the next OSR file systems class October 7, 2002!
> > > >
> > > > -----Original Message-----
> > > > From: Moreira, Alberto [mailto:xxxxx@compuware.com]
> > > > Sent: Wednesday, May 22, 2002 2:57 PM
> > > > To: NT Developers Interest List
> > > > Subject: [ntdev] Re: Problem with arrays
> > > >
> > > > That’s why I keep saying stack SEGMENT. I believe in segments, and I
> > > believe
> > > > in the stack occupying an address space that’s disjoint from one’s
> data
> > > > segment. Growing the stack should be something that only involves
> physical
> > > > memory and the stack segment, without any impact on the data segment
> or on
> > > > its address space.
> > > >
> > > > Alberto.
> > > >
> > > >
> > > >
> > > >
> > > > —
> > > > You are currently subscribed to ntdev as:
> xxxxx@compuware.com
> > > > To unsubscribe send a blank email to %%email.unsub%%
> > > >
> > > >
> > > >
> > > > The contents of this e-mail are intended for the named addressee only.
> It
> > > > contains information that may be confidential. Unless you are the
> named
> > > > addressee or an authorized designee, you may not copy or use it, or
> > > disclose
> > > > it to anyone else. If you received it in error please notify us
> > > immediately
> > > > and then destroy it.
> > > >
> > > >
> > > >
> > >
> > >
> > >
> > > —
> > > You are currently subscribed to ntdev as: xxxxx@ieee.org
> > > To unsubscribe send a blank email to %%email.unsub%%
> > >
> >
> >
> >
> >
>
>
>
> —
> You are currently subscribed to ntdev as: xxxxx@compuware.com
> To unsubscribe send a blank email to %%email.unsub%%
>
>
>
> The contents of this e-mail are intended for the named addressee only. It
> contains information that may be confidential. Unless you are the named
> addressee or an authorized designee, you may not copy or use it, or disclose
> it to anyone else. If you received it in error please notify us immediately
> and then destroy it.
>
>
>