You are on page 1of 3

National University of Modern Languages (NUML)

Faisalabad Campus

Department of Computer Science


Course Code CSOS-347
Course Title Operating Systems
Assignment 1
Due Date 08-Oct-2023
Instructions:
 Every student need to submit a word file against this assignment with proper name
format (e.g., Assignment#1_OS_071)
 If found plagiarism, straight zero will be marked against assignment.
 Submit Assignment on Due Date. (No Late Submission will be Tolerated)

For Odd Usernames (i.e., 001, 003, 005, …):

What is Monolithic Kernel based Operating System? Explain each component related to this
concept (given in reference image). Write its benefit as well, compared to the other one.

For Even Usernames (i.e., 002, 004, 006, …):

What is Microkernel based Operating System? Explain each component related to this concept
(given in reference image). Write its benefit as well, compared to the other one.

Reference Image
What is Monolithic Kernel based Operating System?
Definition: The monolithic operating system is a very basic operating system in which file
management, memory management, device management, and process management are directly
controlled within the kernel. The kernel can access all the resources present in the system. In
monolithic systems, each component of the operating system is contained within the kernel.
History: Operating systems that use monolithic architecture were first time used in the 1970s.

 Examples: Monolithic kernel-based operating systems includes


Unix, Linux, Open VMS, XTS-400, and z/TPF.
 Note: All the services run in kernel space.

Explanation of each component related to this concept (given in reference image).


VFS:
Virtual file system or virtual file system switch is an abstract layer on top of a more concrete file
system. The purpose of a VSF is to allow client applications to access different types of
concrete file systems in a uniform way.
Example: It can be used to access local and network storage devices transparently without the
client application noticing the difference.
It can be used to bridge the differences in Windows, classic Mac OS/macOS and Unix file
systems, so that applications can access files on local file systems of those types without having
to know what type of file system they are accessing.
IPC:
In a monolithic kernel-based operating system, Inter-Process Communication (IPC) mechanisms
are essential for processes to communicate with each other and with the kernel itself. IPC allows
processes to exchange data, synchronize their activities, and coordinate their operations.
Example: Android, is taken as example of monolithic kernel since it implements Linux kernel in
the underlying system.
File system:
It is a fundamental component of an operating system that manages the organization, storage,
and retrieval of data on storage devices, such as hard drives and solid-state drives. It provides a
hierarchical structure for organizing files and directories, allowing users and applications to
create, read, write, and delete data. File systems maintain metadata about files, including
attributes like permissions, timestamps, and file size. They ensure data integrity through
mechanisms like journaling or transactional support, protecting against data loss or corruption.
Scheduler:
 Allocates CPU time to processes.
 Optimizes resource utilization.
 Determines process execution order.
 Balances system responsiveness.
Virtual Memory:
Virtual Memory extends physical RAM with disk storage. Facilitates multitasking and process
isolation. Provides more memory space for applications. Enables efficient memory management.

Device Drivers:
 Acts as hardware interface.
 Allows OS to control devices.
 Facilitates hardware communication.
 Ensures device compatibility and functionality.
Dispatcher:
The dispatcher in a monolithic kernel plays a vital role in maintaining the efficient and orderly
execution of processes, contributing to the stability and responsiveness of the operating system.
The dispatcher ensures that multiple processes can share the CPU's time effectively, allowing for
multitasking and concurrent execution of tasks.

Its benefit compared to the other one.


o Major benefit: Provides CPU scheduling, memory management, file management, and
other operating system functions through system calls.
o Fast Execution: The execution of the monolithic kernel is quite fast as the services such
as memory management, file management, process scheduling, etc., are implemented
under the same address space.
o Services: The Kernel contains all of the operating system’s services.
o Size: The monolithic kernel is larger than the microkernel.
o Coding: Less coding is required to write a monolithic kernel.

You might also like