T
takashi
Hi,I am very confused about what virtual memory really is. I have
heard that since a lot of programs are very big compared to relatively
small RAM these days, people started to use the part of hard drive as
a virtual memory. But suppose that I have a memory which can store the
first 10 instructions and the data those 10 instructions needs. Does
the cpu first fetches all of those informations in RAM, and then once
the cpu is done with those instructions and data, it looks for the
next 10 instructions in the hard drive, and copy those instructions
into RAM to execute them? Or the cpu simply goes to the virtual
memory(hard drive)
in a very random way? I have got the feeling that accessing to a hard
drive takes much longer than retrieving the data from RAM, so it seems
more reasonable to fetch as many related instructions and data into
RAM first, instead of fetching a piece of instructions or data from a
hard drive randomly..
I am also confused with the term " offset". This term was used when
the idea that a virtual memory consists of "pages" was introduced. I
was told that pages consist of "virtual page frame number" and
"offset". I still don't understand what this offset does. It seems
that in order to relate the address in virtual memory to the address
in physical memeory,a process page table needs only a virtual page
frame number.
Could anybody help me?
Thank you, and have a good day.
heard that since a lot of programs are very big compared to relatively
small RAM these days, people started to use the part of hard drive as
a virtual memory. But suppose that I have a memory which can store the
first 10 instructions and the data those 10 instructions needs. Does
the cpu first fetches all of those informations in RAM, and then once
the cpu is done with those instructions and data, it looks for the
next 10 instructions in the hard drive, and copy those instructions
into RAM to execute them? Or the cpu simply goes to the virtual
memory(hard drive)
in a very random way? I have got the feeling that accessing to a hard
drive takes much longer than retrieving the data from RAM, so it seems
more reasonable to fetch as many related instructions and data into
RAM first, instead of fetching a piece of instructions or data from a
hard drive randomly..
I am also confused with the term " offset". This term was used when
the idea that a virtual memory consists of "pages" was introduced. I
was told that pages consist of "virtual page frame number" and
"offset". I still don't understand what this offset does. It seems
that in order to relate the address in virtual memory to the address
in physical memeory,a process page table needs only a virtual page
frame number.
Could anybody help me?
Thank you, and have a good day.