A Comparative Evaluation of Core Kernel Features of the Recent Linux, FreeBSD, Solaris and Windows Operating Systems. Papadimitriou, S. & Moussiades, L. In Proceedings of The World Congress on Engineering 2016, of Lecture Notes in Engineering and Computer Science.
A Comparative Evaluation of Core Kernel Features of the Recent Linux, FreeBSD, Solaris and Windows Operating Systems [link]Paper  abstract   bibtex   
The paper compares core kernel architecture and functionality of four modern operating systems. The subsystems examined are process / thread architecture, scheduling and interrupt handling. Linux, Solaris and FreeBSD have a lot of similarities, owning Unix roots, but also have some notable differences. However, Windows is significantly different, being a radical non-Unix design. The paper compares some aspects of the Unix-like approaches of Linux/Solaris/FreeBSD with Windows, emphasizing the consequences of their different design decisions, and presents some comparative performance results, using Java benchmarks. [Excerpt: Conclusions] The paper aimed to provide an insight to some key design approaches and components of Linux, Solaris, FreeBSD and Windows using a comparative view. All the four OSes are monolithic kernels (although Windows started as microkernel). Also, they allow the kernel to be extended flexibly with dynamically loadable modules. Windows imposes more layers between the hardware and the user space applications (e.g. the HAL, the interrupt objects). Microsoft virtualizes part of the hardware and builds other components upon that virtualization. Clearly, this is an advantage from the point of view of portability to different architectures but requires learning additional Microsoft APIs and being dependent on them. From the four OSes, Linux is generally the closest to the hardware, and combined with the clever and highly optimized implementation approaches, realize the fastest overall performance. [\n] Solaris uses more data abstraction layering, and generally could support additional features quite easily because of this. However, most of the layering in the kernel is undocumented. [\n] The application level interface of Linux, FreeBSD and Solaris is very similar, typical of the modern UNIX system programming interface [7], [8]. Also, FreeBSD and Solaris share similar approaches at their internal design of low level process/thread structures and primitives, distinct from Linux that has its own design of multithreading. The paper concludes that both systems are modern and effective UNIX realizations. They are capable of accomplishing effectively demanding application requirements and at the same time their UNIX philosophy offers to them many similarities [9]. The presented performance results favor Unix-like OSes compared to Windows. Finally, from the three Unix based OSes, Linux performs better at the presented benchmarks, as can be expected with the less layering that has at its design. [\n] However, the performance of Linux that we measured seems close to that of the recent FreeBSD kernel. Also, both kernels can be easily build from source, in our experience it is easier to build from source the FreeBSD kernel. [\n] [...]
@inproceedings{papadimitriouComparativeEvaluationCore2016,
  title = {A Comparative Evaluation of Core Kernel Features of the Recent {{Linux}}, {{FreeBSD}}, {{Solaris}} and {{Windows}} Operating Systems},
  booktitle = {Proceedings of {{The World Congress}} on {{Engineering}} 2016},
  author = {Papadimitriou, Stergios and Moussiades, Lefteris},
  date = {2016},
  issn = {2078-0958},
  url = {http://www.webcitation.org/6okMJh88w},
  abstract = {The paper compares core kernel architecture and functionality of four modern operating systems. The subsystems examined are process / thread architecture, scheduling and interrupt handling. Linux, Solaris and FreeBSD have a lot of similarities, owning Unix roots, but also have some notable differences. However, Windows is significantly different, being a radical non-Unix design. The paper compares some aspects of the Unix-like approaches of Linux/Solaris/FreeBSD with Windows, emphasizing the consequences of their different design decisions, and presents some comparative performance results, using Java benchmarks.

[Excerpt: Conclusions] The paper aimed to provide an insight to some key design approaches and components of Linux, Solaris, FreeBSD and Windows using a comparative view. All the four OSes are monolithic kernels (although Windows started as microkernel). Also, they allow the kernel to be extended flexibly with dynamically loadable modules. Windows imposes more layers between the hardware and the user space applications (e.g. the HAL, the interrupt objects). Microsoft virtualizes part of the hardware and builds other components upon that virtualization. Clearly, this is an advantage from the point of view of portability to different architectures but requires learning additional Microsoft APIs and being dependent on them. From the four OSes, Linux is generally the closest to the hardware, and combined with the clever and highly optimized implementation approaches, realize the fastest overall performance.

[\textbackslash n] Solaris uses more data abstraction layering, and generally could support additional features quite easily because of this. However, most of the layering in the kernel is undocumented.

[\textbackslash n] The application level interface of Linux, FreeBSD and Solaris is very similar, typical of the modern UNIX system programming interface [7], [8]. Also, FreeBSD and Solaris share similar approaches at their internal design of low level process/thread structures and primitives, distinct from Linux that has its own design of multithreading. The paper concludes that both systems are modern and effective UNIX realizations. They are capable of accomplishing effectively demanding application requirements and at the same time their UNIX philosophy offers to them many similarities [9]. The presented performance results favor Unix-like OSes compared to Windows. Finally, from the three Unix based OSes, Linux performs better at the presented benchmarks, as can be expected with the less layering that has at its design.

[\textbackslash n] However, the performance of Linux that we measured seems close to that of the recent FreeBSD kernel. Also, both kernels can be easily build from source, in our experience it is easier to build from source the FreeBSD kernel.

[\textbackslash n] [...]},
  keywords = {*imported-from-citeulike-INRMM,~INRMM-MiD:c-14292144,comparison,freebsd,gnu-linux,operating-system,software-engineering,solaris,windows},
  series = {Lecture {{Notes}} in {{Engineering}} and {{Computer Science}}}
}

Downloads: 0