From mboxrd@z Thu Jan 1 00:00:00 1970 From: "Mario Premke" Subject: AW: AW: [Fwd: Re: EDE - Personal Suggestions and Ideas] Date: Wed, 26 May 2004 13:43:03 +0200 Sender: linux-8086-owner@vger.kernel.org Message-ID: References: <20040526103015.GO12951@vega.vega.lgb.hu> Mime-Version: 1.0 Content-Transfer-Encoding: 7bit Return-path: In-Reply-To: <20040526103015.GO12951@vega.vega.lgb.hu> List-Id: Content-Type: text/plain; charset="us-ascii" To: lgb@lgb.hu, David Given Cc: linux-8086@vger.kernel.org > > Particularly, on systems that don't have an MMU, the segment ID > controls the > > address of the segment; so on the 8086 and 8088 you won't be > able to move > > your application's segments around while the program's running. > > Why? On 16 bit protected mode (80286) you CAN alter the starting > address of > a segment while refeering the same selector before and after this action > (this is because in protected mode the segment register only contains a > 'selector' which is an index in the descriptor table which describes the > segment). Sure, real mode does not allow this, because in real mode the > content of the segment register is simply the starting address of the > segment divided by 16, allowing maximum of 1Mb address space Is it possible to use the the content of the segment register in real mode as a selector in protected mode - so assuming GDT and possibly LDT are properly set up, would a real mode program run in protected mode? > > Yep, but if you don't want to buy +386 system, and you wanna to provide > the possibility to run a Linux-like OS on 8086 and 286 you should > deal with > them ... > Yes, that's what I meant, because these CPU's are very limited, every possible feature should be supported. Mario