A computer system supports $32$-bit virtual addresses as well as $32$-bit physical addresses. Since the virtual address space is of the same size as the physical address space, the operating system designers decide to get rid of the virtual memory entirely. Which one of the following is true?
@kamal250 Swap space on disk can be used without virtual memory.
Virtual memory isn’t just a combination of swap space and main memory. It is an interface that allows for many more facilities as mentioned in the answers and comments of https://gateoverflow.in/1488/gate-cse-1999-question-2-10, https://gateoverflow.in/701/gate-cse-2001-question-1-8 and https://gateoverflow.in/1841/gate-cse-2006-question-63-ugcnet-june2012-iii-45. It’s just that one way of implementing VM is through a conjunction of main memory and swap space, and other hardware and/or software techniques. But, without VM too, we can take advantages of techniques like standard swapping/swapping (moving entire processes to and fro swap space when in paucity of physical memory), swapping with paging/paging (moving process pages instead of entire processes to and fro swap space when in paucity of physical memory), page tables, segmentation, etc. They are like individual dishes that a restaurant (OS) is serving, whereas VM is a combo pack. Ref. – Operating System Concepts (10th edition, Section 9.5.)
P.S. Paging also refers to ‘a memory-management scheme that permits a process’ physical address space to be non-contiguous’, along with the one mentioned above. So, one should derive the meaning of the word based on the context it’s used in.
A is the best answer here.
Virtual memory provides
So, when we don't need more address space, even if we get rid of virtual memory, we need hardware support for the other two. Without hardware support for memory protection and relocation, we can design a system (by either doing them in software or by partitioning the memory for different users) but those are highly inefficient mechanisms. i.e., there we have to divide the physical memory equally among all users and this limits the memory usage per user and also restricts the maximum number of users.
@Arjun sir, if these type of questions comes in exam then what should we do?...leave this
here the question is about Hardware support for memory management. Not to load a program.... Loading a program into memory without hardware support doesn't make any sense... I.e. to make effective use of available memory using memory management techniques like demand paging... If virtual memory is not available then we don't have the advantage to run multiple programs simultaneously. But we can run programs using basic techniques like contiguous allocation, non contiguous allocation, paging and segmentation... This makes Efficient implementation of multi-user support is no longer possible would be the appropriate choice here....
@ vamsi2376 where did u get this?
64.3k questions
77.9k answers
244k comments
80.0k users