Hi again, I got the concept. I had no problem understanding the explanation...I already knew the concepts of virtual memory and paging so that was not a problem.
According to ur reply, after the sharing, will always the range of addresses generated by the process, ie the virtual addresses be the same of the parent, even if the physical memory pointed to by that is different.
Yes, otherwise the pointers would point to the wrong adresses and the program will probably quickly segfault.
So basically, is it that sharing VM imply that the range of addresses is shared, and physical pages pointed to by them may or maynot be the same?
The range of virtual addresses is reused, not shared, but I guess it is just a question of using the good words (you are probably also a non-native english speakers). But yes that's the basic idea.
Please do help, and thanks for the previous elaborate explanation!
When I first looked inside the Linux kernel, I started by trying to understand how it handled memory. I finally realized how crazy I was, and switched to an easier part. But by the time, I had learned quite a lot about VM, and also made a minimalist OS for a MC68000 microcontroler (only basic process support without even support for a filesystem). That's also probably why I don't think the actual kernel support copy-on-write on MMU-less processor, as I can't think of any good and efficient implementation for that.
Simon Valiquette
--- The memory management on the PowerPC can be used to frighten small children. - Linus Torvalds
- To unsubscribe from this list: send the line "unsubscribe linux-newbie" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.linux-learn.org/faqs
