Portál AbcLinuxu, 12. května 2025 12:39

Dotaz: 32bit vs 64bit

26.6.2009 14:12 cyclope | skóre: 10
32bit vs 64bit
Přečteno: 851×
Odpovědět | Admin

ahoj, mel bych takovy hloupy dotaz

pri shaneni nekterych programu musim obcas sahnout primo po zdrojaku, ale prave ted, kdyz mam 64bit pocitac i distro, je obcas problem sehnat source code pro 64bit, neb nektere jsou i jako source code oznaceny pro architekturu x86 (casto i386).

k tomu bych se chtel tedy optat, zda by mi nekdo vysvetlil, jakej je rozdil v source code pro x86 a x86_64

nasel jsem par stranek v AJ, ale po prelouskani nekolika strankoveho textu jsem byl z toho jeste zmatenejsi, nez ted

 

predem diky za odpovedi

Nula neni obycejne nic. Je to nic opirajici se o zelezny zakon sve nezbytnosti.
Nástroje: Začni sledovat (1) ?Zašle upozornění na váš email při vložení nového komentáře.

Odpovědi

26.6.2009 15:05 Messa | skóre: 39 | blog: Messa
Rozbalit Rozbalit vše Re: 32bit vs 64bit
Odpovědět | | Sbalit | Link | Blokovat | Admin
Zdrojový kód je jen jeden, pro jakou platformu se zkompiluje záleží na nastavení kompilátoru. Maximálně tak některé projekty mohou obsahovat optimalizace nebo kód v assembleru pro některé konkrétní platformy, ale to bývá typicky jen v kernelu, překladačích a multimediálním sw; i tyto zdrojáky jsou ale součástí jednoho archivu/balíčku.

Kdybys raději napsal, jakým způsobem ten zdroják získáváš, protože na všech download stránkách, které jsem kdy viděl, jsou tuny download odkazů na všechny možné binárky, ale vždy jen jeden odkaz na stažení zdrojového kódu (maximálně dva, jeden .tar.gz a druhý tar.bz2 nebo .zip)...
26.6.2009 21:06 Filip Jirsák | skóre: 68 | blog: Fa & Bi
Rozbalit Rozbalit vše Re: 32bit vs 64bit
Odpovědět | | Sbalit | Link | Blokovat | Admin
Zdroják může být napsaný nepřenositelně – např. počítá s tím, že velikost longu nebo ukazatele je 4 bajty, a na jiné platformě je to 8 bajtů. Pokud se pak třeba v kódu přiřazuje z pointeru do intu, bude to na x86 fungovat (oba mají 4 bajty), ale na x86_64 ne (pointer má 8 bajtů, int stále 4).
27.6.2009 09:33 Petr Šobáň | skóre: 80 | blog: soban | Olomouc
Rozbalit Rozbalit vše Re: 32bit vs 64bit
Většinou se int na pointer převede s varováním a mělo by to chodit, ovšem problém bude pokud budete chtít převést pointer na int (8 -> 4) případně když se budete snažit do int vložit větší číslo než ta architektura umožnuje atd....

Pak se z kladného čísla může stát záporné atd...

Jinak prostě pokud je zdroják pro 32b tak ho na 64b přeložíte a pokud budete mít i všechny potřebné 32b knihovny tak i spustíte (pokud je CPU kompatibilni s 32b některé nemusí být), ovšem 64b program na 32b stroji nepřeložíte a ani nespustíte pokud zdroják nepočítá s přeložením pro 32b architekturu.

27.6.2009 10:29 Filip Jirsák | skóre: 68 | blog: Fa & Bi
Rozbalit Rozbalit vše Re: 32bit vs 64bit
Většinou se int na pointer převede s varováním a mělo by to chodit, ovšem problém bude pokud budete chtít převést pointer na int (8 -> 4)
Přesně takhle jsem to myslel, int na levé straně přiřazení, pointer na pravé.
Bilbo avatar 27.6.2009 11:10 Bilbo | skóre: 29
Rozbalit Rozbalit vše Re: 32bit vs 64bit
Nekde to provede jen varovani, ale pokud nekdo strci pointer treba do funkce typu printf a ta funkce pak misto 4 bajtu najde 8 (nebo misto 8 bajtu najde 4) tak to uz celkem muze vadit. Dalsi problem pak je ve strukturach (s 4byte/pointer to funguje, ale s 8byte/pointer se to treba uz nemusi vejit do ruznych bufferu, pokud je programator prase ....)
Big brother is not watching you anymore. Big Brother is telling you how to live...
28.6.2009 00:18 cyclope | skóre: 10
Rozbalit Rozbalit vše Re: 32bit vs 64bit

ha, tak to prase budu asi ja :)

 

moc vsem dekuji za osvetleni. uz je mi to jasnejsi.

jinak opravdu jsem nasel zdrojak typycky jen pro x86. nevim co to bylo za program, ale slo stahnout jen zdrojak a ten byl NAZEV-VERZE-SRC-I386.tar.gz. no, ale ted jsem to pochopil tak, ze bych jej taky prelozil, jen by mohl delat bordel namisto funkcnosti

 

jeste jednou vsem dekuji

Nula neni obycejne nic. Je to nic opirajici se o zelezny zakon sve nezbytnosti.
AraxoN avatar 28.6.2009 01:19 AraxoN | skóre: 47 | blog: slon_v_porcelane | Košice
Rozbalit Rozbalit vše Re: 32bit vs 64bit

A keď to skompiluješ s parametrom -m32 ?

gcc -m32 priklad.c

robotics avatar 28.6.2009 16:21 robotics | skóre: 29 | blog: o_vsem_moznem
Rozbalit Rozbalit vše Re: 32bit vs 64bit
Odpovědět | | Sbalit | Link | Blokovat | Admin

64bit je uplně k ničemu! Nejde tam skype! Při příští instalaci jdu zpátky na 32bit! Když vývojáři nerespektujou 64bit, tak já  ho začnu respektovat až ho začnou respektovat vývojaři!!!!!

Používejte Windows.
28.6.2009 16:28 Ash | skóre: 53
Rozbalit Rozbalit vše Re: 32bit vs 64bit
Co přesně si představujete pod pojmem "nejde tam skype"? Mám 64 bitový systém na 64 bitovém stroji a používám skype (32bitový) co chvíli, nějak jsem si nevšiml že "by tam nešel" :-O Při příští instalaci ovšem samozřejmě běžte kam chcete ;)
robotics avatar 28.6.2009 16:33 robotics | skóre: 29 | blog: o_vsem_moznem
Rozbalit Rozbalit vše Re: 32bit vs 64bit

Jak to myslíte že mám jít při příští instalaci kam chcu? :-) Normálně sem zadal ten příkaz s tím -force-architekture ale stejně mi to pak nahlásí že mi chybí nějaká knihovna Qt či co ale mám podle návodu nainstalovaný všechny. Neumím zrovna moc extra anglicky ale psali tam něco že tam ta knihovna musí být ještě jednou ale bez toho aby měla v názvu qt64 ale nejsu si jestej tak sem radši moc do toho nevrtal. Jestli mi poradíte budu rád. A taky co sem si tam dočetl na tom foru tak to startuje 2 minuty nebo co? Je to tak?

28.6.2009 17:40 Šangala | skóre: 56 | blog: Dutá Vrba - Wally
Rozbalit Rozbalit vše Re: 32bit vs 64bit

Pro kompilaci 32bit aplikací je třeba mít na 64Bit systému nainstalovány i 32bit knihovny.
Proto je třeba nainstalovat i tu verzi „bez“ 64ky, které tam ve většině distribucí defaultně nejsou.
No když to hlásí že chybí nějaká knihovna, tak je dobré ji doinstalovat, jinak to opravdu nebude funkční :)
Jinak příkaz linux32 (třeba 'linux32 xterm'), také řeší hodně problému ze starším stále kvalitním softem (i hrama).

To, že trpíš stihomamem, ještě neznamená, že po tobě nejdou. ⰞⰏⰉⰓⰀⰜⰉ ⰗⰞⰅⰜⰘ ⰈⰅⰏⰉ ⰒⰑⰎⰉⰁⰕⰅ ⰏⰉ ⰒⰓⰄⰅⰎ ·:⁖⁘⁙†
28.6.2009 19:03 Ash | skóre: 53
Rozbalit Rozbalit vše Re: 32bit vs 64bit
Říkal jste, že jdete zpátky na 32 bit, tak říkám, že nejsem proti, s takovým přístupem.
28.6.2009 19:07 Ash | skóre: 53
Rozbalit Rozbalit vše Re: 32bit vs 64bit
Délka startu skype na 64bitu je standardní, tak 10s i s přihlášením, pokud nemáte nějakou vykopávku. Asi se na fóru stýkáte se špatnými lidmi, různých remcalů co jim něco nefunguje a nadávaj jak je to špatný a mohou za to ostatní je všude dvě hrstě.

Založit nové vláknoNahoru

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.