Write a program to demonstrate the memory leak problem, Operating System

Assignment Help:
Write a program (with the programming language and on the platform of your choice) to demonstrate the memory leak problem (see https://en.wikipedia.org/wiki/Memory_leak for details on what the memory leak problem is). The full program and the program outputs should be included at the end of the report as an appendix.
If you write the program on a platform which has built-in garbage collection mechanism, special care has to be taken to introduce the memory leak problem.
Execute the program until it cannot proceed anymore. You may have to allocate big chunks of memory iteratively to reach to this point quickly. This is even more so if you are running the program on a 64-bit operating system. Based on your observation and your understanding of the principles of a paging memory management system, answer the following questions:
A. How much memory has the program used when reaching the point where it cannot proceed anymore? What is the physical (32-bit or 64-bit) and logical address space of the computer you run this application on? What is the size of the physical memory (RAM) of the computer you run this application on?
B. What type of memory, virtual or physical, is exhausted when there is a memory leak problem with a process?
C. When a process that has a memory leak problem cannot proceed anymore, does it prevent any other program from starting/running due to lack of memory? Does it slow down the whole system?
D. On a platform which has built-in garbage collection mechanism, e.g., .NET and JVM, to a large extent, the memory leak problem can be avoided. Why?

Related Discussions:- Write a program to demonstrate the memory leak problem

Long term scheduler, Long term scheduler calculates which processes are a...

Long term scheduler calculates which processes are admitted to the machine for processing. It accepts the degree of multiprogramming. Once accepted, a job converts a process.

What is turnaround time, What is turnaround time? Turnaround time is th...

What is turnaround time? Turnaround time is the interval from the time of submission to the time of completion of a process. It is the sum of the periods exhausted waiting to g

Management Information Systems, Select any business process within this fir...

Select any business process within this firm, describe it as a set of steps then fill the following table (flow, information, sender and receivern #Minimum 100 words accepted#

What is the occupation of the object manager, Q. What is the occupation of ...

Q. What is the occupation of the object manager? Answer: Substance present a generic set of kernel mode interfaces to user mode programs. Objects are influenced by the execut

Difference between message passing and shared memory, Problem: a) To en...

Problem: a) To ensure proper operation, the operating system and all the other programs must be protected from any malfunctioning program. Describe a mechanism which is impleme

What do you understand by active directory domain, Question: a) What ...

Question: a) What do you understand by Active directory domain in Windows Server 2008? Support your answer with a diagram. b) Distinguish between active directory trees

What is starvation?, What is starvation? A main problem related to dead...

What is starvation? A main problem related to deadlock is starvation. Starvation is the circumstances where process waits indefinitely within the semaphore. Indefinite blocking

Disk scheduling algorithms-first come, FCFS (First Come, First Served) Per...

FCFS (First Come, First Served) Perform operations in order requested No reordering of work queue No starvation every demand is serviced Poor performance

Differences between foreground and background, Describe the differences bet...

Describe the differences between foreground and background processing. What advantage does background processing provide? 1. Background processes typically run with little or no

What are the benefits of multithreaded programming, What are the benefits o...

What are the benefits of multithreaded programming? The advantages of multithreaded programming can be broken down into four main categories: Responsiveness Resourc

Write Your Message!

Captcha
Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd