Bude to fungovat.
Emulacia cez VirtualBox a pod neriesi neprivilegovane instrukcie. V skutocnosti si vo virtualke bezis prakticky lubovolny kod a pri privilegovanej instrukcii hostujuci OS vykona co treba a pripravi stav pre hostovany OS taky stav, ako keby sa instrukcia vykonala na virtualnom zeleze.
Riesit neprivilegovane instrukcie by stalo vela vykonu.
Jsem divnej, když tomu nevěřím? A mám to celé za kachnu?
Podíl poměru konkrétní instrukce je proti "kluzavému údaji o spotřebě" o tolik moc řádů jinde, že je to nesmysl. Taky tam nepředvádí, žádnou praktickou aplikaci. Rozlišovat podle toho detailní kusy kódu je blbost, ale rozlišovat jednotlivé bity v operandech je blbost na druhou, opravdu je těžké uvěřit, že by jednotlivé bity v operandu byly realizovány s rozdílnou spotřebou.
Pak je tu otázka, jestli CPU výkon opravdu měří (jak díky zmíněným poměrům podílu daných instrukcí na spotřebě a nepřesnosti měření nápad padá pod stůl), nebo počítá dle nějaké tabulky náročnosti instrukcí. I tak by stačilo do výsledku měření zanést nepřesnost v řádu promile, není třeba zakazovat přístup k rozhraní.
suhlasim - tiez sa mi to nezda. Okrem toho v beznom OS na CPU toho bezi obvykle viac, takze tie data budu zasumene vykyvmi spotreby od ostatnych spracovavanych vlakien.
Ale popravde netrapi ma to az natolko, aby som si dal tu pracu a odkazovany dokument s popisom si precital (ono je dost mozne, ze by som to ani nepochopil) ;-)
Nad tím jsem se také pozastavil, bere to vážně nejen Intel, ale většina dister.
Přesto za tím vidím jen politiku. Bagatelizovat strach před masami je horší než se ztrapňovat nesmyslem před pár profíky
Abych byl fér: soudit od stolu si mohu dovolit já, čtenář roota :) Člověk "ve funkci" k tomu musí přistupovat transparentně, pokud to nelze exaktně vyloučit. Nakonec s spectre a meltdown působily taky dost nepravděpodobně.
Plati zakon velkych cisel a tu sa da merat opakovane.
Iba take napady, netvrdim ze sa to robi takto:
Najskor zvysenie presnosti: vykonavas kod dokola. Zvysenie rozlisovacej schopnosti: vykonavas ho s niecim, co ma spotrebu 15.49 jednotky (zaokruhlene na 15) a potom uvidis zvysenie o 0.01.
Klzavy priemer je iba mierne zakrytie dat.
Merat bity operandu tak lahko nejde, ale pri vhodne zvolenych parametroch sa to niekedy da. V matematike mame prenosy a pod.
Ad utok na enklavy - enklavam naozaj niekto veri? Mozu v praxi fungovat?
Dokumentovane moznosti sa tykaju DRM. Tam ale stale bude "hlavna domena", ktora prinajmensom kod nahra do SGX a tej je treba verit. Inak povedane, nikdy nemozem vediet, ci bezim v SGX alebo emulovane, kde sa SGX robi iba "na oko". Je proti tomuto nejaka ochrana?
V kernelu (ve vsech podporovanych verzich - tj. 4.4.243, 4.9.243, 4.14.206, 4.19.157, 5.4.77, 5.9.8) uz nejaka mitigace je... jen se o ni zas clovek nikde poradne nedocte, i kdyz tam maji uz od 10.11... :-)
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?id=19f6d91bdad42200aac557a683c17b1f65ee6c94
(RAPL), které umožňuje monitorovat a řídit spotřebu CPU a DRAM softwarovou cestou
Prosimvás, jak se řídí spotřeba DRAM? Pokud se nepletu, běží na stejné frekvenci když se to nezmění v BIOSU.... Možná mě napadá něco jako Partial refresh nebo nějak tak se nazývajícího... Nebo pokud probíhá přenos do paměti.
Ale podstata je, že na svym systému vidím, že Total DRAM power je vždy 1.3 W nezávisle na činnosti.
22. 11. 2020, 23:20 editováno autorem komentáře