MCA Articles

Page 3 of 95

Message Passing vs Shared Memory Process communication Models

Alex Onsman
Alex Onsman
Updated on 17-Mar-2026 4K+ Views

Interprocess Communication (IPC) allows processes to exchange data and coordinate their activities. The two primary models for IPC are Message Passing and Shared Memory. Each model has distinct characteristics, advantages, and use cases that make them suitable for different scenarios. Message Passing Process Communication Model In the message passing model, processes communicate by exchanging messages through the operating system kernel. Processes do not share memory directly; instead, they send and receive messages via system calls like send() and receive(). The OS manages message queues, pipes, or sockets to facilitate this communication. Message Passing ...

Read More

Difference between Process and Thread

Kiran Kumar Panigrahi
Kiran Kumar Panigrahi
Updated on 17-Mar-2026 60K+ Views

Both process and thread are fundamental concepts in operating systems that represent independent sequences of execution. The key difference is that processes operate in separate memory spaces, while threads share the same memory space within a process. Understanding the distinction between processes and threads is crucial for system design, performance optimization, and concurrent programming. Let's explore these concepts in detail. What is a Process? A process is an active program in execution − more than just program code. It includes the program counter, process stack, registers, and program code. When a program is executed, the operating system ...

Read More

Process vs Parent Process vs Child Process

Ricky Barnes
Ricky Barnes
Updated on 17-Mar-2026 11K+ Views

In Operating System, the fork() system call is used by a process to create another process. The process that uses the fork() system call is the parent process and the process consequently created is known as the child process. Process A process is an active program — a program that is under execution. It is more than just the program code as it includes the program counter, process stack, registers, program code, and other runtime information. The program code itself is only the text section of a process. A process changes its state as it executes, depending ...

Read More

Process Scheduling Fundamentals

David Meador
David Meador
Updated on 17-Mar-2026 934 Views

Process Scheduling handles the selection of a process for the processor based on a scheduling algorithm and the removal of a process from the processor. It is an important part of multiprogramming in operating systems, enabling efficient CPU utilization and fair resource distribution among competing processes. Process Scheduling Algorithms Process scheduling algorithms determine which process gets CPU access next and how resources are distributed among processes. Each algorithm has different characteristics regarding fairness, throughput, and response time. Major Scheduling Algorithms First Come First Served (FCFS) − Handles processes in the order they arrive in the ...

Read More

Single-threaded and Multi-threaded Processes

David Meador
David Meador
Updated on 17-Mar-2026 51K+ Views

Single-threaded processes execute instructions sequentially, processing one command at a time in a linear fashion. In contrast, multi-threaded processes allow multiple parts of a program to execute concurrently, creating lightweight execution units called threads within the same process space. Types of Threading Implementation Multi-threaded processes can be implemented at two levels − user-level threads managed by application libraries, or kernel-level threads managed directly by the operating system. Multi-threaded Process Implementation User-Level Threads User Thread ...

Read More

Operating Systems Client/Server Communication

Ricky Barnes
Ricky Barnes
Updated on 17-Mar-2026 21K+ Views

Client/Server communication is a distributed computing model where multiple client processes request services from a server process. The clients send requests to the server, and the server responds with the requested data or services. This architecture forms the backbone of modern networked applications and distributed systems. There are three main methods for client/server communication, each with distinct characteristics and use cases − Sockets Sockets are endpoints for communication between two processes, whether on the same machine or across a network. A socket is identified by an IP address and port number combination. They provide a low-level interface ...

Read More

Dining Philosophers Problem (DPP)

Kristi Castro
Kristi Castro
Updated on 17-Mar-2026 46K+ Views

The Dining Philosophers Problem (DPP) is a classic synchronization problem in computer science that illustrates the challenges of deadlock and resource sharing in concurrent systems. The problem states that there are 5 philosophers sharing a circular table where they eat and think alternatively. There is a bowl of rice for each philosopher and 5 chopsticks placed between them. A philosopher needs both their right and left chopstick to eat. A hungry philosopher may only eat if both chopsticks are available, otherwise they put down any chopstick they hold and begin thinking again. This problem demonstrates a large class of ...

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 marshalling in RPC?

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

Marshalling in RPC (Remote Procedure Call) is the process of converting procedure arguments and return values into a format suitable for network transmission. When a client makes a remote procedure call, the parameters must be packaged (marshalled) into a message, sent across the network, and then unpacked (unmarshalled) on the server side. How RPC Works Remote Procedure Call (RPC) is a client-server mechanism that enables an application on one machine to make a procedure call to code on another machine. The client calls a local procedure—a stub routine—that packs its arguments into a message and sends them across ...

Read More

What is Interprocess Communication?

Alex Onsman
Alex Onsman
Updated on 17-Mar-2026 104K+ Views

Interprocess Communication (IPC) is the mechanism provided by the operating system that allows processes to communicate with each other. This communication could involve a process letting another process know that some event has occurred or the transferring of data from one process to another. Interprocess Communication Process A PID: 1234 Process B PID: 5678 Operating System Data/Messages Data/Messages ...

Read More
Showing 21–30 of 941 articles
« Prev 1 2 3 4 5 95 Next »
Advertisements