For this project you may be working in groups of three. Each member of your group needs to sign up
on the corresponding project sheet in order to receive a grade. Your task is to develop a simulation of
different scheduling disciplines that allocate a set of processes to available processors.
Using the process generator that you developed in Homework 2 and used in Project 1, generate a set of
50 processes with different memory and cycle (i.e. runtime) requirements. You may assume that
the processes arrive in the system every 50 cycles (e.g., at times 0, 50,100, 150, 200, …etc.). Also, you
can assume that once a process has started, it will run to completion (i.e., there is no scheduling).
However, a process can only start executing if the required memory is available and can be allocated.
1. Assuming that the combined memory requirement of all 50 processes is less than 10 MB, use the
system calls malloc() and free() to dynamically allocate and de-allocate memory to your
processes. Measure the total system time that is required to simulate the execution of your 50
processes.
2. Develop your own memory management system with corresponding function calls my_malloc()
and my_free() to manage a pre-defined block of memory of size 10MB. The function
my_malloc() will try to find the required chunk of memory within the pre-defined 10MB
block and allocate it to an arriving process. Upon completion, the memory partition is returned
to the memory pool via the function my_free(), to be used by other processes. Compare the
performance of your memory manager to the performance of malloc() and free(). Note that
you memory manager does only call the system’s malloc() once to request the initial 10MB
block, hence you are reducing the number of context switches.
3. Assume that the available memory is less than the sum of requirements of all 50 processes.
Modify your system such that a process can only execute if the required memory can be
allocated, otherwise, the process will have to wait in a special queue for memory to become
available. For a given set of 50 processes, analyze the overall completion of your simulation
under the assumption that:
• The system only has 50% of the memory required by the set of 50 processes.
• The system only has 10% of the memory required by the set of 50 processes.
The required memory per process is always guaranteed to be less than system memory.
Deliverables: Write a report that highlights your implementation of the memory manager and shows
the results of the performance analysis. You need to discuss all the limitations and assumptions, and
submit well-documented code.
home work 2:
Write a program in C or C++, which simulates the generation of a set of k processes.
Each process is represented by a 3-tupel, containing
• A unique process ID,
• The number of cycles required to complete the process, and
• The size of the memory footprint.
The required number of cycles is chosen from the interval <1,000, 11,000> with a
mean of 6,000. While it is acceptable to distribute the required cycles uniformly, I
suggest that you attempt to implement a different distribution.
2
The memory footprints of processes fall in the range of 1KB to 100KB with a mean
memory footprint of 20KB.
You need to represent the set of k processes with a data structure of your choice.
Show how the values (required cycles and memory footprint) are distributed over your
set of processes.
You must submit your program, a short description of your approach and the data
structures used, and the analysis of the value distribution.
I am very proficient in c and c++. I have 16 years c++ developing experience now, and have worked for more than 6 years. My work is online game developing, and mainly focus on server side, using c++ under linux environment. I used c++ to make many great projects, for example, I made the tools which can convert java files into c++ scripts, of course garbage collection included, this job is very similar to a compiler, and is very complex. I also made our own mobile game using c++, I can show you the demo of client, if you like. I am very proficient in java also. I have a very good review on Freelancer.com, I never miss a project once I accept the job, you can check my review. Trust me, please let expert help you.
Dear sir/madam, I am experienced software developer (please check my freelancer profile and customer reviews for more details) and I can complete this project for you. I make warranty for providing clean, readable, well-tested, well-commented, professionally written code. Please do not hesitate to ask me any questions you need to make sure I am the right person for this project. We can discuss all details in the private chat. Please do not hesitate to leave any information or questions in the private chat even when if I am offline , be sure, I will read them and respond to you as soon as possible.
hello,how are you. i read your bid carefully.
i am c/c++ expert and have full experience for 10 years.
c++ language is my top skill.
i can provide most quality and high speed.
if you want to success, please contact me.
Then, I will give you good result to the proposals.
hire me.
Dear Client,
Greeting of the day ahead !!! Thanks for providing us opportunity to place bid over the project and communicate with you. I am a serious bidder here and i have already worked on a similar project before and can deliver as u have mentioned .I have checked your requirements.i have right skills to work on this assignmentWe find our expertise, skills and capabilities are perfectly blends with your project requirements because we have already worked on many projects.
You'll love the whole layout, interface design , cross-browser compatibility and mobile-device-friendly interfaces that we design
Our team has created over dozen of windows, and web based appliations iPhone/iPad games and apps, and over 10 Windows and Linux server APIs and security tools
Don't waste any more time in your development We take care of all these things for you . Advanced custom coding for our clients. Anytime.
[Removed for encouraging offsite communication which is against our Terms and Conditions.]. plz add me to discus
I am ready to discuss with you Looking forward to hear from you.
with best Regards