Je kernel verze 4 primárně vyvíjen pro 64bitové procesory?

nm

Už jsem slyšel, že jedna dost známá distribuce Linuxu (už si nevzpomínám která) prohlásila, že už nebude vydávat svojí distribuci pro 32bitové procesory. Napadlo mě, že i kernel verze 4 je více nakloněn 64-bitové architektuře, než 32-bitové. A tak se ptám. Je kernel verze 4 primárně vyvíjen pro 64-bitové procesory?


klokan

Re:Je kernel verze 4 primárně vyvíjen pro 64bitové procesory?
« Odpověď #1 kdy: 25. 07. 2016, 07:30:08 »
Čemu přesně říkáte 64bitový procesor? Pokud tím myslíte konkrétně AMD64 alias x86-64, pak máte samozřejmě pravdu, řekl bych dokonce, že je pravděpodobně v dohlednu doba, kdy podpora starého 32bitového x86 bude ukončena  (přinejmenším v mainline kernelu).

Nedá se ale říct, že by kernel obecně předpokládal 64bitový procesor. Řada 32bitových architektur, zejména ARMv7, je stále aktuálních a jejich perfektní podpora v Linuxu je, a ještě dlouho bude, kriticky důležitým požadavkem.

Re:Je kernel verze 4 primárně vyvíjen pro 64bitové procesory?
« Odpověď #2 kdy: 25. 07. 2016, 08:28:45 »
Neexistuje žádný kernel verze 4. Aktuální verze linuxového jádra je 4.7, přičemž ta 7 roste o jedničku s každou vydanou verzí, a když je to číslo moc vysoké, tak Linus Torvalds zvedne to první číslo (4 → 5) a to druhé začne od nuly. Takže mezi verzemi 3.19 a 4.0 nebyl větší rozdíl než mezi verzemi 3.18 a 3.19 nebo 4.0 a 4.1.

Linuxové jádro podporuje desítky platforem, i386 a x86-64 jsou jen jedny z mnoha. Dokonce asi díky Androidu dnes ani platforma „PC“ (i386+x86-64) nebude mít většinu na počtu instalací. Jádro není vyvíjeno primárně pro 64-bitové procesory, je vyvíjeno pro všechny platformy současně. Ale většina přispěvatelů pravděpodobně jako svou primární platformu pro vývoj používá x86-64.

klokan

Re:Je kernel verze 4 primárně vyvíjen pro 64bitové procesory?
« Odpověď #3 kdy: 25. 07. 2016, 09:07:37 »
Neexistuje žádný kernel verze 4. Aktuální verze linuxového jádra je 4.7, přičemž ta 7 roste o jedničku s každou vydanou verzí, a když je to číslo moc vysoké, tak Linus Torvalds zvedne to první číslo (4 → 5) a to druhé začne od nuly. Takže mezi verzemi 3.19 a 4.0 nebyl větší rozdíl než mezi verzemi 3.18 a 3.19 nebo 4.0 a 4.1.

Linuxové jádro podporuje desítky platforem, i386 a x86-64 jsou jen jedny z mnoha. Dokonce asi díky Androidu dnes ani platforma „PC“ (i386+x86-64) nebude mít většinu na počtu instalací. Jádro není vyvíjeno primárně pro 64-bitové procesory, je vyvíjeno pro všechny platformy současně. Ale většina přispěvatelů pravděpodobně jako svou primární platformu pro vývoj používá x86-64.

OP pravděpodobně myslel kernely řady 4.x.

To, jakou platformu používá většina vývojářů jádra, je zajímavá otázka. X64-64 lze patrně považovat za "referenční" implementaci Linuxu, na druhou stranu největší uživatelská základna je na ARM...

nm

Re:Je kernel verze 4 primárně vyvíjen pro 64bitové procesory?
« Odpověď #4 kdy: 25. 07. 2016, 12:16:49 »
Ano, měl jsem na mysli procesor x86_64 a ano měl jsem na mysli kernel verze 4.x.

Jo a jak jsou na tom vývojáři aplikací. Také už dávají přednost x86_64?


Neviditelný

Re:Je kernel verze 4 primárně vyvíjen pro 64bitové procesory?
« Odpověď #5 kdy: 25. 07. 2016, 13:09:53 »
Ano, měl jsem na mysli procesor x86_64 a ano měl jsem na mysli kernel verze 4.x.

Jo a jak jsou na tom vývojáři aplikací. Také už dávají přednost x86_64?
Co si představujete pod pojmem "dávat přednost x86-64"? Nezpraseně napsaná aplikace lze zkompilovat pro x86 i x86-64 naprosto normálně. O optimalizace pro cílovou architekturu se postará kompilátor. Testovat se asi bude více na x86-64, protože takový stroj bude mít většina vývojářů (pokud tedy řešíme oblast serverů a desktopů), což ale podle mě nic moc neznamená.

Ivan

Re:Je kernel verze 4 primárně vyvíjen pro 64bitové procesory?
« Odpověď #6 kdy: 25. 07. 2016, 18:00:30 »
Ona je taky otazka co presne se mysli tim 64bit. ILP64, LP64 anebo LLP64 ? Navic to "64bit" procesory jsou ve skutecnosti casto pouze 48bit resp. 56bit.

ByCzech

  • *****
  • 1 849
    • Zobrazit profil
    • E-mail
Re:Je kernel verze 4 primárně vyvíjen pro 64bitové procesory?
« Odpověď #7 kdy: 25. 07. 2016, 19:00:07 »
Ona je taky otazka co presne se mysli tim 64bit. ILP64, LP64 anebo LLP64 ? Navic to "64bit" procesory jsou ve skutecnosti casto pouze 48bit resp. 56bit.

Ono to nemá 64 bit registry? Ono to nemá instrukce pro 64 bit zpracování dat? :) Ono to nemá instrukce, které používají 64 bit adresaci? Počet "drátů" adresní sběrnice je omezen, protože to pro stav technologií prozatím stačí a není třeba fyzicky adresovat 16 EiB (2^64) paměti. Už 2^48 totiž znamená 256 TiB, viděl jste nějaký stroj, který by to fyzicky omezovalo? A nebo stroj, do kterého by šlo tolik paměti nasázet (k jednomu procesoru)?

klokan

Re:Je kernel verze 4 primárně vyvíjen pro 64bitové procesory?
« Odpověď #8 kdy: 26. 07. 2016, 12:13:19 »
Nezpraseně napsaná aplikace lze zkompilovat pro x86 i x86-64 naprosto normálně.

Což vůbec není pravda. Jsou spousty aplikací, které se nedají jen tak snadno překompilovat. Samozřejmě samostatnou kapitolou jsou aplikace, které obsahují nějaký JIT generátor, ale i u takových věcí, jako komprese, krypto, bignum výpočty apod. je dost důležité, jestli se mi do nativního slova vejde 32 nebo 64 bitů, dobrý kód může v obou případech vypadat dost jinak. A to nemluvím o úplně jiné ABI a volacích konvencích, které taky hrají svoji roli.

Neviditelný

Re:Je kernel verze 4 primárně vyvíjen pro 64bitové procesory?
« Odpověď #9 kdy: 26. 07. 2016, 19:50:45 »
ABI a volací konvence dělají problémy jiným způsobem, pokud všechno přeložím stejným kompilátorem, neměl bych na problémy tohoto druhu narazit. High-performace kód, který řeší nativní velikost slova atp. se často stejně optimalizuje inline assembly a generická verze toho kódu půjde přeložit všude. Takže zbývá JIT. Jaké je ale procento aplikací, co JIT kompilace používají? Z těch běžnějších mě napadají akorát prohlížeče kvůli JS a runtimy věcí jako .NET a Java. Velká většina aplikací může být vůči architektuře CPU (témeř) zcela agnostická, pokud byl programátor při smyslech.

lopata2

Re:Je kernel verze 4 primárně vyvíjen pro 64bitové procesory?
« Odpověď #10 kdy: 26. 07. 2016, 20:36:10 »
JA ako lopata defaultne davam vsade string. Nie som kernel programator ale stale je tu hromada (32bit?) ARMov.

Nezda sa mi ze by nejako prechadzalo v hotovom kode z int na long takze az take horuce to nie je.

V jave to iste akurat tam je long vzdy 64bit.


lopata2

Re:Je kernel verze 4 primárně vyvíjen pro 64bitové procesory?
« Odpověď #11 kdy: 26. 07. 2016, 20:39:23 »
Ja ako lopata by som prosil 256 bitovy long.

bajt ho bitwise uadresuje

Int by mi vyhovoval 128bitovy. znamienkovy char ho uadresuje.

Ověření:
Doplňte nástroj k vyhazování hlíny (lopata)...:

lopata

Re:Je kernel verze 4 primárně vyvíjen pro 64bitové procesory?
« Odpověď #12 kdy: 26. 07. 2016, 20:45:25 »
Jsem cvičená opice
Lepič kódu, plakátů
V práci dělám s Office
Doma se hrám na tátu


Tuxik

  • *****
  • 1 473
    • Zobrazit profil
    • E-mail
Re:Je kernel verze 4 primárně vyvíjen pro 64bitové procesory?
« Odpověď #13 kdy: 29. 07. 2016, 12:06:28 »
Jsem cvičená opice
Lepič kódu, plakátů
V práci dělám s Office
Doma se hrám na tátu

Trollím s chutí, trollím rád,
na rootu jsem do noci,
javaman je kamarád,
nemohu si pomoci.

Keců mívám plné ústa,
všechno vím, a všechno znám,
hlava má je stále pustá,
do lopat vám vynadám.

Lopata je předmět skvělý,
jako nástroj, jako zbraň,
nezapomeň zůstat bdělý,
přede mnou si ústa chraň.

Ústa, nos i všechny údy,
ale hlavně mozeček,
utluču tě argumenty,
stejně jsi jen blbeček.

Nejlepší je vždy jen jeden,
to nesnese diskuzi,
ať je říjen, nebo leden,
seru na vás, soudruzi!