Comparing the Two Giants in the World of Information Technology: MAC & Windows
Operating systems can be compared on the basis of their various features. In this article, we are going to make a comparison between Mac and Windows operating systems. First, let's see how a common user can differentiate these two operating systems.
What Windows has that Mac doesn’t have?
- Larger software directory.
- Best for custom-built computers.
- Lower cost when used on a customized PC.
Disadvantages of Windows versus Mac:
- More prone to viruses, bugs, malwares, spywares and spam wares low stability as compared to Mac.
- Costs more in the long run as certain hardware updates costs more money.
- Poor GUI and productivity. Mac can perform two or three times faster than Windows and does not require a waiting period for a process to end.
What Mac has that Windows does not have?
- Better GUI.
- It only cost $129 to upgrade to Leopard with all the features available for use. No business edition or premium edition.
- Costs less in the long run. Most of Mac upgrades costs less than those of Windows OS
Disadvantages of Mac versus Windows:
- Smaller software library.
- Low user's familiarity with the interface.
- Cost can rise if not used for a longer period of time.
Now, let's take a peek into the technical details about these operating systems:
Describing MAC Operating System:
Mac uses an open-source kernel called XNU. This XNU kernel is in fact a conglomeration of the BSD and Mach Kernel’s that uses POSIX system calls. POSIX is the same set of system calls that is used in UNIX builds. Mac manages the memory using the priority-hierarchy of preemptive multitasking system. Through this system, the kernel can assign a priority to each running process and whenever a program needs some system resources, it checks the priority level of the program. If a program with highest priority requests for a resource, the kernel assigns it the requested resource with an allocated time. Whenever a program attempts to use a resource that is not assigned to it, it generates an event called "system interrupt". Kernel’s attention is flagged, taking the complete control of the hardware; it lets the operating system to decide to cope with this malfunctioning program. A course of events reports this error and shuts the program. XNU kernel is a standard, powerful, and simple kernel for running an operating system. Mac uses of a Hierarchal File System (HFS+) or PLUS. A file system performs several jobs. It manages the hard drive for file type support, file storage, assignment of blocks of disk space and organization of these blocks, and ensuring the integrity of the data stored on the disk.
For instance, when a hard drive is formatted by a file system, every part of drive is assigned with sections of hard drive. At least one block is allowed for a file to be used, i.e. every block is one of 2^32nd power block, and the file system supports up to 8 exabytes of file volume of the file. HFS+ is also known as "journaled FS". Before making any changes to a file or part of file, it writes those changes on a special file called "journel". This makes an easier recovery of lost file. For example, if a file is lost due to a sudden change such as power failure, the system will just return to the journel and will read the previous status to recover the file. However, this system has some flaws as well. Creation of journel requires large disk space, and hence, reducing the size of usable space on the disk.
As far as the system calls are concerned, Mac uses POSIX which is a standard set of system calls for UNIX. A system call is just a message created by a program to use resources or take some other action sent to the kernel. A system call can be one out of the five main operations: write, read, close, open and pipe.Mac makes better use of POSIX system and uses it to avoid the deadlocks where all processes get suspended and the operating system hangs.
Describing Microsoft Windows Operating System
Windows uses the kernel named ntoskrnl.exe (NT Operating System Kernel). This is a hybrid of microkernel and monolithic system kernels. We can better say that it attempts to encompass all possible kernel jobs into one larger kernel, but renders some parts of kernel to work with them, and lets the kernel to run them aside as independent processes, which kernel just conveys messages back and forth. Both systems have their own drawbacks so a hybrid kernel is better rather than a single extreme. A good trait of ntoskrnl.exe is that it executes the complicated jobs as separate processes, and bundles the simple jobs and hardware management into a central kernel.
This approach creates difficulty when an attempt is made to change the functions of the operating system. Windows has many programs and processes to offset this complication, designed to enable the user to change to the system settings to some extent and is often can help an average user to cope with. Windows uses the NTFS file system which is a security-oriented and journaled file system. This file system has many specialized features like Disk Quotas (the administrator can allocate limited disk space to inpidual users), Alternate Data Streams (in which a file can be associated with other files without mentioning in the original file) and file shadowing (in which a file is copied whenever new replacement is saved). Windows also makes use of the POSIX file system calls. This system of system calls helps the operating system to manage the threads under processing. But as there are other mechanisms for application management working side by side, Windows become more prone to system hands due to the deadlocks among the threads under processing.
To facilitate the user and make it easier to use, Windows provides the user with a greater degree of control over the processes and applications running on the computer. For that reason, users find this operating system more convenient to learn and use, and is also the main reason of its popularity particularly in the countries where English is not a Native Language.