CCP Operating System
CCP Operating System
NAME:
Shazil faisal
REG ID:
59805
DATE:
16-JAN-2025
FACULTY NAME
SIR MUHAMMAD DAUD ABBASI
Introduction:
The increasing reliance on hybrid IT infrastructures, which often incorporate
Linux-based servers and Windows client machines, demands efficient resource
management solutions that are both robust and compatible across platforms. This
document outlines the design and implementation of a distributed resource
management system (DRMS) that ensures optimal resource utilization, secure file
handling, and seamless process synchronization. The primary goal is to enable
effective collaboration between Linux and Windows systems while leveraging
their respective strengths.
Literature Review:
Process Management
Memory Management
1. Linux:
oRelies on virtual memory, paging, and swapping.
oImplements memory sharing via shared memory (shmget, shmat).
2. Windows:
o Uses VirtualAlloc and VirtualFree APIs.
o Memory sharing facilitated via memory-mapped files.
File Systems
1. Linux ext4: Journaling file system offering robust metadata handling and efficient large
file storage.
2. Windows NTFS: Features ACL-based security, journaling, and efficient disk space
utilization.
Scheduling
1. Linux Completely Fair Scheduler (CFS): Ensures balanced CPU time distribution
among processes.
2. Windows Scheduler: Implements a priority-based preemptive scheduling algorithm.
Designed Model:
The proposed architecture integrates process, memory, and file management while ensuring
platform compatibility:
Methodology:
1. Analyze Linux and Windows APIs to identify commonalities and differences.
2. Implement prototypes for process creation, memory sharing, and file transfer.
3. Benchmark scheduling algorithms using simulated workloads.
4. Develop cross-platform wrappers to abstract underlying system complexities.
5. Process management simulation on both platforms.
6. Implementation of cross-platform IPC and shared memory.
7. Development of a file transfer mechanism with metadata preservation.
8. Simulation and evaluation of scheduling algorithms under high concurrency.
Source Codes:
Annotated source code is included for:
Code:
import java.io.*;
import java.nio.file.*;
import java.util.concurrent.*;
// Process Management
createProcess("echo Cross-platform process creation");
// Memory Sharing
memoryShare("shared_memory.txt", "Shared data between
platforms.");
// File Transfer
fileTransfer("source_file.txt", "destination_file.txt");
// Task Scheduling
scheduleTasks();
} catch (IOException e) {
e.printStackTrace();
}
}
}
Output:
References:
1. Bovet, D. P., & Cesati, M. (2005). Understanding the Linux Kernel.
2. Solomon, D., & Russinovich, M. E. (2009). Windows Internals.
3. Tanenbaum, A. S., & Bos, H. (2015). Modern Operating Systems.
4. Documentation from the Linux kernel and Microsoft Developer Network (MSDN).
This document serves as a foundation for designing a cross-platform DRMS and provides
actionable insights into process management, memory optimization, and file handling across
heterogeneous environments.