WA7. The Best OS¶
Problem Statement¶
- Based on your experience/research:
- what is the best operating system?
- Identify it by listing its best features.
- Outline this based on what we have learned so far in all the units.
- Also, comment on the OS’s memory usage, GUI, kernel, and scheduling.
- Look up information about different operating systems if you do not know everything about them.
- You will be assessed on the following:
- Your identification of the best OS is based on its list of features.
- Your comments on the memory usage, GUI, kernel, and scheduling of the recommended OS.
- Organization and style of the essay (including APA formatting).
Solution¶
what is the best operating system?¶
- The best OS is the one that best suits the user’s needs. It is the one that provides the best user experience, while utilizing the least amount of resources, and is the most secure and stable.
- Deciding the best OS is a very subjective matter. It depends on the user’s needs and preferences. Depending on the purpose of the OS, the type of hardware, programs that will be run on it, and the user’s preferences, the best OS will be different for different people and different situations.
- The most popular operating systems are Windows, MacOS, and Linux.
- This essay will focus on the best OS for a desktop computer; and will compare the three most popular OSes in more detail.
- Short General Answer:
- Windows is the best OS for gaming, office work, and other daily tasks.
- MacOS is the best OS for resource-intensive tasks, such as video editing, or graphic design; or if you already have Apple products, since they are very well integrated.
- Linux is the best OS for developers and highly customizable tasks.
- This essay will compare the three most popular OSes in aspects of memory usage, GUI, kernel, and scheduling; and will conclude which OS is the best for a desktop computer in the end.
Quick Comparison between the three OSes¶
OS | Memory Usage | GUI | Kernel (SoftwareTestingHelp, 2022) | Scheduling (Issac et all, 2021, p.5) |
---|---|---|---|---|
Windows | High | Yes | Hybrid (micro + monolithic kernel) (Window NT) | Fiber (manually scheduled execution), User-mode scheduling (UMS) |
MacOS | Medium | Yes | Hybrid with modules (XNU = Darwin) | Round Robin (RR) and MultiLevel input queue scheduling |
Linux | Low | Yes | Monolithic with modules (Linux) | Completely Fair Scheduler (CFS), since 2007 |
Memory Usage¶
- Since both Windows and MacOS use a hybrid kernel, they have a higher memory usage than Linux. That’s due to the higher kernel size, and the extra memory required for the overhead of managing micro/monolith kernel together.
- Windows is known for its complex system structure and the tons of features it provides, all of these require relatively more memory usage.
- MacOS has better memory management techniques (Issac et all, 2021), and it is more optimized than Windows, so it has relatively lower memory usage than Windows.
- The fact that Linux is a monolithic kernel, which means that the kernel shares the same memory space as user applications, makes it have the lowest memory usage among the three OSes.
GUI¶
- All three OSes have a GUI, and they are all very user-friendly.
- According to (Issac et all, 2021, p.4):
- Windows has the best GUI among the three OSes.
- MacOS has a good intuitive GUI, and it is almost as good as Windows.
- Linux GUI is not very liked by users, which is reasonable since Linux did not start as a GUI OS.
Kernel¶
- The kernel is the core of the OS, and it is responsible for the management of the hardware resources, and the scheduling of the processes.
- Micro-kernel is a small kernel that is responsible for the management of the hardware resources, and the monolithic kernel is responsible for the scheduling of the processes.
- Since the communications between Processes and the kernel get slower if the kernel uses its separate memory space, the hybrid kernel is used to reduce the overhead of the communications by putting the essential functions into a micro-kernel that has its own memory space; while the parts that are not essential are put into the monolithic kernel that shares the same memory space as the user applications.
- Windows and MacOS use a hybrid kernel, which means that they use a micro-kernel and a monolithic kernel together.
- Linux uses a monolithic kernel, which means that it uses a single kernel that shares the same memory space as the user applications.
- Monolithic kernels tend to be faster, but less modular than hybrid kernels.
Scheduling¶
- According to (Issac et all, 2021, p.5):
- Windows uses Fiber (manually scheduled execution), User-mode scheduling (UMS).
- MacOS uses a combination of Round Robin (RR) and MultiLevel input queue scheduling.
- Linux uses a Completely Fair Scheduler (CFS), since 2007.
- CFS scheduling is more efficient and fair than the other two, thus Linux has the best scheduling among the three OSes.
Conclusion¶
- We saw that Linux has the best memory usage, kernel, and scheduling among the three OSes; but it has the worst GUI.
- GUI aside, Linux is the best OS for a desktop computer.
References¶
- Isaac Odun-Ayo et al. (2021). Comparative Study of Operating System Quality Attributes. IOP Conference Series: Materials Science and Engineering. https://iopscience.iop.org/article/10.1088/1757-899X/1107/1/012061/pdf
- SoftwareTestingHelp. (2022). Linux Vs Windows Difference: Which Is The Best Operating System?https://www.softwaretestinghelp.com/linux-vs-windows/