---
title: "Functions of OS and microkernel"
subject: "Operating System"
chapter: 1
key: "semester_6/operating_system:os-functions-microkernel"
source: https://www.bctengineer.com/q/semester_6/operating_system/os-functions-microkernel
site: BCT Engineering
---

# Functions of OS and microkernel

Operating System · Chapter 1: Introduction to Operating System

- Asked in: 2068 Bhadra, 3+5 marks
- Video: [Structures of Operating System](https://www.youtube.com/watch?v=XXPBl20J22w) — Neso Academy
- Answer checked by Claude Opus 5.5 (high effort) on 2026-10-14
- Page: https://www.bctengineer.com/q/semester_6/operating_system/os-functions-microkernel
- Whole chapter: https://www.bctengineer.com/md/semester_6/operating_system/chapter-1

## Question

What are the functions of an operating system? Explain about microkernel.

## Short answer

OS functions include process, memory, file, and I/O management, protection, and user interface. A microkernel keeps only essential services (IPC, scheduling, basic memory) in kernel mode; other services like file systems and drivers run as user-mode servers communicating via message passing.

## Answer

#### Functions of an operating system

1. **Process management**: creation, scheduling, synchronization, communication and termination of processes.
2. **Memory management**: allocation, protection, swapping, paging and virtual memory.
3. **File-system management**: files and directories, access control, storage allocation.
4. **I/O (device) management**: device drivers, buffering, spooling and disk scheduling.
5. **Protection and security**: authentication and access control for resources.
6. **User interface**: shell or GUI, error handling and resource accounting.

#### Microkernel

A **microkernel** is an OS design in which only the minimum essential services run in kernel mode, and everything else runs as ordinary user-mode server processes.

The microkernel keeps only:
- low-level **address-space management** (basic memory handling),
- **process/thread management and scheduling**, and
- **inter-process communication (IPC)** by message passing.

The file system, device drivers, networking and memory pagers run as separate **servers** in user space. A client requests a service by sending a message to the microkernel, which passes it to the right server and returns the reply.

```text
 User mode:
 +------+ +--------+ +---------+ +-----+
 | File | | Device | | Network | | App |
 | srv  | | driver | | server  | |     |
 +--+---+ +---+----+ +----+----+ +--+--+
    |         |           |         |
 ---+---------+-----------+---------+---
 Kernel mode:
 +------------------------------------+
 | Microkernel: IPC, scheduling,      |
 | basic memory management            |
 +------------------------------------+
 | Hardware                           |
 +------------------------------------+
```

**Advantages**: small, easy to port and extend; more reliable and secure because a failing server does not crash the kernel; servers can be added or replaced without recompiling the kernel.

**Disadvantage**: slower than a monolithic kernel because of repeated message passing and mode switches. Examples: Mach, QNX, MINIX 3.

## Check yourself

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

1. Which services does a microkernel keep in kernel mode?
   A. Address-space management, process/thread scheduling and IPC by message passing
   B. File system, device drivers and networking
   C. Only the user interface
   D. All device drivers and the shell
   Answer: A. Only minimum essentials stay in the kernel; the rest run as user-mode servers. (Key point: Microkernel contents)

2. Where do the file system and device drivers run in a microkernel OS?
   A. Inside the kernel as compiled-in modules
   B. As separate server processes in user mode
   C. In the hardware controller
   D. In the BIOS
   Answer: B. They run as user-space servers and clients reach them by messages through the microkernel. (Key point: Servers in user space)

3. Why is a microkernel more reliable than a monolithic kernel?
   A. It has more code running in kernel mode
   B. It avoids using message passing
   C. A failing server does not crash the kernel
   D. It never needs scheduling
   Answer: C. Servers are in user space, so their failure is isolated from the kernel. (Key point: Reliability advantage)

4. What is the main disadvantage of a microkernel?
   A. It cannot be ported to other hardware
   B. Servers cannot be replaced without recompiling the kernel
   C. It has a very large trusted code base
   D. Slower because of repeated message passing and mode switches
   Answer: D. Each service request involves messages and mode switches, costing speed. (Key point: Microkernel disadvantage)

## Related in Operating System

- [What is an OS; its functions](https://www.bctengineer.com/question.md?key=semester_6%2Foperating_system%3Aos-functions-definition) — Operating System, chapter 1, asked 2×
- [OS abstraction, extended machine, system call](https://www.bctengineer.com/question.md?key=semester_6%2Foperating_system%3Aos-abstraction-system-call) — Operating System, chapter 1
- [OS as virtual machine; functions](https://www.bctengineer.com/question.md?key=semester_6%2Foperating_system%3Aos-virtual-machine-functions) — Operating System, chapter 1
- [OS definition and types of OS](https://www.bctengineer.com/question.md?key=semester_6%2Foperating_system%3Aos-definition-types) — Operating System, chapter 1
- [Layered vs monolithic OS structure](https://www.bctengineer.com/question.md?key=semester_6%2Foperating_system%3Alayered-vs-monolithic) — Operating System, chapter 1
- [Pipe, shell; OS as resource manager](https://www.bctengineer.com/question.md?key=semester_6%2Foperating_system%3Apipe-shell-resource-manager) — Operating System, chapter 1

## Related in other subjects

- [Short note: Monolithic and microkernel](https://www.bctengineer.com/question.md?key=semester_7%2Fdistributed_system%3Amonolithic-microkernel-note) — Distributed System, chapter 3, asked 4×
- [DOS; monolithic and microkernel](https://www.bctengineer.com/question.md?key=semester_7%2Fdistributed_system%3Ados-monolithic-microkernel) — Distributed System, chapter 3
- [Features of a typical operating system](https://www.bctengineer.com/question.md?key=semester_4%2Fmicroprocessor%3Afeatures-of-operating-system) — Microprocessor, chapter 6, asked 3×
- [Operating system layers](https://www.bctengineer.com/question.md?key=semester_7%2Fdistributed_system%3Aos-layers) — Distributed System, chapter 3
