Porting Linux - Embedded

This is a discussion on Porting Linux - Embedded ; Hi I have a real fundamental question.. Hoping someone point me to some plausible answers. 1. What is meant by porting of a Operating System??? 2. What does say porting uCLinux onto LPC2148 do to the board.. in the sense ...

+ Reply to Thread
Results 1 to 4 of 4

Thread: Porting Linux

  1. Porting Linux

    Hi

    I have a real fundamental question.. Hoping someone point me to some
    plausible answers.

    1. What is meant by porting of a Operating System???

    2. What does say porting uCLinux onto LPC2148 do to the board.. in the
    sense that, how does it change its functionality??

    thanks heaps

    techie.


  2. Re: Porting Linux

    > I have a real fundamental question.. Hoping someone point me to some
    > plausible answers.
    >
    > 1. What is meant by porting of a Operating System???


    Porting an Operating System means making it runnable on hardware which from
    begin shouldn't be supported by that OS.

    For example, Linux was originally written for 386-class PCs (that was the
    first "port"). Later it was "ported" to the m68k architekture, which meant
    that it changed that way, that a motorola cpu (with a completely different
    instruction set) could run Linux.

    uCLinux is a port of Linux onto architectures which don't have a MMU. Linux
    fundamentally requires a MMU to run and to work with the memory, but many
    (embedded) systems don't get one. So the linux kernel was changed. This
    "new" kernel doesn't require a MMU, but that meant also, that memory
    protection doesn't exist or isn't that strict to use. This may even have
    some other downsides, but -it runs-. And that's the point everything depends
    on.

    > 2. What does say porting uCLinux onto LPC2148 do to the board.. in the
    > sense that, how does it change its functionality??


    Linux is changed so that this board is supported. That means e.g. a
    different set of hardware (no intel timer chip, no BIOS but firmware,
    different boot loading schemes, whatever) has to be supported. Another boot
    loader might be needed, so that the firmware is able to find, load and
    execute the kernel.
    This is meant by porting something.

    Hope that helps, if not, ask further :-)

    Regards



  3. Re: Porting Linux


    Hello Sebastin

    That was a neat explanation of what my doubt was..
    thanks for that.

    regards

    Krish.
    On Nov 6, 12:54 am, "Sebastian" wrote:
    > > I have a real fundamental question.. Hoping someone point me to some
    > > plausible answers.

    >
    > > 1. What is meant by porting of a Operating System???Porting an Operating System means making it runnable on hardware which from

    > begin shouldn't be supported by that OS.
    >
    > For example, Linux was originally written for 386-class PCs (that was the
    > first "port"). Later it was "ported" to the m68k architekture, which meant
    > that it changed that way, that a motorola cpu (with a completely different
    > instruction set) could run Linux.
    >
    > uCLinux is a port of Linux onto architectures which don't have a MMU. Linux
    > fundamentally requires a MMU to run and to work with the memory, but many
    > (embedded) systems don't get one. So the linux kernel was changed. This
    > "new" kernel doesn't require a MMU, but that meant also, that memory
    > protection doesn't exist or isn't that strict to use. This may even have
    > some other downsides, but -it runs-. And that's the point everything depends
    > on.
    >
    > > 2. What does say porting uCLinux onto LPC2148 do to the board.. in the
    > > sense that, how does it change its functionality??Linux is changed so that this board is supported. That means e.g. a

    > different set of hardware (no intel timer chip, no BIOS but firmware,
    > different boot loading schemes, whatever) has to be supported. Another boot
    > loader might be needed, so that the firmware is able to find, load and
    > execute the kernel.
    > This is meant by porting something.
    >
    > Hope that helps, if not, ask further :-)
    >
    > Regards



  4. Re: Porting Linux

    On Sun, 5 Nov 2006 20:54:40 +0100, "Sebastian"
    wrote:

    >For example, Linux was originally written for 386-class PCs (that was the
    >first "port"). Later it was "ported" to the m68k architekture, which meant
    >that it changed that way, that a motorola cpu (with a completely different
    >instruction set) could run Linux.


    One thing to remember when writing operating systems as well as any
    other low level code is to watch up for the processor endiannes. For
    instance the x86 is little endian, while m68k is big endian. If the
    code is written in only one endiannes in mind, porting it to the other
    endiannes may require thousands and thousands of manual changes.
    However, if the code has been originally written so that it can run on
    both as big or little endian, this part of the porting job would be
    minimal.

    Paul


+ Reply to Thread