LinuxQuestions.org

LinuxQuestions.org (/questions/)
-   Linux - Embedded & Single-board computer (http://www.linuxquestions.org/questions/linux-embedded-and-single-board-computer-78/)
-   -   porting and flashing (http://www.linuxquestions.org/questions/linux-embedded-and-single-board-computer-78/porting-and-flashing-4175412945/)

beyond 06-23-2012 12:27 AM

porting and flashing
 
hello experts,
I would like to know the difference between the terms FLASHING and PORTING...Generally, used as same...I don`t get it...Are they really sort of same or there exists real big differences..
ex-porting u-boot onto some board !!
n flashing u-boot onto some board!!


Any help or pointers are appreciated..



Regards

macemoneta 06-23-2012 12:40 AM

Porting is the processes of moving software from one platform to another; making the necessary changes to the code and recompiling for the target machine.

Flashing is the process of writing firmware onto a device.

In other words, they are completely different.

beyond 06-23-2012 01:15 AM

@macemoneta

Am I right when I say this :::

when i cross compile a linux kernel and rootfs for my target board or any other device then it is actually PORTING...
n
when I put firmware software (like u-boot or bare-metal programs or BIOS) into the memory of the device then it is flashing...
ex-#flashing# the bIOS of pc,

macemoneta 06-23-2012 01:53 AM

The flashing description is correct.

Porting isn't just cross-compiling; it's the process of making the software available on the platform for the first time. So part of the porting process is the creation of the cross-compiler itself.

beyond 06-23-2012 03:42 AM

So when the people in Embedded Domain, says that I ported (bla bla bla..anything) to some device/SBC etc... are they wrong??
because they are not the first to port it to the hardware, even if they build the toolchain themselves!!
ALL has been already done na!

macemoneta 06-23-2012 04:51 AM

People misuse terminology all the time. If they do it often enough, the meaning changes. The word 'hacking' is a good example; the media have turned it from the original meaning, 'recreational programming', to 'criminal security violation'.

It sounds like the folks you're referring to are misusing 'port' to mean 'cross compile'.

beyond 06-23-2012 07:10 AM

Guess, I am Drunk, too much confused!
srry for the inconvenience to you!!

but sir,
but as what I understand
1.Cross Compile means that compiling the source code for the target system on the HOST is one task
2.making the image run/execute on the target is second task..

so,
after cross compiling on target, _____ process is done to make the image run on target system..

I mean what should I say, when I cross compile a program image on HOST then execute on the target system!
Can I say that I have ported this onto my embedded device?

414N 06-23-2012 08:05 AM

Let's see:
  • Porting: the process needed to make the source code of a program compatible with platform Y when it's compatible only with platform X. Think about console versions of arcade videogames: every version for a different console is a port of the original arcade version to the selected console. Given that the hardware platforms onto which the same software is to be executed vary, it is necessary to make some (heavy or not) adjustments to its source code to correctly exploit the underlying platform.
  • Cross-compiling: the process which make it possible to produce binaries for platform/architecture X while on a machine with a different platform/architecture. Think about compiling Windows programs while on Linux (VLC Windows binaries are cross compiled on Linux). In this context, the target is the platform/architecture you want binaries for while host is your running system architecture/platform.
  • Flashing: the process of writing data (tipically some kind of image file) on a flash memory device.
Quote:

Originally Posted by beyond (Post 4709976)
after cross compiling on target, _____ process is done to make the image run on target system..

I mean what should I say, when I cross compile a program image on HOST then execute on the target system!
Can I say that I have ported this onto my embedded device?

The only kinda meaningful word to put in the blank would be flashing, but it's not the image in itself which is run on the target system.

beyond 06-23-2012 08:45 AM

awesome!!!
cleared out the point..


All times are GMT -5. The time now is 03:54 PM.