Apple Discovers 64-Bit

Discussion in 'NZ Computing' started by Lawrence D'Oliveiro, Aug 20, 2009.

  1. May need to give them a while to get it right
    <http://blogs.zdnet.com/Apple/?p=4716>.
    Lawrence D'Oliveiro, Aug 20, 2009
    #1
    1. Advertising

  2. Lawrence D'Oliveiro

    David Empson Guest

    Lawrence D'Oliveiro <_zealand> wrote:

    > May need to give them a while to get it right
    > <http://blogs.zdnet.com/Apple/?p=4716>.


    I don't see the problem.

    Apple have been adding various aspects of 64-bit support over the last
    few major releases of Mac OS X.

    Mac OS X 10.5 already supports 64-bit applications.

    Mac OS X 10.6 includes 64-bit versions of most of the standard
    applications (except three which I expect are based on the older Carbon
    user interface framework, and Apple hasn't had time to rewrite them in
    Cocoa yet).

    Mac OS X 10.6 also introduces a 64-bit kernel.

    It appears from the rumours that the initial release may only enable the
    64-bit kernel on the Xserve.

    That makes perfect sense to me:

    1. The current Xserve is the only model in which more than 32 GB of RAM
    can be installed. The 32-bit kernel is able to support 32 GB of RAM, so
    is sufficient for all other models.

    2. Third party drivers need to be 64-bit before the 64-bit kernel can be
    used (32-bit drivers will be disabled). Apple is taking a conservative
    approach and allowing third parties time to catch up.

    I expect that at some point in the lifetime of 10.6, Apple will flip the
    switch and default to a 64-bit kernel on the models which support it,
    perhaps only after checking for any 32-bit drivers.

    Don't know yet exactly which models are able to run the kernel in 64-bit
    mode, but I have evidence that it includes MacBook Pro models back to
    mid 2007.

    The only ones in doubt would be mid 2006 to mid 2007 models. Enquiries
    are in progress.

    --
    David Empson
    David Empson, Aug 20, 2009
    #2
    1. Advertising

  3. In message <1j4ri2y.1mbkrk61j2fkotN%>, David Empson
    wrote:

    > Apple have been adding various aspects of 64-bit support over the last
    > few major releases of Mac OS X.


    Yeah, they're only about 5-15 years late.

    > It appears from the rumours that the initial release may only enable the
    > 64-bit kernel on the Xserve.
    >
    > That makes perfect sense to me:
    >
    > 1. The current Xserve is the only model in which more than 32 GB of RAM
    > can be installed. The 32-bit kernel is able to support 32 GB of RAM, so
    > is sufficient for all other models.


    But applications cannot use that much.

    > 2. Third party drivers need to be 64-bit before the 64-bit kernel can be
    > used (32-bit drivers will be disabled). Apple is taking a conservative
    > approach and allowing third parties time to catch up.


    You'll be stuck in a chicken-and-egg situation here, as Microsoft has found:
    The users won't switch to 64-bit because they can't get drivers, and the
    hardware vendors won't do 64-bit drivers because they don't see the user
    demand.

    > Don't know yet exactly which models are able to run the kernel in 64-bit
    > mode, but I have evidence that it includes MacBook Pro models back to
    > mid 2007.


    For some reason there's an EFI limitation involved, which doesn't make
    sense. The EFI is just the BIOS, so what if it's 32-bit? Why should that
    stop a 64-bit OS from booting? It doesn't stop Linux, it doesn't stop
    Windows, why does it affect OS X?
    Lawrence D'Oliveiro, Aug 21, 2009
    #3
  4. Lawrence D'Oliveiro

    Richard Guest

    Lawrence D'Oliveiro wrote:

    >> 2. Third party drivers need to be 64-bit before the 64-bit kernel can be
    >> used (32-bit drivers will be disabled). Apple is taking a conservative
    >> approach and allowing third parties time to catch up.

    >
    > You'll be stuck in a chicken-and-egg situation here, as Microsoft has found:
    > The users won't switch to 64-bit because they can't get drivers, and the
    > hardware vendors won't do 64-bit drivers because they don't see the user
    > demand.


    MS made it so they have to to use the vista logo at some stage, which
    seems to have done the trick, every recent piece of hardware I have got
    has drivers, and older ones have come right with some reference ones.
    The holdout for me is the CCTV capture card, but that machine hardly
    needs 64 bit at all.

    >> Don't know yet exactly which models are able to run the kernel in 64-bit
    >> mode, but I have evidence that it includes MacBook Pro models back to
    >> mid 2007.

    >
    > For some reason there's an EFI limitation involved, which doesn't make
    > sense. The EFI is just the BIOS, so what if it's 32-bit? Why should that
    > stop a 64-bit OS from booting? It doesn't stop Linux, it doesn't stop
    > Windows, why does it affect OS X?


    Probably related to all the other crap that apple include in the bios
    that interacts with the OS - and all the custom OS versions they ship on
    disc with machines etc...
    Richard, Aug 21, 2009
    #4
  5. Lawrence D'Oliveiro

    David Empson Guest

    Lawrence D'Oliveiro <_zealand> wrote:

    > In message <1j4ri2y.1mbkrk61j2fkotN%>, David Empson
    > wrote:
    >
    > > Apple have been adding various aspects of 64-bit support over the last
    > > few major releases of Mac OS X.

    >
    > Yeah, they're only about 5-15 years late.
    >
    > > It appears from the rumours that the initial release may only enable the
    > > 64-bit kernel on the Xserve.
    > >
    > > That makes perfect sense to me:
    > >
    > > 1. The current Xserve is the only model in which more than 32 GB of RAM
    > > can be installed. The 32-bit kernel is able to support 32 GB of RAM, so
    > > is sufficient for all other models.

    >
    > But applications cannot use that much.


    Yes they can.

    Mac OS X has been able to run some 64-bit applications since 10.4 (April
    2005), despite having a 32-bit kernel. This was initially limited to
    non-GUI processes, so GUI applications had to factor the UI and non-UI
    parts and use IPC to communciate between them. (This was apparently done
    by some high-end scientific or mathematical applications.)

    On Intel Macs, this was possible from August 2006 (first Mac Pro).

    Mac OS X 10.5 (September 2007) added support for 64-bit Cocoa (GUI)
    applications, still on a 32-bit kernel.

    The main new features relating to 64-bit support in 10.6 are the fact
    that most of the bundled applications are 64-bit (actually "universal" -
    they run in 32-bit or 64-bit mode according to the processor), and the
    kernel is able to run in 64-bit mode on recent models.

    Apart from increasing the maximum memory capacity beyond 32 GB, the
    64-bit kernel also allows:

    - Higher limit on the maximum number of processes in the system, if you
    have lots of memory (32-bit kernel can only manage 2500 processes,
    apparently). Not going to affect many people.

    - Better performance for 64-bit processes due to less mucking around
    with mode switching when calling the kernel.

    - Better performance even for 32-bit processes due to the kernel being
    more efficient internally, but with somewhat more overhead due to
    reversing the mode switch.

    > > 2. Third party drivers need to be 64-bit before the 64-bit kernel can be
    > > used (32-bit drivers will be disabled). Apple is taking a conservative
    > > approach and allowing third parties time to catch up.

    >
    > You'll be stuck in a chicken-and-egg situation here, as Microsoft has found:
    > The users won't switch to 64-bit because they can't get drivers, and the
    > hardware vendors won't do 64-bit drivers because they don't see the user
    > demand.


    Maybe. The problem is nowhere near as bad as for Windows, because there
    are far fewer third party kernel extensions on the Mac. Apple provides
    standard drivers and kernel extensions for most classes of peripherals,
    and printer/scanner drivers run in userland.

    I expect the 64-bit kernel to be standard on all new mid-range to
    high-end Macs after 10.6 is released, so third parties will be forced to
    update their extensions if they want to keep their customers.

    As for user demand: users don't "need" to switch to a 64-bit kernel
    unless they have extremely high memory or performance requirements.
    Anyone in that boat is likely to be buying the latest hardware
    reasonably often anyway.

    All Macs from mid 2007 and most from late 2006 are able to run 64-bit
    applications and use more than 4 GB of memory, whether their kernel is
    32-bit or 64-bit.

    > > Don't know yet exactly which models are able to run the kernel in 64-bit
    > > mode, but I have evidence that it includes MacBook Pro models back to
    > > mid 2007.

    >
    > For some reason there's an EFI limitation involved, which doesn't make
    > sense. The EFI is just the BIOS, so what if it's 32-bit? Why should that
    > stop a 64-bit OS from booting? It doesn't stop Linux, it doesn't stop
    > Windows, why does it affect OS X?


    EFI64 isn't a clear dividing point after all.

    Judging from yet more blog discussion, there are some Core 2 Duo models
    which have EFI64 but Snow Leopard doesn't support them for the 64-bit
    kernel. (Mid 2007 MacBook Pro and iMac; it won't run on any MacBook,
    MacBook Air or Mac Mini either but I don't know which of them are
    EFI64.)

    Given this is all based on rumour and speculation, I'll add to it by
    speculating that Apple have only bothered to implement 64-bit kernel
    support on recent models back to a certain point. The MacBook Pro and
    iMac in question support 6 and 4 GB of RAM respectively, but they can
    use all of it with a 32-bit kernel so there is not much to be gained by
    a 64-bit kernel.

    As for even older EFI32 models: the only notable one that might benefit
    from 64-bit kernel is the original Mac Pro (August 2006, superseded in
    early 2008). It officially supports 16 GB of RAM and unofficially can go
    to 32 GB, so the 32-bit kernel is sufficient, but 64-bit would be a
    benefit for some people. Possibly also the late 2006 Xserve. Don't know
    anyone who has one to check.

    The other EFI32 models with Core 2 Duo processors (from late 2006) have
    a hardware limit of 3 GB of RAM, so even less point supporting the
    64-bit kernel.

    Earlier Intel models only have 32-bit processors. (The 64-bit PowerPC G5
    isn't supported by 10.6.)

    --
    David Empson
    David Empson, Aug 21, 2009
    #5
  6. In message <1j4t6g9.1ri3c5c108kpxuN%>, David Empson
    wrote:

    > Mac OS X has been able to run some 64-bit applications since 10.4 (April
    > 2005), despite having a 32-bit kernel. This was initially limited to
    > non-GUI processes, so GUI applications had to factor the UI and non-UI
    > parts and use IPC to communciate between them. (This was apparently done
    > by some high-end scientific or mathematical applications.)
    >
    > On Intel Macs, this was possible from August 2006 (first Mac Pro).
    >
    > Mac OS X 10.5 (September 2007) added support for 64-bit Cocoa (GUI)
    > applications, still on a 32-bit kernel.


    Dribble, dribble, a little bit here, a little bit there, 64-bit layer on top
    of 32-bit core on top of 64-bit hardware. What an incredibly convoluted
    process. Even Microsoft didn't go through such a dance. And of course it's
    the users who end up being totally confused by what doesn't work and why. So
    much for the much-trumpeted "it just works" propaganda.

    This is why Linux remains the number-one 64-bit platform: because with Open
    Source there is no pussyfooting around, you go 64-bit from drivers through
    kernel right up across the entire userland stack.

    And there's a definite irony in Apple's early embrace of PowerPC, which was
    really designed as a 64-bit architecture from the beginning. Though Apple
    never had any working software on 64-bit PowerPC. Again, Linux did.
    Lawrence D'Oliveiro, Aug 21, 2009
    #6
  7. Lawrence D'Oliveiro

    thingy Guest

    On Aug 21, 4:37 pm, Richard <> wrote:
    > Lawrence D'Oliveiro wrote:
    > >> 2. Third party drivers need to be 64-bit before the 64-bit kernel can be
    > >> used (32-bit drivers will be disabled). Apple is taking a conservative
    > >> approach and allowing third parties time to catch up.

    >
    > > You'll be stuck in a chicken-and-egg situation here, as Microsoft has found:
    > > The users won't switch to 64-bit because they can't get drivers, and the
    > > hardware vendors won't do 64-bit drivers because they don't see the user
    > > demand.

    >
    > MS made it so they have to to use the vista logo at some stage, which
    > seems to have done the trick, every recent piece of hardware I have got
    > has drivers, and older ones have come right with some reference ones.
    > The holdout for me is the CCTV capture card, but that machine hardly
    > needs 64 bit at all.
    >
    > >> Don't know yet exactly which models are able to run the kernel in 64-bit
    > >> mode, but I have evidence that it includes MacBook Pro models back to
    > >> mid 2007.

    >
    > > For some reason there's an EFI limitation involved, which doesn't make
    > > sense. The EFI is just the BIOS, so what if it's 32-bit? Why should that
    > > stop a 64-bit OS from booting? It doesn't stop Linux, it doesn't stop
    > > Windows, why does it affect OS X?

    >
    > Probably related to all the other crap that apple include in the bios
    > that interacts with the OS - and all the custom OS versions they ship on
    > disc with machines etc...


    Given its BSD underneath....I agree it may well be Apple's fudging has
    made the move to 64 bit hard.....When you consider how relatively
    locked down Apple's hardware and OS is compared to MS and linux, its
    surprising they are so far behind....They are really stingy on
    expandability as well, like adding Ram....yet OSX should benefit so
    well from 8gb~12gb and its so cheap.

    regards

    Thing
    thingy, Aug 22, 2009
    #7
  8. In message <h6i2mc$89b$>, Lawrence D'Oliveiro wrote:

    > May need to give them a while to get it right
    > <http://blogs.zdnet.com/Apple/?p=4716>.


    Does ANY machine boot a 64-bit kernel by default
    <http://news.zdnet.com/2100-9595_22-336194.html>?

    Also looks like ZFS is gone.
    Lawrence D'Oliveiro, Aug 29, 2009
    #8
  9. Lawrence D'Oliveiro

    David Empson Guest

    Lawrence D'Oliveiro <_zealand> wrote:

    > In message <h6i2mc$89b$>, Lawrence D'Oliveiro wrote:
    >
    > > May need to give them a while to get it right
    > > <http://blogs.zdnet.com/Apple/?p=4716>.

    >
    > Does ANY machine boot a 64-bit kernel by default
    > <http://news.zdnet.com/2100-9595_22-336194.html>?


    According to pre-release reports, it does on the current model Xserve,
    which happens to be the only model which NEEDS a 64-bit kernel to
    address the maximum memory which can be installed (48 GB).

    Xserves aren't exactly common amongst the Mac community who participate
    in online discussions, so it may be a few days until this can be
    independently confirmed.


    Again, who cares? We don't need a 64-bit kernel yet.

    64-bit Mac OS X applications work on a 32-bit kernel.

    Almost all existing Macs can address their maximum installable memory
    using a 32-bit kernel (and the only one which can't is defaulting to a
    64-bit kernel).

    It is certain that as Apple introduces new models from now on, those
    which can benefit from a 64-bit kernel will also have it enabled by
    default.

    A 64-bit kernel may have performance benefits for some people, and there
    is an officially supported way of running the 10.6 kernel in 64-bit mode
    on supported models as a one-off test if you want to try it out, as well
    as various ways to change the default setting.

    --
    David Empson
    David Empson, Aug 29, 2009
    #9
  10. In message <1j57vxb.immcjy1jlol3lN%>, David Empson
    wrote:

    > 64-bit Mac OS X applications work on a 32-bit kernel.


    But 32-bit drivers cannot access I/O buffers outside the bottom 4GiB.

    > Again, who cares? We don't need a 64-bit kernel yet.


    By the time you do feel the need for it, it'll be too late.
    Lawrence D'Oliveiro, Aug 29, 2009
    #10
  11. Lawrence D'Oliveiro

    David Empson Guest

    Lawrence D'Oliveiro <_zealand> wrote:

    > In message <1j57vxb.immcjy1jlol3lN%>, David Empson
    > wrote:
    >
    > > 64-bit Mac OS X applications work on a 32-bit kernel.

    >
    > But 32-bit drivers cannot access I/O buffers outside the bottom 4GiB.


    Which means the kernel is having to double buffer I/O requests on
    systems with roughly 4 GB or more RAM.

    OK, that will be a performance hit, in effect somewhat reducing the
    benefit of having more than 4 GB of RAM.

    > > Again, who cares? We don't need a 64-bit kernel yet.

    >
    > By the time you do feel the need for it, it'll be too late.


    I think not. Pressure from users will drive developers to release
    updated kernel extensions.

    Apple's own kernel extensions are already able to run in 64-bit mode for
    all Mac models which they regard as capable of running the 64-bit kernel
    (most models from 2008 and 2009, except for the low-end ones which have
    maximum RAM capacity of 4 GB or less). The set of models capable of
    using the 64-bit kernel may grow in subsequent updates of 10.6.

    Third party kernel extensions installed by popular applications are
    being updated agressively. Two of mine had updates the day that 10.6 was
    released.

    That leaves third party kernel extensions from developers who are
    dragging the chain, or older ones which are no longer supported.

    In effect, those products will be excluded from being used on new Macs
    from now on, because a growing proportion of new Macs will default to
    the 64-bit kernel. They can be set to run 32-bit kernel if necessary,
    but most people won't bother. They will just stop using the offending
    product and find a modern replacement.

    This is exactly like all other transitions Apple has gone through. You
    have to keep an old Mac or old system version around to use some
    orphaned products.

    --
    David Empson
    David Empson, Aug 29, 2009
    #11
  12. Lawrence D'Oliveiro

    Sailor Sam Guest

    thingy wrote:
    > On Aug 21, 4:37 pm, Richard <> wrote:
    >> Lawrence D'Oliveiro wrote:
    >>>> 2. Third party drivers need to be 64-bit before the 64-bit kernel can be
    >>>> used (32-bit drivers will be disabled). Apple is taking a conservative
    >>>> approach and allowing third parties time to catch up.
    >>> You'll be stuck in a chicken-and-egg situation here, as Microsoft has found:
    >>> The users won't switch to 64-bit because they can't get drivers, and the
    >>> hardware vendors won't do 64-bit drivers because they don't see the user
    >>> demand.

    >> MS made it so they have to to use the vista logo at some stage, which
    >> seems to have done the trick, every recent piece of hardware I have got
    >> has drivers, and older ones have come right with some reference ones.
    >> The holdout for me is the CCTV capture card, but that machine hardly
    >> needs 64 bit at all.
    >>
    >>>> Don't know yet exactly which models are able to run the kernel in 64-bit
    >>>> mode, but I have evidence that it includes MacBook Pro models back to
    >>>> mid 2007.
    >>> For some reason there's an EFI limitation involved, which doesn't make
    >>> sense. The EFI is just the BIOS, so what if it's 32-bit? Why should that
    >>> stop a 64-bit OS from booting? It doesn't stop Linux, it doesn't stop
    >>> Windows, why does it affect OS X?

    >> Probably related to all the other crap that apple include in the bios
    >> that interacts with the OS - and all the custom OS versions they ship on
    >> disc with machines etc...

    >
    > Given its BSD underneath..


    Mach kernel (Created by Carnegie Mellon University), FreeBSD toolset.

    ...I agree it may well be Apple's fudging has
    > made the move to 64 bit hard.....When you consider how relatively
    > locked down Apple's hardware and OS is compared to MS and linux, its
    > surprising they are so far behind....They are really stingy on
    > expandability as well, like adding Ram....yet OSX should benefit so
    > well from 8gb~12gb and its so cheap.
    >
    > regards
    >
    > Thing
    >
    >
    >
    >
    >
    >
    >
    >
    >
    >
    >
    >
    >
    >
    Sailor Sam, Aug 29, 2009
    #12
  13. In message <1j58ngs.111ghj4wibx8gN%>, David Empson
    wrote:

    > Lawrence D'Oliveiro <_zealand> wrote:
    >
    >> In message <1j57vxb.immcjy1jlol3lN%>, David Empson
    >> wrote:
    >>
    >> > Again, who cares? We don't need a 64-bit kernel yet.

    >>
    >> By the time you do feel the need for it, it'll be too late.

    >
    > I think not. Pressure from users will drive developers to release
    > updated kernel extensions.


    But that pressure can only come from users who are willing to upgrade. Which
    brings you back to the well-known chicken-and-egg situation that Microsoft
    already finds itself in: users are reluctant to upgrade because they can't
    get 64-bit drivers for their hardware, and the hardware vendors are
    reluctant to provide 64-bit drivers because they don't see the user demand.

    > That leaves third party kernel extensions from developers who are
    > dragging the chain, or older ones which are no longer supported.


    Hardware vendors don't get any revenue from releasing new drivers for
    existing hardware--they'd rather you bought their new products. And so you
    end up with some hardware item, maybe only a couple of years old, which is
    orphaned on the new OS.

    There is a solution to this, but it involves not depending on hardware
    vendors to provide the drivers. Not a solution that either Microsoft or
    Apple seem willing to contemplate.

    > In effect, those products will be excluded from being used on new Macs
    > from now on, because a growing proportion of new Macs will default to
    > the 64-bit kernel. They can be set to run 32-bit kernel if necessary ...


    Interesting that you see Apple continuing to offer the option of a 32-bit
    kernel well into the future. Will this option still be available in new
    versions of OS X, say, 5 years from now, do you think? My guess is yes.

    > This is exactly like all other transitions Apple has gone through. You
    > have to keep an old Mac or old system version around to use some
    > orphaned products.


    Apple also has a poor record of managing such transitions. It botched the
    PowerPC transition in some important ways (go on, ask me about Universal
    Procedure Pointers). Then it put its developers through all the effort of
    moving to Carbon, only to abandon that.
    Lawrence D'Oliveiro, Aug 30, 2009
    #13
  14. Lawrence D'Oliveiro

    David Empson Guest

    Lawrence D'Oliveiro <_zealand> wrote:

    > In message <1j58ngs.111ghj4wibx8gN%>, David Empson
    > wrote:
    >
    > > Lawrence D'Oliveiro <_zealand> wrote:
    > >
    > >> In message <1j57vxb.immcjy1jlol3lN%>, David Empson
    > >> wrote:
    > >>
    > >> > Again, who cares? We don't need a 64-bit kernel yet.
    > >>
    > >> By the time you do feel the need for it, it'll be too late.

    > >
    > > I think not. Pressure from users will drive developers to release
    > > updated kernel extensions.

    >
    > But that pressure can only come from users who are willing to upgrade. Which
    > brings you back to the well-known chicken-and-egg situation that Microsoft
    > already finds itself in: users are reluctant to upgrade because they can't
    > get 64-bit drivers for their hardware, and the hardware vendors are
    > reluctant to provide 64-bit drivers because they don't see the user demand.


    They will see the user demand when everyone buying new Macs can't use
    their products with 32-bit only kernel extensions, because the new Macs
    default to a 64-bit kernel.

    Any software-only kernel extensions will be updated promptly. My only
    remaining non-Apple kernel extensions which don't have 64-bit code are
    from VMware Fusion, and I expect that to be updated shortly.

    > > That leaves third party kernel extensions from developers who are
    > > dragging the chain, or older ones which are no longer supported.

    >
    > Hardware vendors don't get any revenue from releasing new drivers for
    > existing hardware--they'd rather you bought their new products. And so you
    > end up with some hardware item, maybe only a couple of years old, which is
    > orphaned on the new OS.


    Not by the new OS, exactly: the product will probably still work if you
    upgrade the OS on your existing computer, as long as you don't
    deliberately switch it to using a 64-bit kernel. (You just don't get the
    added benefits of the 64-bit kernel. All other improvements of 10.6 are
    available.)

    If you buy a new Mac, on the other hand, your old hardware device may
    not be compatible with it, because it will default to using the 64-bit
    kernel, but you may be able to bring it along by forcing the new
    computer to run the kernel in 32-bit mode.

    > There is a solution to this, but it involves not depending on hardware
    > vendors to provide the drivers. Not a solution that either Microsoft or
    > Apple seem willing to contemplate.


    Apple already solves this for most common and standards-compliant
    products by supplying all the kernel extensions themselves, or by not
    requiring kernel extensions for some classes of devices (such as
    printers).

    In the case of printers, they are using CUPS to support a wide range of
    third party printers which have been abandoned by the vendor.

    That leaves devices with proprietary protocols which require kernel
    extensions. In some cases, there are already third party (fourth party?)
    developers who write or port drivers for other companies' products,
    perhaps based on Linux drivers.

    > > In effect, those products will be excluded from being used on new Macs
    > > from now on, because a growing proportion of new Macs will default to
    > > the 64-bit kernel. They can be set to run 32-bit kernel if necessary ...

    >
    > Interesting that you see Apple continuing to offer the option of a 32-bit
    > kernel well into the future. Will this option still be available in new
    > versions of OS X, say, 5 years from now, do you think? My guess is yes.


    I expect that the option to run the 32-bit kernel on new Macs will exist
    at least as long as 10.6 is the current operating system.

    The next major version (10.7 for argument sake) may still work on 32-bit
    Intel Macs, but assuming it is released about two years from now, the
    youngest such computers will already be four years old, and that is
    commonly the cutoff point for Apple dropping support for some old
    models.

    That means Apple could require at least a Core 2 Duo processor in the
    next major version of Mac OS X, so all Macs supported by 10.7 can run
    64-bit software. Apple could drop 32-bit code from many system files and
    all bundled applications, but would continue to support third party
    32-bit Intel applications. Apple is quite likely to drop support for
    PowerPC applications in 10.7, which would allow removal of a bunch more
    code.

    The question then is whether all the Core 2 Duo models will be able to
    run a 64-bit kernel.

    Many of them have EFI32, but the current requirement of needing EFI64
    appears to be an artificial one, as other people have got a 64-bit
    Darwin kernel running on EFI32.

    The youngest model I know of with EFI32 is the previous generation Mac
    Mini, which was sold until March 2009. I doubt Apple would cut off
    support for a model as little as two and a half years old.

    That means they either need to continue supporting a 32-bit kernel on
    10.7, or extend 64-bit kernel support to all Core 2 Duo models (some
    back as far as late 2006), or perhaps only those able to install at
    least 4 GB of RAM (harder to identify, so I doubt it).

    Keeping the 32-bit kernel seems more likely, as well as keeping the
    option to run a 32-bit kernel for recent models. New models introduced
    after 10.7 might not allow this option.

    10.8 (or whatever), ballpark 4 years away, can drop support for all
    EFI32 models, and can therefore always have a 64-bit kernel.

    If Apple sticks to their intended schedule (roughly 18 months between OS
    upgrades), the forced 64-bit kernel may be 3 years away.

    They managed 22 months this time.
    --
    David Empson
    David Empson, Aug 30, 2009
    #14
  15. In message <1j59yue.16wexotbum8prN%>, David Empson
    wrote:

    > Lawrence D'Oliveiro <_zealand> wrote:
    >
    >> In message <1j58ngs.111ghj4wibx8gN%>, David Empson
    >> wrote:
    >>
    >>> Lawrence D'Oliveiro <_zealand> wrote:
    >>>
    >>>> In message <1j57vxb.immcjy1jlol3lN%>, David
    >>>> Empson wrote:
    >>>>
    >>>>> Again, who cares? We don't need a 64-bit kernel yet.
    >>>>
    >>>> By the time you do feel the need for it, it'll be too late.
    >>>
    >>> I think not. Pressure from users will drive developers to release
    >>> updated kernel extensions.

    >>
    >> But that pressure can only come from users who are willing to upgrade.
    >> Which brings you back to the well-known chicken-and-egg situation that
    >> Microsoft already finds itself in: users are reluctant to upgrade because
    >> they can't get 64-bit drivers for their hardware, and the hardware
    >> vendors are reluctant to provide 64-bit drivers because they don't see
    >> the user demand.

    >
    > They will see the user demand when everyone buying new Macs can't use
    > their products with 32-bit only kernel extensions, because the new Macs
    > default to a 64-bit kernel.


    That would just as easily hurt Mac sales. Apple can't force people to buy
    its products.

    >> Hardware vendors don't get any revenue from releasing new drivers for
    >> existing hardware--they'd rather you bought their new products. And so
    >> you end up with some hardware item, maybe only a couple of years old,
    >> which is orphaned on the new OS.

    >
    > Not by the new OS, exactly: the product will probably still work if you
    > upgrade the OS on your existing computer, as long as you don't
    > deliberately switch it to using a 64-bit kernel.


    Which comes back to having to provide 32-bit legacy support indefinitely
    into the future.

    > (You just don't get the added benefits of the 64-bit kernel. All other
    > improvements of 10.6 are available.)


    Have they fixed the multitasking yet?

    > If you buy a new Mac, on the other hand, your old hardware device may
    > not be compatible with it, because it will default to using the 64-bit
    > kernel, but you may be able to bring it along by forcing the new
    > computer to run the kernel in 32-bit mode.


    Which comes back to having to provide 32-bit legacy support indefinitely
    into the future.

    >> There is a solution to this, but it involves not depending on hardware
    >> vendors to provide the drivers. Not a solution that either Microsoft or
    >> Apple seem willing to contemplate.

    >
    > Apple already solves this for most common and standards-compliant
    > products by supplying all the kernel extensions themselves, or by not
    > requiring kernel extensions for some classes of devices (such as
    > printers).


    Why would you need a kernel extension for a printer??

    > The next major version (10.7 for argument sake) may still work on 32-bit
    > Intel Macs, but assuming it is released about two years from now, the
    > youngest such computers will already be four years old, and that is
    > commonly the cutoff point for Apple dropping support for some old
    > models.


    Isn't that going to depress their resale value? In times past, Macs were
    supposed to hold their value for longer than other PCs. No longer, it seems,
    with this compressed obsolescence cycle the company seems to be moving to
    lately.

    > Many of them have EFI32, but the current requirement of needing EFI64
    > appears to be an artificial one, as other people have got a 64-bit
    > Darwin kernel running on EFI32.


    Why do you think Apple is imposing such an artificial restriction?

    > 10.8 (or whatever), ballpark 4 years away, can drop support for all
    > EFI32 models, and can therefore always have a 64-bit kernel.


    Why the dependency between EFI and the bitness of the kernel?
    Lawrence D'Oliveiro, Aug 30, 2009
    #15
  16. Lawrence D'Oliveiro

    David Empson Guest

    Lawrence D'Oliveiro <_zealand> wrote:

    > In message <1j59yue.16wexotbum8prN%>, David Empson
    > wrote:
    >
    > > The next major version (10.7 for argument sake) may still work on 32-bit
    > > Intel Macs, but assuming it is released about two years from now, the
    > > youngest such computers will already be four years old, and that is
    > > commonly the cutoff point for Apple dropping support for some old
    > > models.

    >
    > Isn't that going to depress their resale value? In times past, Macs were
    > supposed to hold their value for longer than other PCs.


    Hold their value, yes. That doesn't mean they can run the latest and
    greatest software.

    > No longer, it seems, with this compressed obsolescence cycle the company
    > seems to be moving to lately.


    It has always been the case, at least as far back as Mac OS 7.6 in 1997.
    Prior to that there was a longer period of continued support, because
    Apple was stuck on System 7.5.x and desperately trying to come up with a
    way forward for a new operating system.

    Starting with 7.6, every time Apple released a major new version of the
    operating system which dropped support for some old models, the youngest
    such models were discontinued three to five years earlier (usually just
    over four years earlier). The best case was one model discontinued just
    over eight years earlier.

    That doesn't matter unless you have some compelling reason to need to
    run the latest operating system. Macs have good resale value because
    they continue to be useful even if running older system software, for
    several years after they might be regarded as "outdated". They might not
    be able to run the latest high-end applications, but they are still fine
    as general purpose computers.

    Apple continues to release security updates for a system version for the
    lifetime of the next version, and application support generally lasts at
    least that long.

    For example, a low-end 350 MHz iMac G3 bought just before they were
    discontinued in February 2001 was limited to Mac OS X 10.3, stopped
    getting security updates in late 2007 and was not supported by most new
    applications from mid 2008. Someone I know retired theirs a few months
    ago (they are now using a one year newer iMac G4 running 10.4).

    A 400 MHz iMac G3 from the same series (or the previous series -
    discontinued mid 2000) was still supported by 10.4 (but not 10.5), and
    it hasn't yet reached the point where security updates have ceased.

    According to marketshare.hitslink.com, 10.4 is still about a quarter of
    the installed base of Mac OS X in active use. I expect it will continue
    to be well supported by application developers for some time yet. The
    youngest computer limited to 10.4 was an 800 MHz iBook G4 discontinued
    in April 2004.


    The Intel transition is at the lower end of the scale (three year cutoff
    for the last PowerMac G5) but the transition was well publicised
    starting a year earlier. I expect future OS upgrades to be somewhat
    better again (about four year worst case cutoff).

    "Must have a 64-bit Intel processor" is an easily described cutoff
    point, which would produce about a four year worst case cutoff for a
    10.7 release around August 2011.

    It is harder to spot a specific characteristic for models superseded in
    2009 which might define a cutoff point for 10.8. Apple likes easy to
    find details like memory, speed, CPU type or external ports.

    > > Many of them have EFI32, but the current requirement of needing EFI64
    > > appears to be an artificial one, as other people have got a 64-bit
    > > Darwin kernel running on EFI32.

    >
    > Why do you think Apple is imposing such an artificial restriction?


    Someone has suggested a very plausible explanation for the arbitrary
    cutoff. The models on which Apple are supporting the 64-bit kernel are
    those introduced in 2008 and later, which have Penryn or later
    processors with SSE4.

    If Apple requires at least that processor, it can use SSE4 throughout
    the 64-bit kernel.

    All the new models introduced in 2009 have EFI64 and at least a Penryn
    processor, so the only issue at present is the current low-end models
    (MacBook, Mac Mini, MacBook Air and 13" MacBook Pro) have been
    artificially restricted to only running the 32-bit kernel. I expect that
    restriction will be removed in an update to Snow Leopard, at least for
    the 13" MacBook Pro (which supports more than 4 GB of RAM - the others
    don't).

    --
    David Empson
    David Empson, Aug 30, 2009
    #16
    1. Advertising

Want to reply to this thread or ask your own question?

It takes just 2 minutes to sign up (and it's free!). Just click the sign up button to choose a username and then you can ask your own questions on the forum.
Similar Threads
  1. ThomasH
    Replies:
    11
    Views:
    842
    ThomasH
    Jun 16, 2004
  2. Au79
    Replies:
    3
    Views:
    362
    Mitch
    Feb 28, 2006
  3. Au79
    Replies:
    0
    Views:
    342
  4. Au79
    Replies:
    0
    Views:
    379
  5. Lawrence D'Oliveiro

    Apple Discovers Dimdows Rot

    Lawrence D'Oliveiro, Nov 12, 2008, in forum: NZ Computing
    Replies:
    24
    Views:
    935
    Dave Doe
    Nov 17, 2008
Loading...

Share This Page