abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    dnes 10:44 | Zajímavý článek

    Alyssa Rosenzweig se v příspěvku na svém blogu Vulkan 1.3 na M1 za 1 měsíc rozepsala o novém Vulkan 1.3 ovladači Honeykrisp pro Apple M1 splňujícím specifikaci Khronosu. Vychází z ovladače NVK pro GPU od Nvidie. V plánu je dále rozchodit DXVK a vkd3d-proton a tím pádem Direct3D, aby na Apple M1 s Asahi Linuxem běžely hry pro Microsoft Windows.

    Ladislav Hagara | Komentářů: 0
    dnes 01:00 | Nová verze

    Byla vydána (𝕏) květnová aktualizace aneb nová verze 1.90 editoru zdrojových kódů Visual Studio Code (Wikipedie). Přehled novinek i s náhledy a animovanými gify v poznámkách k vydání. Ve verzi 1.90 vyjde také VSCodium, tj. komunitní sestavení Visual Studia Code bez telemetrie a licenčních podmínek Microsoftu.

    Ladislav Hagara | Komentářů: 0
    dnes 00:44 | Nová verze

    Byla vydána (Mastodon, 𝕏) nová verze 2024.2 linuxové distribuce navržené pro digitální forenzní analýzu a penetrační testování Kali Linux (Wikipedie). Přehled novinek se seznamem nových nástrojů v oficiálním oznámení.

    Ladislav Hagara | Komentářů: 0
    včera 16:44 | IT novinky

    Počítačová hra Tetris slaví 40 let. Alexej Pažitnov dokončil první hratelnou verzi 6. června 1984. Mezitím vznikla celá řada variant. Například Peklo nebo Nebe. Loni měl premiéru film Tetris.

    Ladislav Hagara | Komentářů: 10
    včera 10:44 | Nová verze

    MicroPython (Wikipedie), tj. implementace Pythonu 3 optimalizovaná pro jednočipové počítače, byl vydán ve verzi 1.23.0. V přehledu novinek je vypíchnuta podpora dynamických USB zařízení nebo nové moduly openamp, tls a vfs.

    Ladislav Hagara | Komentářů: 0
    včera 10:22 | Nová verze

    Canonical vydal Ubuntu Core 24. Představení na YouTube. Nová verze Ubuntu Core vychází z Ubuntu 24.04 LTS a podporována bude 12 let. Ubuntu Core je určeno pro IoT (internet věcí) a vestavěné systémy.

    Ladislav Hagara | Komentářů: 2
    včera 01:00 | Nová verze Ladislav Hagara | Komentářů: 0
    4.6. 19:55 | IT novinky

    Intel na veletrhu Computex 2024 představil (YouTube) mimo jiné procesory Lunar Lake a Xeon 6.

    Ladislav Hagara | Komentářů: 0
    4.6. 13:44 | IT novinky

    Na blogu Raspberry Pi byl představen Raspberry Pi AI Kit určený vlastníkům Raspberry Pi 5, kteří na něm chtějí experimentovat se světem neuronových sítí, umělé inteligence a strojového učení. Jedná se o spolupráci se společností Hailo. Cena AI Kitu je 70 dolarů.

    Ladislav Hagara | Komentářů: 0
    4.6. 13:22 | Nová verze

    Byla vydána nová verze 14.1 svobodného unixového operačního systému FreeBSD. Podrobný přehled novinek v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 0
    Rozcestník

    Zpravodaj o Víně – 29. 2. 2012

    6. 3. 2012 | Luboš Doležel | Různé | 2920×

    Příchod Windows na ARM. Navrhování chybějících knihoven. Stav mmdevapi a praskání zvuku. Změny v databázi aplikací.

    Obsah

    Příchod Windows na ARM

    link

    V průběhu historie Windows se objevily a zase zmizely porty na jiné architektury než x86. ARM je ale platformou, které se jako snad jediné daří tomuto válečnému (vítěznému) tažení odolávat díky svým vlastnostem. V Microsoftu ale cítí, že zde přicházejí o potenciální tržby, a tak se rozhodli portovat Windows právě i na ARM. A Wine se taková aktivita pochopitelně týká.

    Podle blogového zápisku na zdnet.com nenechá Microsoft vývojáře používat win32 na ARM (i když to sám Microsoft pravděpodobně používá pro Office na ARM). Namísto toho musejí nativní aplikace používat WinRT, knihovnu tříd v C++.

    Podle Wikipedie jsou knihovny WinRT interně postaveny nad Win32.

    Pokud to bude mít úspěch a někdo se bude cítit na to, aby doplnil podporu do Wine, tak by pravděpodobně měl začít implementací prvních věcí v C, jako to je v msvcp ve Wine. Nakonec – jakmile a jestli vůbec se do llvm dostane podpora ABI Visual C++ – by ve Wine mohlo být umožněno používání zdrojového kódu v C++.

    (Jen pro informaci, vypadá to, že na tom pracoval Charles Davis [1] [2] [3].)

    Vincent Povirk si myslí, že je na spekulace příliš brzo, a celkově případné nadšení z podpory ARM trochu utlumil.

    Nevím, jak jsi dospěl k závěru, že hlavní cestou k používání WinRT API je C++. Zjevně je to tak možné, ale to neznamená, že to je způsob, jaký většina vývojářů použije.

    Navíc ani nevíme, zda nám způsob šíření aplikací nad WinRT vůbec umožní se k takovým aplikacím dostat. Je docela možné, že ani nebude jak si soubory z Win8 Store jen tak stáhnout. Ruční nahrávání aplikací bude dost pravděpodobně možné (ale nemusí tomu tak být), ale i tak by užitečnost Wine byla omezena na aplikace, které lze takto získat.

    Bylo mi také řečeno, že „není podporováno“ nemusí nutně znamenat „nebude fungovat“, ačkoliv i kdyby Microsoft své win32 arm binárky nepodepisoval, je pravděpodobné, že na desktopovém ARMu nebude poskytováno plnohodnotné Win32 API. Budeme muset počkat, dokud to nevyjde, a pak teprve uvidíme.

    Debata se přesunula k vyjasňování, co je WinRT vlastně zač. Charles Davis:

    Jak už napsali jiní, není to úplně pravda [že by WinRT bylo knihovnou tříd v C++]. Ano, je to pravděpodobně napsáno v C++. Ano, dvě z rozhraní k této knihovně jsou knihovny tříd v C++, jedna z nichž přitom vyžaduje speciální verzi C++ (Microsoftem nazvanou C++/CX). Ale WinRT jako takové není knihovnou tříd v C++; je to COMovská knihovna s několika rozšířeními k obyčejnému COMu. Což znamená, že naše implementace může být napsána v čistém C, stejně jako všechny naše COMovské knihovny.

    Ale to všechno platí, jen pokud to bude mít úspěch. A tomu já nevěřím. Osobně si myslím, že bychom měli své už tak vypjaté síly zaměřit na zlepšování kompatibility s Win32. Vzhledem k tomu, že se Microsoft chystá ke všemu možnému, jen ne k opuštění Win32, se Wine stane ještě důležitějším, a to k používání starších aplikací, které nejsou na WinRT založené.

    Dan Kegel se na závěr této debaty zeptal, jak to s podporou ABI Visual C++ v LLVM vlastně vypadá – jak daleko se vývoj dostal. Charles Davis:

    Moc daleko vlastně ne. Trochu jsem pracoval na dekorování názvů a na 64bitovém EH [obsluze výjimek] a někdo jiný pracuje na rozvržení tříd [class layouts], ale k použitelnosti to má daleko. Částečně je to kvůli tomu, že jsem neměl moc času se tomu věnovat.

    link

    Hlavním pomocníkem při instalaci aplikací pro Windows na Linuxu (a dalších podporovaných platformách) je asi nástroj winetricks, jenž je udržován jedním z hlavních vývojářů Wine, Danem Kegelem. Winetricks pomůže s instalací spousty různých knihoven, frameworků nebo důležitých aplikací. Adam Kłobukowski se ozval s nápadem, že by Wine kromě nevýrazné hlášky v konzoli mohlo na chybějící knihovny upozorňovat trochu lépe a konkrétně by mohlo odkázat na způsob, jak danou komponentu doinstalovat (třeba právě pomocí winetricks):

    Wine (zatím ;-)) neimplementuje všechna Windows API a velké části existujících implementací jsou jen pahýly. Proto by mohlo být užitečné, kdyby Wine dokázalo odhalit případy, kdy se program pokusil použít neimplementovanou knihovnu, jež jde ale snadno stáhnout, napadá mě .NET, MSXML nebo VCRUN*. Namísto prostého selhání by Wine mohlo nabídnout radu, co s tím má uživatel dělat.

    To by také mohlo pomoci s API, která jsou z větší části pahýly – fungují v některých situacích, ale v jiných selžou – mohlo by se detekovat, zda se aplikace nesnaží použít nepodporovanou věc a příslušně zareagovat.

    Stefan Dösinger se na to však dívá poněkud realističtěji:

    No, pokud DLL vyloženě chybí, tak by se mělo vypsat ERR. Pokud aplikace zavolá pahýl, tak ten vypíše FIXME. Nevím, co jiného bychom mohli dělat – ukazovat v těchto situacích dialogové okno není dobrý nápad. Nebo myslíš to, že bychom měli udělat zprávy informativnější, že by se vypisovalo třeba „Budete asi muset nainstalovat Visual Basic 6 Runtime z http://microsoft.com/foo/bar“ místo něčeho jako „nelze načíst msvb60.dll“?

    Snad nejhorší situací je, když aplikace načítá knihovnu za běhu, a tudíž nevyvolá chybu linkeru, nebo pokud se pokusí načíst třídu OLE a uživatel pochopí chybu err:ole:XXX jako problém s OLE a ne jako chybějící knihovnu.

    Obecně spíš dávám přednost tomu, aby takové informace byly v dokumentaci nebo na wiki, nikoliv v kódu.

    Jak asi tušíte, Adam objasnil, co tím myslel – hlavně mu vadí to, že současné hlášky nejsou pro běžného uživatele zcela srozumitelné. Frédéric Delanoy vysvětlil, že zejména s pahýly to není moc přímočaré:

    Problém je v tom, že některé aplikace fungují, i když jsou některé knihovny skoro celé plné pahýlů, ale přitom selžou, když se tato knihovna nahradí nativní. Ještě horší je pak to, že dokonce i stejná aplikace/stejná verze může k běhu potřebovat různé obezličky...

    Opravdu si nemyslím, že bychom měli v kódu kopírovat AppDB.

    Dan Kegel – kromě upozornění, že se podobný nápad už několikrát diskutoval – poskytl ukázku toho, jak by se o podobné rady („srozumitelnější hlášky“) mohly postarat samotné linuxové distribuce:

    Už tu na to notifikační systém máme, jde o ladící kanál winediag. Řekl bych, že smyslem bylo umožnit distribucím ukazovat tyto zprávy uživateli (například pomocí dialogu) a všechny ostatní hlášky skrýt.

    V současnosti chyba při načítání knihovny do +winediag nejde. Možná by měla (i když je někdy možné ji ignorovat, takže si nejsem jist).

    S +winediag, nebo bez něj, tak či tak si dovedu představit wrapper mimo Wine, který bude upozorňovat na podobné situace a v těch pár případech, kdy je šance na úspěch vysoká (mfc42? vb6run?), nabídne uživateli pomoc.

    Hrubá ukázka:

    wine "$@" 2>&1 | tee foo.log
    if grep -i "Library MFC42.DLL" foo.log
    then
        zenity --warning --text "This app seems to need mfc42.  Try
    running winetricks mfc42."
    fi
    

    Dalo by asi dost práce dát dohromady něco, co by stálo za nasazení, ale pokud máš zájem, tak jen do toho...

    Stav mmdevapi a praskání zvuku

    link

    Je tomu skoro rok, co jsme psali o nástupu MMDevAPI, neboli nové implementaci zvukových ovladačů, protože stav těch původních byl dosti všelijaký. S MMDevAPI je to teď snad o trochu lepší. Důležitou informací pro uživatele PulseAudio je, že problémy se zvukem ve Wine mohou často zmizet po aktualizaci PulseAudio – ne vše je tedy vyloženě chybou Wine.

    Hlubším problémem při přehrávání zvuku obecně zůstává plánování zápisu zvukových dat do zařízení.

    Máme tu několik problémů s praskajícím zvukem:

    • Jeden je rozhodně způsoben CreateTimerQueue, které není dostatečně pravidelné nebo spíš nevolá callback v intervalu 10 ms, nýbrž 12 ms. Toto je bug #28723, přičemž v komentáři #130 je obezlička.
    • Jeden je způsoben chybou při návrhu mmdevapi: zvukový buffer, který používáme, je prostě příliš malý a Linux není schopen 10 ms zvládat. S příchodem Completely Fair Scheduleru se to ještě zhoršilo. Teď už to nedává ani 50 ms. Je nutné použít mnohem větší buffer. To je důvodem, proč Wine <1.3.25 má mnohem stabilnější zvuk. Je to možná i příčinou bugu #29531.
    • Na Mac OS X 10.5.8 to v dlls/mmdevapi/tests/render praská trvale. Byl bych rád, kdyby někdo na 10.6 nebo .7 ozkoušel interaktivní test.

    Maarten Lankhorst navrhl použití rtkitu pro nastavení realtime priority u vlákna jako řešení problémů s plánovačem. Joerg se toho ale trochu bojí:

    Docela chápu, proč AJ nechce ve Wine RT kód mít. Také by se mi to nelíbilo. Jen málo lidí si podle mě uvědomuje, že RT je dar i velká odpovědnost. Je třeba mít na paměti, že RT procesy mají vyšší prioritu než všechny procesy uživatelů nebo roota. Stačí něco pokazit, zatížit procesor na 100 % a u jednojádrového stroje můžete rovnou zmáčknout reset. RT kód bych nepřijal bez opravdu důkladné revize kódu a opakovaných úvah nad důsledky, také bych požadoval návrh, který by udržoval RT část aplikace pokud možno co nejmenší a co nejvíce oddělenou.

    Na druhou stranu, RT je způsobem, jak získat pravidelné časování a je to také důvod, proč to PulseAudio, jakožto zvukový server, chce. Teď se můžeme dohadovat, že mmdevapi ve Wine představuje pro w32 aplikace něco jako zvukový server, tudíž to má stejné potřeby.

    Jak se ukazuje, s PulseAudio je situace o něco snazší. Maarten Lankhorst píše, že PA se tomuto problému snaží předcházet:

    Tak jako tak to není pro ovladač pulse potřeba, používám funkci automatického časování a zpětné volání v situacích, kdy rendering neběží. Když buffer ještě není vyčerpaný, tak používám zpětné volání zápisu, abych dal vědět, že jsou k dispozici další data.

    Andrew Eikum potvrzuje, že PA je v tomto bohužel výjimkou:

    Jediným backendem, který poskytuje takové informace, je bohužel jen Pulse. Proto tak jako tak potřebujeme řešení pro ostatní ovladače. Budeme se muset rozhodnout, jestli chceme použít stejný mechanismus jako u Pulse, nebo spoléhat na zpětná volání. Používat stejné principy u všech ovladačů má své výhody, i když to v některých situacích nemusí být úplně „korektní“.

    Účastníci diskuze si pak ještě vyměnili několik e-mailů plných technických detailů o různých možnostech časování. Problém ale zůstává prozatím nevyřešen.

    Změny v databázi aplikací

    link

    Změny od správců programů

    link
    ProgramPůvodní stav/verzeNový stav/verzeZměna
    Reason 5.0 Silver (1.3.13) Gold (1.4-rc4) +1
    Adobe Acrobat 7.0 Gold (1.3.36) Silver (1.4-rc4) -1
    Everquest 2 Full Install Client Platinum (1.4-rc3) Garbage (1.4-rc5) -4
    eTrading Securities HOTS 2.0 Silver (1.2.2) Bronze (1.3.36) -1
    ROSE Online Br Gold (1.3.27) Garbage (1.4-rc5) -3
    Igor Engraver 1.7 Platinum (1.3.22) Gold (1.4-rc3) -1
    Microsoft Office (installer only) 2003 Platinum (1.3.24) Silver (1.4-rc4) -2
    PlayOn 3.X Garbage (1.3.12) Bronze (1.4-rc5) +1
    Celková změna -10

    Změny od uživatelů

    link
    ProgramPůvodní stav/verzeNový stav/verzeZměna
    nullDC 1.1.x Platinum (1.1.9) Bronze (1.4-rc2) -3
    Halo: Combat Evolved 1.0x Gold (1.3.18) Garbage (1.4-rc5) -3
    Spore 1.0 Garbage (1.2.2) Gold (1.4-rc3) +3
    Cold Fear 1.0 Silver (1.3.21) Garbage (1.4-rc5) -2
    Disney's Toontown Online 1.x Gold (1.3.28) Garbage (1.3.37) -3
    Commandos: Behind Enemy Lines Ammo Pack (GOG) Garbage (1.1.40) Silver (1.3.37) +2
    Windows Installer 4.5 Silver (1.3.10) Garbage (1.4-rc4) -2
    Might & Magic Heroes VI 1.2.0 Silver (1.3.35) Bronze (1.4-rc3) -1
    SonarViewer 1.2.2 Platinum (1.0.0) Garbage (1.3.37) -4
    Game Maker 8 Version 8.1 Bronze (1.3.25) Silver (1.4-rc5) +1
    Google SketchUp 8.x Bronze (1.2.2) Silver (1.2.3) +1
    Adobe Photoshop CS5 (12.0) Gold (1.4-rc2) Silver (1.4-rc5) -1
    Sid Meier's Civilization V 1.0.0.17 Platinum (1.3.37) Gold (1.4-rc5) -1
    Windows Installer 3.1 Garbage (1.3.5) Silver (1.4-rc4) +2
    Dungeon Siege III Release Gold (1.3.29) Platinum (1.4-rc4) +1
    Mass Effect 3 Demo Gold (1.4-rc4) Platinum (1.4-rc5) +1
    Dark Messiah of Might and Magic Steam Silver (1.2-rc3) Bronze (1.4-rc5) -1
    StarCraft II Retail Bronze (1.4-rc1) Gold (1.4-rc4) +2
    Kingdoms of Amalur: Reckoning Full-Steam Garbage (1.4-rc3) Bronze (1.4-rc4) +1
    Adobe Acrobat X Pro Gold (1.3.20) Silver (1.4-rc5) -1
    Guild Wars All Versions Platinum (1.2.1) Garbage (1.2.3) -4
    Powerpoint Viewer 2007 Silver (1.0.1) Gold (1.4-rc3) +1
    Dear Esther Steam Silver (1.2.3) Bronze (1.4-rc5) -1
    Archicad 12 Gold (1.4-rc1) Platinum (1.4-rc5) +1
    Dungeon Keeper 2 1.x Garbage (1.4-rc2) Platinum (1.4-rc5) +4
    Delphi 7 Silver (1.2.2) Platinum (1.4-rc2) +2
    Unreal Tournament 3 Steam Gold (1.3.7) Platinum (1.4-rc6) +1
    Anno 1404 1.02.2619 Gold (1.3.14) Platinum (1.3.37) +1
    Bioshock 1.0 Platinum (1.3.35) Gold (1.4-rc6) -1
    Alan Wake Steam Gold (1.4-rc4) Bronze (1.4-rc5) -2
    Kingdom Heroes current Gold (1.2) Silver (1.4-rc5) -1
    Command & Conquer: Tiberian Sun Firestorm: 2.03 Bronze (1.3.8) Platinum (1.4-rc5) +3
    Command & Conquer: Tiberian Dawn Gold 1.x Gold (1.3.12) Garbage (1.4-rc5) -3
    Celková změna -7
           

    Hodnocení: 100 %

            špatnédobré        

    Nástroje: Tisk bez diskuse

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

    Komentáře

    Vložit další komentář

    6.3.2012 09:43 polymorf | skóre: 14 | blog: tar_zxpf
    Rozbalit Rozbalit vše Re: Zpravodaj o Víně – 29. 2. 2012
    Delphi7 zo silver na platinum, tak na to sa asi pozriem, pouzivat D7 na 64bitovom win7 je za trest
    10.3.2012 12:21 Roman
    Rozbalit Rozbalit vše Re: Zpravodaj o Víně – 29. 2. 2012
    Muzes to trochu vice popsat. Diky
    12.3.2012 10:00 polymorf | skóre: 14 | blog: tar_zxpf
    Rozbalit Rozbalit vše Re: Zpravodaj o Víně – 29. 2. 2012
    Kompilujem obrovsky projekt a na 64bitovom windowse je problem to skompilovat. V cca 20% pripadoch to skonci padom delphi, proste zamrzne pri linkovani, na 32bitovom xp sa to nedeje, skusal som wm ware ale tam to ide zase dost pomaly, ak by to vo wine (na fyzickom HW) bezalo lepsie ako na win7 tak by som mohol robit vyvoj na linuxe vo wine. Mohol by som pouzit XP na fyzickom stroji ale licenciu by som musel kupit za vlastne takze wine sa mi zda ako lepsie riesenie (ak by to islo).
    Bedňa avatar 6.3.2012 18:38 Bedňa | skóre: 34 | blog: Žumpa | Horňany
    Rozbalit Rozbalit vše Re: Zpravodaj o Víně – 29. 2. 2012
    Dík, toto si vždy rád prečítam.
    KERNEL ULTRAS video channel >>>
    D.A.Tiger avatar 8.3.2012 16:32 D.A.Tiger | skóre: 8 | Brno
    Rozbalit Rozbalit vše Re: Zpravodaj o Víně – 29. 2. 2012
    +1 Já taktéž.
    Radost z toho, že někdo objeví něco nového, je omyl starý 6000 let... (Jean Paul) | anthill inside
    13.3.2012 18:44 LuděkS | skóre: 31 | blog: publish | Liberec
    Rozbalit Rozbalit vše Re: Zpravodaj o Víně – 29. 2. 2012
    Skóre -10/-7 mi moc radost nedělá :-/

    Založit nové vláknoNahoru

    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.