Exploring
Operating System
architecture
• Virtual memory architecture
• Client server architecture
Presented by:
• Simran Panthi
• Mahima Pariyar
What is an Operating System?
Definition: Software that manages computer hardware and provides
common services for computer programs.
Importance: Facilitates communication between hardware and software,
manages resources, provides user interface, etc.
Core functionalities: Process management, memory management, file
system management, device management, security, etc.
Virtual Memory Architecture
Definition: Mechanism that allows a computer to compensate for physical memory shortages by
temporarily transferring data from RAM to disk.
Purpose and benefits: Increases the amount of usable memory, allows for larger programs to run,
provides memory protection and isolation.
Components:
Page table: Maps virtual memory addresses to physical memory addresses.
Page replacement algorithms (e.g., LRU, FIFO): Determines which pages to swap out of physical
memory when needed.
Address translation: Conversion of virtual memory addresses to physical memory addresses.
Illustration: Diagram showing virtual memory mapping and address translation.
Fig: Virtual memory architecture of OS
Virtual Memory Implementation
Paging vs. segmentation: Different techniques for dividing memory into manageable units.
Demand paging: Pages are loaded into memory only when they are needed .
Page fault handling: Occurs when a requested page is not in memory, triggering the
operating system to fetch it from disk.
Thrashing and prevention strategies: Excessive paging activity that degrades performance;
prevented by adjusting system parameters or increasing physical memory.
Client Server Architecture
Definition: Model where tasks are divided between servers and clients, with servers providing resources
or services to clients upon request.
Characteristics: Scalability, flexibility, modularity, centralized management, client-server interaction.
Role of the operating system: Manages communication between clients and servers, allocates resources,
ensures security.
Key components:
Clients: End-user devices requesting services.
Servers: Machines providing services or resources.
Middleware: Software facilitating communication and data management between clients and servers.
Communication protocols: TCP/IP, HTTP, FTP, etc.
Client Server Architecture Model of OS
Comparison & Conclusion
•Similarities and differences: Both involve managing resources and facilitating
communication, but virtual memory focuses on memory management while client-
server architecture involves network communication.
•Importance in modern computing: Essential for efficient resource utilization and
scalability.
•Conclusion: Both architectures play crucial roles in modern operating systems,
enabling them to handle complex tasks efficiently.
ThankYou!