windows 2000 vs. mac os x
DESCRIPTION
Windows 2000 Vs. Mac OS X. Comparing Windows 2000 and Mac OS X on the following grounds: Architecture Design Goals Programming Interface/ User Interface IPC. Architecture (Windows 2000):. The Windows 2000 OS is divided into two sections: kernel mode and user mode. - PowerPoint PPT PresentationTRANSCRIPT
Windows 2000 Vs. Mac OS X
Comparing Windows 2000 and Mac OS X on the following grounds:1) Architecture2) Design Goals3) Programming Interface/ User Interface4) IPC
Architecture (Windows 2000):
The Windows 2000 OS is divided into two sections: kernel mode and user mode.
Executes on a variety of hardware platforms.
Separates application-oriented software from operating system software-OS software includes the Executive, the microkernel, device drivers, and the hardware abstraction layer.-runs in kernel mode. (access to system data and hardware)
-Application software runs in user mode and has limited access to user data.
Architecture of the Mac OS X
Layered architecture divided into four distinct layers:- Application Environment- Application Services- Core Services- Kernel environment
Architecture of the Mac OS X
Mac OS X encompasses many different technologies: -Darwin-Quartz-OpenGL-QuickTime-Application Services-Aqua
Design Goals Windows 2000
Win2K design team objective was to design a robust, portable, maintainable, extensible, and secure operating system (OS). Key features:
Robustness: protect itself from internal malfunction, software and hardware errors
Extensibility and Maintainability Portability: function on a number of platforms with minimal re-
coding Performance POSIX compliance and government certifiable C2 security
Design goals
Mac OS XThe core of Mac OS X is UNIX and is based on the open source Darwin
kernel. It has a graphical desktop environment and power, stability of UNIX. Mac OS X provides power, ease of use, and a pretty new look. It offers a command-line environment, and powerful networking.
Key features: Integrated System: integrate a diverse collection of technologies
and base this unified set of technologies on advanced kernel environment.
Extensibility: support new software, hardware, features and network technologies
Modularity: future enhancements System Responsiveness: faster speed and operations Enhanced Performance and Stability Advanced User Experience and Productivity
Advantages
Windows 2000
Maintainable and Extensible Security: executive provides
the only entry point into the system
Portability: across hardware architectures and platforms
Robustness
MAC OS X
Integrated system Robust Enhanced Performance and
Stability Backward Compatibility
Disadvantages
Windows 2000
No Backward compatibility Lesser Speed Less Reliable
MAC OS X
Security: Darwin is distributed under Open Source license, security threat
Not extensible like Win2K Software compatibility
shortcomings and support Classic applications run and
load slowly Marketing weakness and
media coverage
Conclusion:
Win2K is designed to be reliable and it can be maintained and extended to take advantage of new technologies. It supports multiprocessing and has portability.
The Win2K merges the best attributes of a layered OS with those of a client/server or microkernel OS.
It is a choice for business, and for highly distributed systems.
Mac OS X is more stable, beautiful, Aqua look, and graphics. It has layered architecture.
Only a few native OS X applications available, so best features of OS are untapped.
Multilingual support built in; better memory management and protected memory;
PM: Mac OS X is highly reliable, and supports the preemptive multitasking and protected memory.
Programming Interface
Windows 2000
The Programming Interface is composed of a set of user-mode applications (called sub-systems) that perform operating system tasks.
It provides modularity.
Multiple application programming interfaces (API), while keeping the base OS code simple and maintainable.
User Interface
Mac OS X
New aqua like interface called Aqua
The top layer represents Application environments which encompass five application environments:Carbon, Cocoa, Java, Classic environment and BSD commands.
-Classic environment provides compatibility to run their Mac OS 8/9 applications
-BSD Commands environment provides a shell to execute BSD programs on the command line.
Application services provide system services to all application environments.
-includes Quartz, Quick Draw, OpenGL, QuickTime & Core Services.
User Interface
Kernel environment is the foundation layer of Mac OS X. It is a high-performance and highly modular kernel and its primary components are Mach and BSD.
Mac OS X is based on Darwin (open source core, UNIX) kernel and it provides great stability for any development environment.
Advantages
Windows 2000
API: availability of tested APIs Multi-processor End-user applications Micro-kernel: protects kernel
since applications runs in user-mode
Ensures Security Vendor tools
Mac OS X
Power and Stability: kernel based on UNIX (Darwin)
Advanced and new development features
Backward compatibility Integrated Java, Internet
application development environment
Graphics Interoperability:supports
interoperability for UNIX apps.
Disadvantages
Windows 2000
Backward compatibility to 16-bit architecture
Integrated system
Mac OS X
Doesn’t ensure Security Doesn’t provide End-user
applications No Support and training
Conclusion
Windows 2000 has availability of well-defined and tested APIs, and vendor tools enhance development. It provides good support, training and end-user applications.
Mac OS X is built on open BSD UNIX, Java2, XML, PDF, and OpenGL standards so that third-party developers can add applications more easily. It offers advanced development options and new features for advanced users, especially UNIX gurus.
IPC(Inter Process Communication)
Processes needs to communicate in some way with one another, to transfer some data or to let other processes know what's going on with one another.
Windows 2000
Win2K supports seven primary IPC mechanisms: Named Pipes, Mailslots, NetBIOS, Winsock, NetDDE, RPCs, Local Procedure CallFacility With COM, the client can communicate directly with the
process. With DCOM, the client can communicate directly with other processes on different computers on a LAN, WAN or the Internet.
IPC(Inter Process Communication)
MAC OS X
Mac OS has an inter-application communication (IAC) architecture, which provides a standard and extensible mechanism for communication among Macintosh applications.
Apple events are the primary methods for inter-application communication on Mac OS X.
Advantages
Windows 2000
system efficiently more elaborate, reliable and
stable IPC mechanismssupported IPC mechanisms
MAC OS X
simple to use and implement faster communication
Disadvantages
Windows 2000
Hard to work in distributed computing environment
Slower IPC mechanisms due to inefficient memory management
MAC OS X
Event Mechanism requires many procedure calls.
one-way communication (BSD Pipes)
Apple Event objects creation time not suitable for performance-critical situations.
Conclusion
Windows NT has more elaborate & complex, but reliable and stable IPC mechanisms.
Mac OS IPC mechanisms are simple to use and implement. It has a fast and more responsive system.
Windows 2000 Vs. Mac OS X
Mac OS X is a better choice for educational environment. Mac OS X is better choice for graphics, Internet and Java
development. Apple will, of course add ease of use to the core design goals. I'm
sure the Mac OS X interface will continue to evolve under customer feedback and experience.
Apple has claimed that their goal is to make the first truly user-friendly UNIX box, or as they put it, a machine that “even your grandmother can use”.
I imagine advanced users will prefer Mac OS X, because it has advanced and new features for development environment as compared to W2K.
UNIX users will prefer Mac OS X because it provides shell prompt that is Mac Usage with UNIX-style Command-Line.
Windows 2000 Vs. Mac OS X
I would prefer Windows 2000 from a business point of view because it is a highly secure, extensible, maintainable, robust and portable OS.
It offers better support, APIs, vendor tools and end-user applications.
References
Operating Systems (Fourth Edition) by William Stallings
Inside Microsoft Windows 2000 by David A Solomon & Mark E Russinovich
The Apple - Mac OS X Website:(www.apple.com/macosx)
MacOS X News at The Macintosh News Network (osx.macnn.com/)