this post was submitted on 29 May 2024
2 points (60.0% liked)

techsupport

2240 readers
1 users here now

The Lemmy community will help you with your tech problems and questions about anything here. Do not be shy, we will try to help you.

If something works or if you find a solution to your problem let us know it will be greatly apreciated.

Rules: instance rules + stay on topic

Partnered communities:

You Should Know

Reddit

Software gore

Recommendations

founded 1 year ago
MODERATORS
 

Is it a physical structure of the chip or is it programming? Because how can linux ARM run on a device that used to run windows x86?

you are viewing a single comment's thread
view the rest of the comments
[–] Tramort 1 points 5 months ago

Computer architecture is the mapping between binary instructions and the effect they have on the data that is in the CPU registers.

Different chip families have different codes, conventions, and implementation details than other families, but within a family the mapping should be the same to make sure there is compatibility.

Your last question relates to compilation.

High level programming languages like C or Python are compiled to machine code in order to run. That machine code is the set of instructions for that specific architecture.

So if you want Firefox to run on an ARM device and you have sufficiently agnostic source code (which is more and more common with time) then you simply change the compiler target to arm and recompile... which doesn't even have to be on that particular processor! You can compile a program for an ARM processor using an AMD64 system (if your tool chain supports it).