# is osx a true unix system



## Click (Apr 20, 2001)

This may be a stupid 	question as i«am not really now anything about unix but my friend (a real pc geek) tried to convince me that os X is not truly a unix system due to the mach kernel.
If my friend was wrong could somebody please give me a god answer I could use to hit my friend with.


----------



## AdmiralAK (Apr 20, 2001)

YOur friend seems to hang out with Linus Tovalds 
(Who thinks that th Mach kernel is crap )


----------



## vihung (Apr 21, 2001)

To answer your question ... we first have to ask what is Unix?

Before I answer that, let me say that it is VERY likely that I do not have my facts right - so you out there who know the facts, please correct me, don't flame me!

As far as I know, the term UNIX can only apply to the operating system developed by Bell Labs in the 60's and anything derived from that. These include all System V derivatives like SCO, HP-UX and Solaris, but not the BSD derivatives (including the older SunOS and MacOS X), and CERTAINLY not Linux/GNU and it's derivatives. The very idea of GNU (from whence Linux sprang) was that GNU is Not Unix (it has been scientifically proven that computer scientist type people like playing with recursive acronyms).

The Unix trademark originally belonged to Bell Labs (now AT&T) and has successfully passed through a number of owners including SCO at one time, to now belong to an organization called X/Open which is the de facto standards' body for all things Unix.

Over the years, the differences of opinion between these three factions (System V, BSD and GNU/Linux) alone have been the cause of so many religious wars (largely along the lines of my dad can beat up your dad any day) that whole books could be written about them. In the old days, wandering minstrels and bards would probably have sung songs about the long dead heroes of these vicious battles.

The differences still exist - but in truth, there has been so much cross pollination that no one derivative is pure bred any more. All three have learned from and contributed immensely to each other's body of work (the beauty of open source and academia). For example, TCP/IP - the basis of the internet - was not developed fior System V but for BSD in the first place. It made it's way into System V (true Unix) many years after that. The bash shell is a fairly recent GNU development, but it can be seen in almost every flavour of Unix around. 

In today's more enlightned times, we have come to realise that there is no way that EVERYONE will agree on ONE TRUE WAY to design or implement something. The closest that the X/Open group has come to a common standard for what is Unix is the POSIX specification. This largely specifies designs and best practices regarding what a true Unix should look like and work like. Amongst many other things, this means that programs written for one POSIX complient system shoudl easily be ported and compiled on another POSIX compliant system. 

You could say that anything that is POSIX compliant is a true Unix. 

Linux (with glibc) is POSIX compliant. The various BSDs are POSIX compliant. And of course Solaris, SCO, HP-UX, and I think AIX, are all POSIX compliant - and so all of these can be cionsidered to be real Unix systems.

However, the funny thing is that many systems that are certainly not Unix have also borrowed from the POSIX specification. Windows NT (and hence 2000 and XP) have POSIX subsystems. BeOS is largely POSIX compliant. Some IBM mainframe OSs (MVS, OS/390) are 100% POSIX compliant.

So ... although none of the above diatribe really answers your question, it should give you enough insight to realise that your question is not trivial!




Now, about those microkernels ...

Usually in any operating system, there are three levels of action - the hardware, the operating system, and the applications. The hardware is the physical processor, memory, hard drive, network adapter etc. 

Imagine a computer as being a sandwich shop. You, the consumer, is a user (or rather a user-run application). The people behind the counter are the operating system, and the raw materials and tools are is the hardware and resources. 

The applications you and I run (whether they are simple things like the Finder, or complex things like Photoshop) usually never deal with the hardware directly. This is for exactly the same reason that you would not be allowed to go behind the counter in a sandwich shop and start making your own sandwich from the raw materials there (although I am sure you are perfectly capable of making your own sandwich_ - the people who work there know where all the correct tools and raw materials are, they know how to use the tools properly, and they can ensure that people are served in the correct order. This is the advantage of platform independence. You can go into any shop and order a tuna sandwich on whole wheat bread - and you know pretty much what to expect - even though the location of the resources, and the exact technique of making the sandwich may be different from one shop to another

Now, some sandwich shops are small, and their sandwiches are not very complicated. Usually in such places, you would have just one person take your order, make your sandwich, and take money from you. This is similar to how Windows 3.1/95/98 and MacOS (up to 9.1) work. In the case of Windows 3.1 and MacOS before System 7, there would only be one person working there, so while your order was being processed, no one else would be able to get a sandwich. In later versions, you could have two or three people working there, but each person would take a customer all the way through the whole cycle. This kind of shop is prone to outages - what do you do when that one person is sick?, and is not scalable - to serve a hundred customers, you need a hundred times the space, and a hundred times the number or people working.

In some bigger sandwich shops, you have one person take your order, and s/he passes on your order to someone else who makes the sandwich, and they pass your sandwich on to the person who takes money, and you get your sandwich. This makes sense for a system where there are a lot of customers, and the sandwiches are a bit more complex so you have people who specialise in only making sandwiches. By taking your order and passing it on to a sandwich maker, the order taker is free to accept a new order while your sandwich is being made. This is the model that most Unix systems use. You, the user, place an order (request a task to be performed). The message is passed to the sandwich maker  (the kernel) where the sandwich is made (the task is performed), and it is sent on to the cashier where it is handed to you for your consumption. You still have one person making your sandwich (a monolithic kernel), but the whole process is more efficient, more reliable and scalable. Also, the layers are independent of each other - you can replace one order taker with another order taker without having to replace th sandwich maker or the cashier. The same goes for the sandwich maker and the cashier - you can swap them out without having to retrain, or rebuild the complete process as long as they speak the same language and use the same terms (implement the same specifications).

Now, there is a third type of sandwich shop - usually even bigger, or more complex - where your sandwich is not made by just one person - you have one person who prepares the bread, another who adds the meat, a third who adds the condiments - and your order is passed from one person to another who fill in the appropriate item. The task of executing tasks is split up into smaller and smaller units - each one independent of the others and you can very easily add or remove people from the assembly line to cope with demand. This is a microkernel architecture - what MacOS X and other Mach based systems use.

Now that you are thoroughly confused with my obscure metaophors, I should probably answer your question ...

MacOS X is basically derived from BSD for the Mach microkernel running on PowerPC. Note the usage of the term "BSD for Mach" like you would have "BSD for x86", and "BSD for PowerPC".  I am sure they could have based MacOS X on a native PowerPC implementation of BSD, but by choosing Mach, they have kept a door open for porting it to other processor architectures very easily.

As such, MacOS X is a true Unix - as much as anything can be called a true Unix - especially when compared to Linux. The choice of whether to use a microkernel or not is a small implementation issue - it is a question of form, not of function. Microkernels are fairly new (in real world systems, that is - not in academia) and so you will find people deriding them - some will have valid reasons, but most will simply be the same kind of people who tell you that in their day thay had to walk two miles in the snow ... uphill ... both ways ... just to get to school.

I personally do not know the exact merits and demerits of microkernels vs. monolithic kernels, but I would guess that microkernels need more overhead to manage the little sub-kernel tasks, but are more flexible and more platform- and implementation- independent.  For those familiar with programming paradigms - I somehow see it as being very similar to the procedural vs. object oriented issue. That's right - one big messy glob of goo vs. lots of little discrete self-contained drops that sometimes come together to exchange their contents!

Hope this helps (or at least spurs someone to write something in reply that helps).

P.S. Linux Torvalds (original creator and current manager of the Linux kernel) is a staunch supporter of monolithic kernels over microkernels


----------



## monty (Apr 21, 2001)

vihung is essentially correct. Macos X has quirks but it is a Unix. Linux technically is a Unix clone but all these things being open source (even darwin) the code from all of them has mixed. Basically if it calls itself a Unix and most CLI unix apps will compile on it then it is a Unix. Sort of like if it walks like a duck, quacks like a duck then it is a duck. Also Linus says that mach is a unix. His comments are directed at the fact that he thinks monolithic Unix kernels (like his) are better than micro Unix kernels (like mach). Basically you're friend doesn't know what he's talking about.

peter


----------



## AdmiralAK (Apr 21, 2001)

LOL...
I can just see this article being published in maccentral.com
(you should copyright you metaphors, ...as a matter of fact the whole post
shoule be copyrighted LOL )


Admiral


----------



## Click (Apr 21, 2001)

>So ... although none of the above diatribe really answers >your question, it should give you enough insight to realise >that your question is not trivial!

So I tought but my friend kept telling me that osx is not unix ,just some unix like mix

>Basically you're friend doesn't know what he's talking >about.

Yep, but I can«t say that I now what I«am talking about.
If I try to explain to my friend why I love mac (easy to use, easy to be creative....) he tells me for instance: Macs have only a one button mouse so it must be crap.

Thank you all for the informative posts. I feel a little wiser now


----------



## atoms (Apr 21, 2001)

Click,
Perhaps your friend, at some subconscious level, is nervous.

Most of the really cool stuff in computing lately has been coming from the various parts of the unix world.

microsoft is looking more and more pathetic as it continues to try and rewrite the standards for the world it wants to live in ie the .Net initiative. The only people who are even remotely exciteed about that stuff are those who feel like they will be stuck using it - those who have already invested too much to switch to a less crappy platform...

Users of OS X can finally get in on the real party and users of that other O$ may be left out in the cold.


----------



## monty (Apr 21, 2001)

> _Originally posted by Click _
> *he tells me for instance: Macs have only a one button mouse so it must be crap.*



yeah we run into that crap all the time don't we. It isn't until you see a new user try to use a pc and watch as they press both buttons down and get nowhere.

 As for power users if they want a three button mouse, go to to any computer store, buy logitech 3 button with scroll wheel, take off PS/2 adaptor, plug into USB port and OS X recognizes 2 buttons and the scroll wheel automatically. No extra software needed. I did this about a month ago. Note: Carbon apps don't recognize the scroll wheel yet.

peter


----------



## AdmiralAK (Apr 21, 2001)

lol....
I can just picture this:
Brand new user to a PC (windows) system.
Hey goes to click on something, using both buttons.
THe computer complains and pops up a dialoge box
saying: "Sorry, your timing was off, please try again
pressing both buttons simultaneously"  LOL ....


Admiral


----------



## vihung (Apr 21, 2001)

Yeah ... I have to say that the one-button mouse can restrict power-users a bit. However, there have been third-party two- and three- button mice available for Macs almost since the beginning. I personally use a four-button mouse (currently I have a Logitech Cordless Desktop Pro wireless keyboard and mouse - works fine in OS X and the older OS)

I remember the pains I went through teaching my dad (an otherwise technically savvy person) who is a PC user (because as an architect he needs to use AutoCAD, and they stopped making it for Mac a long time ago) the differences between left- and right- click and single- and double- click.

I remember reading somewhere that one of the members of the original team designing the first Macintosh was strongly against even having double-clicks - stating that having to double-click in some places, and single click in others was too confusing. I think that Steve jobs was against it as well. But it became too difficult to build the system that way while still using the metaphors they were using

Now of course, the web has changed that, and people have learned how to build applications where every action can be performed with a single-click. 

And people still think question whether the web has really changed everything! ;-)


----------



## AdmiralAK (Apr 21, 2001)

See I have fared well with a one button mouse since the beginning of my compuer use which was like a decade ago.  I consider myself a power user and having only once button is ok *for me*, but one click ????  I dont use contextual menus THAT much and when I do its once in a blue moon 

If that were the case we would have to redifine how we select a single item.  remember the "launcher" and "at ease" those were one click based, and they only launched apps, they did not provide any means for selecting.


just sound tooo weird 


Admiral


----------



## baobao (Apr 22, 2001)

> _Originally posted by monty _
> *
> ... buy logitech 3 button with scroll wheel, take off PS/2 adaptor, plug into USB port and OS X recognizes 2 buttons and the scroll wheel automatically. No extra software needed. I did this about a month ago. Note: Carbon apps don't recognize the scroll wheel yet.
> 
> peter *



But the OS X Finder doesn't get my Logitech's wheel either. Does it mean it's Carbon? That would keep me awake at night...


----------



## RacerX (Apr 22, 2001)

It is strange, I have worked with NeXT systems for close to 7 years, and I still don't know why they have the second mouse button.

Remember that in REAL unix, you DON'T have mice. The mouse is for the GUI on top.


----------



## rharder (Apr 23, 2001)

The Finder is Carbon. At first you'd think it was different enough from OS 9 and earlier that surely that didn't just carbonize the old Finder, but perhaps they did. In any event, the Finder is not Cocoa. Too bad. No Services menu. No scroll wheel.

To the one who started the thread, try not to let your friend get to you. People are idiots (that's The Dilbert Principle). People often confuse a <em>preference</em> about an operating system with a <em>universal truth</em> about an operating system, which I'm sure is an oxy moron.

There's no one perferct OS. What cracks me up are the people who get positively offended that people would even think of using an OS different than what they use, and trust me, you'll find those people using MacOS, Windows, Linux, TRS-80, whatever.


-Rob


----------



## Dominion (Apr 23, 2001)

I've always been of the opinion that decent software shouldn't need more than one Mouse button..

Take a look at all (most) of the software that Mac's have been running for years, and you'll see that they still rely heavily on well layed out, and complete menuing systems, and the keyboard shortcuts.

A proficient user can be a wiz, one hand on the option/apple keys and the other on the mouse, click and pressing to zoom around applications with ease. 
The best thing is, learn the keys for cut and paste in one app, and 5 years later in new programs it's still the same key sequence.  Standards are bliss when obeyed.

Now take a look at what's happened with Windows over the years, starting with Two buttons, in early days, there was almost no need to the right mouse button, it was very useless.. Then with Win95 the idea of "Good interface design" went quickly to the trash can and the right click came into fame.

There is something very wrong with the right mouse button, and the way it is used in applications under windows. The rigth click has become a quick way to get to "common" or "needed" options. And generally it is very hard or impossible to find the same options or controls under the normal menu's.

Too many programs are going this way, and becoming bad examples of what to do when making a menu system for programs. It is not good design to have the user, have 2 or 3 or even more places to find controls, it becomes confusing at best, especially to learn a new app. things could be completly different.

I'm all for one mouse button, it means you have to think about what your program should be doing when the user is interacting with it, and it also helps you creat a well designed program that is easy to learn and easy to navigate.

-A


----------



## AdmiralAK (Apr 23, 2001)

I *HATE* it when I go online to web sites and they say "right click here"..... I DO NOT have a right click!!!! Bad, idiotic, stupid programmers!


----------



## atoms (Apr 23, 2001)

i cringe whenever i see the phrase "click here" at atll.

If the user is using  mouse/gui browser, hyperlinks and and to use them should be obvious enough.

More importantly, not all users can click at all...


----------



## Click (Apr 23, 2001)

> _Originally posted by rharder _
> 
> *
> To the one who started the thread, try not to let your friend get to you. People are idiots
> *



I wont. Actually he was a little embarrassed when he admitted that OsX is Unix. I have another friend who is studying programing at university. He has always teased me for using mac. Now he said that if he had the money he would instantly buy a cube and OsX 



> _Originally posted by vihung _
> *
> 
> one of the members of the original team designing the first Macintosh was strongly against even having double-clicks - stating that having to double-click in some places, and single click in others was too confusing*



I have been noticed in our school that there are many who don´t now when you should double click and when you don´t ,so they keep double clicking on everything. And it works for them. 

I think the greatest problem with 2 buttons mouse on the pc and 1 on mac is that its different way of working. I use both and it can be quite confusing sometimes. My opinion is that one button is enough.

-&ouml;je


----------



## resedit (Apr 24, 2001)

OS X is a true UNIX.

Linux is not.
Linux is a unix clone.

OS X is largely derived from BSD which was developed at UC Berkely is a true unix, though different from AT&T Unix.

Linux does not have the legal right to call itself Unix. I believe Darwin does (I'm *almost* positive).


----------



## AdmiralAK (Apr 24, 2001)

There is some sort of "board" that brands OSes UNIX or non unix dependant on the particular OSs   abilities to resemble what a UNIX OS is.  I think that the definition evolves as time goes by.  Liux has not received such a certification.


Admiral


----------



## Klink (Apr 25, 2001)

Some more tidbits on strengthening the argument of X is broadly nix...
Hear is what Apple states in there Inside MacOSX developers docs.

Integrated with Mach is a customized version of the BSD operating system (currently 4.4BSD). Darwin's implementation of BSD includes many of the POSIX APIs and exports these APIs to the application layers of the system. BSD serves as the basis for the file systems and networking facilities of Mac OS X. In addition, it provides several programming interfaces and services, including¥  the process model (process IDs, signals, and so on)¥  basic security policies such as user IDs and permissions¥  threading support (POSIX threads)¥  BSD socket

Here is a snippet from the whatis site about POSIX

POSIX (Portable Operating System Interface) is a set of standard operating system interfaces based on the UNIX operating system. The need for standardization arose because enterprises using computers wanted to be able to develop programs that could be moved among different manufacturer's computer systems without having to be recoded. UNIX was selected as the basis for a standard system interface partly because it was "manufacturer-neutral." However, several major versions of UNIX existed so there was a need to develop a common denominator system. Informally, each standard in the POSIX set is defined by a decimal following the POSIX. Thus, POSIX.1 is the standard for an application program interface in the C language. POSIX.2 is the standard shell and utility interface (that is to say, the user's command interface with the operating system). These are the main two interfaces, but additional interfaces, such as POSIX.4 for thread management, have been developed or are being developed. The POSIX interfaces were developed under the auspices of the Institute of Electrical and Electronics Engineers (IEEE).POSIX.1 and POSIX.2 interfaces are included in a somewhat larger interface known as the X/Open Programming Guide 4.2 (also known as the "Single UNIX Specification" and "UNIX 95"). The Open Group, an industry standards group, owns the UNIX trademark and can thus "brand" operating systems that conform to the interface as "UNIX" systems. IBM's OS/390 is an example of an operating system that includes a branded UNIX interface.


----------



## dani++ (Apr 25, 2001)

There are substantial diferences between Linux and a true UNIX. Ask your friend about the memory device on the '/dev' directory. I think it's called 'kmem' or something like that.

Linux has this 'kmem' directory which is a filesystem representation of the contents of the memory of the system (kernel space, user processes, etc). It is something cool and geek-like, but not too useful and definitely not widely used (remember it's not standard UNIX).

Imagine a particular system administration program uses this feature on Linux, it wouldn't work on any other UNIX out there. Wouldn't even compile.

As far as I know it's not on POSIX and not on UNIX, so tell your friend to keep his mouth shut.

Moreover, the TCP/IP functions and API (sockets, etc.) were first developed on BSD, which MacOS X is based on. In fact, the original UNIX implementation at Bell Labs was networkless. The tcpip API derives substantially from the original (open/read/close) UNIX API philosophy, feels more like a hack.


dani++


----------



## strobe (Apr 25, 2001)

I prefer to say UNIX is craaap and OS X is not UNIX.

Actually I prefer to say eunuchs.

When you look at the history of UNIX you come to realize what crap it is. UNIX was designed to run on one machine using one processor. It's taking years and years to break free from it's non-multithreaded roots. When you look at the file hierarchy of UNIX you realize how utterly stupid it is. /etc/? What were they thinking? The C language was purposely written to be unreadable. It's a form of job security and gave software engineers an ego trip. Then look at the dozens of common programs which are used in a stanard distribution. Do they share common interfaces? Is there some logic behind the choosing of flags and other arguments? Is there a general stdin and stdout formatting? Even sockets was a hack. The TCP specification was written and somebody figured out a quick and dirty way to implement it, and then it was extended and re-extended. Heck, most of the network stack modifications are non-standard and don't follow any universal API, not like STREAMS.

UNIX is a heap of hackware and always has been. It was a quick and dirty way to share expensive machines and was poorly designed from the very beginning. The past 30 years has mostly been trying to fix mistakes made in the design in years prior. 

The root directory was originally used like a home directory. That's why you have this moronic file hierarchy like etc, var, tmp. It was cleaned up slightly when /usr was made, but they failed to make a per user pref and lib and bin etc. This demonstrates how multiple users was a hack on a system designed for single user. The same is true with trying to make a non-multi-threaded OS multi-threaded. 

The fact that everything is consolidating around UNIX tools and other stupid UNIX-isms just shows how entenched we are. We will never get rid of it, we'll only grow AROUND the problem. It'll remain like some appendix or other useless organ only that if ou try to remove it you'll die. More like a talking conjoined fetus on your forehead.

The only reason so many people love this system is because it's the most akward, contrived, ridiculously complex heap of hackware they feel superior my mastering it and secure in the thought that somebody somewhere has this talking fetus on his forehead which will only shut up if you hire one of these engineers to prepare special conjoined fetus food and feed it with a straw made of rare orchid stalks.


----------



## monty (Apr 26, 2001)

LOL!

So if apple switched to it, they must have thought that the OS9 core was worse. After your post, that's unimaginable!

Peter


----------



## vihung (Apr 26, 2001)

Well .. we're getting away from OS X specifics here and entering the realm of the aforementioned religious wars ...

But I essentially agree with what you say, strobe, that Unix is a hack upon a hack wrapped around a hack. 

The thing is that ANY modern operating system - whether an enterprise platform, or a consumer operating system,  is a hack. DOS/Windows is a prime example - you had a single user, single task, single processor, text-only, 16-bit OS that was hacked for 32 bits, then for [proprietary] networking, then for multiple users, then for GUI, then for standard networking, then for multimedia and so on and so forrth. Similarly you have the Macintosh - a state of the art, amazing, and most modern OS when it came out ... but hacked to oblivion over the years - again from single user, single processor to networked multiple user, from 68k to PowerPC ... etc.

I am not familiar with industrial strength platforms - but I am sure someone knowledgeable in those will be able to cite why their favourite platform is also hack upon hack upon hack.

There have been attempts at rewriting things from scratch. BeOS comes to mind with a vengence here - an excellent idea - OS completely built from scratch to be legacy free and architecture independent. Designed with multiprocessor, multitasking, multimedia machines in mind, and incorporating object oriented design, and every other good design concept currently in vogue. Quite well executed too

Windows [OS/2] NT/2000/XP also comes to mind - built from scratch. Again, designed to be legacy free and architecture independent, with multi-processor, multi-user, and multi tasking support in mind. Also somewhat Object Oriented. Also reasonably well executed in my opinion (despite a few things like security issues, and of course it being traditional to despise MS regardless)

However, they have not been very successful in replacing the old guard. Most Mac and Windows users do not know what BeOS is. Most Windows 98 or Windoes ME users would not use Windows NT or 2000 unless forced to do so at work. 

I have a feeling that Microsoft wanted to get away from the DOS legacy a long long time ago. When they were working with IBM on OS/2 NT (that later become Windows NT), I think they realised that hacking DOS was not going to be good enough. They were probably trying to get away from the DOS codebase since then, and the Win32s subsystem for 16-bit Windows and even Windows 95 (despite the huge fanfare on launch) were really just side projects to get something out there, and to bide the time while they came up with a proper implementation from scratch. It took them six years to finally say goodbye to DOS and the hacks built around it (with Windows XP being the first WIndows NT based consumer operating system, to be released)

The funny thing is that even these so-called hack-free systems are still quite hacked. They had to be in order to be accepted in the broader world. For example, BeOS has a POSIX subsystem, all the GNU utilities and a Unix shell - obviously hacked! Windows NT has a 16-bit Windows on Windows subsystem - nice shiny new OS hacked to run older apps inside it. The Windows registry (in NT/2000 and Win 95/98/ME) is quite obviously a single-user to multi-user hack when you look at it's structure. Moreover, I am told that this so-called designed from scratch OS has a lot in common with the 30-year old VMS!

The thing is that the industry, or the user community, is moving way way faster than the OS developers can keep up with. We talk about hardware growing faster than software and so on ... but users (or I should say uses - the things we do with our computers) are growing way faster than any of these combined. It is VERY hard to make rapid changes to something as core as an OS. And you need to take care of so many things when changing the OS - hardware support, backwards compatibility, stability, consistency, migration from older models to newer models (or APIs)

The funny thing is that Unix, despite all these shortcomings has overscome a lot of these problems ... it has some VERY good things going for it

1. Industry Support: Anyone who is anyone in IT today has a their own version of Unix - whether it is IBM, HP, DEC (Compaq), Sun, SGI ... and despite a few factional differences, almost any new development on one version spreads to the other versions quite quickly. These people have a lot of resources at hand, and a lot of very important (=wealthy?) customers relying on them to be up-to-date and correct. This has to be good for Unix in general

2. Academia and Open Source: They say that the most important innovations occur at the fringes of society. In the IT world, this fringe it probably defined by the lone geek in some cold college lab hacking some amazing new code. With Unix rooted so deeply in academia, having so many smart people (as well as a fair share of incredibly dumb ones!) working with it  - learning about how OSs are designed from studying Unix, looking at the source code and things like that - has to be one of the best things happening to Unix in terms of innovation. I don't think I have to go over all the wonderful technology that has changed our world that started off with some maverick student somewhere

So anyway ... the point I am trying to make is that Unix may be craap - but it is good craap! It is tried and trusted, and yet it is rapidly changing. It has far more industry support than any other OS. There are probably more people working on Unix-related applications than on any other platforms, and there are certainly more people studying Unix than any other OS.

What this means is that with more eyeballs and fingers working with Unix, while the industry matures, more and more of the crap hacks get improved, and then replaced altogether, and innovation and improvements - in terms of new features, bug fixes, security hole fixes etc. - are all done far faster than anything else that is non-standard, non-industry-supported - however good it may be.

Also, you will see the focus of the action shift from the core OS to higher level stuff such as GNOME (as an application platform, not just a UI), the OS X Native APIs, and other similar things, as well as the web being the new platform.


----------



## strobe (Apr 26, 2001)

gnome is craaaap too, and has an extra "a" than UNIX's craaap.

Eventually what will happen when we are all dead and buried is fewer and fewer programs will be dependent on UNIX while more and more will be dependnet on a protocol. By then the PC will be dead and everything will be embedded.

Unfortunately that will take decades because 90% of the world's programmers are working within the current framework. 

Java isn't helping either. Kind of ironic given how that was one of the revolutionary things Java was supposed to bring about


----------



## AdmiralAK (Apr 26, 2001)

I dont really like GNOME either...
Ised it as part of linux PPC.... bad bad experience.


brw can someone define the essence of an embedded system ???


Admiral


----------



## strobe (Apr 27, 2001)

it means instead of having one computer like a PC everything you use has it's own computer.

To use an example off the top of my head, instead of using Painter on my PC, a painter-like program may be embedded in a drawing tablet.


----------



## ginoledesma (Apr 28, 2001)

Mac OS X is, if not fully, then partially, Unix. Otherwise, Apple could be sued for saying so. 

I, too, don't know the intricacies between monolithic kernels and microkernels. But try asking your friend this, "Is Linux UNIX?" The answer is *no*. Linux is UNIX-like, but is not UNIX. It's a flavor of Unix, but is not Unix. As was mentioned earlier, Unix is from Bell Labs, and all other derivatives/variants are Unix-like.

You can ask the Linux people to verify this for you, too.


----------



## ginoledesma (Apr 28, 2001)

Well, there is support for the mouse in the CLI in Linux. They use it for copying/pasting code across virtual screens or within the same screen. 

Oh, the one-button mouse is simple, and simplicity has its advantages. The second and third mouse buttons simply makes things faster, but that doesn't mean it offers features unavailable to single-button mouse.


----------



## Maximus (Apr 28, 2001)

As a follow-up to some of the discussion about microkernel and monolithic OS structures, I thought I would point people who want to know more to a book and a very old debate between Andrew Tanenbaum and Linus Torvalds regarding the relative benefits of both structures.  The book is Open Sources:  Voices from the Open Source Revolution.  Appendix A of that book has the actual debate, but it can be read in its entirety here:  http://www.oreilly.com/catalog/opensources/book/appa.html

The debate is colored by the fact that it took place in 1992.  That is an ancient era, by today's standards.  Moreover, it is obviously a very reasonable defense by the creator of Linux, and therefore, it revolves around the problems Linus Torvalds faced as he tried to organize his efforts to develop Linux as an Open Source piece of software.  Both contributors have a lot to say, and I think it's well worth thinking about again in the context of this thread.

The book is quite good too, particularly if you want to know a bit about the history of Unix and the Open Source movement.  As for whether microkernel or monolithic systems are the best, I think that is still playing out.  I think generally, microkernel systems have the real advantage in the long run, but that in the effort to get past particular challenges that were probably faced by Linus Torvalds, a monolithic system obviously was the most likely OS structure to chose.  It's a bit immature of anyone, however, to brand either strategy as inappropriate, dated, flawed or "not Unix".  That will ultimately be shown in due time.  Enjoy the debate.


----------



## strobe (May 1, 2001)

I don't mind three buttons, but I do mind that X11 (and gdm) use the second and third button when I could determine their use for myself. The whole copy+paste routine with mouse buttons is idiotic. You don't need three mouse buttons to do cut+paste without the keyboard, MacOS does it with one (drag+drop text, beat that eunuchs!) leaving the other two to do other nifty time-saving routines like drag-scrolling.


----------



## RacerX (May 3, 2001)

I must have missed this earlier

"The Finder is Carbon. At first you'd think it was different enough from OS 9 and earlier that surely that didn't just carbonize the old Finder, but perhaps they did. In any event, the Finder is not Cocoa."

Where did this come from? the Finder.app is an upgrade to Mac OS X Server's Workspace.app (which came from OPENSTEP, which came from NEXTSTEP), only the name has changed to protect the innocent (the average Mac user). There is a Carbon app called the "Finder", but all it does is point to the real Finder.app (infact it is callled the "Mac OS X Fake Finder 1.0"). Let me put it to you another way, if you find something like "English.lproj" inside of an app package... it ain't Carbon!

Sorry Rob


----------



## rharder (May 3, 2001)

Well, maybe I was wrong about the Finder, but that's what I've heard everywhere, even from Apple's mouth. I know the Finder certainly doesn't <em>act</em> like a cocoa app and it certainly <em>does act</em> like a carbon app.

-Rob


----------



## RacerX (May 3, 2001)

What does it mean to "act like"? Carbon apps have a few VERY distict proporties. First, and most notable, is the ability to run in both MacOS 8.6+ and Mac OS X (because 70% of the APIs used are the same). Second, Carbon apps require special support that is actually just short of launching the full MacOS in Classic (again, because 70% of the APIs are the same, and must be supported some how), this is where the performance takes a hit, but protected memory can be applied. Third, multiple language support, most of the better Cocoa apps have more than just the English.lproj directory in them to support other languages besides english.

Not everyone at Apple knows the ins and outs of Mac OS X, this is why you can see info coming from them that says "Mac OS X is based on FreeBSD" when in actuallity that is BS. Mac OS X uses and special 4.4BSD interface layer (part is built into Darwin as the interface to the Mach 3.0 microkernel for aspect of the filing system, networking, and multiprocessor support, the other part is the APIs and libs that make up posix compliance, this part being optional while installing Mac OS X), with tools being ported from BSD, OpenBSD, and some from FreeBSD (far more from OpenBSD than FreeBSD as I recall). But, some people see BSD and say FreeBSD (the most widely used version currently). Even Apple's support reference manual for Mac OS X is riddled with errors and generalizations (this is as completely new to Apple's support personal as it is to long time Mac users).

Another noticable difference would be the "save sheets" (Cocoa) vs. "save windows" (Carbon). Carbon (in theory more than practice) should be backwards compatible with the old MacOS, and so Carbon apps don't use the cool "sheet" effect.

As for "acts like", I'm not quite sure what your looking for (or at) to make that judgement. Some people might say speed, but half of the "speed" problem with Mac OS X is the same one that people had with Windows 2000 and it's "cool" fade in and fade out effects (openning takes NO time, fading takes SOME time, so it must be running "slower" even though a NO time fade is no "fade" at all, right?). These effects are timed to play at the same speed on a slow systems as they would on the fastest system (so many re-draws per second).

Hope this helps when people start classifing this app as Carbon and that app as Cocoa. All you do is either try to save something (no "sheet", not Cocoa) or look in side with something like ResEdit (no <language>.lproj, not Cocoa).


----------



## AdmiralAK (May 3, 2001)

I think that is is worthwhile to note that NetBSD amd OpenBSD have PPC versions, but FreeBSD is strictly x86 (well, since the last time I checked anyways)


Admiral


----------



## RacerX (May 3, 2001)

How could I forget NetBSD... my friends would kill me (some of them sware by it and hate FreeBSD, I don't get it my self). It's a good thing I don't use my real name.


----------



## AdmiralAK (May 3, 2001)

LOL its a good thing u arent using your real name.  Different BSDs are known for different things, so noty all BSDs are the same I take it.  NetBSD is more aabout being the most compatible OS outthere (meaning it runs on most hardware).  OpenBSD is all about security.  As for FreeBSD, never used it so I dont know its tag line


----------



## rharder (May 3, 2001)

Looks like I need some direction here: 

Am I right in understanding that Cocoa apps have a Services menu while Carbon apps don't? 

And am I right in understanding that Cocoa apps support the scroll-wheel on a mouse while Carbon apps don't? 

Furthermore am I right in recalling that the Finder has no Services menu and doesn't support the scroll-wheel?

What's going on? Is the Finder Cocoa or not? If it's Cocoa, what's all this I've read about Cocoa apps having the Services menu and support for scroll-wheel mice?

-Rob


----------



## RacerX (May 3, 2001)

"Am I right in understanding that Cocoa apps have a Services menu while Carbon apps don't?"

Services are reach via the Finder, it was not used much (if at all) in the Finder/Workspace.app, so was dropped. This has nothing to do with it being a Cocoa app. I have outlined EXACTLY what does

"And am I right in understanding that Cocoa apps support the scroll-wheel on a mouse while Carbon apps don't?"

Why would this be a sign? 

"Furthermore am I right in recalling that the Finder has no Services menu and doesn't support the scroll-wheel?"

Yes, and I don't know, I don't have a scroll-wheel. 

"What's going on? Is the Finder Cocoa or not? If it's Cocoa, what's all this I've read about Cocoa apps having the Services menu and support for scroll-wheel mice?"

Lets try this again (I didn't think this was that hard), if the structure of an app includes directories with "language".lproj THEY ARE COCOA! If you have ANY question left in your mind, try this:

In the Finder, open a window (I just the browser mode myself), go to the "Go" menu, go down to "Go to the folder..." If it is a window dialog it is Carbon (I am completely wrong then), if it is a sheet dialog it is Cocoa (and I am completely right, and we end this).

Go on, I can wait...


----------



## PoweMACuser (May 4, 2001)

What does TRUE unix mean and what is TRUE system?

I am a windows user before and became Mac user for only half year. I always hear the term TRUE system, TRUE unix. Then what is the counter-term, like FALSE system or VIRTUAL system? Is there any term like this? why unix is TRUE and other is NOT true? Does TRUE mean real-time?

I don't have the exact concept of this term. Any one can explain?

regardly.


----------



## vihung (May 4, 2001)

I think the issue here is whether an operating system can truly claim to be "Unix", not whether Unix can claim to be a true operating system!

The issue revolves around the fact that Unix is more than just a concept - a set of APIs or commands or interface guidelines. It is is a redistered trade mark and an industry trusted brand name. 

I think you should read the first few posts - especially the rather lengthy one I wrote - for more insight


----------



## Dominion (May 4, 2001)

TRUE unix ? Never heard of such guff.. and I've used just about every unix that exists at least once in my life...

I guess it's refering to what a person calls a unix operating system. a "true" unix is then I guess is one that
has a kernel and an OS and complies to certain standards..
POSIX etc etc.

*shrug*

-Andrew


----------



## strobe (May 4, 2001)

So much misinformation so little time....

This Carbon vs. Cocoa thing is really pathetic.

First of all Finder.app is not Workspace.app. Finder is a PowerPlant application fo crissakes!! Geez, you NeXT people are so out of touch!

Finder.app doesn't even link to AppKit! "uuuh, OS X is OPENSTEP...must have Workspace.app....must continue NeXT legacy...error error....."

Repeat after me: OS X is not OPENSTEP

Repeat that sentence until it sinks through.

Finally I have to say yes, Carbon and Cocoa do behave differently. This is a BAD thing and hasn't even been addressed by Apple. In fact their Aqua HI Guidelines don't even cover areas where the two libraries are in conflict. OS X is totally schizophrenic and it's pissing me off.

Consider that Carbon, Classic, and Swing on OS X select text the mac way while Cocoa selects text like windoze. This is only the tip of the iceberg. OS X has three sets of color pickers, three ways of selecting text, four pairs of open/save dialog boxes each with a different way to navigate, three different menu layouts, four different appearances, four different title bar drawing routines, three different menu bar drawing routines, three different sets of menu item states, the list goes on and on. I don't care much about appearance for my personal use (strategically it's more important), however when I have to adjust to the different behaviors of these applications my productivity nose-dives. 


Well anyway have fun beating up the NeXT loser over thinking the Finder.app is the old Workspace.app


----------



## Click (May 4, 2001)

I started this thread a while ago and the issue was was not if unix is a "true" system or "true" unix. The question was more, Is OSX unix. A friend of friend of my stated that osx is not unix just some unix like mix.


----------



## RacerX (May 4, 2001)

"First of all Finder.app is not Workspace.app. Finder is a PowerPlant application fo crissakes!! Geez, you NeXT people are so out of touch!"

Okay, lets deal ONLY with Apple. Here are the major releases that Apple has made since buying NeXT:

Prelude to Rhapsody (OPENSTEP 4.2), Rhapsody DR1, Rhapsody DR2, Mac OS X Server 1.0-1.2v3, Mac OS X DP1-4, Mac OS X PB, Mac OS X 10.0

I have most of these, which is the one where they decided to create a whole new applications to replace the Workspace.app? It is there in Rhapsody (both versions), it is there in Mac OS X Server (all versions). And when did Metrowerks create their developement tools for Mac OS X? They were not there for Mac OS X Server. I don't recall see anything of theirs on the developer previews I've seen (which came with a full set of developement tools). So which one was it?

"Finder.app doesn't even link to AppKit! "uuuh, OS X is OPENSTEP...must have  Workspace.app....must continue NeXT legacy...error error....."  "

Can we say Core Services, here lets say it together... CORE SERVICES. Very good, you are actual smarter than you look (not really). You ARE the reason for renaming the Workspace.app. "Mac... must have Finder... where is my security blanket?... mommy!" Grow up, get a clue, and get a life.

"Repeat after me: OS X is not OPENSTEP" 

Repeat after me: I'll do research before making looking stupid in public

Repeat that sentence until it sinks through. (never mind, it won't work, your a lost cause)

"Well anyway have fun beating up the NeXT loser over thinking the Finder.app is the old Workspace.app"

I guess that would be Steve Jobs, Avie Tevanian, and the countless other people at Apple, Omni, Stone Design, and Stepwise. At least us NeXT losers are in good company.


----------



## strobe (May 4, 2001)

> _Originally posted by RacerX _
> *"First of all Finder.app is not Workspace.app. Finder is a PowerPlant application fo crissakes!! Geez, you NeXT people are so out of touch!"
> 
> Okay, lets deal ONLY with Apple. Here are the major releases that Apple has made since buying NeXT:
> ...



Duh, OS X Server and OS X are totally different. OS X Server was OPENSTEP with a mac facade.

And they didn't just create new applications. They created a new kernel, a new driver architecture, and a new display server. It's a totally different OS!



> *
> 
> "Finder.app doesn't even link to AppKit! "uuuh, OS X is OPENSTEP...must have  Workspace.app....must continue NeXT legacy...error error....."  "
> 
> ...



CoreSservices? Do you mean Core Foundation? Neither of these are AppKit, not a one. Core Foundation is a subset of Foundation which all Carbon and Cocoa apps use. 

Workspace.app hasn't been renamed. The old mac Finder isn't there either. It was completely rewritten from scratch, got a clue yet?



> *
> 
> "Repeat after me: OS X is not OPENSTEP"
> 
> ...



Looks like you didn't do any research, you're blowing hot wind out of your ass.



> *
> 
> "Well anyway have fun beating up the NeXT loser over thinking the Finder.app is the old Workspace.app"
> 
> I guess that would be Steve Jobs, Avie Tevanian, and the countless other people at Apple, Omni, Stone Design, and Stepwise. At least us NeXT losers are in good company.  *



Ask any of those people if Finder.app in OS X is Workspace.app. It's plain to anybody with a brain that it isn't. 

man otool


----------



## RacerX (May 4, 2001)

"And they didn't just create new applications. They created a new kernel, a new driver architecture, and a new display server. It's a totally different OS!"

So what your saying is that Darwin can't possibly be the kernel used in Mac OS X Server 1.2. And the new display server, yes I can see why Apple would throw away all of the work in Rhapsody/Mac OS X Server just to move from Display PostScript to Display PDF.

Tell me this then, how have the old NeXT developement firms been able to afford rewriting all their apps from scratch (they must have also, if Apple had to). TIFFany (still in version 3, strange for a complete rewrite), OmniWeb, Create, RBrowser, etc. These aren't big money firms that could support the R&D the your versions of Mac OS X's developement.

Let look at the REAL history here. Rhapsody was a finished product, but Mac developers didn't want to spend the time and money to rewrite their apps for Yellow Box. Effectively creating an applications barrier that Apple didn't see Rhapsody getting past. Apple added a suite of server apps and sold the final version of Rhapsody a Mac OS X Server.

Apple then went back are started to develop a new application environment that would be easier to port to for most existing Mac apps, Carbon. During this long (longer than Apple thought it would be) development period for Carbon, Apple decided to give the rest of the OS a face left. This included replacing Display PostScript, adding OpenGl, and extending QuickTime's ability.

I can assure you that at NO time did Apple scrap the code for the Workspace.app, which is still the heart of the new Finder.app. Any difference between the current Finder.app and Server's Workspace.app came about slowly over the many releases from DP1 to the current 10.0.2. Infact DP1 was Apples first stab at Carbon, and the first steps towards the current Classic from the original Blue Box.

Just because you "johnny come lately" wishes this magically appeared out of thin air, doesn't erase each of the steps take in the process.

Again, as I asked earlier, which of the releases was the "First" release of this Finder.app (which has no relation to the Workspace-based app used in the version prior)? You answer that question, and you can win this. It is that simple.


----------



## AdmiralAK (May 4, 2001)

Such "debates" are very educating 
take notes


----------



## RacerX (May 4, 2001)

I did find tools for Metrowerks on the DP3 CD.


----------



## strobe (May 4, 2001)

Workspace.app would use AppKit to make windows, scrollviews, controls, etc. Workspace.app would use Objective-C. Finder.app does not, it uses PowerPlant and it's been written in C++. Finder.app doesn't even use any Objective-C calling methods...none. It doesn't even link to the objc lib so it couldn't possibly even send a message.

So I guess Apple took WorkSpace.app which was written in Objective-C using AppKit which has it's interface defined in NIBs created by Interface Builder and decided to rewrite it in C++ using PowerPlant and convert the NIBs to constructor PPob resources. I guess this also means the cow jumped over the moon and the dish ran away with the spoon.

No dude, Apple did not take Workspace.app and rewrite it as Finder.app. You are a clueless moron, a regular moron would never suggest taking an Objective-C application using Interface Builder NIBs then converting every line of Objective-C code, all the runtime messages, into PowerPlant C++  class structure calls and then take the NIBs and convert them to PPobs just to see if it could be done. No sir, only a clueless moron would suggest Apple would waste it's time doing such programmatic gynmastics. It would take a billionth of the manhours required to write the Finder FROM SCRATCH!

And if I were to write it from scratch I would do what they did. Cocoa doesn't even handle aliases and OSTypes for crissakes!

man otool clueless fool, man otool


----------



## RacerX (May 4, 2001)

Boy, you are losing it there guy. Which is okay, usually when people don't have a answer they get angry. So I ask again, which of the developer releases did Apple decide to scrap the original code from the Workspace.app? In fact if you could tell me when Apple moved from the MacOS.app to Classic, I would be impressed (this is a trick question boys and girls, Apple had version of both on DP1 and DP2).

Anyway, can you answer that simple question? So far you are implying that you can't.

And have you thought about anger management counseling? Bottling up all that hostility can't be good for your health.


----------



## RacerX (May 4, 2001)

If you have missed our earlier exchanges. I have slowly work strobe from his first comment in which the Workspace was only in OPENSTEP all the way up to Mac OS X Server. No for my next trick, I present a process veiwer shot from Mac OS X DP2 (note the "workspace" listed in the image)


----------



## strobe (May 5, 2001)

It's easy to see if an application was written in C++ using PowerPlant or Objective-C using AppKit. If you can't tell the difference you're a moron. Just look at the package contents or the executable and it's blindingly obvious. 

Finder.app in OS X was developed from scratch. It is not Workspace.app.


----------



## RacerX (May 5, 2001)

"If you can't tell the difference you're a moron."

I take your COMPLETE avoidance of answering the question as the fact that you don't know when it was changed (because it wasn't). Calling me a "moron" only proves that you are at a loss for real answers.

As for the Package, it is a Cocoa app. The structure is the same as every Cocoa/Yellow Box/OpenStep app I've seen. The layout and form are very much like all the versions of the Workspace app which came before it.

So, again I ask, at which version did Apple stop using the Workspace-based app and started using this totally new, written from the ground up app that is supposed to be the current Finder? This should be an easy question to answer. In one version it is there, in the next it has been replace.

You can call me all the names you like. But it doesn't change that fact that the developmental history doesn't show a break. Show me where Apple stopped using it, and you win. Calling me names and not answering the question only make you look like a fool (not that your first "NeXT losers" comment had won you any friend in the Mac OS X community) and gets us no where.

By the way, how the anger management going?


----------



## ITz The MaN (May 5, 2001)

Hey, RacerX, could you post a copy of the oldest finder.app/Workspace.app? I would like to see the differances myself since the oldest os x i have is the beta.
By the way, what's PowerPlant and AppKit?


----------



## RacerX (May 6, 2001)

Funny you should ask, the reason I was pushing for an actual version was that the CDs only have the minimum OS to boot a system. Everything else is packaged up in essentials.pkg (stored in a pax.gz file inside of that). What this means for me is that I would need to try and open the pax file (a scary operation) or install onto a spare driver I have (a very time consuming operation). Of all my current collection (NEXTSTEP 3.1, 3.3, OPENSTEP 4.1, 4.2, Rhapsody DR2, Mac OS X Server 1.2, Mac OS X DP4, PB, 10.0) I only have NEXTSTEP 3.3, OPENSTEP 4.2, Rhapsody DR2, and Mac OS X 10.0.2 actually running on my network (and could tar the Workspace.app/Finder.app/Viewer.app from them). I could probably barrow copies of DP2 and either DP2.3 or DP3 if I knew that there was something there to look at.

The point that strobe could have put across better if he wasn't having a conniption, and from partial replies to inquiries I had put out to my friends (the "NeXT Losers" who now work at Apple) was that Apple took the original source code for the existing Workspace/Viewer.app and converted it to Carbon to sell Carbon to firms like Microsoft and Adobe (both of which did the show me, then we'll think about it deal).

After reading this less than civil debate (in which strobe made few friends), they tended to be less sure than they where before (they didn't work on the Finder). So yes there is some question as to whether or not the Finder is Carbon or Cocoa or some hybrid of both. There systems to be no question at this point that the current Finder is indeed based on the original Workspace Manager lineage.

PowerPlant is a project builder of Metrowerk CodeWarrior. Apple has had a very close association with them ever since Metrowerk rescued Apple back with Apple released the first PowerPC based systems. Apple didn't get native developer tools to anyone before the release in April of 1994. this would have been as bad as not have native apps now, because 68k code would be run in emualtion (without an emulated FPU), and would see little speed improvement in most apps, and a loss of performance in apps that used a FPU. CodeWarrior for PPC was released in January of 1994 (as I recall) which meant that most firms could have native apps by summer.

I believe that strobe was trying to say that because he has seen evidence of the fact that portions of the Finder were made using PowerPlant, that the source code HAD to be C++, which would mean a completely new set of code. I also believe he overlooked the fact that Objective C and C differ more in the form they are used in during the create than in the type of compiler they need. My experience is that a C/C++ compiler should have little trouble dealing with Objective C.

I'll post more information on this as I get it (and then only the parts my friend can agree on).

I've included an image of my ThinkPad's desktop running Rhapsody (it shows the size of the Workspace.app for that release), it is setup to look like Mac OS X Server because I use it to train new Server admins.


----------



## marmoset (May 6, 2001)

Why not just post the output of otool -L run against
both the executable inside the Finder.app bundle
and the executable inside the latest Workspace.app
bundle you can find?

I know what

otool -L /System/Library/CoreServices/Finder.app/Contents/MacOS/Finder

produces -- something that seems pretty convincingly a pure Carbon app, at least judging from the libraries it links against.


----------



## strobe (May 6, 2001)

Finder.app is not a hybrid, it doesn't send a single ObjC message. It's a C++ PowerPlant app written from scratch. Use otool, sheesh

As for the structure it's totally different than Workspace.app. It uses PPob resources, not NIBs.

It's a non-hybrid C++ Carbon app using the PowerPlant app framework. 

otool tells all, use it and shut the hell up racer


----------



## ITz The MaN (May 6, 2001)

so if its carbon it should be able to run under OS 9, right? Maby use resedit and give it a "carb" resourse to tell os 9 its carbon, and change the file type to make it excecutable by os 9. I would be interesting to see the results...


----------



## Dominion (May 6, 2001)

Tell your friend, that no "unix" variant is True Unix unless as someone stated it's AT&T Unix. Everything is a look-n-feel-a-like, in the truest sense.

However, as we're all well adjusted human beings, it's plain to see that Darwin (the underlying Unix of OSX) seems to be a pretty well rounded Unix. It has a kernel providing resource and process management stuff, it has a unix filesystem layout, and has all the unixy command line things. So it certainly looks and feels it. As for the technical aspects it seems to be there as well.

The part that isn't "Unixy" is the GUI bit, it's an Apple thing, and certainly performs admirably better than Xwindows ever did on any Unix variant I've ever used. The GUI in OSX integrates better with the underlying unix framework than any X window managers I've had to put up with also. All in all it's a very nice marriage between the two.

So no, it's not Unix coz it didn't come from AT&T or Berkeley. But Yes it's unix because like the other 50 something major variants out there, it has all the bits of a Unix. The only difference is, this is a variant with a nice GUI, runs on sexy hardware, and can run native versions of Industry accepted software. MS-Office apps, Adobe apps. etc etc  (okay they aren't out yet. But they will be.)

Cheers, Andrew


----------



## RacerX (May 6, 2001)

... actually before we get to that.

strobe:"otool tells all, use it and shut the hell up racer"

Boy, no wander people don't like you. Not to many friends, huh?

marmoset:"produces -- something that seems pretty convincingly a pure Carbon app, at least judging from the libraries it links against."

Actually your right, from what I've gotten back from my friends (you know strobe, the "NeXT Losers"... way to make friends and infuence people there strobe), Apple developed two versions of the Finder.app (one Cocoa, the other Carbon) based on the Workspace Manager (that is, both the Workspace.app and the Viewer.app) and modifications to deal with resource forks, etc., and built the project using the InterfaceBuilder and the new package layout. One person said that this was done so that if Apple wanted to replace the Carbon version later, it could be done with a small system update.

strobe:"Finder.app is not a hybrid, it doesn't send a single ObjC message. It's a C++ PowerPlant app written from scratch. Use otool, sheesh"

I don't think they've seen that post, but it sounds to me like the code needed to be compatible with both the Carbon and Cocoa development tools. Let see, in uses InterfaceBuilder and a Cocoa package format, and the code has to be able to compile in both Carbon and Cocoa... sounds pretty hybrid to me. And otool didn't tell the whole story here (like why is it this way, where did it come from, and what of the parts not released).

So, that answers the question about the Finder.app for me (the where, why's and how's). The question that remains is why does strobe... hate (I can't think of a bettter word) NeXT (former employees , developers, and user)? My guess is that strobe's parents abused him with a large black cube as he was growing up. Anyway, there are now quite a few people who would like to know who he is so they won't have to deal with him in any future development arena. But then why would anyone want to work with an angry bigoted person like storbe. I wish him luck in his solitude.


----------



## strobe (May 7, 2001)

> _Originally posted by ITz The MaN _
> *so if its carbon it should be able to run under OS 9, right? *



Heck no.

Only PEF binaries which only link to libraries which exist on both platforms can run on both MacOS 9 and OS X. Carbon just happens to be one of those libraries.

Finder.app is a Mach-O binary which links to several libraries MacOS 9 doesn't have.


----------



## marmoset (May 7, 2001)

Apparently, OSOpinion  decided to actually ask the Open Group, the people who actually hold the Unixª trademark, whether or not Mac OS X was a true Unixª or not:

http://www.osopinion.com/perl/story/9451.html

And guess what?

http://www.unix-systems.org/what_is_unix/single_unix_specification.html#platform

Now go forth and thwack somebody upside the head with that!


----------



## rharder (May 7, 2001)

Marmoset,

Thanks for posting something useful to this otherwise useless thread.

-Rob


----------



## vihung (May 8, 2001)

osOpinion has added the following postscript to the article recently ...

"Since osOpinion's publishing of this piece, the Open Group has updated their web site to include Apple into its list of vendors that support the single Unix specification. This appears likely as a direct result to osOpinion's publishing of the report"

So what now? Is it or is it not Unix?


----------



## rharder (May 8, 2001)

I wonder if "support" just means, "Yeah, we think they're really froody guys. Go, Unix!" as opposed to, "our OS is Unix."

-Rob


----------



## Magill (May 8, 2001)

Been away for a week -- wonderful post --  you only neglected to mention that "Unix(tm) Branding" costs money.<P>
As for a one-button mouse... what's a mouse? I've been using trackballs now for - forever. Logitech, Kensington, etc. all have been multi-button. However, while they work with OSX or even OS9 they give me constant X-headaches. One would think that on a platform other than Digital (ie Compaq) Alpha, or Sun MB2 would still be MB2... but nooo.... argh.<P>
but I digress. In general multi-button mice are strickly from the good-old X-Consortium. Which gave us the X-windows system.
<P>
Other than the X-windows system and inherently X-applications, I have never encountered software which uses more than one button.  (And I am constantly running into people who think they know X that have no idea that an Xterm does things  not only when you press the mouse buttons, but does different things when you "modifer-press" them!<P>
The most important usage in X- is that one uses MB1 to highlight and MB2 to paste! It saves a lot of motion to the keyboard and back again.


----------



## AdmiralAK (May 8, 2001)

how much does it cost to be branded a unix ?


----------



## rharder (May 11, 2001)

Here's one more from-the-horse's-mouth piece of info saying that Mac OS X (and Server) is Unix-like but not officially Unix:



> Q. Is Mac OS X Server based on UNIX?
> A. Mac OS X Server is built on UNIX technologies and implements most of the POSIX APIs, making it easy to port UNIX applications, particularly those from a BSD heritage. The main exception is applications with a graphical user interface, since Mac OS X Server doesnt include the X Window System user interface toolkits. Mac OS X Server is built around a graphical interface, unlike traditional UNIX systems that rely on the command line. However, Mac OS X Server cannot be called a UNIX operating system, as it does not fully comply with the POSIX and X/Open specifications required for use of the UNIX trademark.



This comes from the Mac OS X Server FAQ on Apple's web site. www.apple.com/macosx/server

-Rob


----------



## Fahrvergnuugen (May 11, 2001)

Quote from macosx.org
"MacOSX is officially UNIX The OpenGroup, holder of the UNIX trademark and caretakers of the Single UNIX Specification, have added Apple Computer to its list of vendors who support the Single UNIX Specification. Many would contend that this alone designates MacOSX as a true UNIX OS."

This contradicts what I read in the OSX Server FAQ PDF on apple's website which clearly states that OSX is NOT POSIX compliant.

But you know what? I am running Apache, PHP, MySQL, BitchX, ncftp, etc, etc etc. These are all ports from Linux. I open up a terminal window and type "top" and I get a list of processes and memory/cpu usage. I type ls and I get a directory listing. I type cd / and I end up at the root of my computer. See my point?

I can ask any linux guru a question and their answer will [9 times out of 10] solve the problem I am having with OSX. In fact, they usually never even find out that I am using OSX. What does that tell you?


----------



## AdmiralAK (May 11, 2001)

why is apple only now being put into the list of unix vendors ?  Apple used to have its own unix called A/UX.


----------



## Dominion (May 11, 2001)

You have to wonder why so many people care if OSX is Unix or not.

Does it really make a difference what's under the bonet so long as it gets you from 0 to 100 in a few seconds ?
I really don't think so.

As for AUX, I somehow get the impression that is is somewhat famed like SCO. It's one of those Unix variants that some people ran for a while, but they don't like to admit to it... Then again, I never found anything wrong with it, other than it was an "old" unix.

bleh, anyways... I'm happy using it, Unix or otherwise based, it's still a nice OS, and it does what it needs to do.

Cheers, Andrew


----------



## kilowatt (May 11, 2001)

Last time I checked, posix doesn't mean unix.
I use win NT4 sp6 at school (sad, I know), and there are ways to get posix under nt4. You can even run the bash shell. So, don't tell me that posix and bash are unix-defining.
(ie; win nt isn't unix. unless bill pays the x/open guys.....)

check out this url: 
http://www.unix-systems.org/what_is_unix/single_unix_specification.html

<pre> Whatever, I'm out</pre>


----------



## Toadstool (May 16, 2001)

AUX was "System V r3", System V is much used today, i.e. Solaris 2, IRIX (used to be RiscOS from Mips) etc.  However the above vendors use the "System V r4" or SVR4 model.


----------



## vihung (May 16, 2001)

> _Originally posted by Fahrvergnuugen _
> *But you know what? I am running Apache, PHP, MySQL, BitchX, ncftp, etc, etc etc. These are all ports from Linux. I open up a terminal window and type "top" and I get a list of processes and memory/cpu usage. I type ls and I get a directory listing. I type cd / and I end up at the root of my computer. See my point?
> 
> I can ask any linux guru a question and their answer will [9 times out of 10] solve the problem I am having with OSX. In fact, they usually never even find out that I am using OSX. What does that tell you? *




True - but unfortunately not an argument in favour of saying that Mac OS X is Unix.

All this really tells me is that OS X is SIMILAR to Linux.  And the funny thing is, Linux is not Unix. Linux is not even GNU.

What else it really tells you is that the user interface (in this case the shell), and the binary utilities are similar to what Unix provides. That also does not prove anything. The default shell on BeOS is the BASH shell, and you can run all those commands that you mentioned above and get the expected results ... but BeOS is no Unix. The same would also apply to Windows with Cygwin (and Apache and PHP etc. etc.) and I think we can ALL agree that Windows is not Unix.

So while what you say is true .. and has the illusion of proving that OS X is Unix, it, unfortunately, does not really prove anything.

Luckily for you, there are many other arguments that do prove that OS X is Unix ;-)


----------



## devinci (May 22, 2001)

I'm no genius and I know I still have a lot to learn.

But I've always been a defender of OSes and even Windows.  When a IRIX admin bashes, Windows I defend it.  When a window user bashes Linux I defend linux. and so on and so on... Hell I defend Apple OS9 too... even though i still think it's crap.  Well its great, but without true protective memory I wont use it.

I think windows2000 is great, i think Linux is great, IRIX, and BSD... are wonderful as well.  And I waited patiently over a year for an official OSX.  Hell, I went out and bought a new g4 right after I heard the news that the Public Beta was coming, 3 months before it was out!  Alas it sat and gather dust (since I refuse to run OS9 on it) for months and now I'm using it for 90% of my work.  bye bye Windows.  I know I know I'm a hypocrit.  

As of the best O/S.  Depends on the user.  I guess everyone else who states that here is correct.  "Best" is whats best for the user, and what he intend to use it for.  I admit, hands down Windows is the best choice for the office, not because it's superior, but because of the available business applications... and ease to get software that most people have no patient to research over.  No os has yet to really challenge windows in that area.  Linux and OSX can be now 1000 times better but without the 3rd party support, it can't win against windows in that area.  Atleast for now.  We'll see what the future holds,  *fingers crossed*.

in a server environemt, it varies also.  Depending on the function role of the system.  Some admins prefer OpenBSD for security, others Linux for its robustness, and so on and so on.  A smart admin knows there is no perfect os... and usually have a hybrid network.  I, myself, run OpenBSD, Irix, slowaris, Linux, Windows200, and now OSX, and usually each for different functions.  Windows2000 is my desktop for everyhing i cant do wit OSX.  OSX is becoming my primary desktop... and Linux is still under evaluation.  OpenBSD is my firewall/router/DNS/blah blah system... and Linux is my internal Application server, etc... IRIX is my show-off machine  as well as networker backup server, and my Sun well... um... i haven't figure out a role for it yet.  :>  prob to get familiar with Sun as most of the commercial corporate unix world uses Sun machines.

When someone says Windows sucks because it crashes... blah blah blah... the usual, i can say thats not because of the OS, that is because the user is an idiot.    I use windows and I found (when um use correctly) it to crash no more than my Linux or IRIX systems.   You have to take it into consideration of all the overloaded applications that a typical window user is loading on his/her machine compare to for example a Linux user that can potentially crash a Windows system.  I've run some nasty apps on Linux and I manage to kernal it quite  a few times.    My guess is that if you run all the application there is avail on Winblows on a IRIX, sun, or Linux... it would probably crash just as much.  Not sure if everyone would agree to that... I could be wrong.  :X

in summary.  I don't think we can all say any os is really better than the other.  depends on what he is she wants to be using a computer for.  

...etc...etc... etc

ps.  Here's a thought.  I found most users who doesn't know how to use a compute for their life, prefer windows over MacOS, and strangely, more computer savvy users are enjoy macos more than windows.  For some reason there is a stereo type that Apple is for simple minded people, and the really simple minded people refus to use it because they do not want to be thought of as simple minded people.    I guess it's like all kids wants to be treated like adults, and most adults wish their were kids again.  lol


----------



## devinci (May 22, 2001)

I agree with vihung,

Where I work, it is accepted that no moderm OS is UNIX anymore.  However whe we refer to an OS as UNIX, we do not genuinely mean true UNIX.  To save the sake of argument and confusion... we know that we rally meant it is UNIX "compatible" or Posix compliant.  

Solars, IRIX, FreeBSD, NetBSD, OpenBSD, Linux, Darwin... etc... are pretty much compliant... which really suppose to means, if you know "unix" you can use any of these posix compliant systems without much trouble and without much re-learning.  the environment is similar, the development environment are compatible... and so on... If you know Linux, you should be able to use BSD without a problem.  If you know Sun you should be able to use IRIX without looking for a IRIX admin book.  It has become more common to think of UNIX as a look and feel.  I, for example, was able to use Darwin and A/UX without much adjustments.  In the olden days when Linux was still learning to walk on two feet, UNIX was pretty much an environment rather than a operating system, even though System V is the only true Unix out there.  

"Do you know unix?  ok help me hack this solaris system... "  etc etc... I was hoping I made a point.  But i'm ranting on and on again.  Damn me!    So people who really know history, like Vihung, knows there's no true unix anymore.  I'm not even sure system V is still alive.  There Unix gave birth to a lot of children that inherit the characteristics of it.  These children will have their own children... and etc... and etc... who knows what "unix" will be 10 yrs from now.

But again, among my peers, "unix" is mention only in quotes.

hmm which now led me to OSX.  Even though Darwin is in the background supposedly, i found it only 75% resembling the common UNIX environment.  I guess it resemble neXt more than anything.  OSX could be the grandchild of "unix" rather.  But thats my 2 cents.


----------



## AdmiralAK (May 22, 2001)

It makes sense for OS X to look like NeXT since it is derived from NeXT,
Furthermore it makes snese for OS X to be a UNIX grandchild because NeXT
was a unix.


so there is no real unix anymore 
--> goes to fetch indy Jones for a quest .... "Indiana Jones and the Lost Unix"...

famous quote " Damn it! how do you use this? I'm only a windows user!" LOL 


Has anyone used OS 9 (the non apple OS 9).  I have a demo of it, for windows, but havent played with it a lot.


Admiral
--> some comic relief <--


----------



## PoweMACuser (May 22, 2001)

I want to ask a question. Does using unix kernel means that the system is UNIX?

if the answer is yes, it does. then in this world. only three systems: DOS(windows and NT), MAC OS(classic), UNIX(current UNIX system, beOS, Linux, OS X, ...)

This is because File Management System determines the type of OS.


----------



## AdmiralAK (May 22, 2001)

I am quite sure that the answer is no because each OS has it's own kernel and it works differently.

A unix OS just means that is is posix compliant (I think), meaning the UI environment is the same (i.e. knowing that cd, ls, cat, and other commands will work at the prompt of each unix machine).

Linux has a a totaly different and independent kernal and it is not derived from system V.

Also the DOS kernal is NOT the NT kernal.  DOS, win 3.x and 9x I believe have the same underlying kernal BUT windows NT based OSes (like NT & 2000 ) have a totally different kernal which is compatible with the old kernal in order to run applications.


I am sure someone else exists here to be able to explain it better 


Admiral


----------



## devinci (May 22, 2001)

powemacuser,

there is no unix kernel.  System V would be the last known true unix.

IRIX, SunOS/Solaris, AIX, Linux, BSD, etc... has kernals that inherit the characteristics of a Unix kernal.  They are not true Unix.  I don't even believe a true Unix OS exist anymore.  

Linux was built from the ground up by Linus originally as a computer science project (i think).  It is no way a Unix kernal, but through the he's he and his followers added a not of characteristics to it that makes it resemble "unix".  

OSX also is not true Unix, but like all the other children of Unix, it has the characteristics of it.  I would say OSX is the child of NeXt and FreeBSD, and Darwin is it;s older sibling.  And Unix would be it's grandparent.


----------



## LÃ¼ftwaffle (May 29, 2001)

It must be UNIX: It's got VI built in!

--
and remember the important bit:

there is no spoon


----------



## LÃ¼ftwaffle (May 29, 2001)

> _Originally posted by RacerX _
> *It is strange, I have worked with NeXT systems for close to 7 years, and I still don't know why they have the second mouse button.
> *



The reason that *all* other computer manufacturers have more than one mouse button is no coincidence: Apparently Apple holds a patent for a mouse with one button. Rumor has it that it was a glitch: they meant to patent a mouse, full stop, but since it says 'a pointing  device with a button' it was later interpreted as just the one-buttoned mouse. 

Don't know if the rumor is true, but I vividly recollect the famous TV ad: Screen one: multi-buttoned mice pushed around by obviously nervous operator hand, lots of error bleeps, fade over to screen two: relaxed mac operator hand gently cruising along, click, click, click; voiceover: 'On a Macintosh it is extremely difficult to press the wrong button' (Anyone out there has a Quicktime clip of that?)

I think that says it all. I have used systems with two and three buttons and I found them distinctively annoying (If I remember rightly, the Sun Sparc system used to throw up a message: 'Please use other button'. Excellent message, considering there are three buttons on their mouse!)


 Long live the single buttoned mouse!


----------



## lnoelstorr (Jun 1, 2001)

> _Originally posted by strobe _
> *The whole copy+paste routine with mouse buttons is idiotic. You don't need three mouse buttons to do cut+paste without the keyboard, MacOS does it with one (drag+drop text, beat that eunuchs!)*



Drag and drop doesn't seem to work in a terminal though.  Middle button copy, paste is fantastic, even if drag+drop worked (which it doesn't seem to) how the hell would it work across multiple workspaces, and as mouse doesn't focus windows in osX how would you drag and drop to a hidden window?

Middle button copy/paste, mouse focus and bring to front, the "front" key and multiple workspaces are my 4 favourite things in Solaris and it's a shame they weren't adopted (at least as an option) in osX.


----------



## ITz The MaN (Jun 1, 2001)

Seems that os x doest have drag and drop capabilities built in. the feature has to be added to each app (coacoa app atleast) by the developer for you to be able to drag and drop text.


----------



## devinci (Jun 2, 2001)

here's a hands down proof Linux is not UNIX...

quote from:
http://www.linux.org

...
Linux is a free Unix-type operating system originally created by Linus Torvalds with the assistance of developers around the world. Developed under the GNU General Public License , the source code for Linux is freely available to everyone. Click on the link below to find out more about the operating system that is causing a revolution in the world of computers
...

Line 1: Linux is a free Unix-type operating system 

There... unix-type... NOT unix... quote from the people who use and love Linux.

So let's put this debate to close.

If you doubt me... go to www.linux.org it's smack right there on the front page.  Oh I am viewing it now and it is 6/2/2001. 2:05AM.


----------



## ITz The MaN (Jun 2, 2001)

Who ever said linux is unix? Linux is just unix comaptible, and they are alike. I beleve this "debate" was about OS X being a unix anyways.


----------



## RacerX (Jun 2, 2001)

Okay, I haven't been following this thread for a while, but where did the Linux debate pop up? 

"here's a hands down proof Linux is not UNIX...  So let's put this debate to close."

Sounds good to me  . Everyone, no more talking about Linux, the debate on that is closed. back to Mac OS X  .


----------



## devinci (Jun 4, 2001)

Sorry, guys... I wasn't aware that this thread has grown to 6 pages!  ack.  

The quote was only there because sometime earlier there was a comparision between Unix, OSX, and Linux...  It was one of the earlier posts when someone had a friend who said OSX isn't Unix like Linux... etc etc...

It was just a little hard evidence to hel the poor OSX dude to shut the freaken mouth of the Linux-show-it-off.  :X

Don't hate me!!!!  I love linux myself!  lol  I hope Linus doesn't seen a swarm of pengium to linch.  Sorry Linus... I really love Linux... really, I do!  :X

*cough cough* OSX *cough* rocks! *cough*

:X

So how are you guys doing?  Linux bashing?  Who's linux bashing?  What are you talking about?  I thought this thread was about OSX?????  :->


----------



## strobe (Jun 5, 2001)

With regards to drag+drop text....

I'm floored that Carbon has better drag+drop text support than Cocoa to this day. Carbon developers typically have to specifically program drag behavior when receiving dragged text clippings if they want to move the cursor to indicate where a drag will be dropped. Apple could make this the default behavior in Cocoa so ALL current Cocoa applications gain this feature without a single 3rd party recompile!

Currently Cocoa apps can accept drags, but they are effectievly a paste wherever the cursor currently is, which is stupid. It wouldn't effect apps like Terminal, but it does for most others.

What will become even more annoying is if Apple implements drag+drop text in Cocoa and do not fix the damned Cocoa text selection behavior so it's mac-like instead of windows-like. Drag+drop text is exceedingly anoying if there is a railing carriage return, even more annoying than cut+paste with a trailing CR. 

Quite frankly I don't know what the Cocoa developers at Apple are playing at. They are certainly not on the ball. How long have they had to extend NSFileHandle to support aliases? How long have they had to implement OpenStep on OS X so Cocoa apps behave like mac apps? Are the Cocoa and Carbon developers even on speaking terms?

To be perfectly frank, I'd rather have the Cocoa text selection behavior be fixed than to have OS X perform twice as fast!


----------



## Jadey (Jun 11, 2001)

> _Originally posted by Click _
> *os X is not truly a unix system due to the mach kernel. *



Your friend is just repeating buzzwords he's heard and doesn't understand what he's talking about. He's heard linux uses a monolithic kernel, and since mac os X doesn't, it isn't unix. Well, that's total bullshit, since linux isn't unix, it's a clone of unix. 

Also, to the person who said that scroll wheel mice don't work in carbon apps, my MacAlly iSweetNet mouse scroller does work in Internet Explorer which is a carbonized app. Worked in the version that shipped with X, and the 5.1b1 update.


----------



## vihung (Aug 14, 2001)

I know this is a bit off topic here, but is really in reply to the posting about DOS and WIndows NT having the same kernel

[by the way, also in reply to that posting - BeOS does not have aUnix kernel. It simply has a POSIX subsystem and has BeOS ports of bash and common command line utilities]

DOS and Windows versions up to 3.1 have the same basic kernel. It was updated (I think DOS 4.0) to take advantage of features in the Intel 286 and especially the 386 processors, but was still essentially 16-bit.

Windows 95, has a 32-bit kernel - so I would assume it was rewritten from scratch - and it has a compatibility layer for 16-bit applications. 98 is probably no different (kernel-wise) than 95

Now Windows NT is a different beast altogether. 

It was written from scratch as a multi-user, multi threaded, multi-tasking and multi-processor OS. It is written in layers - which is what lets them support different processor architectures like Alpha, MIPS, PowerPC and SPARC etc. (although it never really took off on these platforms)

The chief architect (I do not remember his name now) was actually one of the people who had designed VMS in a previous life - and I have heard stories of it's design drawing strongly upon VMS experience (also it's name: W-NT is one letter ahead of VMS, just as Arthur C. Clarke's HAL was one behind IBM)

The core OS was written to be modular - making it possible to support different execution environments and filesystems. Out of the box it has an OS/2 and a 16-bit DOS/Win3.2 subsystem, and support for a POSIX subsystem. As far as I know, these are not in the kernel at all, but is on top of it - as virtual machines, you could say. 

A bit of trivia that Not many people know: NT was originally developed at IBM and was going to be the next version of OS/2, not Windows. IBM had collaborated with Microsoft to make it compatible with Windows (3.1 at the time, I think) - and that is why it still has an OS/2 subsystem. Microsoft contributed the WOW (Windows on Windows) susbsystem that allowed 16-bit DOS/Win3.1 applications to run under it. 

Anyway, at some point MS took over the project, made some changes, and released it as Windows 3.5 (NT). IBM released their part of it as OS/2 Warp - which included a Windows sub-system and was said to run [16-bit] Windows applications better than real Windows


----------



## kilowatt (Aug 14, 2001)

> _Originally posted by vihung _
> *
> It was written from scratch as a multi-user, multi threaded, multi-tasking and multi-processor OS. It is written in layers - which is what lets them support different processor architectures like Alpha, MIPS, PowerPC and SPARC etc. (although it never really took off on these platforms)
> *



I've got an old NT 4.0 (sp1) package, and it includes a PPC version. I always wondered about that. Anyway, would it work on an apple, or is PPC just for IBM RS/6000 computers? 

(not that I would allow such a thing to happen, I purchased NT because it was $.50 for a never-opened windows NT distro, and I thought it would be fun to laugh at....) 

As for the  "multi-user, multi threaded, multi-tasking and multi-processor OS." part of your message, it sounds like NT is simply a bad implimentation of unix. I mean, I've used NT in an NT enviroment (+500 computers and a few nt servers), and I remember hatting every minute of it. The OS crashed, halted, allowed you to do whatever you wanted to the file system (read nt user control sucks), and allowed one to pretty much monopolize the computer (which was fun to do to the proxy server with simple vb programs.....).

NT is *like* the best of windows combined with the worst unix implimentation I've ever used. I don't see why anyone would even think about using 95, 98, or ME if they could afford windows 2000 or NT. 

Of course, I wouldn't even think of using Microsoft word, let alone winblows.....


----------



## Kusako (Aug 15, 2001)

> The chief architect (I do not remember his name now) was actually one of the people who had designed VMS in a previous life


The name of the guy was Dave Cutler... He was hired off Digital together with most of the VMS kernel development team.
There is a book called "Showstopper" by G. Pascal Zachary describing the development of Windows NT, which makes a pretty interesting reading.
Especially the parts about David Cutler not wanting a GUI in Windows NT, and what ideas they took from NeXTStep (like the Registry aka as NetInfo...).

Besides that NT 3.51 was probably the best OS M$ has ever had. At least it was pretty stable (compared to its sucessors). Things started to get really bad when they came up with the idea that it mus be possible to play games on their server OS and allowed user level code to run in the kernel so things would speed up....


----------



## ladavacm (Aug 15, 2001)

is an unhappy implementation of VMS, rather than Unix.  In fact, it has nothing in common with unix under the hood.

In the olden days, we prefered Ultrix (DEC's rebadged 4.2BSD unix for VAXen) over VMS, because using the latter felt like wearing a straightjacket.  In that respect, one of the major advantages was unix minimalistic approach to programming model: you had your 50ish syscalls, rather than hundreds and hundreds of VMS APIs.

VMS did have some advantages in asynchronous completion mailboxes, but this has been taken care of with aio and kqueue available in BSD (FreeBSD at this time, don't know about other BSD's).


----------



## vihung (Aug 16, 2001)

> _Originally posted by Kusako _
> *
> Especially the parts about David Cutler not wanting a GUI in Windows NT, and what ideas they took from NeXTStep (like the Registry aka as NetInfo...).
> 
> Besides that NT 3.51 was probably the best OS M$ has ever had. At least it was pretty stable (compared to its sucessors). Things started to get really bad when they came up with the idea that it mus be possible to play games on their server OS and allowed user level code to run in the kernel so things would speed up.... *



I did not have much chance to work with NT 3.51, but I have think that the GUI was in user space, and very sluggish - one of the reasons why it had low adoption rates. From NT 4 onwards, they put the GUI in kernel space (and the blue screen of death was born!)

Interestingly, I believe that Apple has done the same with OS X. Possibly for the very same reason - performance. Is there anyone who can confirm (or deny) that it is so?


----------



## ericmurphy (Aug 17, 2001)

> _Originally posted by monty _
> *
> 
> 
> ...





> As for power users if they want a three button mouse, go to to any computer store, buy logitech 3 button with scroll wheel, take off PS/2 adaptor, plug into USB port and OS X recognizes 2 buttons and the scroll wheel automatically. No extra software needed. I did this about a month ago. Note: Carbon apps don't recognize the scroll wheel yet.


----------



## ericmurphy (Aug 17, 2001)

> _Originally posted by kilowatt _
> *
> 
> 
> ...


----------



## strobe (Aug 18, 2001)

One of the nice things about MacOS is it's so organized it lent itself to be turned into a multi-user system with relative ease. Much more than UNIX.

I don't see any ~/bin or ~/etc or ~/lib do I. Oh no, instead we have loads of hidden .files in the home dir and lots of messy 3rd party ways of 'organizing' resource files for users.

Of course this is already unraveling in OS X. Instead of creating frameworks, developers like Troll Tech (bastards) are making .dylib.3.0..whatever.versioning.mess which are supposed to be installed in /usr/lib and who knows where else, not to mention setting a bunch of environment variables so Qt apps can find the friggin resource files!!

HELLO TROLL TECH! Frameworks SOLVE THIS CRAP FOR YOU!!!! (not to mention the users!)

Eunuchs people aren't going to be satisfied until OS X retrogresses 30 years!


----------



## posthumous (Aug 18, 2001)

Strobe, you have to be the most miserable and most bitter person that I have ever seen on a message board.  I have not read one positive post by you about anything.  I only read how bad this is and how sucky that is.  You never tell me what is great about the mac... only what sucks about unix, windows, etc...  Now, I read that OSX is unravelling and the world is exploding or Trolltech doesn't meet your HI guidelines... yes your HI guidelines because I'm sure even Apple's are not up to your specifications.

I am willing to bet that you are the same strobe, strobe_anarkhos to be exact, that comes into the "Linux, FreeBSD, Solaris" chatroom on yahoo to troll .  I detect the same bitter tone, the same condecending attitude, and the same negative aura as that person who trolls that chatroom.  If you really hate unix that much why do you bother?  Is it really that much of a thorn in your side?  Where you castrated as a child leaving you with much anxiety with anything that sounds remotely like euneuchs?  I'm really not trying to be insulting here... I don't want to be... but  every one of your posts that I read are so full of angst I can't help but to respond now.




> _Originally posted by strobe _
> *I prefer to say UNIX is craaap and OS X is not UNIX*


Well, you can say what you want and believe whatever your heart desires, but OSX is a unix-like system.  Some would say that there is no longer a true unix, but any system that works like unix is unix to me and many other unix types.  OSX is unix for all "practical" puposes.  Linux is not unix, but it's so close who really cares.

*



			When you look at the history of UNIX you come to realize what crap it is.
		
Click to expand...

*Well, I would tend to disagree with you and so would most web server admins.  Sun, IBM, HP, and even Apple would disagree with you.  Why do you think Apple is using unix as the underlying architecture of OSX?

*



			When you look at the file hierarchy of UNIX you realize how utterly stupid it is. /etc/? What were they thinking?
		
Click to expand...

*  It makes sense... put all your config files in /etc... how hard is that?  I'll tell you what, if unix is bothering you that much, just delete terminal.app and forget it even exists.   When using OSX I never encounter /etc, /bin, /lib or anything else unixy unless I open a terminal.  The average user will not know or care about the terminal, unix, or some bizarre file hierarchy and you shouldn't either.

*



			The fact that everything is consolidating around UNIX tools and other stupid UNIX-isms just shows how entenched we are.
		
Click to expand...

*Entrenched?  Oh, you mean have a rock solid web, ftp, and samba servers built into the underlying OS.  God, that must be awful.  What will we ever do?  A friend of mine who uses OSX has never noticed any of these unix tools nor will he.  He doesn't care what's underneath... the system works like a Mac so why should he care... why should you?


*



			Eunuchs people aren't going to be satisfied until OS X retrogresses 30 years!
		
Click to expand...

*Oh, you mean by adding features like protected memory, preemptive multitasking, multi-user capabilites, and multi-processor support.  Oh, yes, unix had that a long time ago so that makes it bad right?  I guess by adding these things which are considered "modern" features that no "modern" OS should be without, unix people are taking the OS backwards somehow.   Well, nobody is forcing you to upgrade.  Please continue to use OS9 and leave the rest of the world at peace.

*



			The only reason so many people love this system is because it's the most akward, contrived, ridiculously complex heap of hackware they feel superior my mastering it and secure in the thought that somebody somewhere has this talking fetus on his forehead which will only shut up if you hire one of these engineers to prepare special conjoined fetus food and feed it with a straw made of rare orchid stalks.
		
Click to expand...

*Wow, you really need to seek counseling.  I'm serious strobe, you have way to much animosity towards unix for your own good.  Would you rather Apple have based OSX on NT technology?   Of course you wouldn't.  The only reason so many people love this system is because it's rock solid and get's the job done.  We can write scripts out the wazoo to customize and have a fine level of control over the system.  It's only complex to you because the work is not done for you.  The unix philosophy is to create small tools that do one thing well and to use pipelining and redirection to build bigger tools.  It's really more simply than you think... you want the whole widget done for you , you don't want to build it.  Fine, but you have the tools and you can build the widget or anything else for that matter.  I'll give you this... it is clunky for the desktop, but for servers, I wouldn't trade it for anything. 

I have administered NT box and UNIX boxes for a good while now.  UNIX is NOT crap as you so delicately put it.   I have seen UNIX boxes that have not been shut down in years.  Ftp.cdrom.com runs on FreeBSD, a free unix, and it is the busiest single box ftp server on the web with ~1TB a day.   I have used both FreeBSD and Linux on the desktop without any problems.  Why do I like OSX?  Because Xfree86 and the current free desktops don't cut the mustard for me.  I like to have a consistant desktop, access to commercial apps, and have the underlying unix.  NT is alright, but it's not all it's cracked up to be.  Windows 2000 is actually decent and doesn't crash as much as it's predecessor.

Anyhow, there are many unix users who are interested in OSX.  There are many mac users interested in OSX.  We like what we see... we like the stability... we like where this is going.  I was once an a bit of an OS bigot too.  Maybe you can loosen up and see the good points of other systems.  I bash Microsoft, but they do have some good products and good ideas as does Apple, Be, and the open source crowd.  Open your eyes strobe, there is a whole other world out there.  Don't limit yourself and ditch the attitude.  I believe that the reason you are so hostile is because you suffer from a "small man" complex or have a bit of an inferiority complex.  You seem to put down everything instead of praising anything.  People who do this are insecure.  Don't take my word for it... go seek counseling.  Finally, many unix users are embracing OSX.  This is good for apple, good for the mac, and good for unix users.  Your attitude is not conducive to attracting new users to your platform of choice, especially unix users.  Hopefully, the next time I see a post of yours, it will be about something positive regarding the mac and not something negative about the other guy.

Cheers.


----------



## strobe (Aug 19, 2001)

When you look at the history of UNIX you will find that all these lovely things you claim UNIX does best weren't in the original spec. Its evolution has been one of tiny increments which has led to a system which still looks like it was designed for single user uniprocessor purposes, but patched to hell in order to make it work for things you listed. Forgive me if I don't bow to the alter of UNIX.

Did you accuse me of being an OS bigot? That wouldn't make sense, oh well.

UNIX people aren't embracing OS X, they are embracing UNIX. As soon as a UNIX person ports their crap to OS X like "Troll Tech guy", he uses the 30yr old method of installing libraries, resources, env variables, and the like. That's not embracing OS X. Embracing OS X would entail using new, useful technologies which have made the old ways obsolete. For example if Troll Tech had merely created a framework they wouldn't need to install a dozen different files in a dozen different locations and set a dozen different env variables so Qt apps could find them.

What exidence is there that UNIX users are embracing OS X? What evidence is there that these 'good' technologies are being adopted instead of using unferior techniques set in motion 30 years ago? How is any of this a good thing? Oh I know, because another major company has gone UNIX. Well congradulations, the wave is unstoppable now. Maybe I would be more cheerful if there were ANY signs that people were abandoning inferior techniques of the past instead of being UNIX bigots who can't think outside the box.

Maybe you can point to something intrinsically good about UNIX other than the incremental improvements hacked into it for the past 30 years. Oh yea, Sys V threads, there we go.


----------



## ericmurphy (Aug 20, 2001)

I really don't want to get involved in  a flame war here, but I would have to say one of the obvious good things about Unix is its stability. I keep hearing stories about Unix boxes which have run continuously without a reboot for years.

The one thing I was really looking forward to in OS X was its stability. That stability is a direct result of OS X's Unix underpinnings. That's pretty much beyond dispute, isn't it?

I agree that there's much more to OS X than its Unix core. As Strobe has said, there are lots of cool technologies, such as frameworks, bundles, etc., that take OS X beyond "just another Unix." And I think developers who don't take advantage of these technologies are selling themselves (and their end-users) short.

But I can't think of a better core OS for Apple to have used. Can you, Strobe, name one? This isn't flame, I'm sincerely curious.


----------



## strobe (Aug 20, 2001)

I am in no way in disagreement with Apple's decision to use UNIX. I just can't stand all the UNIX worshipping. Especailly the claims of UNIX being multi-user. OS X is far more multi-user friendly than any UNIX before it, well so long you don't do things like Troll Tech.

If we can get past worshipping bad methodology from 30 years ago, maybe we can define what we want from here on out. Patching and repatching (not to mention worshipping) old code isn't going to get us anywhere.

Take for example the UNIX programming methodology that assuming a file's path is constant and not variable. It's a very bad assumption in terms of human interface. I wonder how many decades will pass before this is corrected. I would say never especially since Apple is pushing the use of classes like CFURL. 

How can we expect the world of UNIX to adopt ANYTHING which wasn't set in motion 30 years ago? Take UNIX filesystems for example. They only support a very limited set of meta-data like permissions, owner/group, unix flags (well, some of them don't even support those) and filename (case sensitive). If one wants to extend this set he has to create a new filesystem and new definitions in vfs and a new API to set and fetch this data, which is basically what Apple did for forks, type/creator, and finder info like creation date. However all this data is lost if you use UNIX APIs or tools to copy files to non-HFS+ volumes like UFS. What would it take for UNIX to adopt the concept of creation date? What about an arbitrary meta-data vfs standard for all OSs to adopt? I just don't see that happening. Instead what I do see happening is everything retrogressing into 30yr old UNIX 'standards'. File I/O using POSIX paths instead of file system references, filename extensions, disassociated volume structure chaos, and loads and loads of patchwork like install/uninstall wizards just to manage it all. 

Do we have UNIX or does UNIX have us.


----------



## ericmurphy (Aug 21, 2001)

I see what you're saying. I think the problem we have, and that Apple has most acutely, is that we have to deal with the least common denominator. Let's fantasize a bit for a moment. If the Macintosh had swept all before it back in the 1980s, and now accounted for 90% (or even 60%) of the desktop market right now, think how much cooler the world would be. You could click on any file, anywhere, and it would either launch the application needed to read it, or tell you what application you needed to open it. All the little things we take for granted on the Mac (like being able to drag an app anywhere we want it, not having to worry about absolute paths, etc. etc.) would be standard throughout the IT universe. But unfortunately, it didn't happen like that. Instead, the world was reduced to the Least Common Denominator, Windows. And, to some extent, Unix. With Windows, the reasons for how bad the LCD is are relatively obvious. But because there are so many different kinds of Unixes (and because until recently Unix was the exclusive domain of the extremely-computer-literate), we've mostly been forced once again to cater to another least common denominator (at least when it comes to ease of use).

But I think Apple's doing a pretty good job of welding the strengths of Unix to the strengths of the Mac OS. Certainly there are going to be compromises when you try to combine two such radically different systems. But who better able to do such a thing than Apple?

And I think we need to have faith in the hard-core Mac users. Macintosh users have historically been intolerant of non-user-friendly applications, or applications that break Macintosh conventions. I think apps that follow Unix conventions to the detriment of long-entrenched Mac conventions will eventually be weeded out of the Market.

And, hopefully, Apple and OS X will be able to grow the Mac's market share to the point where some of the advanced features of the Mac OS become more acceptable outside the narrow confines of the Macintosh world. Time will tell.


----------



## scott (Aug 21, 2001)

Amen to strobe.

We need to remember that Apple is intending that none but the caring delve into its core, and MacOSX does a good job of hiding it. Apple is walking a fine line at the moment, allowing its users to access an old (yet unmatched for power for the super user) paradigm of computing, but running with full intent to hide it.

No different than your new car using an internal combustion engine - built upon a 100 year old concept. Just because you have an engine in your car doesn't mean you need to know how to modify it just to drive.


----------



## adjusting (Aug 31, 2001)

> _Originally posted by RacerX _
> *It is strange, I have worked with NeXT systems for close to 7 years, and I still don't know why they have the second mouse button.*



You're missing out. Openstep has a cool feature where you have the menu pop up under your cursor whenever you right click. No more of this moving to the top left corner...just right click, choose a menu item, and click again. It was beautiful.


----------



## strobe (Aug 31, 2001)

Kensington Mouseworks can do this too, in MacOS.

Although I never used the feature, I prefer setting hotkeys with either QuicKeys or ACTION Menus.


----------



## turokthemighty (May 5, 2002)

Hello Everyone,
You know over the last 5 years(that's how long I've been using Macs) I've incountered alot of people who respond with "But it only has one mouse", when they found out that I use a mac. My reply is usually, "Why use 2 when 1 will do" I've always believed that Macs are the greatest thing since sliced bread, because of their Simplicity. 
Thanks bye,


----------



## Fahrvergnuugen (May 5, 2002)

wow...this thread is back from the dead
it's like a legend or something...over a year old!


----------



## phatsharpie (May 5, 2002)

http://www.opengroup.org/regproducts/xx.htm

Lists all the Unices certified as "UNIX" by the OpenGroup.

I actually really like right-clicking for certain apps (i.e. for Mozilla, etc.), but since the PowerBook only comes with one button, I've learned to live with it and adapt. It really isn't an issue since I can use control-click or just hold the mouse button in Mozilla to get the contextual menu.

What I would really like is a scroll wheel feature! I loved the "scoll-button" on my old ThinkPad.


----------



## Maximus (May 5, 2002)

Right Click - I thought with one button you just click and hold for a second and the menu pops up.  That's what I do - sometimes you move the point ever so slightly if the menu doesn't pop-up immediately.  I don't know why I would want another button for that.  The reason other computers have two buttons anyway is because Apple patented the one button mouse, or so I've heard - and the other companies, made due by adding a second button.   But that may be a myth too.  However, it seems that two buttons is unnecessary - but if you need it or the scrolling feature, you can always buy a third-party mouse.


----------



## macfreak88 (May 5, 2002)

This does not have anything with this thread is just a question:

why does it say that you have mac osx 10.0.1?? the newest is (10.1.4) why do you use it??...or what do you mean with typing it? That version should be beta or something??


----------



## zerologic (May 5, 2002)

> _Originally posted by rharder _
> *The Finder is Carbon. At first you'd think it was different enough from OS 9 and earlier that surely that didn't just carbonize the old Finder, but perhaps they did. In any event, the Finder is not Cocoa. Too bad. No Services menu. No scroll wheel. *



I beg to differ. I have  a Sony VAIO mouse (Windows 98 only on the outside of the box :-D ) that works fine in most of my carbon apps, including the finder. BBEdit, IE, FirstClass, Finder, Photoshop, Freehand etc.

0

[edit: sorry, didn't see that the thread is 100yrs old ]


----------



## Lon (May 5, 2002)

Of course you could always tell him about the dozens of faster easier to use key cheats. One hand on the mouse. The other on the command key BLAZING!!!


----------



## WaterLung (May 6, 2002)

I'm not all that technically savvy, but I have a few things to add:

1.  OS X's finder is Carbon, that's a fact.  It supports services and mouse scrolling works in it.  Many people think it would work better if it were Cocoa, but according to those who know OS X well, the problem isn't that it's carbon, but that it's not well written.

2.  The Jaguar release of OS X is rumored to improve the Carbon API so that it matches the Cocoa API in terms of features and functionality.  Apparently many large developers, including Adobe and Microsoft, were upset that Carbon was a "second class" API in OS X, because they have no intentions of rewriting their apps in Cocoa.  We'll find out at WWDC if Apple has responded to developer's requests.

3.  Rumor is that Apple will soon be offering a two button scrollwheel mouse that uses the Bluetooth standard for wireless function.  I'm hoping this is true, because everyone I know who buys a Mac winds up ditching the standard mouse for a two button scrollwheel mouse.  OS X is simply easier to use with such a mouse....most people find it easier to press a second button with one finger, instead of holding modifier keys while pressing a single mouse button.  And most Mac users don't even know how to use modifier keys with a single button mouse, it's not like Apple includes an instruction manual or anything.  If you dig a one button mouse, then only use ONE button on a two button mouse, that's my opinion.  Apple should make a two-button scrollwheel mouse standard so more Windows users will switch to Macs.


----------

