Hlavní navigace

Mnoho aplikací podvádí s podporou 64bitových architektur

1. 6. 2011

Sdílet

OpenBSD projekt při práci na novém vmmap kódu pro amd64 narazil na problém – většina nejpoužívanějších aplikací jako je například Firefox, Chrome, GNU grep, Webkit a další, ve skutečnosti pro mapovaní adres do RAM nepoužívají celých 64 bitů, ale jsou jen modifikovány tak, aby se tak pro uživatele tvářily. Tyto úpravy jsou jak v samotných aplikacích, tak i v systémech (Linux, Mac i Windows).

Výsledkem je, že aplikace mohou kdykoliv selhat, stačí jen zpracovat dostatečné množství dat při běhu, aby se překročila 32bitová bariéra. Druhým problémem je, že systémy mají sníženou bezpečnost, protože nevyužívají dostatečně silnou „náhodnost“ při generování PID, čísel portů a nebo také při ochraně proti přetečení bufferu.

Originální příspěvek a následna diskuze jsou k dispozici v mailu od Marca Espie, zajímavý náhled na tuto lež ohledně plné podpory 64 bitů nabízí i další hodně subjektivní příspěvek.

(Zaslal Tomáš Bodžár.)

Našli jste v článku chybu?
  • Aktualita je stará, nové názory již nelze přidávat.
  • 1. 6. 2011 9:47

    Tomáš Thiemel (neregistrovaný)

    Nemůžu jinak, než souhlasit s 2. subjektivním názorem, že na prohlížení internetu MUSÍ stačit starší počítač (1GHz, 1GB RAM)...
    Nestačím se divit, jak se v poslední době rozmohy JavaScipty (Google začal, ale Facebook to dotáhl k "dokonalosti") a Flashe (hlavně reklama).
    Dříve byl Flash i JavaScript dobrý nástroj jak udělat něco, co pomocí obyčejného HTML nešlo. Třeba uživateli při návštěvě internetové stránky otevřít dalších 50 oken s reklamními nabídkami, že jsme milióntý návštěvník a že vyhráváme.

    A k 64bitům - asi rok jsem fungoval na 64bit verzi Linuxu - zjistil jsem, že většina aplikací stejně není na 64bit připravena a ještě dlouho nebude, protože programátoři jsou líní...

  • 2. 6. 2011 11:18

    Andrej Kvasnica

    nechajte prosim flashove reklamy na pokoji, daju sa totiz efektivne blokovat. s blokovanim prasacky napisanych html5 animovanych reklam je radovo vacsi problem.

  • 2. 6. 2011 15:20

    Jarek (neregistrovaný)

    > ...asi rok jsem fungoval na 64bit verzi Linuxu...

    Přesně stejně. Přibližně po tom roce jsem přešel zpět na 32bit (Mandriva). Žádnou ztrátu výkonu jsem nezaznamenal a mám mnohem méně problémů.

  • 1. 6. 2011 10:51

    Ivan (neregistrovaný)

    Jestli oni to s temi 64bit-y neprehani. To co v tom prispevku popisuji je legalni a dela to i linuxovej kernel. Nevim jak to tomu ted. ale prvni 64bit procesory byly ve skutecnosti jen 56bit. Tzn. registry byly 64bit ale virtualni adresni prostor je max 2^56. To samozrejme svadi k tomu vyuzit tech hornich 8 bitu k necemu jinemu. A ze nejaka javascriptova virtualni masina interne adresuje 32bit? Pokud si to spravne osetri, tak maji akorat problem s tim, ze nemuzou spustit JS script kterej ma vic jak 4GB. On treba i Oracle nebo Infomix takhle casto funguje. Pokud mate max. velikost SHM segmentu 4GB, tak je adresni prostor SGA poskladan z nekolika segmentu ve kterych se pouzivaji relativni 32bit pointery. Pokud se nepletu tak JVM ma zase omezeni, ze bytekod zadne metody nesmi presahovat 16KB.