Arnab Chakraborty

Arnab Chakraborty

3,768 Articles Published

Articles by Arnab Chakraborty

3,768 articles

What is the difference between a kernel and an operating system?

Arnab Chakraborty
Arnab Chakraborty
Updated on 17-Mar-2026 899 Views

The kernel and operating system are closely related but distinct components of a computer system. Understanding their differences is essential for grasping how modern computers manage resources and provide services to users and applications. Operating System An operating system (OS) is a comprehensive collection of software that manages computer hardware resources and acts as an interface between users and the computer hardware. It provides common services for computer programs and serves as the foundation for all other software running on the system. The OS includes various components such as device drivers, system utilities, user interfaces, file systems, ...

Read More

What are the fundamental differences between Windows and Linux?

Arnab Chakraborty
Arnab Chakraborty
Updated on 17-Mar-2026 638 Views

Windows and Linux are two of the most widely used operating systems, each with distinct philosophies, architectures, and target audiences. Understanding their fundamental differences helps users choose the right platform for their needs. Windows Windows is a proprietary operating system developed by Microsoft. It evolved from the Disk Operating System (DOS) and has become the most popular desktop operating system worldwide. Windows is designed with user-friendliness in mind, featuring a graphical user interface that requires minimal technical knowledge to operate effectively. Modern Windows versions are standalone operating systems that no longer require DOS as a foundation, though ...

Read More

Local procedure calls in Windows

Arnab Chakraborty
Arnab Chakraborty
Updated on 17-Mar-2026 2K+ Views

The Local Procedure Call (LPC) facility in Windows is a message-passing mechanism designed for communication between two processes on the same machine. LPC is optimized specifically for Windows and serves as an efficient alternative to standard Remote Procedure Call (RPC) mechanisms. Windows uses port objects to establish and maintain connections between processes, similar to the Mach operating system. Types of Ports Windows employs two types of ports for LPC communication: Connection ports − Used for establishing initial connections between client and server processes Communication ports − Used for actual message exchange after the connection is established ...

Read More

What is Multicore Programming?

Arnab Chakraborty
Arnab Chakraborty
Updated on 17-Mar-2026 9K+ Views

Multicore programming is a software development approach that creates concurrent systems designed to run efficiently on multicore processors and multiprocessor systems. It leverages multiple processing units to execute tasks simultaneously, improving system performance and responsiveness. Multicore vs Multiprocessor Systems A multicore processor system contains a single processor chip with multiple execution cores, while a multiprocessor system has multiple separate processors on the motherboard or chip. Both architectures can also include specialized components like Field-Programmable Gate Arrays (FPGAs) — integrated circuits with programmable logic blocks and reconfigurable interconnects that process input data to produce outputs. ...

Read More

What is Amdahl's Law?

Arnab Chakraborty
Arnab Chakraborty
Updated on 17-Mar-2026 9K+ Views

Amdahl's Law is a fundamental principle in computer science that describes the theoretical maximum speedup achievable when improving part of a system. It demonstrates that the overall performance improvement is limited by the portion of the system that cannot be enhanced. Consider this analogy: Three friends must travel to a party separately but arrive together to enter. One drives a car, another takes the bus, and the third walks. No matter how fast the car and bus arrive, they must wait for the slowest person (the walker). To improve overall arrival time, focus must be on helping the walker, ...

Read More

Types of Parallelism in Processing Execution

Arnab Chakraborty
Arnab Chakraborty
Updated on 17-Mar-2026 19K+ Views

Parallelism in processing execution refers to the simultaneous execution of multiple tasks or operations to improve computational performance. There are four main types of parallelism, each operating at different levels of the computing system. Data Parallelism Data Parallelism involves concurrent execution of the same task on multiple computing cores, but with different portions of data. Each core performs identical operations on separate data segments. Consider summing an array of size N. For a single-core system, one thread sums elements [0] ... [N−1]. For a dual-core system, thread A on core 0 sums elements [0] ... [N/2−1], while ...

Read More

Data parallelism vs Task parallelism

Arnab Chakraborty
Arnab Chakraborty
Updated on 17-Mar-2026 25K+ Views

Data parallelism and task parallelism are two fundamental approaches to parallel computing that enable efficient utilization of multi-core systems. Understanding their differences is crucial for designing optimal parallel applications. Data Parallelism Data parallelism involves executing the same task concurrently on different subsets of the same dataset across multiple computing cores. Each core performs identical operations on its assigned portion of data. Example − Array Summation Consider summing an array of size N: Data Parallelism - Array Summation Array [0, 1, 2, 3, 4, 5, 6, 7] ...

Read More

How to implement monitors using semaphores?

Arnab Chakraborty
Arnab Chakraborty
Updated on 17-Mar-2026 2K+ Views

Monitors are high-level synchronization constructs that provide mutual exclusion and condition synchronization. Since many systems only provide semaphores as primitive synchronization tools, we need to implement monitors using semaphores. This implementation requires careful handling of mutual exclusion, condition variables, and signaling semantics. Basic Monitor Structure with Semaphores For each monitor, we need several semaphores and counters: mutex − A binary semaphore (initialized to 1) for mutual exclusion next − A semaphore (initialized to 0) for signaling processes to wait next_count − Integer counter for processes suspended on next Every monitor function F is wrapped ...

Read More

Process Synchronization in Solaris

Arnab Chakraborty
Arnab Chakraborty
Updated on 17-Mar-2026 2K+ Views

Process Synchronization in Solaris refers to the mechanisms used by the Solaris operating system to coordinate access to shared resources among multiple processes and threads. Solaris implements a variety of sophisticated locking mechanisms to support multitasking, multithreading, and multiprocessing environments while ensuring data consistency and preventing race conditions. Types of Synchronization Mechanisms Solaris provides several synchronization primitives, each optimized for different scenarios and performance requirements. Solaris Synchronization Mechanisms Synchronization Primitives ...

Read More

Concept of Address Split in OS

Arnab Chakraborty
Arnab Chakraborty
Updated on 17-Mar-2026 713 Views

Address splitting is a memory management technique used in operating systems to divide the virtual address space of processes into distinct logical segments. This approach enables efficient memory allocation, enhanced security through access control, and improved system performance by organizing memory into manageable units with specific purposes. Memory Segmentation Memory segmentation divides the process address space into logical segments such as code, data, stack, and heap segments. Each segment serves a specific purpose and can have different access permissions and sizes based on process requirements. Process Address Space Segmentation ...

Read More
Showing 1–10 of 3,768 articles
« Prev 1 2 3 4 5 377 Next »
Advertisements