Internet Info, s.r.o. Lupa Měšec Podnikatel Root Zdroják DigiZone Slunečnice Vitalia TopDrive KupDnes Navrcholu NovýTarif Dobrý web Weblogy Woko Jagg Computer.cz SK: MojeLinky

Hlavní navigace

Názory k článku
KolibriOS: kolibří systém v 5 MB

snehuliak
snehuliak (neregistrovaný) ---.glfd.cable.ntl.com
21. 1. 2010 0:10

Co tomu chyba?

celé vlákno

Vyhody. Ake to ma vyhody okrem toho ze sa v tom niekto moze vrtat na studijne ucely?

Nevidim ziadne dalsie.

PK
PK (neregistrovaný) ---.dkm.cz
21. 1. 2010 0:51

Re: Co tomu chyba?

celé vlákno

5 MB velikost a 3s start stačí ne?

NA
NA (neregistrovaný) ---.static.adsl.vol.cz
21. 1. 2010 1:32

Re: Co tomu chyba?

celé vlákno

FreeDos jsem na 4­86, 40MB HDD, 4MB RAM, r­ozchodil i s T602 a t­ohle?  

Xjmeno363
Xjmeno363 (neregistrovaný) ---.upce.cz
21. 1. 2010 9:05

Re: Co tomu chyba?

celé vlákno


obsahuje
# několik různých her
# několik grafických dem

proboha na co?
kdyby ten prostor využili na něco užitečnějšího, třeba nějaký mini překladač céčka…

BostX
BostX (neregistrovaný) 62.134.189.---
21. 1. 2010 14:56

Re: Co tomu chyba?

celé vlákno

Nezacinal nahodou Torvalds takto nejako podobne?

oja
oja (neregistrovaný) ---.211.broadband6.iol.cz
21. 1. 2010 15:35

Re: Co tomu chyba?

celé vlákno

To jsem chtel rict :)

Linux byl ze zacatku taky sranda bez sanci na rozumne pouziti. A navic, skola hrou :)

petík
petík (neregistrovaný) ---.i2net.cz
23. 1. 2010 23:45

Re: Co tomu chyba?

celé vlákno

Torvalds začínal na moderním počítači s procesorem 80386, držel se unixové koncepce a chápal smysl „vyšších“ jazyků typu C. Chápu, že v Rusku je v provozu spousta vykopávek, ale tyto pokusy beru jednoznačně jako krok špatným směrem.

balki
balki (neregistrovaný) ---.orange.sk
21. 1. 2010 1:28

Re: Co tomu chyba?

celé vlákno

Ja vidim vyhodu najma v tom, ze ked autori ked kodia, aspon nechlastaju. Totiz neviem si predstavit, ze by niekto opity dokazal programovat v assembleri.

Inak vidim len same nevyhody
-zavislost od instrukcnej sady x86
-nemoznost akejkolvek abstrakcie
-dokumentacia ak nejaka je, tak je urcite po rusky
-ak sa chce clovek pridat, musi sa najprv zahrat na zivy debugger.

Obdivujem ich, ze to dotiahli tak daleko. Na to, ze je to v assembleri, tak je to dost komplexny system. Mne by sa z tolkeho x86-koveho assembleru vykrivili vsetky koncatiny a prekrizili oci.

Martin
Martin (neregistrovaný) 89.176.101.---
21. 1. 2010 10:19

Re: Co tomu chyba?

celé vlákno

No třeba Roller Coaster Tycoon pro Windows je celý v assembleru a je one man show Chrise Sawyera.

Ale hlavní důvod, proč je KolibriOS nesmysl je ten, že v dnešní době je toho na internetu tolik ke zkoumání a zkoušení, že k tomuhle bych se dostal asi tak v padesátém životě. Řada věcí je totiž mnohem zajímavějších.

balki
balki (neregistrovaný) ---.orange.sk
22. 1. 2010 2:48

Re: Co tomu chyba?

celé vlákno

Roller Coaster Tycoon vyzera dobre.

sc
sc (neregistrovaný) 92.60.50.---
25. 1. 2010 13:54

Re: Co tomu chyba?

celé vlákno

Vid chlasta pravidelne a pravidelne kodi nachlastani. A assembleri kodi veci ktore si nevies ani predstavit ;)

zemiak
zemiak (neregistrovaný) ---.cargo-partner.com
21. 1. 2010 13:34

Re: Co tomu chyba?

celé vlákno

Stacilo by tam preportovat Chrome a je to idealne na stare notebooky/netbooky. Ala ChromeOS, pre moju zenu by to napr. stacilo.
Na starsom notebooku jej Windows startuje okolo minuty, Ubuntu porovnatelne. Keby mala system s browserom nabootovany do 10 sekund, bola by to parada.

Bilbo
Bilbo (neregistrovaný) 95.80.201.---
21. 1. 2010 16:33

Re: Co tomu chyba?

celé vlákno

Jenze spousta zajimavych netbooku je s ARM procesorem a pokud je to psane cele v assembleru x86, tak to se bude portovat celkem dost obtizne.

mixal
mixal (neregistrovaný) ---.73.30.82.vnet.sk
21. 1. 2010 17:25

Re: Co tomu chyba?

celé vlákno

v CR mate fakt ponuku spustu zaujiomavych netbookov na arme ?

Bilbo
Bilbo (neregistrovaný) ---.static.adsl.vol.cz
21. 1. 2010 23:24

Re: Co tomu chyba?

celé vlákno

Zatim je potreba dovazet ze zahranici, ale treba to jednoho krasneho dne dorazi i sem :)

Mard
Mard (neregistrovaný) ---.i4g.tmcz.cz
22. 1. 2010 0:01

Re: Co tomu chyba?

celé vlákno

NO jsme pesimista že by ARM převážilo nabídku bazarů plných notebooků x86 based! Dneska koupit je možné běžně koupit notebook s Intel Pentium 166 MHz za cca 2–3 tis. Kč. Pokud by bylo využití pro tyhle šunky, tak by to bylo moc fajn.

Jarek
Jarek (neregistrovaný) ---.ais-servis.cz
22. 1. 2010 11:05

Re: Co tomu chyba?

celé vlákno

2–3 tisice? ste se blaznil, ne? :-D

Mard
Mard (neregistrovaný) ---.net.upc.cz
22. 1. 2010 16:06

Re: Co tomu chyba?

celé vlákno
Meles
Meles (neregistrovaný) ---.crfreenet.org
22. 1. 2010 16:54

Re: Co tomu chyba?

celé vlákno

Asi chtěl říct, kterej blázen by za to dal takový prachy. :o)

petík
petík (neregistrovaný) ---.i2net.cz
23. 1. 2010 23:49

Re: Co tomu chyba?

celé vlákno

Běžné notebooky vydrží 2–3 roky a potom odchází jedna věc za druhou. Kupovat ojetý notebook jsou IMHO vyhozené peníze.

merlin111
merlin111 (neregistrovaný) 93.99.49.---
24. 1. 2010 13:28

Re: Co tomu chyba?

celé vlákno

Já bych zrovna přivítal něco svižného s použitelnou klávesnicí a monitorem na čem by Debian vydržel alespoň 1/2 dne v provozu na baterky za rozumnou cenu (tedy nejsem ochotný do toho dát 4 a více násobek ceny běžného netebooku)

Serafin
Serafin (neregistrovaný) ---.morava.adsl-llu.static.bluetone.cz
16. 2. 2010 13:34

Re: Co tomu chyba?

celé vlákno

Musím říct že Kolibri OS jako projekt sleduji už nějaký ten rok nevidím v tom ani krok špatným směrem, ani absolutně bezdůvodný systém. Sice mu ještě chybí par věci do úplné krásy ale i tak stoji za to se na něj podívat blíže. A trochu lépe než někteří páni zde od stolu rovnou vyhodí soud o neužitečnosti a blbosti tohoto zařízeni.

Jádro Kolibri OS je založeno na základu Menuet OS který je už kompletně vyvíjen jen pro 64 systémy. Ve své podstatě proto není architektura omezena jen na x86.

Po stránce stability a rychlosti odezvy se mi pomalu lepší zdá jen QNX.

A upřimně, zkoušel jste někdy najít distribuci linuxu o velikosti jedné diskety která by bez problému najela docela pěkné GUI a k tomu ještě měla bezproblémové příslušenství aplikací? Já vím o jedné a o té škoda mluvit.

Rozhodně fandím tomuhle projektu už proto že není jen klon linuxu ale přináší svůj vlastní názor na řešení problému ( i když ten spíš už přinesl Menuet Os).

Joe Freedom
Joe Freedom (neregistrovaný) ---.karneval.cz
21. 1. 2010 1:44

článek je zajímavý ale...

celé vlákno

chvílema se to dost špatně čte:

– „alespoň několik stovek a gigabajtů“ – zřejmě „několik stovek megabajtů“

– Z našeho pohledu se jedná především o svobodný operační systém a jeho zdrojové kódy jsou k dispozici pod licencí GNU GPL. – Zdrojové kódy jsou pod touto licencí nejen z našeho pohledu :)

– Na druhou stranu asi není důvod sáhnout po něčem rozšířenějším a standardizova nějším.
patrně mělo být: „…není důvod nesáhnout…“

Některé věty jsou skutečně nesrozumitelné:
Navíc má problémy se zobrazováním českých stránek, což je trochu překvapivé, vzhledem k tomu, že jsem očekával, že ruští vývojáři budou problémy s nelatinkovými sadami chápat.

Nechápu jak může být něco zajímavé vzhledem ke skutečnosti že autor něco očekává :)

Saha
Saha (neregistrovaný) 193.179.215.---
21. 1. 2010 8:13

Re: článek je zajímavý ale...

celé vlákno

Po přečtení si to autor mohl přečíst, třeba větu „…i když spustíte větší množství informace…“ nějak nechápu…

kybukara
kybukara (neregistrovaný) ---.karneval.cz
22. 1. 2010 20:46

Re: článek je zajímavý ale...

celé vlákno

po přečtení si to mohl autor předchozího příspěvku přečíst taky ;)

Petr Krčmář aura:99
21. 1. 2010 9:58

Re: článek je zajímavý ale...

celé vlákno

Omlouvám se hluboce, zmíněné (a další) chyby jsem opravil. Díky za upozornění

pedro
pedro (neregistrovaný) ---.zapcechy.adsl-llu.static.bluetone.cz
21. 1. 2010 12:17

Re: článek je zajímavý ale...

celé vlákno

Jeste tu latinku, pane Krcmari. Cesi pisi latinkou (byt s nestandardnimi „znaky“ – teda ja ne :-) nekdy od odchodu Cyrila s Metodejem kamsi k vychodu. To mi vadi vic, nez nejake ty formality.

Antimorfolord
Antimorfolord (neregistrovaný) ---.95-103-144.t-com.sk
21. 1. 2010 7:42

Fonty

celé vlákno

Keď sa pod tým nedá spustiť Photoshop Aptana tak je to nahovno. A ten OS nemá ani poriadne Fonty skrátka je to nepoužiteľné.

tjhkal
tjhkal (neregistrovaný) ---.sks2.muni.cz
22. 1. 2010 14:51

Re: Fonty

celé vlákno

Pekny pokus o trolling. Skoda ze Ti to nevyslo ;-)))

Antimorfolord
Antimorfolord (neregistrovaný) ---.95-102-85.t-com.sk
24. 1. 2010 0:15

Re: Fonty

celé vlákno

to je jedno dôležité je že mám pravdu ako vždy

mixal
mixal (neregistrovaný) ---.chello.sk
21. 1. 2010 8:25

fandim im

celé vlákno

fandim alternativnym OS ktore nie su zalozene na desiatkach rokov starych zakladoch ako toto alebo Haiku atd…

Ukazuju alternativy, moznosti, mozno sa casom aj nieco z nich alebo niektory z nich presadi

I/O
I/O (neregistrovaný) 147.32.68.---
21. 1. 2010 18:32

Re: fandim im

celé vlákno

A na jakých základech to je? Co je tam inovativního? Řekl bych, že vůbec nic.

petík
petík (neregistrovaný) ---.i2net.cz
23. 1. 2010 23:57

Re: fandim im

celé vlákno

Takový systém by byl strašně cool před 25 lety. Teď je jeho jediným přínosem, že tvůrci zjistí, že je to k ničemu a budou dělat něco rozumnějšího. Psát v assembleru – na ZX spectru, Atari ST, trochu i na 8086 mělo ještě smysl. Dnes má smysl optimalizovat takto jen velmi malou část kódu.

lo0m
lo0m (neregistrovaný) ---.unipex.cz
21. 1. 2010 9:13

Výhody..

celé vlákno

.. vidím, sám bych ho na nějaké svoje staré mašinky klidně nasadil, ale absence SSH (klienta) to zabíjí..

Mard
Mard (neregistrovaný) ---.i4g.tmcz.cz
22. 1. 2010 0:03

Re: Výhody..

celé vlákno

Souhlas SSH a browser jsou dneska dost zásadní aplikací.

lo0m
lo0m (neregistrovaný) ---.unipex.cz
22. 1. 2010 12:19

Re: Výhody..

celé vlákno

browser musim rict ze bych u podobneho systemu v zakladnim sestaveni vubec nepotreboval… ale kdyby bylo ssh, mohlo by byt treba ssh -X firefox ze silnejsiho stroje…

JS
JS (neregistrovaný) 130.119.248.---
21. 1. 2010 9:18

jako programator v assembleru

celé vlákno

Jako programator v assembleru (byt na mainframu) prihodim svuj nazor. Ono je pomerne snadne napsat nejaky software, ktery je na prvni pohled rychlejsi nez systemy stavajici (a pokud ho budete psat v assembleru, pravdepodobne to tak dopadne).

Ovsem rychle narazite, pokud budete pak skutecne chtit implementovat veskerou funkcionalitu systemu, ktere se snazite kopirovat. A to bude problem i v pripade, kdy pujde o vyssi jazyk; v zasade budete kopirovat historii soucasnych systemu, ktere byly nekolikrat prepsany, casto za ucelem zvyseni vykonu.

Navic, assembler do toho vnasi dalsi problemy. Programy v nem nelze snadno refaktorovat (je to write-only jazyk), a pokud to zacnete delat, ztratite velkou cast puvodniho vykonu. Navic efektivni programy v assembleru jsou casto efektivni za cenu modularity, a pokud se tam tu modularitu pokusite dodat, zase skoncite se ztratou vykonu. V assembleru se take obtizne implementuji komplikovanejsi algoritmy, coz je zase potencialne ztrata vykonu. A to nemluvim o tom, ze dnesni prekladace jsou uz lepsi nez prumerny programator.

Vykon assembleru je navic zavisly na architekture procesoru; instrukce a zpusob psani efektivni pred 10–15 lety uz dnes efektivni neni (a to je ten lepsi pripad, kdy pouzivate instrukcni sadu pro stale zivy procesor).

Takze, abych to shrnul. Jasne, ze to startuje za 3s, protoze je to neobecne a nemodularne napsane, a neumi to tolik co soucasne desktopy. Podle me jsou to zkratka silenci, a prakticky vyznam to zadny nema (i kdyz naprosto chapu poetiku takoveho pocinu, kdyz jsem zacinal u nas ve firme, taky jsem chtel mit vsechno v mainframe assembleru).

mixal
mixal (neregistrovaný) ---.73.30.82.vnet.sk
21. 1. 2010 10:05

Re: jako programator v assembleru

celé vlákno

Je pravda, ze pokial programator chape tomu ako funguje pocitac programuje napr v C++ s tym, ze ma aspon pribliznu predstavu ako vyzera prelozeny kod, tak vacsinou kod nema moc daleko od toho aby bol optimalny.

j.
j. (neregistrovaný) 194.237.142.---
21. 1. 2010 10:51

Re: jako programator v assembleru

celé vlákno

Problem je aj medzi jednotlivymi generaciami procesorov rovnakej architektury – kod v asembleri napisany pre netburst procesory ma daleko k optimalnosti na nehalem nebo k8.
Kod napisany vo vyssom jazyku sa pre danu architekturu prelozi znova, sice pravdepodobne suboptimalne, ale stale v akceptovatelnej kvalite a za neporovnatelnu ce­nu.

sadfasfa
sadfasfa (neregistrovaný) 193.179.215.---
21. 1. 2010 12:07

Re: jako programator v assembleru

celé vlákno

jsou to borci a ted kdyz tak skvele vidi do assembleru by meli zacit svuj system refaktorovat a co jde prepsat co C. pak by to mohla byt zajimava aktivita i z sirsiho pohledu.

beer
beer (neregistrovaný) ---.net.upc.cz
21. 1. 2010 14:05

Re: jako programator v assembleru

celé vlákno

Souhlasim temer ve vsech bodech, ale rozhodne odmitam, ze dnesni prekladace jsou lepsi nez prumerny programator. Vetsina programatoru v assembleru dokaze napsat rychlejsi kod nez jakykoliv prekladac. Rozhodne se to ale nevyplati.

ondra.novacisko.cz
ondra.novacisko.cz (neregistrovaný) ---.seznam.cz
21. 1. 2010 16:15

Re: jako programator v assembleru

celé vlákno

O tom se budu hádat. Průměrný programátor nedokáže v hlavě uložit vztahy mezi části programu jedné trošku složitější šablony a to co překladač vyrobí za několik sekund, on bude navrhovat několik dní. Možná nakonec bude programátor lepší (překladač se neučí s chyb), ale za jakou cenu.

Bilbo
Bilbo (neregistrovaný) 95.80.201.---
21. 1. 2010 16:39

Re: jako programator v assembleru

celé vlákno

Proto se taky v assembleru pisou jen nektere casti, predevsim na vykon pomerne kriticke casti (jadra ruznych kodeku audia a videa, sifrovaci algoritmy, …), kde zrychleni treba o 20% je celkem dost pak v praxi znat a ke kterym casto lze pouzit nejake specialni instrukce (napr. instrukce pro AES u procesoru VIA) a vyrazne tak dany kod urychlit.

Zdenek - aura:41
21. 1. 2010 18:57

Re: jako programator v assembleru

celé vlákno

Přesně tak, překladač nikdy nepochopí, jak to člověk myslel. Tuhle jsem potřeboval na všechny bajty v souboru provést
rol [bajt], 2
Ve „vyšším“ jazyce jsem tedy číslo bajtu převedl na 16bitový integer, vynásobil 4, udělal pár masek AND a zbytek po dělení 256…
No a kód exáče se nafoukl o 20 kB!!! O pomalosti nemluvě.
Nezpochybňuji tady ekonomickou stránku vývoje aplikací, ale kompiler si může o rychlosti kódu od člověka nechat jen zdát.
Kdybych byl autor softwaru, který si klade ambice být rychlý, volil bych hybridní přístup – horká místa v ASM a zbytek v něčem blbovzdorném. A hlavně by se mělo dát volit, jestli se budou při každém volání funkce tyto kopírovat jinam do paměti (a dokonce relokovat), nebo se to zaonačí zásobníkem, což obvykle stačí a je to daleko úspornější.

klusacek
klusacek (neregistrovaný) ---.net.upc.cz
21. 1. 2010 20:37

Re: jako programator v assembleru

celé vlákno

Ja myslim ze zalezi na problemu. Ony prekladace to nemaji tak snadne, lecjaka informace v kodu chybi (treba vite ze nejaka funkce dostava argument vzdy nenulovy, ale kdyz ji kompilujete do knihovny tak jeste nemate vsechna jeji volani aby kompilator mohl neco takoveho odvodit – z toho duvodu se pak treba nekde uvnitr nevyoptimalizuje if). Nebo ta informace treba i ve zdrojaku je, ale slozite ji odvodit, takze se to nedela. Nebo je to neco vagniho, jako v takovych pripadech, kdy treba clovek zna typickou velikost vstupu. To pak s pomerne malou namahou muze napsat lepsi kod v ASM.

Ovsem architektura dnesnich CPU je takova ze lidem, resp. jejich dusevnimu zdravi moc nepreje. Jednak kdyz mate superskalarni CPU tak porad abyste pocital latence instrukci a jake mate vyuzit jednotek, atd. Druha vec je vyuziti cachi. Koukne na http://en.wikipedia.org/wiki/Polytope_model at vidite co treba se snazi delat gcccko. V kombinaci s http://en.wikipedia.org/wiki/Loop_tiling to muze nektere vypocty mnohonasobne zrychlit.

Jestli znate nejakeho prumerneho ASM programatora, ktery tohle dela rucne, tak ho rad taky poznam.

ondra.novacisko.cz
ondra.novacisko.cz (neregistrovaný) ---.seznam.cz
22. 1. 2010 6:47

Re: jako programator v assembleru

celé vlákno

V tomhle je nejlepší překladač o informace neochuzovat. Ideálně je templatové nebo inlinové programování. Překladač má k dispozici všechny informace, včetně obsahů funkcí, může se rozhodnout, zda kód nechá ve funkci, nebo jí inlinuje, může si přeházet registry jak potřebuje, protože vidí do funkcí, ví, které registry se budou měnit. Jediný, co mi v současných překladačích chybí je určování četností podmínek, něco jako, „tahle podmínka nastává výjimečně“. Trošku se to řeší přes výjimky, tedy test na chybu se provede jen jednou a zbytek řeší výjimka mimo hlavní scope. Ale ideální to není, protože výjmky jsou tak náročné, že se hodí spíš pro vyjádření „tahle podmínka skoro nenastává“.

Jinak vývoj v překladačích pokračuje, dopředu jde jak GCCčko, tak Microsoft Visual Studio. Optimalizuje se všude, nelze tedy program psát s tím, že dopředu vím, jak se která konstrukce přeloží. Možná dneska, za rok už to může být jinak. Tak nad tím nepřemýšlím, maximálně to řeším v časově kritických částechm a těch je málo (jsou to extrabuřty, speciality). K tomu navíc pomáhají různé profiléry, napříkla MSVC nabízí profilér podmínek … což řeší částečně to co jsem psal nahoře… podmínky se pak překládaji z ohledem na to, které větve byly pravděpodobnější. Dále je to třeba Whole Program Optimizator, který provádí optimalizace při linkování, takže ta poznámka o tom, že překladač nevidí do knihoven nemusí úplně platit. Jisté optimalizace se provádí napříč celým kódem (MSVC).

Atd, atd. Proto preferuju C/C++, ten pokrok v optimalizacích je vysoký, a troufám si tvrdit, že jakékoliv frameworky, ať už jde o Javu, nebo .NET navzdory tomu, že mezikód překládají do nativní formy, nebudou mít nikdy k dispozici tolik informací, kolik lze vytěžit přímo ze zdrojáků. A taky jsem už slyšel, že JITcompilery využívají runtime informace a optimalizují vůči něm… jenže tomu zas tolik nevěřím, protože JITC je náročná operace, kterou nelze provádět pokaždé, když se runtime informace změní.

mixal
mixal (neregistrovaný) ---.73.30.82.vnet.sk
22. 1. 2010 10:59

Re: jako programator v assembleru

celé vlákno

zaujimave veci

ta cetnost podmienok by bola fakt super pre prekladace, zaujimave ze MS to este nepridal

ondra.novacisko.cz
ondra.novacisko.cz (neregistrovaný) ---.seznam.cz
22. 1. 2010 13:28

Re: jako programator v assembleru

celé vlákno

Ne, ono to tam je, ale přes profiler. Člověk to nemůže specifikovat v programu, ale musí přes profiler. Ale nezkoušel jsem to.

Karell aura:90
22. 1. 2010 15:44

Re: jako programator v assembleru

celé vlákno

> frameworky, ať už jde o Javu, nebo .NET nebudou mít nikdy k dispozici tolik informací, kolik lze vytěžit přímo ze zdrojáků

V tomhle nemate pravdu. Konkretne JVM ma k dispozici bytecode, ktery se hodne podoba puvodnimu zdrojaku, ale navic vidi i do runtime. Sun JVM dela optimalizace i na zaklade hodnot promennych, ktere prijdou zvenku, to zadny prekladac samozrejme mit nemuze.
Delal jsem si jednoduchy test, kde jsem na zaklade random hodnoty zalozil implementaci interfacu a tu jsem porad dokola volal. V C++ to trvalo asi 20× dele nez v jave. Coz je dukaz, ze JIT kompiler se muze za behu podivat co mu prislo za tridu a inlinovat volani jejich metod (a taky to dela), v c++ to samozrejme nelze pokud kompiler neodvodi jakou ma instanci.

ondra.novacisko.cz
ondra.novacisko.cz (neregistrovaný) ---.35.broadband11.iol.cz
22. 1. 2010 23:06

Re: jako programator v assembleru

celé vlákno

No nevím, co jste dělal za test, asi by to chtělo napsat o tom článek. Nezdá se mi, že by JIT byl 20× rychlejší než nativní C++. Volání virtuální metody je „pouhý“ call podle adresy v paměti. Nic co by se nedalo proudově zpracovat (notabene, když se ta adresa po celou dobu programu nemění).

Inlinovat funkce pomůže v řádově procent, vy ale mluvíte o navýšení o 2000%. I kdyby JIT volání funkcí (vlastně virtuálně) inlinovál, například v cyklech, pak jste schopen být rychlejší dejme tomu o těch pár procent. Otázkou je, kolik času stojí vlastní spuštění JITu. Určitě lze najít speciální případ, kdy mám pět interfaců, které náhodně volám milionkrát. Ale tyhle speciální případy buď nenastávají, nebo v časově kritických částí se řeší přes šablny, čili vlastně podobně jako to dělá JIT. Akorát se to přepřeloží dopředu, pro všechny možné varianty, které mohou nastat.

mixal
mixal (neregistrovaný) ---.chello.sk
22. 1. 2010 23:18

Re: jako programator v assembleru

celé vlákno

toto chce test a clanok

Karell aura:90
23. 1. 2010 0:49

Re: jako programator v assembleru

celé vlákno

Napsal jsem jednoduchy lowlevel test. Interface s metodami void add(), void add(int), 2 implementace, kazda do member promenne pricita nejake konstantni cislo, funkce

void count(Iface * p) {
  for (int i = 0; i < 1000000000; i++)
    p->add();
}


Zalozil jsem instance a,b tech trid a dostal jsem tyto vysledky:
nahodne vybrani a nebo b a 3× volani count s add()
JIT 0.5s
c++ 10s

to same s addX(nahodna konstanta)
JIT 0.56s
c++ 13s

to same s addX(i)
JIT 2.2s
c++ 13s

jednou count s add()
java bez JIT 14s

Zaver – JIT dokaze za behu inlinovat virtualni metody, kdyz je vnitrek cyklu konstantni, tak ho dokaze i „rozbalit“. Jakykoli prekladac do nativu nema sanci, pokud si to nemuze vyhodnotit behem prekladu.
Samozrejme je to extremni pripad, ale jako reakce na „JIT nemuze…“ to myslim staci.
Pro me to znamena, ze se muzu klidne zabyvat navrhem a OOP v jave a nemusim delat nejake kompromisy v c++ aby to nebylo pomale. Kdyz navic vezmu v uvahu GC, ktery mi usetri dalsi praci a ve slozitejsich aplikacich je rychlejsi nez new/delete, tak je volba jasna :-)

ondra.novacisko.cz
ondra.novacisko.cz (neregistrovaný) ---.35.broadband11.iol.cz
23. 1. 2010 9:41

Re: jako programator v assembleru

celé vlákno

A nezapoměl jste v C++ zapnout optimalizace? :-D

Karell aura:90
23. 1. 2010 13:09

Re: jako programator v assembleru

celé vlákno

> A nezapoměl jste v C++ zapnout optimalizace? :-D

To je tak tezke tomu uverit? :-)

Delal jsem to v msvc, zkousel jsem zapinat vsechno mozne, ale myslim, ze on proste nic moc optimalizovat nemuze. Jelikoz to je virtualka, tak nanejvys chodit primo na adresu funkce, ale inlinovat nemuze. Takze volani, soucet, return, i++ mi 3e9 krat za 10s prijde dobre. Mam notas 2GHz Pent. M, takze to zhruba vychazi na 7taktu/cyklus

Kdyz tam volam to same nevirtualne, tak je to samozrejme hned.

JS
JS (neregistrovaný) ---.178.broadband13.iol.cz
23. 1. 2010 10:22

Re: jako programator v assembleru

celé vlákno

A pokud jste zkousel zapnout optimalizace, co to zkusit jeste (v GCC) s -fprofile-use (a spol.)?

Jeste -fwhole-program by mohlo pomoct.

tom
tom (neregistrovaný) ---.96.broadband10.iol.cz
24. 1. 2010 23:11

Re: jako programator v assembleru

celé vlákno

Myslím že vypovídací hodnota toho je, že v tom cyklu zabere dereferencování pointeru na virtuální metodu víc času než tělo metody add. Což neznamená nic, pokud není řečeno, co ta metoda add() uvnitř dělá. Nesjpíš (skoro) nic, což ale není zrovna typický program, že…

Karell aura:90
24. 1. 2010 23:25

Re: jako programator v assembleru

celé vlákno

Vypovidaci hodnota je, ze JIT se dokaze zbavit virtualni metody a ze ma tedy vice informaci nez prekladac c++, na coz jsem reagoval. Priklad byl samozrejme volen tak, aby to bylo zrejme.

ondra.novacisko.cz
ondra.novacisko.cz (neregistrovaný) ---.35.broadband11.iol.cz
25. 1. 2010 1:00

Re: jako programator v assembleru

celé vlákno

Dereferencování pointeru stojí jeden takt. Skok do podprogramu taky stojí jeden takt. Důležitý je obsah funkce. Pokud je tam typický funkční framework, tak se tam zbytečně vyplácá několik desítek taktů na vstup do funkce výstup z funkce. Proto jsou důležité optimalizace, které umí tenhle běžný funkční prolog a epligo úplně vyhodit.

Ano uznávám, že tady bude C++ hloupější, protože obě části kódu neví, s kým mají na druhé straně čest.

Na druhou stranu, jak efektivní vlastně JIT bude. Dejme tomu, že dokáže optimálně přeložit funkci se známým parametrem. Okaj, co se stane s tím kódem? Uloží se někam do cache? co když se bude zase potřebovat? Jak velká ta cache je? Co když těch rozhranní budu mít 100. Co funguje na jednom malém příkladu dobře nebude fungovat na příkladu o level výše.

Možná vás taky JIT vypekl. Zjistil, že výsledkem operace je konstanta a místo fyzického provedení kódu nahradil kód výsledkem. Vy to ale nevíte a pravděpodobně nezjistíte. Těch půl sekundy ve skutečnosti zabrala práce JITu.

Jako na každý jazyk lze najít konstrukci, kde je rychlejší, než ostatní jazyky. Zrovna na Javě můžete machrovat, pokud do cyklu přidáte jediné new. C++ určitě bude pozadu, zatímco Java poběží jako ďábel… Dokud se na to nevrhne GC. Potom už to nemusí být tak zřejmé.

Jako programátor v C++ znám cenu každé operace. V Javě si nikdy nejsem jist, jestli tahle část poběží rychle nebo pomalu. Několikrát jsem psal aplikaci, kde byly nějaké animace. Několikrát jsem řešil jejich občasné poskakování. V C++ nic takového nepozorováno.

Tím chci říct, že Java hodně těží z toho, že 80% času běží 20% kódu. Tam se JIT zřejmě dobře chytne. Ale na „velkých“ aplikací bude stále pomalejší. Vemte si třeba Eclipse. Žrout času i prostoru. Bohužel není s čím moc srovnávat, ale třeba s MSVC6, který byl ještě v C++ (MSVC Expressy jsou .NET), a rychlost nejzákladnější věcí toho editoru je úplně někde jinde.

Radovan Garabík aura:48
21. 1. 2010 9:39

posix

celé vlákno

Možno by tomu prospela POSIX vrstva – na začiatok niečo na spôsob cygwin, alebo preportovať dietlibc alebo uclib (alebo dokonca aj GNU libc). POSIX programy by potom stačilo „len“ prekompilovať, ale na druhej strane by s modernými aplikáciami už systém nereagoval svižne a potreboval by viac než 8MB RAM… ale v dnešnej dobe by to nestačilo, v dnešnej dobe sú hlavným problémom „alternatívnych“ OS ovládače…

Ivan Ivanovič Ivanov
Ivan Ivanovič Ivanov (neregistrovaný) 95.85.213.---
21. 1. 2010 10:14

Tvoji rudí kamarádi...

celé vlákno

TI posílají bezva operační systém plný her, trojských koňů a jiného užitečného
software. Zkus a nebudeš zklamaný.

Zdravíme všechny soudruhy!

Zdenek - aura:41
21. 1. 2010 19:28

Re: Tvoji rudí kamarádi...

celé vlákno

Ha, ha. Ti „soudruzi“ tam dnes bojují o přežití. Samozřejmě ten internetový underground tam je, ale na infiltraci se skrz tak záslužný software každý vykašle. Ona totiž čest v OSS je víc, než nějaký průnik do… čeho vlastně, když to bootuje bez Windows a na NTFS to neumí zapisovat?

100% Lenin
100% Lenin (neregistrovaný) 85.90.127.---
21. 1. 2010 23:53

Re: Tvoji rudí kamarádi...

celé vlákno

chi chi – schopnej prgoš si tu v průměru zarobí dost peněz.
A o schopné prgoše je tu velká nouze.
Tak se jim hodně platí.

No a vo tom to je. Nereagujme na kdejakej mýtus a omezený názor, který vyplývá z nedostatku přehledu a většinou i z absolutní neznalosti prostředí.

100% Lenin
100% Lenin (neregistrovaný) 85.90.127.---
22. 1. 2010 0:09

Re: Tvoji rudí kamarádi...

celé vlákno

Jejda – upřesnil by jste mi ten pojem „soudruzi“?
Nemýlím li se – pak jste tak označil programátory co se účastní tohoto projektu, čímž-to jste je, pejorativně s uvozovkami přirovnal k „soudruhům“.

Pak budou „soudruhy“ i emeryčtí programátoři? A co například japonští programátoři. Co oni?

Myslím, že to je jakási podivně zvrácená logika.

A vázat čest na OSS podmínkou bůtovat z win a zápisem do NTFS? To fakt hlava nebere.
Pochopil li jsem správně Vaše sdělení, pakmoje účast v OSS ze mne udělá čestnějšího člověka?

No tak tohle už s logikou nemá co dělat vůbec.

Ale aby jste nařekl, nechte tu kontakt + Vaše CV + odkazy na OSS projekty co jste vyplodil – a třeba Vás vezmeme na kontrakt.
Zrovna tu sháníme schopné prgoše i analytiky.

Petr Mejzlík aura:57
21. 1. 2010 10:17

Kompatibilita

celé vlákno

V článku je, že si vybrali to nejlepší z linuxových, windowsových a dosových aplikací. To znamená, že KolibriOS je kompatibilní s Linuxem, Windowsem i DOSem? To by byla naprostá bomba, ale asi to tak nebude (to je těžké i pro Linux s Winem, a ten se nemusí omezovat na 5 MB).

Napadá mě, že ty prohlížeče (Dillo, Links, atd.) tam nedali prostě proto, že na tom systému nejdou. Není to přece Linux, DOS ani Windows.

„Co se týče podpory hardware, díky použití ovladače VESA by se mělo vše zobrazovat v podstatě na jakékoliv kartě, stejně tak s myší nebo klávesnicí by neměl být problém.“
Tohle je docela vtipné: celé slavné X.org někdy nahodit grafiku schopné není a cosi v asembleru na disketu to vždycky dokáže :)

cleb
cleb (neregistrovaný) ---.pod.cvut.cz
21. 1. 2010 16:25

Re: Kompatibilita

celé vlákno

No, s tou grafikou: Ano, i já bych vám napsal v assembleru program, co by používal VESA a tím pádem podporoval všechny grafické karty. Má to jediný problém: VESA pochází z roku raz dva, a tím pádem odpadají takové věci jako grafická akcelerace. X.org by určitě ve vesa módu dokázal taky běžet kdekoli. Jestli něco takového ještě vůbec obsahuje.

mat
mat (neregistrovaný) ---.eurotel.cz
21. 1. 2010 12:05

zase dalsi zbytecnost

celé vlákno

zase se ajtaci nudili a vymysleli drevene kolo …

Tinkerlatko
Tinkerlatko (neregistrovaný) ---.dragon.cz
21. 1. 2010 12:59

S S H

celé vlákno

Mít to SSH, tak do toho jdu :)

boo
boo (neregistrovaný) ---.antik.sk
21. 1. 2010 22:19

Re: S S H

celé vlákno

jak te znam to ssh ti je pouze na to ze nemas koule se do linuxu prihlasit telnetem

mixal
mixal (neregistrovaný) ---.73.30.82.vnet.sk
21. 1. 2010 15:54

diki za clanok

celé vlákno

kazdopadne diki za prijemne citanie, vylety do sveta alternativnych systemov su vzdy zaujimave.

nabuduce navrhujem haiku

cleb
cleb (neregistrovaný) ---.pod.cvut.cz
21. 1. 2010 16:28

Je to hezký

celé vlákno

U takovéhoto software se nemá smysl zabývat reálnou použitelností,a nejspíš to ví i autoři. Na druhou stranu, který programátor si někdy nenaprogramoval něco, jen protože „je to hezký“. A dotáhli to teda dost daleko.

sysel
sysel (neregistrovaný) ---.internetbox.cz
21. 1. 2010 16:28

rychly start

celé vlákno

zrovna to testuju a boot je opravdu velice rychlý. od stisku power tlacitka az na plochu kolem 6ti sekund. kdyby to mnelo poradny webovy prohlizec tak by to byla zajmava alternativa k systemum jako je expressgate a podobne. doplnit poradny webovy prohlizec s podporou modernich technologii, nejaky ten prehravac hudby a podporu wifi tak by to byla zajmava volba pro netbooky. a diky minimalni velikosti by zbylo na ssd i spoustu mista na plnohodnotny OS

Zasílat nově přidané příspěvky e-mailem