Evaluation of Two Modern Operating Systems

Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1of 18

1

Evaluation of Two Modern Operating Systems

Submitted by:

Submitted to:

Date:
2

Contents
Evaluation of Two Modern Operating Systems..........................................................................................1
Introduction:...............................................................................................................................................2
Microsoft Windows OS:........................................................................................................................2
Synopsis:.............................................................................................................................................2
Computer system examples include:...............................................................................................2
System prerequisites:........................................................................................................................2
Use Cases:...........................................................................................................................................2
The Linux operating system:................................................................................................................3
Synopsis:.............................................................................................................................................3
Computer system examples include:...............................................................................................3
System prerequisites:........................................................................................................................3
Use Cases:...........................................................................................................................................3
OS Architecture:..........................................................................................................................................3
Windows OS Architecture:....................................................................................................................4
The kernel:..........................................................................................................................................4
Principal Elements:............................................................................................................................4
Structure of the Linux Operating System:.......................................................................................5
Important Elements:.........................................................................................................................5
Modules of a loadable kernel:..........................................................................................................5
Major Functions of both systems and how they are related to the type of system:................................6
3

Microsoft Windows OS:........................................................................................................................6


The Linux operating system:................................................................................................................8
Design Evaluation, pros, Limitations and ways to extend it....................................................................10
Assessment of the Windows Operating System Architecture:........................................................10
Advantages:.....................................................................................................................................10
Constraints:......................................................................................................................................11
Possible Expansions:........................................................................................................................11
Assessing the Design of the Linux Operating System:.....................................................................11
Positives:..........................................................................................................................................11
Restrictions:.....................................................................................................................................12
Possible Expansions:........................................................................................................................12
Conclusion:...........................................................................................................................................13
References:...........................................................................................................................................13
4

We are aiming to compare two widely utilized operating systems which includes;

 Window

 Linux

Introduction:

Microsoft Windows OS:

Synopsis:
Microsoft created the Windows operating system family. Windows 10 is the version that is most

often used. Servers, tablets, laptops, and personal computers are all intended to run Windows

operating systems. They facilitate multitasking and offer a graphical user interface (GUI).

Microsoft provides patches and upgrades often to improve security and include new

functionality. |

Computer system examples include:


 Personal computers, including laptops and desktops

 Microsoft Surface tablets

 Windows Server-based servers


5

System prerequisites:
A processor running at 1 GHz or higher, 1 GB of RAM for 32-bit systems or 2 GB for 64-bit

systems, 16 GB or 20 GB of hard disc space for 32-bit systems, and a graphics card supporting

DirectX 9 or later are all required for Windows 10.

Use Cases:
Due to its vast program interoperability and user-friendly interface, Windows is popular both for

personal and corporate usage. It is frequently utilized in business settings, video games, and

other professional applications. (Adekotujo, A., Odumabo, A., Adedokun, A., & Aiyeniko, O. ,2020).

The Linux operating system:

Synopsis:
Based on the Linux kernel, the Linux family of open-source operating systems resembles Unix.

There are several Linux distributions (distros), each with a unique set of features and attributes.

Fedora, CentOS, and Ubuntu are a few examples. Linux is renowned for being flexible, secure,

and stable.
6

Computer system examples include:


 Desktop Computers (Federa, Ubuntu)

 Servers (Debian, CentOS)

 Embedded Systems (Android, a Linux kernel-based platform)

System prerequisites:
The system requirements for Linux might differ greatly depending on the distribution. For

instance, a 2 GHz dual-core processor, 4 GB of RAM, and 25 GB of hard drive space are

recommended by Ubuntu Desktop 20.04 LTS.

Use Cases:

Due to its security features and stability, Linux is utilized extensively in server contexts. It is

widely used in Internet of Things (IoT) devices and embedded systems. Due to its customizable

choices and command-line interface, Linux is a popular choice for developers and system

administrators.

OS Architecture:
7

Windows OS Architecture:

With components from both monolithic and microkernel kernel designs, Windows has a hybrid

architecture.

The kernel:
The hybrid kernel used by Windows combines elements of the monolithic and microkernel

kernel architectures. The kernel (monolithic aspect) contains the essential elements, such as

memory management and process scheduling. On the other hand, some system functions and

device drivers operate in user mode, which helps to create a framework akin to a microkernel.

Better stability and security are the goals of this design.

Principal Elements:
User Configuration:

 Windows user-space processes and apps are part of user mode.


8

 User mode is used by Windows subsystems, such the Win32 subsystem, which runs

graphical programs. (Awan, M. T., & Khan, K. ,2022).

Kernel Configuration:

 The Windows kernel, which controls system resources and offers essential services, is a

part of the kernel mode.

 Device drivers operate in kernel mode and are in charge of facilitating communication

between the hardware and the operating system.

Executive Support:

 The central component of the Windows operating system is the Executive, which is a

collection of system functions.

 The Executive is made up of parts such the Memory Manager, Process Manager, and I/O

Manager.

Structure of the Linux Operating System:

The kernel architecture of Linux is monolithic.

The kernel:
9

As the Linux kernel is monolithic, the majority of services provided by the operating system

operate in kernel space.

It takes care of the file system, device drivers, memory management, system calls, and processes.

Important Elements:
Interaction Space:

 Libraries and user apps are included in the user space in Linux.

 User applications depend on system libraries, such the GNU C Library (glibc), for crucial

functions.

The kernel space:

 The monolithic kernel that manages system-level operations makes up the Linux kernel

area.

 Kernel space is where file systems, device drivers, and essential kernel functions run.

Modules of a loadable kernel:


Linux permits dynamic kernel module loading and unloading. These modules increase the

kernel's capabilities without necessitating a reboot. (Aroca, R. V., Caurin, G., & Carlos-SP-Brasil,
S. ,2009).

Major Functions of both systems and how they are related


to the type of system:
Microsoft Windows OS:
Process States and Descriptors:

 Windows stores details about each process in a process control block (PCB). In

Windows, there are five different process states: Running, Ready, Waiting, Transition,

and Terminated.
10

 Information like the process ID, priority, context, and memory information are all

contained in the process descriptor.

Tying up:

 Windows has multithreading capabilities, which enables a process to have many threads

operating simultaneously.

 In Windows, threads have separate registers and stacks but share the same resources (files

and memory).

Long- and short-term schedulers:

 Both short-term and long-term schedulers are used by Windows.

 Processes are chosen from the work queue and moved to the ready queue by the long-

term scheduler, also known as the job scheduler.

 A thread is chosen from the ready queue by the short-term scheduler, also known as the

CPU scheduler, to run on the CPU. (Bassil, Y. ,2012).

Organizing Methods:

 Windows schedules tasks using a priority-based system. Every thread is assigned a

priority level, and the thread with the greatest priority is chosen for execution by the

scheduler.

 Additionally, Windows utilizes a feature known as priority boost to give a thread that has

been waiting a long time a temporary priority boost.

Techniques for Synchronization:


11

 Windows has a number of synchronization mechanisms, such as mutexes, crucial

sections, and semaphores.

 Windows' synchronization objects assist in controlling resource sharing and averting data

races.

Managing Deadlocks:

 Windows handles deadlocks in a few different ways. To find and fix deadlocks, it makes

use of a wait-die mechanism and a resource allocation graph.

 Processes and resources are monitored by the Resource Manager, and algorithms for

detecting deadlocks periodically scan for cyclic waits.

 Using the priority inversion method, Windows may proactively terminate lower-priority

threads to resolve deadlocks.

Arrangement and Control of Memory:

 Each process's virtual address space is kept apart by Windows' virtual memory

technology. (Cabrera, J. ,2009).

 User mode and kernel mode comprise the organization of memory. The operating system

and device drivers are found in kernel mode, whereas the application code and data are

found in user mode.

 Demand-paging is a feature of Windows that loads data into memory only when it's

required.

Information and Communication I/O Management:

 Windows uses an I/O manager to control input and output.


12

 I/O operations are represented by I/O request packets (IRPs), which are processed by

drivers in communication with the I/O manager.

 As Windows supports asynchronous I/O, processes can keep running while they wait for

I/O to finish.

The Linux operating system:


Process States and Descriptors:

 Linux stores details about each process in a task_struct, which is sometimes called a

process descriptor. Running, Interruptible, Uninterruptible, Zombie, and Stopped are the

various process states.

 Information like the program counter, file descriptors, process ID, and parent process ID

are all contained in the process descriptor.

Tying up:

 The clone() system function in Linux allows for multithreading by spawning a new

process (thread) inside of an already-existing process. (Economides, N., & Katsamakas,


E. ,2006).

 Under Linux, threads have identical file descriptors, memory addresses, and process IDs.

Long- and short-term schedulers:

 Both long-term and short-term schedulers are used by Linux.

 The default Linux scheduler, called Completely Fair Scheduler (CFS), aims to provide

every process an equal amount of CPU time.

Algorithms for scheduling:


13

 Fairness is the primary goal of Linux's priority-based CFS scheduler. Higher priority

processes receive a bigger portion of the CPU time through a time-sharing mechanism.

Methods of Synchronization:

 Linux has several synchronization techniques, including spin locks, mutexes, and

semaphores.

 Apart from customary synchronization methods, Linux provides sophisticated

synchronization mechanisms like futexes, which are rapid user-space mutexes.

Managing Deadlocks:

 Linux handles deadlocks by employing a variety of strategies, such as deadlock

prevention and detection.

 Functions to establish deadlock detection thresholds and actions to be performed upon

discovery of a deadlock are provided by the Linux kernel.

 One way to prevent deadlocks is to carefully design the kernel to reduce the possibility of

their occurring. (Khan, U. ,2020).

Arrangement and Control of Memory:

 Similar virtual memory is used by Linux, which gives every process its own virtual

address space.

 There are two types of memory: kernel space and user space. Device drivers and the core

operating system are located in the kernel area.

 Demand paging is also used by Linux to load data into memory as needed.

Information and Communication I/O Management:


14

 Linux has a set of interactions between kernel and user space to handle I/O.

 The character and block I/O layers of the kernel control several kinds of devices.

 Asynchronous I/O is supported by Linux via methods such as the io_submit system

function, which allows non-blocking I/O operations.

Design Evaluation, pros, Limitations and ways to extend it


Assessment of the Windows Operating System Architecture:
Advantages:
 User-Friendly Interface: A large variety of people may easily use Windows thanks to

its well-known user-friendly graphical interface. Ease of use is given top priority in the

design, which offers a consistent experience throughout versions.

 Wide-ranging Software Compatibility: Windows offers a large number of programs

and games that are compatible with it. Its appeal is influenced by this complementarity in

both personal and professional contexts.

 Hybrid Design of Kernel: Windows' hybrid kernel architecture blends elements of the

microkernel and monolithic kernel technologies. Performance and stability may now be

balanced, possibly leading to increased security. (Nazeer, S., Bahadur, F., Iqbal, A., Ashraf,
G., & Hussain, S. ,2015

Constraints:
 Software of a proprietary nature: The source code for Windows is not available to the

general public. In opposition to the open-source tenet, this restricts users' access to the

operating system's inspection, modification, and distribution.

 Resource-intensive: Windows has the potential to need a lot of resources, particularly in

terms of system specifications. In comparison to certain Linux distributions, some

versions could require more hardware, which could have an impact on how well they run

on older or less capable systems.


15

 Security Issues: Windows is frequently the target of malware and security threats

because of its extensive use. Although Microsoft publishes security patches on a regular

basis, the frequency of vulnerabilities might raise concerns.

Possible Expansions:
 Open Source Collaboration: Adding new operating system components to the Windows

platform for open-source collaboration is one method to make it more versatile.

Transparency, security, and community engagement may all benefit from this.

 Resource Efficiency Optimization: Windows' usability might be increased by

concentrating on resource efficiency optimization, particularly for older computers or

situations with limited resources.

Assessing the Design of the Linux Operating System:


Positives:
 Linux is an open source operating system that offers transparency and adaptability. Users

can alter the source code, encouraging creativity and supporting a collaborative

development paradigm.

 Linux is renowned for its dependability and efficiency, especially when used in server

contexts. Scalability and effective use of resources are made possible by the modular

design.

 A lot of customization is possible with Linux. By selecting from a variety of desktop

environments, software packages, and distributions, users may customize the system to

meet their own requirements. (Horowitz, M. ,2005).


16

Restrictions:
 Desktop Market Share: Although Linux is the most popular operating system in server

contexts, it is less common on desktops. This is partially because of perceived lack of

user-friendliness for the typical desktop user and software compatibility problems.

 Fragmentation: There can be fragmentation due to the availability of many distributions

with varying package managers and customizations. Although variety offers options, it

may also make some elements of software development and support more difficult.

 Support for Specific Hardware Drivers: Although Linux has made great progress in

this area, compatibility issues may still arise with some proprietary peripherals or

hardware components.

Possible Expansions:
 Better Desktop Experience: Improving the desktop environment, such as simplifying

software installation procedures and creating better user interfaces, may aid Linux's

adoption on desktop computers.

 Unified Standards: By addressing fragmentation problems and establishing more

uniform interfaces and configurations across Linux distributions, efforts might be made

to facilitate ecosystem navigation for developers and consumers. (Sulaiman, N. S., & Raffi,
A. S. H. A. ,2021).

Conclusion:
In conclusion, there are advantages and disadvantages to both Windows and Linux, and future

developments will rely on the aims and objectives of the two development groups. Windows

might stand to gain from increased open cooperation, optimization, and security, while Linux

should concentrate on enhancing its desktop environment and resolving driver support and

fragmentation concerns.
17

References:
 Adekotujo, A., Odumabo, A., Adedokun, A., & Aiyeniko, O. (2020). A Comparative Study of

Operating Systems: Case of Windows, UNIX, Linux, Mac, Android and iOS. International Journal

of Computer Applications, 176(39), 16-23.

 Awan, M. T., & Khan, K. (2022). Linux vs. Windows: A Comparison of Two Widely Used

Platforms. Journal of Computer Science and Technology Studies, 4(1), 41-53.

 Aroca, R. V., Caurin, G., & Carlos-SP-Brasil, S. (2009). A real time operating systems (RTOS)

comparison. In WSO-Workshop de Sistemas Operacionais (Vol. 12).


18

 Bassil, Y. (2012). Windows and Linux operating systems from a security perspective. arXiv

preprint arXiv:1204.0197.

 Cabrera, J. (2009). Windows vs. Linux: A comparative study. Proposal, Technical Writing, Blinn

College, Bryan, TX. Accessed January, 21, 2019.

 Economides, N., & Katsamakas, E. (2006). Linux vs. Windows: A comparison of application and

platform innovation incentives for open source and proprietary software platforms. In The

Economics of Open Source Software Development (pp. 207-218). Elsevier.

 Khan, U. (2020). Comparative study of Linux and Windows. International Journal of Academic

Research in Business, Arts & Science (IJARBAS)-Volume, 2, 53-70.

 Nazeer, S., Bahadur, F., Iqbal, A., Ashraf, G., & Hussain, S. (2015). A Comparison of Window 8

and Linux Operating System (Android) Security for Mobile Computing. International Journal of

Computer (IJC), 17(1), 21-29.

 Horowitz, M. (2005). LINUX vs. WINDOWS: A comparison of Linux and Windows. Retrieved

December, 2, 2005.

 Sulaiman, N. S., & Raffi, A. S. H. A. (2021). Comparison of operating system performance

between Windows 10 and Linux Mint. International Journal of Synergy in Engineering and

Technology, 2(1), 92-102.

You might also like