mezi zidli a klavesnici

Ales Prochaska prochaska na alsoft.cz
Úterý Únor 28 08:05:33 CET 2012


OK, něco pravdy na tom je. Osobně jsem programoval v obou "světech",
ale těch časově kritických rutin nikdy nebylo víc než tak 1 %. Taky
umím strávit spoustu času nad tím, aby se stihlo obsloužit přerušení
dřív než přijde další, ale nepovažoval jsem to nikdy za základ mé
práce. Důležité bylo vždycky mít správně logiku programu ("projekt") a
co nejmíň chyb.

Ales Prochaska

> čas je drahý, hodně drahý, proto se to dělá. Proto se kontrolují flagy a
> tráví se ne tři týdny, ale tři měsíce nad tím aby se ušetřilo 100µs. 
> Protože 100µs znamená jestli SW bude fungovat bezpečně, jestli projde 
> testy a jestli vám za něj zaplatí. 100µs je zatraceně spousta času, za
> které to stojí!

> Jak jsem již psal to, že to vy nepoužíváte neznamená že v jiném oboru to
> není hlavní priorita. Je to přílišné zobecňování zkušeností jednoho 
> pohledu i do jiných. Ve svém světě máte pravdu. V mém to může být 
> problém selhání systému.

> Svět PC a svět embedded se dost liší. Já nejsem moc schopen napsat 
> rychle a slušně program pro PC v OOP jazyce. Protože teoreticky to sice
> umím, ale prakticky jsem na tom jako student - taky to někdy viděl.

> A naopak. Slušný programátor pro PC je v embedded světě ztracený, 
> protože neumí psát pro daný systém. Nechápe proč je jeho perfektně 
> strukturovaný kód na vyhození, protože je o 5µs delší než měl být.

> Jednou jsem strávil 5 týdnů tím jak zmenšit 8k kód o 200 bytů. Byl, 
> potvora, napsaný poměrně efektivně. Vyplatilo se to, protože kdyby to 
> nešlo, tak by náklady na změnu byly ve statisících €.


> ced


> Dne 28.2.2012 01:00, Ales Prochaska napsal(a):
>> A to je prave ono :-) Zabyvejme se tim, kdo co jak proc a kde vola, v
>> v jake delce a jake flagy pri tom nastavuje ci nenastavuje. Obetujme
>> dve tri probdele noci abychom usetrili sto mikrosekund behu programu.
>> Zabyvejme se stale dokola tim, jestli funkce vraci struct nebo pointer
>> na struct a jeste u toho resme, jestli ten pointer vede do jejiho
>> vlastniho stacku nebo na statickou pamet jineho modulu nebo jestli
>> musime pamet po pouziti dealokovat. Casu je dost a je levny, tak proc
>> si ten luxus nedoprat :-)
>>
>> Ales Prochaska
>>
>>> Tak komu to vadi, muze pouzivat C# a .NET, kde nejen, ze existuje typ
>>> bool, ale je to dokonce trida, je to uzasne slozite a zabezpecene,
>>> trosku to kazi fakt, ze pro vyhodnoceni jestli je promenna true nebo
>>> false je potreba predpokladam volani predku do 10. kolena a tisice
>>> instrukci.... Zatimco pro vyhodnoceni jestli je cokoli nula nebo nenula
>>> staci jedna instrukce...
>>
>>
>>
>> _______________________________________________
>> HW-list mailing list  -  sponsored by www.HW.cz
>> Hw-list na list.hw.cz
>> http://list.hw.cz/mailman/listinfo/hw-list
> _______________________________________________
> HW-list mailing list  -  sponsored by www.HW.cz
> Hw-list na list.hw.cz
> http://list.hw.cz/mailman/listinfo/hw-list




Další informace o konferenci Hw-list