I have done a project wherin I modified the way resource management is currently performed on Linux Operating System. I call it "A Tripartite Resource Manager".
The aim of my project was to make resource management group based. The administrator has the power to specify the importance of various processes to his system based on which resources would be allocated to them. This helps in providing differentiated services, which are independent of each other to various groups of applications. It would also enable accurate metering of resource consumption in user and kernel mode.
To achieve this, I have used 3 groups. The share of resources each group is entitled to is decided by the administrator, say 50%, 30%, 20% respectively. I classify the processes as and when they come up into one of the 3 groups based on the information that is given in a configuration file.
The amount of resources utilised by each group is maintained based on which further resource allocation is done. Such an approach has several advantages & utilities. This system would be very useful for scenarios like server consolidation, virtual machines.
This system guarantees a particular share to each group of processes irrespective of the load on the system. Therefore a CPU hog would not bring down the performance of the entire system but still manage to get good amount of resources. Also, there can be an arrangement that would enable a process run by the administrator(priviledged users like staff in a university) to get more resources compared to what it would get when executed by non-priviledged users (students) thereby preventing a loss in performance of the entire network.
Currently my project takes care of CPU time & memory. The other resources like I/O, Networks can be similarly tackled. I have modified the 2.4.20 kernel with patches applied for O(1) Scheduler & O(1) VM.
I would be highly obliged if I could get tips on how I should go about testing this project. Other comments and queries are also welcome. ..
Thanks in advance...
Yahoo! India Insurance Special: Be informed on the best policies, services, tools and more.