280 likes | 694 Views
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.
E N D
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. • 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 X The 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
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 Advantages
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 Disadvantages
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 Commandsenvironment provides a shell to execute BSD programs on the command line. • Application servicesprovide 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.
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. Advantages
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 Disadvantages
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 Call Facility • 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.
Windows 2000 system efficiently more elaborate, reliable and stable IPC mechanisms supported IPC mechanisms MAC OS X simple to use and implement faster communication Advantages
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. Disadvantages
Mac OS IPC mechanisms are simple to use and implement. It has a fast and more responsive system. Conclusion • Windows NT has more elaborate & complex, but reliable and stable IPC mechanisms.
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 - MacOSX Website: (www.apple.com/macosx) • MacOS X News at The Macintosh News Network(osx.macnn.com/)