Things I can do before MMU is turned on

Things I can do before MMU is turned on

am 02.01.2008 07:55:03 von Rajat Jain

Hi,

This is a little offtopic but ...

I'm working in an environment where the MMU has yet not been enabled (And hence on PC relative addressing can be used - no absolute addresses). I'm trying to build an exhaustive list (in terms of C language source contructs) of what I am allowed to do and what no. Can you please help me by adding to the list and verifying / disqualifying if anything is wrong:

Allowed
=======
1) Local variables
2) Function calls using function name (right?)
3) if-then-else
4) for / while / do-while


Not Allowed
===========
1) Accessing global variables
2) Function call using function pointers (why?)
3) Switch-case (why?)

Any thing else that can be added to the "Not allowed" list?

Thanks,

Rajat
-
To unsubscribe from this list: send the line "unsubscribe linux-newbie" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.linux-learn.org/faqs

Re: Things I can do before MMU is turned on

am 02.01.2008 13:23:59 von Mulyadi Santosa

Hi...

> This is a little offtopic but ...

Not sure if I can handle these things :)

> Allowed
> =======
> 1) Local variables
yes, they are referenced by offset of ebp/esp IIRC

> 2) Function calls using function name (right?)

hm, relocation usually replace function calls with absolute function
call, at least on x86.

> 3) if-then-else
that will be translated to jmp

Re: Things I can do before MMU is turned on

am 02.01.2008 13:52:43 von srinivas bakki

------=_Part_6064_26185304.1199278363751
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: 7bit
Content-Disposition: inline

>
> I'm working in an environment where the MMU has yet not been enabled (And
> hence on PC relative addressing can be used - no absolute addresses).


Does it necessarily mean that u need to access data or text with relative
addressing only ? I mean yes we have to address it relatively but its very
architecture specific.

let us say in x86 segments are defined to span the entire addressable
memory then both the absolute and the relative become the same ... am i
right ?

However what i fail understand is why the question is being asked in
context with the MMU being enabled or disabled !

Regards
Srinivas Bakki

------=_Part_6064_26185304.1199278363751
Content-Type: text/html; charset=ISO-8859-1
Content-Transfer-Encoding: 7bit
Content-Disposition: inline


I'm working in an environment where the MMU has yet not been enabled (And hence on PC relative addressing can be used - no absolute addresses).

 

Does it necessarily mean that u need to access data or text with relative addressing only ? I mean yes we have to address it relatively but its very architecture specific.

 

 let us say in x86 segments are defined to span the entire addressable memory then both the absolute and the relative become the same ... am i right ?

 

However  what i fail understand is why the question is being asked in context with the MMU being enabled or disabled !

 

Regards

Srinivas Bakki

 

 


------=_Part_6064_26185304.1199278363751--

--
To unsubscribe from this list: send an email with
"unsubscribe kernelnewbies" to ecartis@nl.linux.org
Please read the FAQ at http://kernelnewbies.org/FAQ