Why MAC OS X has UNIX Terminals

Discussion in 'Apple' started by jrefactors, Dec 31, 2004.

  1. jrefactors

    jrefactors Guest

    MAC OS X has UNIX terminals, we can use UNIX terminal to execute UNIX
    commands, just like in UNIX environment. Why it that? MAC is one OS,
    and UNIX is another OS. So it means MAC OS supports UNIX?
    Please advise. thanks!!
     
    jrefactors, Dec 31, 2004
    #1
    1. Advertisements

  2. Mac OS X is a real Unix system with Apple enhancements to provide the
    Macintosh GUI (and underlying services that applications depend on).
     
    Barry Margolin, Dec 31, 2004
    #2
    1. Advertisements

  3. jrefactors

    Colin B. Guest

    Bah. I think you could make a strong case for MacOS being a real Unix
    system, but not a real UNIX(r) system. Bugger the legalese of the Open
    Group(tm).
     
    Colin B., Dec 31, 2004
    #3
  4. jrefactors

    Bob Harris Guest

    I hope this is not a troll

    Mac OS X takes the Carnage Mellon "Mach" micro-kernel, blends in the
    "FreeBSD" UNIX POSIX and X/Open environment, and the Macintosh GUI to
    create Mac OS X. Apple has even Open Sourced all the UNIX parts as
    "Darwin" http://developer.apple.com/darwin/ but they keep the GUI
    private as that is the part they make their Mac OS X money off from.

    The UNIX under pinnings give Mac OS X its very solid "Industry Strength"
    operating system. It allows Mac OS X to run Samba to allowing Macs to
    mount Windows Shares and attach to Windows printers. It also allows
    Macs to play nice in UNIX/Linux environments by doing things like
    mounting NFS volumes. It allows Mac OS X to run the very popular and
    very good Apache web server. It allows Mac OS X to be a router if you
    want to use Mac OS X to share your internet connection.

    The UNIX inside allows Mac OS X to run most of the popular Open Source
    software available, and get the benefits for no extra efforts on the
    part of Apple.

    In fact being able to leverage off of the Open Source community, means
    that Apple can quickly offer new features without needing to invest as
    much in "Not Invented Here" software development.

    So you also get a Terminal, and a bunch of UNIX commands. Well this
    means that Mac OS X might attract UNIX and Linux users as it will allow
    them to have a nice polished GUI _AND_ still have access to the UNIX
    commands they know and love. And if they have to use with UNIX systems
    at work, it makes is much easier for them.

    These extra users help Apple in 2 ways. First, it is more customers
    which increases Apple's market share. Second, many of these users are
    also developers, and that increases the potential pool of developers
    that might create the next killer App and it will be on a Mac first.
    Win-Win situation.

    The beauty of Mac OS X is that the vast majority of Mac users never
    really need to know about the UNIX inside. Of course if you hang out in
    these Mac news groups, some solutions are suggested as using Terminal
    and UNIX commands, but that does not mean it is the only solution, it is
    just a solution proposed by someone comfortable with using UNIX commands.

    Bob Harris

    PS. I am one of those day time UNIX users that just loves that Mac OS X
    has UNIX inside.
     
    Bob Harris, Dec 31, 2004
    #4
  5. jrefactors

    David C. Guest

    Actually the entire MacOS API layer (Carbon and Cocoa) are kept
    proprietary. This is more than just the GUI.
    Correction, it /does/ attract UNIX and Linux users. I am one of them.

    The main reason I bought my Mac three years ago was because of OS X.
    At the time, the other system I was considering was a SunBlade 100
    workstation.

    I went with the Mac because I could get all of the Unix features I
    wanted, plus the ability to run commercial Mac apps (which are far more
    common and affordable than commercial Solaris apps.)

    Ironically, three years later, I spend most of my time running the Mac
    apps and very little time with the Unix apps.

    -- David
     
    David C., Dec 31, 2004
    #5
  6. jrefactors

    Tim McNamara Guest

    Because it's a Good Idea.
     
    Tim McNamara, Dec 31, 2004
    #6
  7. Abstract: MacOS X is not in the spirit of UNIX.


    Apple uses a Mach kernel with a "UNIX like" personality in a similar
    way to NextStep. The main change from NextStep was to replace the
    driver system from NextStep (which looks UNIX like) by a strange
    new driver system (IoKit) that acts completely non orthogonal (*) and
    is completely ignoring the spirit of UNIX. Note that NextSTep was
    implementing the usual UNIX device interfaces.

    MacOS X basically uses FreeBSD's libc and command line utilities.

    Let me add some remarks on MacOS X:

    - Like FreeBSD, MacOS X will never be able to get approved
    for SUSv1 or SUSv2 compliance because the standard programming
    interface includes basic system related types with
    sizes > sifeof(long).

    - POSIX does not like to mention the /dev/* interface for UNIX
    (interestingly eough, POSIX mentions /dev/null) and for this
    reason the strange IOKit interface does not really contradict
    the POSIX standard.

    - Due to recent changes in the FreeBSD interfaces, Macos x may be
    able to become POSIX.1-2001 aproved in the future.


    Note that Apple never did aproach the OpenGroup for a compliance test
    and for this reason illegally claims that MacOS X is UNIX even before the
    FreeBSD interfaces started to move towards to POSIX.1-2001



    *) Although there is something like /dev/rdisk*, you cannot
    send the usual IOCTLs to devices in the usual way.
    For SCSI Generic you need e.g. to use strange non UNIX-like
    calls to get handles for the ioctl() that you feed wit
    something like "IOCompactDiscServices/0". Even this non
    UNIX like system is completely non-orthogonal. Apple hides
    e.g. CD-ROM drivers from this interface while it allows you
    to send SCSI commands to CD-Writers. For unknown reason,
    (although CD-ROM drives are _exactly_ the same as DVD-ROM
    drives from programmers view) you need to use "IODVDServices"
    for DVD drives......
     
    Joerg Schilling, Dec 31, 2004
    #7
  8. MacOS X does not meet either of your points:

    1) It has not been validated by the Open Group and in former
    times would not have been able to meet the requirements.
    The reason is that both Mac OS X and POSIX did move latetly.

    2) Mac OS X is not even constructed like a historical UNIX
    system.

    3) Mac OS X has important deviations from those UNIX interfaces
    that did not yet make it into POSIX or will probably never make
    it into POSIX.

    While MacOS X seems to work like UNIX for unexperienced users
    it does not do so for programmers and experienced users.
     
    Joerg Schilling, Dec 31, 2004
    #8
  9. jrefactors

    Tom Stiller Guest

    I don't understand how the concept of orthogonality, or lack thereof,
    applies to a description of programming interfaces.
     
    Tom Stiller, Dec 31, 2004
    #9
  10. Among the most useful ar chmod and chown - the counterparts in Finders
    Get Info window are quite crippled (to say the least) unless you operate
    on folders that were your omw to start with.

    Also It's so easy for developers of e.g. open source utilities to port
    them from linux/unix and put a Cocoa shell around the commands to make
    really useful tools like ffmpeg and VCDgear easy to use.
     
    Anders Eklöf, Dec 31, 2004
    #10
  11. jrefactors

    Howard Shubs Guest

    Ah, a troll. MacOS X is a unix, yes.
     
    Howard Shubs, Dec 31, 2004
    #11
  12. jrefactors

    prodigal1 Guest

    this has become silly, along the lines of

    it's a floorwax!
    no! it's a desert topping!
    floorwax!
    desert topping!
    stop it you two...it's both! :)
     
    prodigal1, Dec 31, 2004
    #12
  13. jrefactors

    Huge Guest

    "Desert" topping???? What, like sagebrush? :eek:)
     
    Huge, Dec 31, 2004
    #13
  14. jrefactors

    Bev A. Kupf Guest

    Then perhaps you haven't looked very hard. From the side bar
    at <http://www.apple.com/macosx>, until the heading "Solid as
    a rock":

    "Panther improves the open-standard, industrial-strength,
    UNIX-based foundation and now includes X11 for Mac OS X.
    Along with an enhanced Terminal and updated open source
    projects such as Python, FreeBSD 5 commands and libraries
    make Mac OS X Panther the ultimate UNIX platform."

    The first sentence indicates that Panther has a "UNIX-based
    foundation". The second sentence indicates that certain
    features make Panther "the ultimate UNIX platform".

    So, it hinges on whether a "platform" is a "system", and
    that's a semantic discussion that I won't participate in.

    Beverly
     
    Bev A. Kupf, Dec 31, 2004
    #14
  15. jrefactors

    Bob Harris Guest

    You could run OSXvnc on the Mac and a suitable VNC client on your
    OpenBSD system (does TightVNC run on OpenBSD?). OSXvnc will show the
    full Mac display and control any Mac app running, not just the X11
    environment.

    And if you run a VNC server on your OpenBSD system, you can run "Chicken
    of the VNC" on your Mac and conttrol your OpenBSD system.

    Bob Harris
     
    Bob Harris, Dec 31, 2004
    #15
  16. jrefactors

    Steve Hix Guest

    Works great with Solaris, too.
     
    Steve Hix, Dec 31, 2004
    #16
  17. I don't really care about the legal right to use the term. As a user, I
    go by the "if it looks like a duck and quacks like a duck" rule.
     
    Barry Margolin, Dec 31, 2004
    #17
  18. jrefactors

    Bev A. Kupf Guest

    I should be very careful in making that claim about Cygwin, if I were
    you. Cygwin explicitly _not_ claim to provde a "UNIX platform" for
    Windows.

    It does claim to be "a Linux-like environment for Windows, consisting
    of a DLL which acts as a Linux API emulation layer providing substantial
    Linux API functionality, and a a collection of tools, which provide
    Linux look and feel" (quoted from <http://www.cygwin.com>)

    Beverly
     
    Bev A. Kupf, Dec 31, 2004
    #18
  19. jrefactors

    Bev A. Kupf Guest

    What an incredibly obtuse argument! Let me summarize, Apple on their
    website claims Panther to be "the ultimate UNIX platform". In response
    you said:
    a) platform != system (which may or may not be true)
    b) that Cygwin claims to be a UNIX platform for Windows.

    I simply pointed out that Cygwin makes _no_ such claim, and you shouldn't
    make that claim for them, as they go to length to distance themselves
    from any such claim (second para, <http://www.cygwin.com>)

    What matters (semantic or otherwise) is not what definition _you_ choose
    to apply - what matters are the claims directly made by a vendor (Apple)
    or a community (Cygwin).
     
    Bev A. Kupf, Jan 1, 2005
    #19
  20. Take a look at the Unix family tree, above. OS X is based on code which
    can trace its ancestry directly back to the original UNIX system. Its
    architecture is obviously different, but being a Unix has never really
    been about internal kernel architecture.[/QUOTE]

    Mac OS has no connection to UNIX history except for using BSD libc and
    the commands. If your UNIX history chart believes something different,
    throw it away.
    For simple programs you are right, for more sophisticated programs
    like cdrecord you are completely wrong.
     
    Joerg Schilling, Jan 1, 2005
    #20
    1. Advertisements

Ask a Question

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

You'll need to choose a username for the site, which only take a couple of moments (here). After that, you can post your question and our members will help you out.