Portál AbcLinuxu, 8. srpna 2025 22:33


Nástroje: Začni sledovat (1) ?Zašle upozornění na váš email při vložení nového komentáře.

Vložit další komentář
14.7.2008 08:32 pasmen | skóre: 45 | blog: glob | Praha
Rozbalit Rozbalit vše Re: O SystemTapu a snaze dohnat DTrace
Odpovědět | Sbalit | Link | Blokovat | Admin
Instrumentací jádra?
14.7.2008 08:45 Filip Jirsák | skóre: 68 | blog: Fa & Bi
Rozbalit Rozbalit vše Re: O SystemTapu a snaze dohnat DTrace
Do programu se přidají na určitá místa volání, která umožňují nějakému externímu programu sledovat průběh kódu – kterými částmi kódu se prošlo, kolikrát, jak dlouho to trvalo atd. V angličtině se tomu říká „instrumentation“, nevím o tom, že by se používal nějaký jiný český překlad.
14.7.2008 08:48 Filip Jirsák | skóre: 68 | blog: Fa & Bi
Rozbalit Rozbalit vše Re: O SystemTapu a snaze dohnat DTrace
Ještě se doplním – ta volání se nepřidávají ručně nebo pouze na vybraná místa, ale přidávají se automaticky třeba na všechna místa volání podprocedury a na všechny návraty. Takže nemusíte mít program nijak předem připravený, ale automaticky můžete sledovat kteroukoli jeho část (pokud tedy příslušný nástroj je schopen ji správně interpretovat a „instrumentovat“, což v případě jádra operačního systému napsaného v C a částečně v assembleru musí být lahůdka).
14.7.2008 11:03 pasmen | skóre: 45 | blog: glob | Praha
Rozbalit Rozbalit vše Re: O SystemTapu a snaze dohnat DTrace
Nedalo by se použít třeba "ladění"? Myslím, že to vystihuje to co se děje docela dobře.
14.7.2008 11:19 Filip Jirsák | skóre: 68 | blog: Fa & Bi
Rozbalit Rozbalit vše Re: O SystemTapu a snaze dohnat DTrace
Nevystihuje. Při ladění si programátor vybere určitá zajímavá místa, kam dá třeba breakpointy nebo ladicí výpisy a sleduje jeden konkrétní předem vybraný úsek programu (který je z nějakého důvodu podezřelý, programátor si třeba myslí, že chyba je právě tam). Instrumentace ale znamená, že se úprava udělá automaticky u celého programu, takže programátor nemusí dopředu vědět, kde je to bolavé místo, a teprve ho hledá. Třeba když potřebujete zjistit, kde je problém s výkonem, nemůžete si před a za problémové místo dát vypsat čas, abyste zjistil, jak dlouho trvá vykonání kódu – protože nevíte, která část kódu je ta pomalá. Proto se musí celý kód (automaticky) upravit a pak se měří třeba doba trvání každé funkce – a podle výsledných statistik programátor může vybrat ta místa, na která se teprve zaměří.
m1c4a1 avatar 14.7.2008 11:52 m1c4a1 | skóre: 2
Rozbalit Rozbalit vše Re: O SystemTapu a snaze dohnat DTrace
A jakej je rozdíl oproti profilingu?
14.7.2008 11:58 Filip Jirsák | skóre: 68 | blog: Fa & Bi
Rozbalit Rozbalit vše Re: O SystemTapu a snaze dohnat DTrace
Profiling je pouze ladění výkonu, instrumentace se při něm také používá. Ale instrumentaci je možné používat i pro jiné účely – obecně při hledání problémů (nejen s výkonem).
15.7.2008 13:00 Jiří (BoodOk) Kadeřávek | skóre: 19 | blog: BoodOk | Brno
Rozbalit Rozbalit vše Re: O SystemTapu a snaze dohnat DTrace
Jsi si jist, že to není jen tvá interpretace (profilování jako ladění jen výkonu)? Profiling = profilování, analýza ať už máš za lubem cokoliv.
Věda má v sobě určitou zpupnost, že čím dokonalejší techniku vyvineme, čím více se dozvíme, tím lepší budou naše životy.
14.7.2008 11:11 David Jaša | skóre: 44 | blog: Dejvův blog
Rozbalit Rozbalit vše Re: O SystemTapu a snaze dohnat DTrace
Termín instrumentace nebo vystrojení se používá i při měřeních ve stavebnictví. Podle toho, co popisujete, je to v principu to stejné.
14.7.2008 11:20 Filip Jirsák | skóre: 68 | blog: Fa & Bi
Rozbalit Rozbalit vše Re: O SystemTapu a snaze dohnat DTrace
Vystrojení je hezký český termín. Prosadíme ten překlad i do IT? Já jsem pro :-)
14.7.2008 12:06 David Jaša | skóre: 44 | blog: Dejvův blog
Rozbalit Rozbalit vše Re: O SystemTapu a snaze dohnat DTrace
Určitě. :-) Mimochodem "vystrojení" má trochu širší význam -- je to vybavení nejen měřící technologií, ale jakoukoliv jinou (třeba zabezpečovací u tunelů).
14.7.2008 12:37 Filip Jirsák | skóre: 68 | blog: Fa & Bi
Rozbalit Rozbalit vše Re: O SystemTapu a snaze dohnat DTrace
Ono se to v tomhle významu používá i v programování – to, co se přidá, nemusí být jen sledovací body, ale třeba také kontrola přístupových práv. To už se asi nebude týkat linuxového jádra, ale třeba AOP může být uděláno tak, že se po kompilaci kód vystrojí odskoky do nějakého obslužného kódu a zpět (např. právě kontrola přístupových práv, logování, transakce).
14.7.2008 12:10 Ladicek | skóre: 28 | blog: variace | Havlíčkův brod
Rozbalit Rozbalit vše Re: O SystemTapu a snaze dohnat DTrace
Mně se vystrojení taky líbí. Ale obávám se, že trochu narazíme u lidí, kteří zásadně používají výrazy jako kontribuce nebo tooly :-)
Ještě na tom nejsem tak špatně, abych četl Viewegha.
14.7.2008 12:34 xm | skóre: 36 | blog: Osvobozený blog | Praha
Rozbalit Rozbalit vše Re: O SystemTapu a snaze dohnat DTrace
Mně se tedy nelíbí, jsem zásadně proti :-P Instrumentace zní lépe a výstižněji (a i v tom stavebnictví se jako termín používá).
Svoboda je tím nejdůležitějším, co máme. Nenechte se o ní připravit, podporujte Pirátskou stranu!
vencour avatar 14.7.2008 12:49 vencour | skóre: 56 | blog: Tady je Vencourovo | Praha+západní Čechy
Rozbalit Rozbalit vše Re: O SystemTapu a snaze dohnat DTrace

No, půlka národa používá slovo směrovač a druhá půlka router. Taky se mi to nelíbí a co můžu.

Ty nejhlubší objevy nečekají nutně za příští hvězdou. Jsou uvnitř nás utkány do vláken, která nás spojují, nás všechny.
14.7.2008 12:58 xm | skóre: 36 | blog: Osvobozený blog | Praha
Rozbalit Rozbalit vše Re: O SystemTapu a snaze dohnat DTrace
Je to děs... ale ještě horší je, když někdo používá slovo "rozvaděč" místo "rack", to je na zabití ;-)
Svoboda je tím nejdůležitějším, co máme. Nenechte se o ní připravit, podporujte Pirátskou stranu!
Michal Fecko avatar 14.7.2008 13:12 Michal Fecko | skóre: 31 | blog: Poznámkový blog
Rozbalit Rozbalit vše Re: O SystemTapu a snaze dohnat DTrace
Je to děs... ale ještě horší je, když někdo používá slovo "rozvaděč" místo "rack", to je na zabití ;-)
Ja poznam človeka ktorý vyslovuje rack ako "rak" miesto "rek" ("Ideme presvietiť (pozn. - kontrola zapojenia - v jeho reči) kábly do raku") :-)
vencour avatar 14.7.2008 13:50 vencour | skóre: 56 | blog: Tady je Vencourovo | Praha+západní Čechy
Rozbalit Rozbalit vše Re: O SystemTapu a snaze dohnat DTrace

? Rozvaděč je elektrorozvodná skříň, ne? Rack je box s úchytama pro servery atd., česky něčemu podobnýmu řikáme "štelář" :-)

Ty nejhlubší objevy nečekají nutně za příští hvězdou. Jsou uvnitř nás utkány do vláken, která nás spojují, nás všechny.
14.7.2008 13:47 David Jaša | skóre: 44 | blog: Dejvův blog
Rozbalit Rozbalit vše Re: O SystemTapu a snaze dohnat DTrace
Možná to zní lépe, ale určitě ne výstiženěji -- vždyť je to podle toho, co napsal Filip výše, 100% ekvivalentní překlad. A ve stavebnictví se obojí volně zaměňuje.
freshmouse avatar 14.7.2008 15:38 freshmouse | skóre: 42 | blog: Bruno Banány
Rozbalit Rozbalit vše Re: O SystemTapu a snaze dohnat DTrace
I mně se to líbí, i já preferuju hezká česká slova (i když se někdy přistihnu, že řeknu v práci třeba "ekšna" ve smyslu "action" :-(). (I když ta instrumentace taky není tak hrozná; máme slova jako instrument atd.)

P.S.: Nejhorší je ale OK, to bych z pusy nevypustil nikdy. ;-)
15.7.2008 10:08 rich
Rozbalit Rozbalit vše Re: O SystemTapu a snaze dohnat DTrace
a co treba "vybaveni" ?
14.7.2008 15:09 Milan Jurik | skóre: 21 | blog: Komentare | Ova
Rozbalit Rozbalit vše Re: O SystemTapu a snaze dohnat DTrace
Odpovědět | Sbalit | Link | Blokovat | Admin
Drobna technicka - instrumentace jadra je fajn, ale nejen jadrem je ziv clovek, mame i userspace. DTrace umoznuje (diky BC, MK a AL) oboji, coz je neco, co vyrazne zjednodussuje jak profilling, tak bug hunting (at maji mistni prekladatele radost).
14.7.2008 15:33 Jiri Bajer | skóre: 34 | blog: Sarimuv koutek | Praha
Rozbalit Rozbalit vše Re: O SystemTapu a snaze dohnat DTrace
Odpovědět | Sbalit | Link | Blokovat | Admin
Instrumentace v tomhle pripade znamena to, ze se pri kompilaci jadra vlozi do kazdeho zajimaveho mista sonda = nekolik instrukci nop navic. Dokud neni potreba do jadra "nahlizet", je efekt takrka nulovy - jen mirne snizeni vykonu kvuli par taktum spotrebovanych na nopech. Jakmile je potreba napr. spocitat, kolikrat za sekundu se provede urcite systemove volani jadra (rekneme write), prepisou se nopy tesne pred navratem z tohoto systemoveho volani instrukci jump do obsluzne rutiny, ktera akorat zvysi citac pruchodu. Tenhle citac pak z userspace periodicky cteme (treba 1x za sekundu), resetujeme a pocet pruchodu tiskneme. Ta obsluzna rutina samozrejme mirne zpomali vykonavani systemoveho volani write, cili musi byt co nejjednodussi. Az nas prestane bavit pocitat systemova volani, zase prepiseme jump zpatky na nopy a vse je pri starem.

Znamena to, ze nekdo musi vytipovat zajimava mista v jadre, kam se tech par nopu navic prida a pak napsat jaderny kod pro modifikaci sama sebe. Vyhodou je, ze system je zatezovan pozorovanim jen tehdy, pokud chceme a ne celou dobu (pokud nepocitame nopy).
15.7.2008 05:30 Kyosuke | skóre: 28 | blog: nalady_v_modre
Rozbalit Rozbalit vše Re: O SystemTapu a snaze dohnat DTrace
Si tak říkám, jestli by na některé věci nebyly lepší multiple entry points - některé Lispy to používají k implementaci "unsafe volání" funkcí - funkce má prolog, který kontroluje typy argumentů, ale když kompilátor je schopen dokázat, že určitý call site zaručeně bude předávat správné parametry, skočí rovnou za test ("No-arg-parsing entry point"). Ty NOPy mi nepřijdou jako moc sympatická věc, pokud by měly být v každé funkci a měly by se procházet při každém volání. Sice bych hádal, že to dneska procesor dokáře přeskočit líp, ale stejně. Nevyjádří se k tomu nějaký assemblerista? :-)
15.7.2008 08:37 Filip Jirsák | skóre: 68 | blog: Fa & Bi
Rozbalit Rozbalit vše Re: O SystemTapu a snaze dohnat DTrace
Ty NOPy se tam podle mne přidávají jenom při nějaké konfigurační volbě nebo až při vystrojení – jinak jsou zbytečné, zbytečně by tím narůstala velikost jádra a zpomaloval by se jeho běh. Běžné produkční jádro by to nemělo ovlivnit.
15.7.2008 12:54 Kyosuke | skóre: 28 | blog: nalady_v_modre
Rozbalit Rozbalit vše Re: O SystemTapu a snaze dohnat DTrace
Já právě myslel, že v "intrumentovatelném" (nikoli "instrumentovaném") jádře jsou na příslušných místech napevno. Takže jestli konfigurační volbou máte na mysli make menuconfig, tak asi ano. :-)
15.7.2008 09:58 Milan Jurik | skóre: 21 | blog: Komentare | Ova
Rozbalit Rozbalit vše Re: O SystemTapu a snaze dohnat DTrace
Ty NOPy maji v naproste vetsine mist nemeritelny impakt (tam, kde by mely, tam nejsou, ale takova mista sledovat obvykle ani netreba, nebo jsou tam specificke staticke proby), kvuli zpusobu, jakym dnes procesory zpracovavaji instrukce, superscalar architektura a prefetching vice instrukci naraz zajisti, ze jsou ve vysledku vykonne jednotky neustale pod tlakem a nemaji prodlevy.
14.7.2008 16:42 echo_zulu
Rozbalit Rozbalit vše Re: O SystemTapu a snaze dohnat DTrace
Odpovědět | Sbalit | Link | Blokovat | Admin
Ad vystrojení: nerád by som sa mojim českým bratom miešal do jazykovednej debaty, ale pred pár dňami som bol na hrade Helfštýn, pri Lipníku nad Bečvou, a sprievodca nám tam ukazoval takú majú búdku prilepenú k stene vo výške, s tým, že sa to volá prevét. Je to jedna z prvých podôb záchodu. Údajne v období českého obrodenia, keď sa hľadali české výrazy pre každé cudzie slovo, nevyhol sa tomu ani chudák prevét, ktorý podľa jeho funkčnosti nazvali príznačne... výserník... ehm. Vraj sa to ale neujalo:) Tak si hovorím, že je možno niekedy lepšie nechať cudzie slovo v originálnom tvare a neprekladať. Aby som nevzbudzoval národnostné vášne, hovorím si to aj pri slovenských prekladoch. Napríklad také vlákno. Doteraz som nepochopil prečo to tak nazvali. Na jednej strane máme v hmatateľnom svete pásovú výrobu, no na druhej strane, v spracovaní inštrukcií máme vlákna. Nech žije zrozumiteľnosť:)
15.7.2008 17:35 Majkls
Rozbalit Rozbalit vše Re: O SystemTapu a snaze dohnat DTrace
Mě by jen zajímalo, co budou všichni ti velcí příznivci cizích tvarů říkat v Británii. To jestli termín uspěje nebo ne závisí na tom, jestli byl první nebo ne. Mějme třeba drhel, definujme si ho jako chyba v programu. A teď mi řekněte, co je výstižnější. Jestli drhel, nebo bug (který má 10 dalších významů).
Není umění napsat 10000 řádků, ale napsat na 10 řádků, co by jiný psal na 1000 řádků.

Založit nové vláknoNahoru

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

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.