Single Contiguous Memory Allocation
Single contiguous memory allocation is a method of memory allocation where a program occupies a continuous block of memory, and the operating system keeps track of the memory allocated to each program in a memory map. Although this method is simple and easy to implement, it has several disadvantages that limit its usage in modern operating systems.
Disadvantages of Single Contiguous Memory Allocation
External fragmentation
One of the major disadvantages of single contiguous memory allocation is external fragmentation. External fragmentation occurs when the memory becomes fragmented over time, as processes are allocated and deallocated. This fragmentation reduces the available memory space, making it difficult to allocate new processes that require contiguous blocks of memory.
Memory wastage
Single contiguous memory allocation can result in memory wastage, which occurs when the size of the allocated memory is larger than the actual memory requirements of a process. This memory wastage reduces the available memory for other processes, leading to suboptimal memory utilization.
Limited process size
Single contiguous memory allocation is not suitable for large processes. Since a process requires a contiguous block of memory, the maximum size of a process is limited by the available free memory in the system. This limitation can be a severe bottleneck for large applications that require a significant amount of memory.
Limited flexibility
Single contiguous memory allocation limits the flexibility of the operating system to allocate and deallocate processes. Since processes require contiguous blocks of memory, the operating system must manage the memory carefully to ensure that sufficient contiguous memory is available for new processes. This limitation reduces the flexibility of the system, making it difficult to optimize the memory utilization.
Difficult to share memory
Single contiguous memory allocation makes it difficult to share memory between processes. Since each process requires a separate block of contiguous memory, sharing memory between processes is not possible. This limitation reduces the flexibility of the operating system, making it difficult to implement advanced memory management techniques.
OS-2022
Q-1.
(a) Write are the functions of operating systems? write a note on multi programmed operating systems ?
(b) Distinguish between client server and peer to peer model of distributed systems .
Q-2.
(b) What is meant by Storage Structure? Discuss Storage Hierarchy.
Q-3.
(a) What are the criteria for evaluating the CPU scheduling algorithms? Why do we need it?
Q-4.
(a) What is synchronization? Explain how semaphores can be used to deal with n-process critical problem.
Q-5.
Q-6.
(b) What are the disadvantages of single contiguous memory allocation? Explain.
Q-7.
(a) Briefly explain about single-level, two-level and three Structured directories.
(b) What is disk scheduling? Explain the C-SCAN scheduling by giving an example.
Q-8.
(b) UNIX file system.