abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
dnes 21:11 | Nová verze

Po půl roce vývoje od vydání verze 8.0.0 byla vydána verze 9.0.0 překladačové infrastruktury LLVM (Wikipedie). Přehled novinek v poznámkách k vydání: LLVM, Clang, Extra Clang Tools, LLD a Libc++. Vývojáři zdůrazňují podporu "asm goto", díky které lze pomocí Clangu přeložit například Linux pro x86_64 (CONFIG_JUMP_LABEL=y).

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

Bylo vydáno Eclipse IDE 2019-09 aneb Eclipse 4.13. Představení novinek na YouTube. Vydána byla také nová verze 7 online IDE Eclipse Che.

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

Byla vydána verze 24.0 svobodného softwaru OBS Studio (Open Broadcaster Software, Wikipedie) určeného pro streamování a nahrávání obrazovky počítače. Přehled novinek na GitHubu nebo pomocí krátkých videí na Twitteru.

Ladislav Hagara | Komentářů: 3
dnes 11:00 | Komunita

Microsoft představil a pod licencí SIL Open Font License (OFL) na GitHubu zveřejnil font Cascadia Code. Font je určen především pro zobrazování textu v emulátorech terminálu a vývojových prostředích (Přehled fontů s pevnou šířkou).

Ladislav Hagara | Komentářů: 12
včera 21:11 | Zajímavý software

Souborový systém exFAT se běžně používá na paměťových médiích jako karty SDXC, ale z licenčních důvodů jej nebylo možné začlenit do Linuxu, ačkoliv v roce 2013 unikl ovladač od Samsungu, jak shrnuje článek na Linux Weekly News. Park Ju Hyung nedávno vzal novější verzi ovladače od Samsungu a založil na ní vlastní projekt exfat-linux, který je k dispozici uživatelům.

Fluttershy, yay! | Komentářů: 5
včera 05:55 | Pozvánky

Dnes a zítra pořádá Národní úřad pro kybernetickou a informační bezpečnost (NÚKIB) ve spolupráci se studentským portálem Security Outlines konferenci CyberCon Brno 2019. Sledovat ji lze také online.

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

Byla vydána Java 13 / JDK 13. Nových vlastností (JEP - JDK Enhancement Proposal) je 5. Nová Java / JDK vychází každých 6 měsíců.

Ladislav Hagara | Komentářů: 2
včera 03:33 | Komunita

Mozilla.cz informuje (en), že Mozilla postupně zrychlí pravidelné vydávaní nových verzí Firefoxu na 4 týdny. Aktuálně jsou vydávány nové verze Firefoxu každých 6 až 8 týdnů.

Ladislav Hagara | Komentářů: 13
17.9. 18:44 | Nová verze

MojeFedora.cz informuje (en) o vydání betaverze Fedory 31, tj. dalšího mezníku na cestě k plánovanému vydání Fedora 31 na konci října. K dispozici je v edicích Workstation a Server. Můžete také vyzkoušet jeden ze spinů, labů nebo verzi pro ARM.

Ladislav Hagara | Komentářů: 0
17.9. 17:00 | Nová verze

Byl vydán CentOS Linux 7 (1908) vycházející z Red Hat Enterprise Linuxu 7.7. Podrobnosti v poznámkách k vydání.

Ladislav Hagara | Komentářů: 1
Kdy jste naposledy viděli počítač s připojeným běžícím CRT monitorem?
 (20%)
 (4%)
 (10%)
 (37%)
 (27%)
 (2%)
Celkem 175 hlasů
 Komentářů: 18, poslední dnes 09:03
Rozcestník

Sysfs - brána do jadra

12. 7. 2005 | Matej Gagyi | Systém | 8046×

Sysfs je virtuálny súborový systém podobný procfs. Nájdete ho v adresári /sys. Pomocou neho môžete kontrolovať hárdvér na svojom počítači. Dnes si porozprávame o jeho charakteristikách a uvedieme niekoľko príkladov použitia.

Úvod

Ak používate jadro rady 2.6, mohli ste si vo svojom koreňovom adresári všimnúť adresár /sys. Je to prípojný bod pre nový virtuálny súborový systém Linuxu - Sysfs.

Sysfs, ako každý virtuálny súborový systém, sa nachádza len v pamäti a na vašom pevnom disku nezaberá žiadne miesto. Jeho obsah presne reprezentuje vnútorný model zariadení v jádre Linuxu.

Skoro všetky informácie o vašom hardvéri a ovládačoch sú v jeho štruktúre logicky usporiadané a niektoré i nastaviteľné, podobne ako je tomu pri Procfs.

Charakteristika Sysfs

Začiatky Sysfs

Sysfs bol vyvinutý špeciálne pre Linux a na iných unixových systémoch sa s ním asi nikdy nestretnete. Prvýkrát bol zaradený do jadra experimentálnej rady 2.5 a predpokladá sa, že v jadre zostane veľmi dlho, nakoľko rieši mnoho problémov.

Hlavnou príčinou jeho vzniku bola potreba exportovať štruktúrované informácie z jadra do užívateľského prostredia. V článku DevFS vs. udev píšem o najvýznamnejšom využití Sysfs (využíva ho utilita udev).

Štruktúra Sysfs

Ak sa pozriete do vnútra adresára /sys, zistíte, že jeho štruktúra je veľmi hlboká a stále nachádzate ďalšie podadresáre. Často na konci celej štruktúry narazíte na symbolické linky do iných vetiev tohto stromu. Môžeme teda povedať, že nieje užívateľsky príjemná, ale rýchlo si na ňu zvyknete.

Sysfs nieje určené pre priame prezeranie užívateľom. Pomôže mu však, ak si vie napísať aspoň malý skript, ktorý za neho informácie zo štruktúry Sysfs vytiahne. To však nieje pre užívateľa veľmi atraktívne až do chvíle, kým nezačne riešiť nejaký hardvérový problém.

Sysfs presne zodpovedá rozloženiu premenných v jadre. Každý adresár predstavuje samostatný subsystém alebo modul. Súbory obsahujú skoro vždy len jednu informáciu a ich názov túto informáciu presne vystihuje.

Sysfs ako nástroj

Konkrétnu informáciu môžete z adresára /sys dostať jednoduchým výpisom súboru.

$ cat /sys/block/fd0/removable
1
$ cat /sys/block/hda/removable
0

Dozvedeli sme sa, že disketová jednotka fd0 používa vymeniteľné média, zatiaľčo disk hda je pevne zabudovaný.

Nastaviť nejaký parameter jadra za chodu je rovnako jednoduché. Musíte však mať patričné práva na zápis, takže musíte byť prihlásený ako root.

# cat /sys/block/hda/queue/scheduler
noop [anticipatory] deadline cfq
# echo "cfq" > /sys/block/hda/queue/scheduler
# cat /sys/block/hda/queue/scheduler
noop anticipatory deadline [cfq]

Nastavili sme plánovač fronty príkazov pre pevný disk hda. Plánovač CFQ je vhodný hlavne pre desktop, takže sme trochu zvýšili pružnosť, s akou sa čítanie a zápis na disk budú prevádzať. Niekedy je to o poznanie lepšie.

Nastaviteľné parametre jadra spoznáte podľa toho, že daný súbor má priradené práva na zápis. POZOR! Nieje dobré zisťovať, na čo slúži daný parameter tým, že do neho začnete zapisovať rôzne hodnoty.

$ find /sys -perm +222 ! -type d ! -type l | sort

Ak sa o jednotlivých parametroch jadra chcete niečo dozvedieť, skúste si názov súboru (aj s cestou) vygooglit, alebo sa pohrabte v dokumentácii k zdrojovým kódom jadra. Pokiaľ si nieste istý, čo robíte, nič nenastavujte!

Jednoduché príklady

Abyste sa mali od čoho odraziť, uvediem niekoľko ukážok zaujímavých súborov v Sysfs a dodám aj popis.

/sys/block/*/queue/scheduler
/sys/block/*/queue/io_sched/*
V súbore scheduler si môžete nastaviť alebo vypnúť plánovač fronty úloh pre vaše diskové zariadenia. Plánovač usporiadava jednotlivé diskové operácie tak, aby ich bolo možné vykonať čo najrýchlejšie a aby aby jednotlivé aplikácie, ktoré pristupujú na disk, dostali svoje údaje čím skôr.
noop
Táto voľba vypne plánovanie. Ak nemáte spustených niekoľko procesov, ktoré pristupujú na disk, nespozorujete spomalenie.
anticipatory
Je rýchly plánovač vhodný pre väčšinu prostredí.
deadline
Ak máte na počítači spustenú databázu, ktorá je stále vyťažená, mal by vám pomôcť mierne zvýšiť jej výkon.
cfq
Rozdeluje čas prístupu na disk rovnomerne medzi všetky procesy. Jednotlivé požiadavky sa začnú vykonávať skôr, ale dokončujú rovnakou rýchlosťou.
/sys/class/*/dev
Tento súbor, ak existuje pre dané zariadenie, obsahuje majoritné a minoritné číslo zariadenia. Je to užitočné, pokiaľ používate statický /dev a potrebujete vytvoriť zariadenie ručne.
/sys/class/*/*
Toto sú adresáre pre všetky zariadenia na počítači, aj tie virtuálne, ktoré sú vytvorené modulmi ako fuse, alebo virtuálne terminály.
/sys/bus/*
Tieto adresáre reprezentujú jednotlivé typy zberníc vo vašom počítači (PCI, IDE, USB, ...). Ich podadresáre obsahujú zariadenia pripojené na nich a tak ďalej.

Toto sú naozaj len ilustračné ukážky zo štruktúry Sysfs. Nič užitočné som neuviedol, ale zatiaľ som pomocou Sysfs riešil len problémy typu: "Rozpoznalo mi tú zvukovku? Netreba len nastaviť hlasitosť?" A Sysfs ma ušetril hľadania spôsobu, ako to zistiť.

Druhýkrát som sa so Sysfs stretol, keď som potreboval nechať zaspať počítač a nevedel som, ako to rýchlo urobiť. Podarilo sa mi to príkazom echo "standby" > /sys/power/state, ale lepšie je stiahnuť si programy, ktoré sú na takéto úkony určené.

Administrácia

Sysfs nieje určený práve na administráciu systému, ale skôr ako zdroj informácií. Väčšie administračné schopnosti ponúka Procfs. Sysfs ponúka len tie administračné funkcie, ktoré sú silne späté s hardvérom a ovládačmi.

Na internete nájdete mnoho príkladov užitočného použitia Sysfs. Skúste si vyhliadnúť nejaký súbor v štruktúre /sys a vložte jeho celú cestu do Googla.

Mne sa takýmto spôsobom podarilo nájsť niekoľko užitočných návodov. Lenže ako som povedal, tento článok nepíšem ako 'návod', ale 'úvod'.

Záverom

Jedným z veľkých úspechov linuxových programátorov je nepochybne aj Sysfs. Nieje to síce vlastnosť, pre ktorú by masy obyčajných používateľov prechádzali pod Linux, ale tým, čo tak už učinili, prináša nové možnosti.

Často sa môžete stretnúť s tvrdením, že Sysfs má úplne nahradiť Procfs - a to nieje pravda. Vývojári Linuxu a rôznych nástrojov potrebovali štruktúrované informácie o hardvéri, ktoré by boli ľahko spracovateľné programami, a to im Sysfs ponúka.

Dúfam, že v článku ste si našli odpovede na niektoré otázky, alebo som vám aspoň ukázal spôsob, ako sa k nim dostanete. V každom prípade, adresár /sys už má vo vašom systéme jasné miesto.

       

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ář

Mark Stopka avatar 12.7.2005 00:57 Mark Stopka | skóre: 58 | blog: Paranoidní blog | European Economic Area
Rozbalit Rozbalit vše Hmm vcelku dobré
Jo vcelku dobré seznámení s sysfs alespoň už vím proč byl navržen. BTW: mám první komentář :-)
MaT avatar 12.7.2005 02:16 MaT | skóre: 28
Rozbalit Rozbalit vše Pochvala
Tak tak, taky se mi líbí takovéhle články, které člověku trošku rozšíří obzory... Ale to, že se dá celá cesta předhodit panu Googlovi by možná stačilo napsat jen jednou. :-)
Open source software for open minded people. :-)
12.7.2005 07:22 Smazáno | skóre: 21 | blog: tezkorict
Rozbalit Rozbalit vše Tož nebylo to zlé.
Jako úvod. Ale ta o tom procu se mi líbila víc. Třeba to ale taky někam donde. :)
12.7.2005 08:22 Robert Krátký | skóre: 94 | blog: Robertův bloček
Rozbalit Rozbalit vše Re: Tož nebylo to zlé.
O /proc je hned příští článek :-)
Yin avatar 12.7.2005 13:45 Yin | skóre: 39 | blog: Yinotopia | Slovesnko, Košice
Rozbalit Rozbalit vše Re: Tož nebylo to zlé.
Ale je skoro rovnaký ako tento :(
Nikdy nie je tak zle, aby to jeden poharik nemohol ešte zhorsiť.
12.7.2005 14:30 1 | blog: 1
Rozbalit Rozbalit vše Jasně, typický nástroj
Typický nástroj pro šílence :-). Ne - linuxové "registry" jsou fajn, škoda že nejsou k dispozici free ucelené nástroje (typu Novell eNterprise Linux Services), které by na tyto kvalitní informační a admin zdroje (spíš ten /proc apod.) navazovaly ucelenou formou v nějakém GUI - třeba s možností navázat regulární výrazy, kde je to potřeba, využívat šablony nastavení a tak.
Problém nevidím, že tady ty nástroje nejsou TEĎ. Ale že nevím o něčem smysluplném co by alespoň vznikalo. Viz na jiné úrovni v článku zmíněný Yum vs. např. YaST.
1
12.7.2005 14:33 1 | blog: 1
Rozbalit Rozbalit vše Re: Jasně, typický nástroj
V tomhle aktuálním článku.
1
Yin avatar 13.7.2005 20:48 Yin | skóre: 39 | blog: Yinotopia | Slovesnko, Košice
Rozbalit Rozbalit vše Re: Jasně, typický nástroj
(ak som ťa správne pochopil): skripty...
Nikdy nie je tak zle, aby to jeden poharik nemohol ešte zhorsiť.
14.7.2005 11:41 1 | blog: 1
Rozbalit Rozbalit vše Re: Jasně, typický nástroj
Jasně - koherentní, drtivou většinu obvyklých věcí pokrývající sada skriptů s rozhraním, které má tak pěkné "stromečky" funkcí jako YaST. Včetně úpravy konfiguráků. Mě spíš zaujalo to, jak na roztříštěné zdroje informací o systému a konfiguračních utilit navázat něco co těm zdrojům (/sys /proc /blabla, /devfs ..) dá jednu a přívětivou tvář. Protože pořád řešit - "jo před půlrokem jsem to uměl... no musím se to naučit vlastně znovu. Navíc se změnila struktura v jádře, tohle se jmenuje jinak ..." je na nic.
1
27.7.2006 18:09 Drašar | skóre: 27 | Velký Týnec
Rozbalit Rozbalit vše Re: Sysfs - brána do jadra
Zdravim. Nevite nekdo, jestli existuje pro sysfs neco obdobnyho jako sysctl pro procfs? Resp. jak nejak elegantne nastavovat hodnoty v /sys po spusteni systemu? Dik.
Patička

Založit nové vláknoNahoru

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