this post was submitted on 19 Jul 2023
31 points (100.0% liked)

Linux

47314 readers
586 users here now

From Wikipedia, the free encyclopedia

Linux is a family of open source Unix-like operating systems based on the Linux kernel, an operating system kernel first released on September 17, 1991 by Linus Torvalds. Linux is typically packaged in a Linux distribution (or distro for short).

Distributions include the Linux kernel and supporting system software and libraries, many of which are provided by the GNU Project. Many Linux distributions use the word "Linux" in their name, but the Free Software Foundation uses the name GNU/Linux to emphasize the importance of GNU software, causing some controversy.

Rules

Related Communities

Community icon by Alpár-Etele Méder, licensed under CC BY 3.0

founded 5 years ago
MODERATORS
 

cross-posted from: https://lemmy.world/post/1798744

I'm searching for a Notebook and I came across one that had a Qualcomm Snapdragon 7c which grabbed my attention... My main concern was that the processor specs says:

  • Instruction Set: ARMv8-A64 (64 bit)
  • Architecture: Kryo 468

Main questions:

  • Does Linux already supports this processor?
  • What I should look at? Instruction Set (A64) or Architecture (Kyro)?

If you have time to spend... How this CPU compares with an i3 6157U?

you are viewing a single comment's thread
view the rest of the comments
[–] read_deleuze@lemmy.ml 17 points 1 year ago* (last edited 1 year ago) (3 children)

It's complicated.

ARM system initialization doesn't happen the same way as on x86 (the instruction set your computer is probably using unless you're on a phone/tablet). On x86, once the CPU is initialized, it can inform the Linux kernel of what hardware is installed and how to talk to it through a protocol called ACPI. Thus, for Linux to work on a system, it must only support the CPU and some necessary hardware (e.g. I doubt you'll have a usable system if USB, graphics, audio, and networking are unsupported, but otherwise it's fine).

~~ARM functions quite differently; ACPI doesn't exist~~ ACPI is also usable on ARM but Qualcomm refuses to implement it, so instead the Linux kernel has to already know what hardware is installed and where through a configuration file called a device tree blob - basically weird JSON. Therefore it's not enough that Linux supports the Snapdragon 7c (it does) - there must also be a builtin device tree config for your specific device. There likely is one; a simple way to check would be to look here for your device's name (the Snapdragon 7c's codename is SC7180, so the file you're looking for would be sc7180-$vendor-$model.dts). If there isn't and you're willing to get moderately deep in the weeds, you can write your own device tree source file and load it into the kernel (assuming you have at least a rudimentary familiarity with programming, this is doable with a little dedication).

As for your other questions, you don't need to worry too much about instruction set and architecture - being ARM will limit what software can run, but emulation is sort of okay too. It will, however, be far more power-efficient than a 6th gen Intel i3 if that's what you care about - and gut instinct says faster.

It really depends on your usecase, though. If your budget is limited enough that these are serious options, I'd honestly recommend finding a decent second-hand laptop running something a bit better and more recent - but if you run mostly open-source software, don't care about gaming at all, and are willing to get a little deeper than the average hobbyist for some extra battery life, the ARM laptop might be interesting.

[–] techLover@lemmy.world 3 points 1 year ago (1 children)

Thank you for this very detailed answer!

I was looking for a new Notebook for my parents, and they need Windows working as a dual boot and Linux as the main driver. After some research, I found that ARM for Windows was still bad, and we need it to work properly, so I discarded this option. But I appreciated the knowledge you shared with us. Thanks

[–] read_deleuze@lemmy.ml 1 points 1 year ago

Glad to have been informative :D and good luck on your laptop hunt

[–] ozymandias117@lemmy.world 3 points 1 year ago (1 children)

FWIW, ACPI on ARM is a thing, Qualcomm just doesn’t care about their chips

https://www.kernel.org/doc/html/latest/arch/arm64/arm-acpi.html

[–] read_deleuze@lemmy.ml 3 points 1 year ago

That's correct, mea culpa; I've only seriously worked with qcom so entirely forgot that's a thing. I'll update my comment, thanks!

[–] LiveLM@lemmy.zip 2 points 1 year ago

but Qualcomm refuses to implement it

Ah, thank you Qualcomm, very cool!
~~WHY DOES EVERYTHING SUCK SO MUCH???~~