---
title: "Short note: Process resilience"
subject: "Distributed System"
chapter: 9
key: "semester_7/distributed_system:process-resilience-note"
source: https://www.bctengineer.com/q/semester_7/distributed_system/process-resilience-note
site: BCT Engineering
---

# Short note: Process resilience

Distributed System · Chapter 9: Fault Tolerance

- Asked in: 2074 Asoj, 4 marks; 2071 Chaitra, 3 marks; 2073 Shrawan, 3 marks; Model question (asked 4 times)
- Video: [3.5 Process Resilience](https://www.youtube.com/watch?v=C4z9GZ8TKtc) — OU Education
- Answer checked by Claude Opus 5.5 (high effort) on 2026-10-14
- Page: https://www.bctengineer.com/q/semester_7/distributed_system/process-resilience-note
- Whole chapter: https://www.bctengineer.com/md/semester_7/distributed_system/chapter-9

## Question

Write a short note on process resilience (explain process resilience with example).

## Short answer

Process resilience masks failures by replicating processes into a group. Flat groups decide collectively without single point of failure; hierarchical groups use a coordinator for speed. For crash failures, K+1 members tolerate K faults; for Byzantine, 2K+1 for majority vote, 3K+1 for agreement. Example: three replicated database servers survive one crash.

## Answer

**Process resilience** means protecting a system against process failures by replicating a process into a **process group** that works as a single logical process: if a member fails, another takes over, so the service continues.

**Group organization**
- **Flat group**: all processes are equal and decide collectively (e.g. by voting). There is no single point of failure, but decision making is more complex and has more overhead.
- **Hierarchical group**: one coordinator decides and the workers carry out its instructions. It is simple and fast, but if the coordinator fails, the group must elect a new one.

```text
Flat group        Hierarchical group
 P1--P2            Coordinator
  \  /              /   |   \
   P3--P4         W1   W2   W3
```

**Failure masking and group size**: a group that can survive K failures is K-fault tolerant. With crash failures, K+1 members are enough; with arbitrary (Byzantine) failures, 2K+1 members are needed (with voting), and 3K+1 to reach agreement.

**Agreement in faulty systems**: members must agree on decisions even when some members are faulty (consensus, Byzantine agreement). Membership changes need a **group membership** service that adds and removes members and detects failed ones (by pinging and timeouts).

Example: a replicated database group of 3 servers answers client requests; if one crashes, the other two keep serving.

## Check yourself

The answer's key points as multiple-choice questions, with the correct option and why.

1. How does process resilience protect against process failures?
   A. By restarting the whole system
   B. By replicating a process into a group that acts as one logical process
   C. By using only one reliable process
   D. By checking messages with checksums
   Answer: B. If a member fails, another takes over so the service continues. (Key point: Process group)

2. What is the main weakness of a hierarchical group?
   A. Decisions are slow due to voting
   B. If the coordinator fails, a new one must be elected
   C. Workers cannot act
   D. No member can decide
   Answer: B. The coordinator is a single point of failure, though the group is simple and fast. (Key point: Hierarchical weakness)

3. How many members are needed to tolerate K crash failures?
   A. K
   B. K+1
   C. 2K+1
   D. 3K+1
   Answer: B. With crash failures, at least one of K+1 replicas survives K failures. (Key point: Group size)

## Related in Distributed System

- [Object replication; process resilience](https://www.bctengineer.com/question.md?key=semester_7%2Fdistributed_system%3Aobject-replication-resilience) — Distributed System, chapter 7
- [Faults, failures, errors; resilience](https://www.bctengineer.com/question.md?key=semester_7%2Fdistributed_system%3Afaults-failures-resilience) — Distributed System, chapter 9
