Hi <span style="font-family:arial,sans-serif;font-size:14px">Mulyadi Santosa</span><div><span style="font-family:arial,sans-serif;font-size:14px">    I think the OS can just use the segment mechanism to implement  the virtual memory management. When I look through the intel manual find that the </span>Segment Descriptor have a member P, when the P is set this segment is located in the physical memory otherwise the segment is not located,but If this flag is clear, the processor generates a segment-not-present exception  when a segment selector that points to the segment descriptor is loaded into a segment register. Just like the page mechanism we can just use the segment mechanism to manage the virtual memory. But it is Inefficiencies for swapping all segment from disk to memory and this way is no use in the Multiprocessor.</div>
<div><br></div><div><span style="font-family:arial,sans-serif;font-size:14px"> </span><font face="arial, sans-serif"><span style="font-size:14px">regards</span></font></div><div><font face="arial, sans-serif"><span style="font-size:14px">Fan</span></font></div>
<div class="gmail_extra"><br><br><div class="gmail_quote">2012/11/1 Fan Yang <span dir="ltr">&lt;<a href="mailto:lljyangfan@gmail.com" target="_blank">lljyangfan@gmail.com</a>&gt;</span><br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<br><div class="gmail_extra"><br><br><div class="gmail_quote">2012/11/1 Mulyadi Santosa <span dir="ltr">&lt;<a href="mailto:mulyadi.santosa@gmail.com" target="_blank">mulyadi.santosa@gmail.com</a>&gt;</span><br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">
<div class="im">



Hi..<br>
<div><br>
On Wed, Oct 31, 2012 at 9:30 PM, Fan Yang &lt;<a href="mailto:lljyangfan@gmail.com" target="_blank">lljyangfan@gmail.com</a>&gt; wrote:<br>
&gt; Hi all:<br>
&gt;     I have a problem,  if i don&#39;t active the page mechanism just use the<br>
&gt; segment mechanism at the x86 cpu, how can I manage the Multi-tasking?<br>
<br>
</div>multitasking and memory management are not directly related IMHO, but<br>
you&#39;re right that we need process address space switching.<br>
<br>
I think what you&#39;re going to do is already done by Linux kernel port<br>
to non MMU  architectures. Can&#39;t recall which ones, so try to check<br>
<a href="https://en.wikipedia.org/wiki/Memory_management_unit" target="_blank">https://en.wikipedia.org/wiki/Memory_management_unit</a> for further<br>
examples<br>
</div><span><font color="#888888"><br>
<br>
-<div class="im"><br>
regards,<br>
<br>
Mulyadi Santosa<br>
Freelance Linux trainer and consultant<br>
<br>
blog: <a href="http://the-hydra.blogspot.com" target="_blank">the-hydra.blogspot.com</a><br>
training: <a href="http://mulyaditraining.blogspot.com" target="_blank">mulyaditraining.blogspot.com</a></div></font></span></blockquote><div> </div><div>Hi Mulyadi Santosa</div><div>    Very honored to see your reply.Yes, the page mechanism can protect different task to interfere each other by mapping different task to different physical memory, and this work is already done by kernel.</div>


<div>    </div><div>    In order to solve the prev problem I look through the intel manual<a href="http://download.intel.com/design/processor/manuals/253668.pdf" target="_blank">http://download.intel.com/design/processor/manuals/253668.pdf</a> ,and in chapter 3.1 I see this sentence &quot;Segmentation provides a mechanism of isolating individual code, data, and stack modules so that multiple programs (or tasks) can run on the same processor without interfering with one another.&quot; then this manual tell me that &quot;There is no mode bit to disable segmentation. The use of paging, however, is optional.&quot; that is to say the segment mechanism must be support in the OS, but the page mechanism is optional, but at the manual I can&#39;t find any example to explain how to use the single segment mechanism to protect the different tasks to interfere with one another ,so I have a guess you just see.</div>

<div>    BTW, I try the 2.6.32.27 kernel version but nothing changed.</div><div><br></div><div>Thanks </div><span class="HOEnZb"><font color="#888888"><div>Fan</div>

</font></span></div></div><div class="gmail_extra"><span style="color:rgb(136,136,136)"><br>
</span></div>
</blockquote></div><br></div>