| Techniques |
|
Mac OS X is the perfect blend of the world's user friendliest operating system, Mac OS, on the one hand and the world's most stable and secure operating system kernel, the UNIX kernel, on the other.
More precisely, Mac OS X is based upon parts of FreeBSD and Mach. The latter delivers multiprocessor support especially. The result is the new core of the Mac OS X that is called "Darwin". For some time already, Apple has been focusing on dual processor technology for its high-end systems. Even though notedly smaller MHz-numbers are the theory, G5 and Mac OS X form a combination that in practice is much faster and more stable than its competitors. The booting (without DHCP, nfs or other network protocols which have longer initialization time) just takes a few seconds. With great interest Mac-fans appraised the operation system surface called "Aqua" and the graphic engine "Quartz". But UNIX- friends are also going like it.
This is familiar to proven Mac-users. For beginners is is a clear, intuitive operable interface between human and machine. Here it is to be differentiated between programs with "carbon"-surface and programs with "cocoa"-surface. "carbon"-software is software working on Mac OS X as well as on older Mac-versions. Normally, it is about well known and approved programs that are ported to the new OS. For programs which haven't been ported yet or for which no new Mac OS X version is planned, Mac OS X also contains a "classic"-mode where all Mac OS 9 programs easily operate on the new hardware. "Carbon" also supports a number of other programming-languages like C, C++, Fortran and others. This makes it interesting for developers from various software areas. "Cocoa", on the other hand, are those tools and programs, outfitted with the distinctive metallic surface, which have been written specifically for Mac OS X "only". Cocoa is written in objective C and based on NeXTStep. Users from the UNIX-world will perhaps resent the colorful and somehow coltish seeming surface. But don't worry, with a single click you can open a terminal and switch to the command line. Here the UNIX-forefathers of the new Apple operating system await you. But still, it may be worth for every Mac OS X user to get into command lines – that offers a lot of possibilities to "tune" and, above all, automate your Mac. A lot of administration tasks work automatically with the help of provided tools, like for example a cronjob. Read more about this on http://www.mac-os-x.at. There you also get to know how you can install one of the over 800.000 active open source Linux programs. You could for example install the open source GUI-server x11 and employ almost everything you are used to from a UNIX or a Linux desktop, on the Mac. The x11-server is based on Xfree86 (http://www.xfree86.org). This shows another outstanding feature of the new Mac OS X: inter-operability! A Mac harmonically fits into a heterogenous computer network. No matter if it works as server or client – Mac OS X has its strengths in both areas. It has never before been easier or more comfortable to set up and service a server. The possibility to operate the machine over SSH or telnet is there for you, in the same way as remote maintenance over remote desktop is supported. As client, the Mac by default does not just have access to Apple network standards like "Rendezvous", but is also able to deal with Windows domains and SMB shares. For developers, Mac OS X offers the established tools and APIs from the UNIX-world (gcc, vi, emacs,...) and a developer's environment (Xcode) for Java, C, C++, objective C and objective C++. Xcode by default uses gcc 3.3, as well as it has "Carbon" and "Cocoa" interfaces available. Every developer has personal preferences towards a certain developer's environment, BUT: With Xcode, Mac OS X delivers a powerful tool, especially for all those who would like to start working in software development. When it comes to security, the new Apple OS can easily take on the competitors. IPsec (Internet Protocol Security) is a fixed part since Mac OS X 10.2, as well as a lot of other authentication and encryption standards (like SSH, Kerberos, key- and certification service). All these services are built upon the Common Data Security Architecture (CDSA) API. The CDSA-framework is an architecture supported by the Opengroup and allows the development of platform-comprehensive security- and authentication techniques (http://www.opengroup.org/security/l2-cdsa.htm). This standard is open source, too! To enumerate all the system specifications would probably bust a small libraries volume. That's why we refer the interested reader to Apple's own System Overview Documentation in HTML (available as PDF on the Apple site) http://developer.apple.com/documentation/MacOSX/Conceptual/SystemOverview/index.html (picture source: http://developer.apple.com) |