Re: Segmented or Flat model

Brian Raiter <[email protected]>
Newsgroups gmane.linux.assembly
Message-ID <[email protected]>
> I need clarification to a particular gnu assembly question. When i
> write a code:
> 
> .section .data
> output:
>    .int 1
> 
> .section .text
> .globl _start
> _start:
>    movl $output, %ebx
>    ....
> 
> here what type of memory model is used for movl statement(flat or
> segmented)?

I suppose that depends on your target platform. Since you sent this to
linux-assembly, I'm going to assume that the answer is "flat". For all
practical purposes, there is no "segmented" memory model on 32-bit
x86 linux.

> Also how does movl knows which logical address to use? I mean how do
> variables get their logical address?

The linker is generally responsible for assigning actual addresses.
(The assembler can't do this because it doesn't know what other object
files will go into the final executable.)

b
-
To unsubscribe from this list: send the line "unsubscribe linux-assembly" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.