Články
Zprávičky
Fórum
Podpořte Root
Školení
Galerie
Blogy
Knihy
Jak na Linux
Zdroják
Hledat
Root.cz
Kompilery a procesory
Vše pro to, abyste zkompilovali svá dílka do spustitelné podoby.
361
–
390
/
518
První strana
Předchozí strana
10
11
12
13
14
15
16
Následující strana
Poslední strana
Architektura mikrořadičů s jádry ARM Cortex-M0 a ARM Cortex-M0+
Přibližně před pěti lety došlo na trhu s mikrořadiči k poměrně významné události: obrat z prodejů 32bitových mikrořadičů přesáhl obrat dosahovaný u mikrořadičů osmibitových (PIC, řada 51, Atmel AVR). Nezanedbatelný podíl zde mají jádra ARM Cortex-M0 a Cortex-M0+, jejichž architekturu si dnes popíšeme.
Pavel Tišnovský
1. 10. 2015
Doba čtení:
16 minut
Interpretry, překladače, JIT překladače a transpřekladače programovacího jazyka Lua
Programovací jazyk Lua je standardně překládán do bajtkódu, který je následně interpretován, podobně jako je tomu u většiny dalších skriptovacích jazyků. Ve skutečnosti však mají vývojáři využívající tento programovací jazyk k dispozici i další možnosti: transpřekladače či JIT překladače.
Pavel Tišnovský
28. 7. 2015
Doba čtení:
28 minut
Vyšlo GCC 5.2.0
GNU projekt vydal novou verzi kompilátoru GCC s označením 5.2.0, který obsahuje frontendy pro jazyky C, C++, Fortran, Objective-C, Java, Ada, Go a další. Novinek je poměrně hodně, kompletní seznam najdete v changelogu: výchozím režimem pro C je…
Petr Krčmář
20. 7. 2015
GCC (GNU Compiler Collection) 5.1.0
Dne 22. dubna vydal release maintainer projektu GCC (GNU Compiler Collection) Jakub Jelínek stabilní verzi 5.1, poslední stabilní verze vyšla před rokem. Dle nového číslování byla verze 5.0.0 experimentální. GCC 5 přináší mnoho nových…
Michal Strnad
23. 4. 2015
LuaJIT – Just in Time překladač pro programovací jazyk Lua (12 – překlad operací s reálnými čísly)
V programovacím jazyku Lua jsou základním numerickým datovým typem čísla s plovoucí řádovou čárkou s dvojitou přesností (IEEE 754) známé v dalších jazycích pod názvem double. Pokud se s tímto datovým typem ve zdrojových kódech pracuje, musí LuaJIT při překladu vygenerovat příslušné strojové instrukce.
Pavel Tišnovský
15. 1. 2015
Doba čtení:
17 minut
LuaJIT – Just in Time překladač pro programovací jazyk Lua (11 – JIT překlad do nativního kódu procesorů s architekturami x86 a ARM)
Třetím krokem JIT překladu prováděného LuaJITem je transformace pseudoinstrukcí do nativního kódu mikroprocesoru, na němž je LuaJIT spuštěn. LuaJIT podporuje překlad s využitím instrukčních sad mikroprocesorů Intel i AMD (32 bit, 64 bit), ARM (prozatím 32 bit), MIPS a PowerPC. Touto problematikou se budeme zabývat dnes.
Pavel Tišnovský
8. 1. 2015
Doba čtení:
18 minut
LuaJIT – Just in Time překladač pro programovací jazyk Lua (10 – JIT překlad do nativního kódu)
V předchozích dvou článcích jsme se zabývali především způsobem detekce stop (traces) v bajtkódu aplikací naprogramovaných v jazyku Lua. Dnes se budeme zabývat druhým a částečně i třetím krokem, který musí trasovací JIT překladač provést. Jedná se o generování pseudoinstrukcí a následně i vytváření nativního kódu.
Pavel Tišnovský
16. 12. 2014
Doba čtení:
21 minut
Ruby kompilované pomocí Clang je výrazně rychlejší
Bráulio Bhavamitra na svém blogu zveřejnil výsledky svého experimentu s překladem Ruby pomocí Clang. Interpreter jazyka zkompilovaný pomocí Clang 3.5 je o 8 % rychlejší než při použití GCC 4.9. Zajímavější je srovnání výsledků se starším GCC…
Petr Krčmář
15. 12. 2014
LuaJIT – Just in Time překladač pro programovací jazyk Lua (9 – další vlastnosti trasovacího JITu)
V další části seriálu o překladači LuaJIT budeme pokračovat v popisu funkce trasovacího překladače. Minule jsme si ukázali, jak trasovací překladač dokáže detekovat často používané programové smyčky, dnes se podíváme na způsob detekce větví ve smyčkách a detekci funkcí volaných s velkou frekvencí.
Pavel Tišnovský
11. 12. 2014
Doba čtení:
19 minut
LuaJIT – Just in Time překladač pro programovací jazyk Lua (8 – základní vlastnosti trasovacího JITu)
V dalším článku o překladači LuaJIT si řekneme základní informace o činnosti trasovacího JITu používaného pro detekci těch částí kódu aplikace, které se budou v runtime překládat do nativního (strojového) kódu. Trasovací JIT tvoří zajímavou a dnes stále populárnější skupinu just-in-time překladačů.
Pavel Tišnovský
2. 12. 2014
Doba čtení:
14 minut
LuaJIT – Just in Time překladač pro programovací jazyk Lua (7 – dokončení popisu mezijazyka LuaJITu)
V sedmé části článku o Just in Time překladači LuaJIT dokončíme popis mezijazyka, který v LuaJITu plní funkci bajtkódu. Minule jsme se zmínili o způsobu překladu programových smyček, dnes na toto téma navážeme a popíšeme si způsob překladu smyčky for-each a následně pak práci s uzávěry (closures).
Pavel Tišnovský
25. 11. 2014
Doba čtení:
29 minut
LuaJIT – Just in Time překladač pro programovací jazyk Lua (6 – překlad programových smyček do mezijazyka LuaJITu)
V šesté části článku o Just in Time překladači nazvaném LuaJIT si vysvětlíme, jakým způsobem se překládají programové smyčky typu while, repeat-until i smyčky typu for-each používané jak při procházení běžných polí (s prvky adresovanými s využitím indexů), tak i při procházení všemi prvky asociativních polí.
Pavel Tišnovský
18. 11. 2014
Doba čtení:
16 minut
LuaJIT – Just in Time překladač pro programovací jazyk Lua (5 – tabulky a pole)
V páté části článku o Just in Time překladači nazvaném LuaJIT se budeme zabývat způsobem překladu programů pracujících s tabulkami. Ukážeme si způsob tvorby jednorozměrných i dvourozměrných tabulek a taktéž přístup k prvkům tabulek, a to jak s využitím celočíselných indexů, tak i s použitím klíčů.
Pavel Tišnovský
11. 11. 2014
Doba čtení:
21 minut
GCC 5 kompiluje rychle, pořád ale zaostává za Clangem
Phoronix porovnal aktuální překladače v připravované distribuci Fedora 21. Na startovní čáru byly postaveny GCC 4.9.2, LLVM Clang 3.4.2 a GCC 5.0. Vypadá to, že nová řada GCC 5 přinese ve většině případů výrazné zrychlení procesu kompilace proti…
Petr Krčmář
10. 11. 2014
LuaJIT – Just in Time překladač pro programovací jazyk Lua (4)
Čtvrtá část článku o Just in Time překladači nazvaném LuaJIT bude věnována problematice volání funkcí, předávání parametrů do funkcí a taktéž způsobu vracení hodnoty či většího množství hodnot z volaných funkcí. Seznámíme se i s dalšími instrukcemi mezijazyka využívaného LuaJITem.
Pavel Tišnovský
4. 11. 2014
Doba čtení:
28 minut
LuaJIT – Just in Time překladač pro programovací jazyk Lua (3)
Ve třetím článku o Just in Time překladači LuaJIT si popíšeme všechny instrukce mezijazyka (IR) implementující podmínky a relační operátory. Jedná se o rozšíření tématu, kterému jsme se věnovali minule, dnes se však budeme zabývat mj. i porovnáním obsahu proměnných s řetězci či se speciálními hodnotami true, false a nil.
Pavel Tišnovský
28. 10. 2014
Doba čtení:
23 minut
LuaJIT – Just in Time překladač pro programovací jazyk Lua (2)
Ve druhé části článku o Just in Time překladači LuaJIT si popíšeme způsob překladu aritmetických výrazů do mezijazyka LuaJITu. Kromě toho se taktéž budeme zabývat instrukcemi IR, které slouží pro implementaci podmínek a skoků. Tyto instrukce jsou použity jak při větvení, tak i při překladu programových smyček.
Pavel Tišnovský
21. 10. 2014
Doba čtení:
15 minut
LuaJIT – Just in Time překladač pro programovací jazyk Lua
Pro doplnění informací, které jsme si doposud v seriálu o jazyce Java (JVM) uvedli, si v několika článcích popíšeme velmi zajímavý projekt LuaJIT. Již z názvu tohoto projektu je zřejmé, že se jedná o „konkurenční “Just in Time překladač, který je možné použít společně s programovacím jazykem Lua.
Pavel Tišnovský
14. 10. 2014
Doba čtení:
13 minut
LLVM 3.5 přináší vylepšení C++1y a podpory 64-bit ARM
Vyšlo LLVM 3.5 společně s překladačem Clang 3.5. Přináší mnoho zlepšení kompilátoru včetně sjednoceného backendu pro 64-bit ARM, vylepšení jazyka C++1y a C++1z, možnost sestavení sebe sama v Linuxu a FreeBSD na SPARC64 a mnoho dalšího. Stahovat můžete z llvm.org.
Petr Krčmář
8. 9. 2014
Porovnání překladačů Intel C++, GNU C++ a LLVM Clang
Vývojář Jeff Cogswell na Slashdotu porovnává tři překladače C++: Intel C++, GNU C++ a LLVM Clang. Snaží se při tom vyřadit všechny vnější vlivy, které by mohly výsledky rozkolísat či znehodnotit. Nakonec dochází k poměrně jasnému závěru: „Zajímavé…
Petr Krčmář
6. 11. 2013
Vyšlo GCC 4.8.2
Dne 16. října vydal release maintainer projektu GCC Jakub Jelínek druhou opravnou verzi GCC; první opravná verze 4.8.1 byla vydána přibližně před pěti měsíci. Nová verze je dostupná na veřejných FTP serverech. Jelikož se jedná pouze o opravné…
Redakce
16. 10. 2013
Má být kompilátor energeticky úsporný?
V mailové konferenci projektu LLVM se diskutuje o tom, zda by neměl kompilátor nabízet zvláštní režim, ve kterém bude generovat energeticky úspornější binárky. Otázkou je, jestli to má vůbec smysl řešit nebo je lepší prostě aplikaci zkompilovat…
Petr Krčmář
17. 4. 2013
GCC 4.7.3 opravuje více než stovku chyb
Pokud se pořád držíte starší řady GCC, potěší vás zpráva, že vyšla nová verze 4.7.3, která opravuje více než sto chyb. Oficiálně bylo od předchozího vydání opraveno 118 chyb.
Petr Krčmář
12. 4. 2013
Distcc: kompilujte distribuovaně a rychle
Sestavování binárních souborů ze zdrojových kódů může být někdy zdlouhavé. Dnes si představíme nástroj, pomocí kterého lze kompilaci paralelně zpracovávat na více počítačích a tím ušetřit spoustu času. To se může hodit nejen vývojářům, ale i uživatelům distribucí, které nepoužívají binární balíčky.
Ondřej Caletka
24. 1. 2013
Doba čtení:
8 minut
GCC také diskutuje ukončení podpory procesorů 386
Po té co byla z linuxového jádra odebrána podpora pro procesory 386 začala i mezi vývojáři GCC diskuze nad tímto tématem. Navrhovaná varianta je začít podporovat již pouze i486 a vyšší. Došlo by tak k pročištění většiny knihoven, které dnes musí…
Kamil Pošvic
14. 12. 2012
Vývoj nových funkcí do Gcc 4.8 je u konce
Vývoj nové verze překladače Gcc 4.8 se přesunul do druhé fáze. Všechny novinky jsou už hotové a teď už se bude jen ladit a budou se odstraňovat případné chyby. Vydání je plánováno na březen nebo duben příštího roku, tedy přesně rok po vydání…
Petr Krčmář
7. 11. 2012
GCC Explorer: interaktivní kompilace
Matt Godbolt na svém blogu představil jeho nový nástroj pro analýzu výstupu GCC kompilátoru. Jde o webovou aplikaci, kde do levé části píšete svůj C/C++ kód a v druhé části vidíte co vyleze z GCC. Kompilátoru můžete dávat různé parametry a dokonce…
Adam Štrauch
28. 5. 2012
Jednotky pro správu paměti (MMU) na mikroprocesorech ARM
Dnes se budeme zabývat popisem jednotek pro správu paměti (Memory Management Unit – MMU) implementovaných na některých mikroprocesorech s architekturou ARM. MMU je samozřejmě důležitou součástí těchto procesorů, protože zajišťuje ochranu paměti i využití virtuálního adresního prostoru.
Pavel Tišnovský
22. 5. 2012
Doba čtení:
18 minut
Podpora instrukcí typu SIMD na mikroprocesorech ARM
V dnešní části seriálu o architekturách počítačů se budeme opět zabývat popisem mikroprocesorů patřících do rodiny ARM. Zaměříme se na popis SIMD instrukcí, které sice původně nebyly součástí mikroprocesorů ARM, ale postupně začaly být implementovány jako volitelná rozšíření do některých mikroprocesorových jader.
Pavel Tišnovský
15. 5. 2012
Doba čtení:
20 minut
FreeBSD 10 plánuje přejít na Clang jako výchozí kompiler
Podle zprávy FreeBSD Status Report za první čtvrtletí tohoto roku se zdá, že LLVM (Low Level Virtual Machine) kompiler Clang rychle nahrazuje GCC v tomto populárním BSD systému. Jedním z cílů pro FreeBSD 10 je nahradit GCC a používat Clang jako…
Kamil Pošvic
14. 5. 2012
361
–
390
/
518
První strana
Předchozí strana
10
11
12
13
14
15
16
Následující strana
Poslední strana
!nové školení! WAZUH: základy bezpečnostního monitoringu
VÍCE INFO
ČLÁNKY DO MAILU