in CO and Architecture edited by
32 votes

The total size of address space in a virtual memory system is limited by:

  1. the length of MAR
  2. the available secondary storage
  3. the available main memory
  4. all of the above
  5. none of the above
in CO and Architecture edited by

Subscribe to GO Classes for GATE CSE 2022

4 Answers

36 votes
Best answer

The answer is (A) and (B).

Virtual memory concept is independent of size of main memory and depends only on the availability of the secondary storage.

MAR holds the address generated by CPU and this obviously limits the total virtual memory address space.

edited by



Here the question ask about the total size of address space in a virtual memory system is limited by whome

Plz read the MAR concept in ur given link and also read the following link


See this figure:

CPU Addressing

So, a memory address (in a virtual memory system it will be virtual address) must be held in MAR before the content of that address is fetched to CPU. So, size of MAR decides how much virtual memory CPU can access. If MAR is 32 bits, virtual memory size can be only 232 bytes assuming byte addressing. 

edited by
You are right that the size of virtual memory can't exceed  by the length of MAR but here is question about the address space who is directly decided by secondary memory size

In MAR register we can store main memory address as well as secondary memory address.. and it is well known that main memory size is less than secondary memory size then how can address space is find by using MAR

Address space in a virtual memory system means the virtual address space. So, size of address space is nothing but size of virtual memory. 

"size address space is directly decided by secondary memory size"
This is not true. 
"size of 
address space is LIMITED by secondary memory size" 


"size of address space is not decided by MAR length, it is limited by MAR length"

So according to you sir. Both options a and b are true or option a is true...
Both are true. In 1990s GATE answers had multiple correct answers so this is normal.
@arjun sir why not all 1,2,3 are correct??
Main memory+ swap space in disk are responsible for virtual memory space.. Ryt na sir?
Main memory+swap space is correct. But we cannot say just main memory. Only 1 and 2 are correct.
Sir why not? Size of main memory is 4GB.. And like swap space is MAR will have 32 bits..
And virtual memory bits=32+32.=64 bits.. So y not size of main memory also?

Say if A is limited by B+C, we won't say A is limited by B or A is limited by C.

"so MAR will have 32 bits"
This is alos wrong. MAR has no relation to physical memory size or swap space. 

Sir BT in books its written mar contain physcl address.
So through no of bits of mar we can find out size of phycl address space or vice versa...ryt sir?

MAR contain memory address. On systems with no virtual memory this is physical address. On VM systems, this address is virtual address. MAR hold the address generated by CPU and if this is holding physical address, then virtual memory cannot exist.

Sir where its written in this document that mar contains virtual address??
Wt I know is that sir PC contain virtual address and before going to mar it shld be gone through men mangmnt unit for conversion. So sir how mar can contain VA? It is drctly connected to physical memory..ryt?

That part is not in that document. But CPU has no knowledge of actual address. And it is the CPU which writes to MAR. Hence, it should be virtual address. The below link makes this clear. 


@arjun sir consider this case if the mar register is of 32 bits so the address space contains all the 2^32 entries in the address space....but if in the secondary memory pages size are taken in such a way that there are less than 2^32.... that makes that the address space is only dependent on the MAR right? correct me if i am wrong
You mean entries in page table?

MAR is independent of physical memory on a VM system and this transparency is the job of VM.
i mean the addressable space (pages) can be varied from varying the page size of secondary memory, so it should depend on the secondary memory right rather than the MAR?
what is full form of MAR??
Memory address register
I think size of MAR is decided by the word length of the CPU.All internal registers of the cpu are of the word length of cpu.
applying the same argument but taking B = main memory and C = secondary memory.Total exclusive memory we've is B+C(we could design a scheme where one to one mapping is there).Then to say that we're only limited by secondary memory doesn't seem correct to.
Thanks Dr. Suresh.
12 votes

By "Virtual Memory system", they mean "process or program which we store in RAM" (Physical memory system means RAM itself)

A) is TRUE because if MAR size is 32 bits ..then we cannot have a process of size more than 232 addressable units (say Bytes)... If we have (232 +1) bytes then one of the byte cannot be accessed  by CPU as MAR has only 32 bits instead of 33 bits ...

B) is TRUE because though we can have process of size more than the RAM size using Virtual Memory concept.. we cannot have a process of size more than Hard-disk size ... 

C) is FALSE because we can have a process of size more than RAM as we saw ... 

edited by

1 comment

Good explanation. @Vicky rix

3 votes
Yes, it does. Say if 'n' address lines are there.. then a process can generate virtual address in the range from 0 to 2^n - 1 . So, this address space for a process is always limited by length of MAR. And if you consider as a whole, the total virtual address space must be a proper subset of Secondary Storage for obvious reasons that you cant create and save more pages than external storages, though it is flexible.
0 votes
Available secondary storage

Related questions