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 14:15 | Komunita

Daniel Stenberg, autor nástroje curl, na svém blogu oznámil, že obdržel letošní Polhemovu cenu, kterou uděluje Švédská inženýrská asociace za „technologickou inovaci nebo důvtipné řešení technického problému“.

marbu | Komentářů: 1
dnes 13:40 | Pozvánky

Cílem Social Good Hackathonu, který se uskuteční 21. a 22. října v Brně, je vymyslet a zrealizovat projekty, které pomůžou zlepšit svět kolem nás. Je to unikátní příležitost, jak představit nejrůznější sociální projekty a zrealizovat je, propojit aktivní lidi, zástupce a zástupkyně nevládních organizací a lidi z prostředí IT a designu. Hackathon pořádá brněnská neziskovka Nesehnutí.

… více »
Barbora | Komentářů: 0
dnes 00:44 | Pozvánky

V sobotu 21. října 2017 se na půdě Elektrotechnické fakulty ČVUT v Praze uskuteční RT-Summit – setkání vývojářů linuxového jádra a uživatelů jeho real-time verze označované jako preempt-rt.

… více »
Pavel Píša | Komentářů: 5
včera 23:44 | Bezpečnostní upozornění

V Linuxu byla nalezena bezpečnostní chyba CVE-2017-15265 zneužitelná k lokální eskalaci práv. Jedná se o chybu v části ALSA (Advanced Linux Sound Architecture).

Ladislav Hagara | Komentářů: 1
včera 22:44 | Komunita

Greg Kroah-Hartman informuje na svém blogu, že do zdrojových kódu linuxového jádra bylo přidáno (commit) prohlášení Linux Kernel Enforcement Statement. Zdrojové kódy Linuxu jsou k dispozici pod licencí GPL-2.0. Prohlášení přidává ustanovení z GPL-3.0. Cílem je chránit Linux před patentovými trolly, viz například problém s bývalým vedoucím týmu Netfilter Patrickem McHardym. Více v často kladených otázkách (FAQ).

Ladislav Hagara | Komentářů: 4
včera 22:04 | Pozvánky

Rádi bychom vás pozvali na přednášku o frameworku Avocado. Jedná se o testovací framework další generace, inspirovaný Autotestem a moderními vývojovými nástroji, jako je třeba git. Přednáška se bude konat 23. října od 17 hodin na FEL ČVUT (Karlovo náměstí, budova E, auditorium K9 – KN:E 301). Více informací na Facebooku.

… více »
mjedlick | Komentářů: 0
včera 21:44 | Bezpečnostní upozornění

Nový útok na WPA2 se nazývá KRACK a postihuje prakticky všechna Wi-Fi zařízení / operační systémy. Využívá manipulace s úvodním handshake. Chyba by měla být softwarově opravitelná, je nutné nainstalovat záplaty operačních systémů a aktualizovat firmware zařízení (až budou). Mezitím je doporučeno používat HTTPS a VPN jako další stupeň ochrany.

Václav HFechs Švirga | Komentářů: 3
15.10. 00:11 | Zajímavý projekt

Server Hackaday představuje projekt RainMan 2.0, aneb jak naučit Raspberry Pi 3 s kamerovým modulem pomocí Pythonu a knihovny pro rozpoznávání obrazu OpenCV hrát karetní hru Blackjack. Ukázka rozpoznávání karet na YouTube. Zdrojové kódy jsou k dispozici na GitHubu.

Ladislav Hagara | Komentářů: 0
14.10. 15:11 | IT novinky

Online obchod s počítačovými hrami a elektronickými knihami Humble Bundle byl koupen společností IGN. Dle oficiálních prohlášení by měl Humble Bundle dále fungovat stejně jako dosud.

Ladislav Hagara | Komentářů: 8
14.10. 06:00 | Zajímavý článek

Brendan Gregg již v roce 2008 upozornil (YouTube), že na pevné disky se nemá křičet, že jim to nedělá dobře. Plotny disku se mohou rozkmitat a tím se mohou prodloužit časy odezvy pevného disku. V září letošního roku proběhla v Buenos Aires konference věnovaná počítačové bezpečnosti ekoparty. Alfredo Ortega zde demonstroval (YouTube, pdf), že díky tomu lze pevný disk použít také jako nekvalitní mikrofon. Stačí přesně měřit časy odezvy

… více »
Ladislav Hagara | Komentářů: 8
Těžíte nějakou kryptoměnu?
 (6%)
 (2%)
 (15%)
 (76%)
Celkem 719 hlasů
 Komentářů: 24, poslední 27.9. 08:30
    Rozcestník

    Jaderné noviny – 22. 2. 2011: Problémy cp se zpožděnou alokací

    7. 3. 2011 | Jirka Bourek | Jaderné noviny | 3505×

    Aktuální verze jádra: 2.6.38-rc6. Citáty týdne: Al Viro, Casey Schaufler, Dan Rosenberg. Aby FIEMAP a zpožděná alokace fungovaly dohromady. Poznámky o blokové vrstvě.

    Obsah

    Aktuální verze jádra: 2.6.38-rc6

    link

    Současné vývojové jádro je 2.6.38-rc6 vydané 21. února. Linus říká:

    Co se diffů týče, nejvýraznější věc je odstranění /proc rozhraní z kódu cíle [target] (abychom nevydávali se zastaralým rozhraním.) Když budeme ignorovat tohle (a nějaké pročišťovací patche pro arm v mach/map.h), diffy jsou opravdu velmi malé. Ve skutečnosti je nejvýraznější spousta malých oprav, většina v ovladačích. Bohužel nic opravdu zajímavého. Nebo spíš bohudík, protože zajímavé je v této fázi -rc cyklu špatně.

    Zkrácený changelog je v oznámení, v kompletním changelogu najdete všechny detaily.

    Stabilní aktualizace: 17. února vyšla stabilní jádra 2.6.32.29, 2.6.36.4 a 2.6.37.1. Obsahují spoustu oprav po celém stromě. Jádro 2.6.36.4 je poslední ze série 2.6.36.x: [...] měli byste přejít na sérii .37, protože tohle je poslední vydané jádro .36. Je nyní 'na konci života', 'mrtvé', 'pohřbené', 'zapíchnuté ve fjordu' nebo co používáte v práci vy jako termín pro věci, které již nejsou.

    Aktualizace 2.6.37.2 se reviduje v době psaní tohoto článku. Obsahuje 70 oprav a měla by vyjít 24. února nebo později.

    Citáty týdne: Al Viro, Casey Schaufler, Dan Rosenberg

    link

    Předaná struktura je zneužitá struktura.

    -- Al Viro

    Distribuované systémy jsou záludné. Je to jeden z důvodů, proč se zabývám bezpečností, je to o tolik jednodušší.

    -- Casey Schaufler

    Shodou okolností mnoho souborových systémů pro Linux nemá obzvlášť dobré zotavení z chyb při připojování poškozených souborových systémů. Pro příklad jsem úmyslně poškodil souborový systém btrfs, který nyní způsobí BUG(), když se ho pokusíte připojit. Naformátoval jsem tímto souborovým systémem USB disk, takže teď mám zařízení, které způsobí zpanikaření jader u distribucí, které podporují automatické připojování, v některých případech i když je uzamčená obrazovka.

    -- Dan Rosenberg

    Aby FIEMAP a zpožděná alokace fungovaly dohromady

    link

    napsal Jonathan Corbet, 22. února 2011

    ioctl() příkaz FIEMAP lze použít ke zjištění toho, jak jsou bloky souboru rozloženy na disku. Umožňuje zjistit fragmentaci souboru, optimalizovat pořadí dopředného čtení při bootu a mnoho dalšího. Jedna z těch dalších věcí ale odhalila chyby v několika důležitých souborových systémech, které FIEMAP implementují.

    Aplikace cp byla podle všeho před nedávnem naučena, jak použít FIEMAP k nalezení děr v souborech. Cílem bylo optimalizovat kopírování takových souborů tím, že se díry vůbec nebudou číst; tak není nutné plnit stránku nulami (v jádře) a tu porovnávat se stránkou plnou nul (v uživatelském prostoru). To je užitečné zlepšení.

    Někdy tou dobou se k Chrisu Masonovi doslechlo, že cp poškozuje na souborovém systému btrfs soubory. Problém byl přirozeně v tom, že FIEMAP hlásil díry v souborech tam, kde žádné nebyly. Hlavní příčinou byla nepřipravenost FIEMAP na to, že mohou existovat oblasti souboru, do kterých se zapsalo, ale které ještě nemají přiřazeny žádné bloky. Taková situace nastane u většiny současných souborových systémů, které používají mechanismus zpožděné alokace, takže nejde jenom o teoretickou záležitost.

    Chris problém napravil u btrfs a pak se rozhodl zjistit, jak se budou ve stejné situaci chovat ostatní souborové systémy. Z jeho zprávy vyplývá, že xfs věci zvládlo dobře, ale ext4 obsahovalo podobnou chybu v případě, kdy se zpožděná alokace a skutečné díry potkaly v jednom souboru. Některé chyby se podle všeho snadno projeví více než v jednom kontextu.

    Chrisova oprava by se měla dostat do 2.6.38 před finálním vydáním; je docela pravděpodobné, že oprava ext4 bude také následovat rychle. Očekávejte i backporty do starších jader, ale mezitím si u takových souborových systémů dávejte pozor, když budete pomocí nových verzí cp kopírovat soubory, do kterých bylo nedávno zapsáno.

    Poznámky o blokové vrstvě

    link

    napsal Jonathan Corbet, 22. února 2011

    Během přibližně minulého týdne se objevilo mnoho témat týkajících se nízkoúrovňového fungování blokové vrstvy. Tento článek se zabývá několika z nich.

    Vynucení přístupu pouze pro čtení: Bloková vrstva má mechanismus, který umožňuje ovladači označit specifické zařízení (nebo oddíl) jako pouze pro čtení. Tento příznak může být nastaven, pokud je fyzické zařízení zamčeno proti zápisu; také ho může nastavit kód na vyšší úrovni (například kód MD nebo DM), když správce vytvoří zařízení pouze pro čtení. Tejun Heo ale přišel na zajímavou věc: v blokové vrstvě se tento příznak nevynucuje – pokus otevřít pro zápis zařízení chráněné proti zápisu uspěje a bloková vrstva s klidem vyšle zapisovací příkazy k zařízení, ze kterého se dá pouze číst. Tejunovi to přišlo jako chyba, takže do 2.6.38 vložil patch, který část problému řeší: pokus otevřít zařízení pouze pro čtení pro zápis bude zablokován.

    Jenže se ukazuje, že tato kontrola něco rozbije. Vzhledem k tomu, že přístup pouze pro čtení nikdy nebyl vynucován, vývojáři se nestarali o to, jak blokové zařízení otevírají. S tímto patchem tedy zařízení smyčky [loop device], device mapper a MD přestanou fungovat, když se pokusí otevřít zařízení pouze pro čtení, a to i když z něj chtějí jenom číst. Rozbít věci v tomto měřítku není jedním ze stanovených cílů 2.6.38, takže Chuck Ebbert zaslal patch, který tuto změnu ruší; nějaká jeho verze by se před konečným vydáním 2.6.38 měla dostat do jádra.

    Kód v jádře, který se nestará o způsob přístupu, může být opraven snadno, ale oprava nástrojů v uživatelském prostoru bude trvat o něco déle. Tato kontrola tedy do cesty open() nebude vrácena nijak brzo. Linus navíc upozornil na to, že toto blokování ani nemusí být správně; jsou místa, kde může být nutné otevřít zařízení, které je pouze pro čtení, pro zápis. Skutečné vynucování – pokud ho má dělat bloková vrstva – pravděpodobně bude muset nastat, až když se příkazy posílají zařízení. Ještě se uvidí, kolik věcí rozbije tohle.

    Stabilní stránky: Linux má od roku 2008 podporu pro kontrolu integrity bloků dat. Tato vlastnost ve zkratce umožňuje kontrolovat, jestli se data nepoškodila při transferu mezi hostitelem a úložným zařízením, pokud to dovoluje hardware. Před zápisem bloku do zařízení jádro vypočítá kontrolní součet a pošle ho s daty; pokud data, jakmile je zařízení zapíše, mají jiný kontrolní součet, zařízení signalizuje chybu. Tento mechanismus může zvýšit celkovou důvěru v to, že systém bude ukládat data, aniž by je poškodil.

    Je tu ale malý problém. Představte si sekvenci událostí, ve které jádro vypočítá kontrolní součet specifického bloku, zadá operaci zápisu a pak se jde věnovat něčemu zajímavějšímu. Než se řadič blokového zařízení dostane k tomu požadavek vyřídit, přijde nějaký proces a obsah bloku změní. V tu chvíli kontrolní součet přestane souhlasit a operace selže. Jakým způsobem nejlépe reagovat na takový výsledek? (Nebo ještě lépe jak mu zabránit?)

    Darrick Wong problém řeší patchem, který používá možná trochu tvrdý přístup: když se používá kontrola integrity, předtím, než se vypočítá kontrolní součet a zadá I/O operace, se bloky zkopírují. Zbytek systému může s původními daty dělat, co chce; do zařízení se zapíší tak, jak byla, když se zápis plánoval. Tento přístup bude určitě fungovat, ale náklady jsou jasné: do cesty zápisu se přidává dodatečná operace kopírování. Tenhle náklad se ne všem vývojářům líbí.

    Správným způsobem, jak toto vyřešit, je implementace „stabilních stránek“ v kódu souborového systému. Zjednodušeně: stránka, která má být zapsána, je neměnná; každý proces pokoušející se ji změnit se zablokuje, dokud se zápis nedokončí. Toto řešení ale také není všeobecně populární; má prý špatný dopad přinejmenším na jeden benchmark bez ohledu na to, jestli se používá kontrola integrity. Jak upozornil Jan Kára, nejlepší chování není pro každého stejné:

    Co bude rychlejší ve skutečnosti závisí na konfiguraci systému. Jestliže máte dostatečnou propustnost CPU/RAM v porovnání s rychlostí úložiště, lepší je pro vás kopírování. Jestliže své úložiště jen tak tak dokážete saturovat, čekání je pravděpodobně lepší.

    Některým lidem se také líbí fakt, že přístup s kopírováním bloků náklady přenáší na uživatele, kteří používají kontrolu integrity, a neubližuje těm, kteří ji nepoužívají – tedy za předpokladu, že náklady na alokaci stránek a jejich kopírování neovlivňují nikoho jiného. V budoucnu se nicméně podle všeho bude používat přístup se stabilními stránkami; jak podotkl Martin Petersen, mnoho vlastností souborových systémů – například šifrování – na něm závisí. Na přidání této vlastnosti do mnoha souborových systémů se pracuje; v současnosti má funkční podporu pouze Btrfs.

    Podrobné pokrytí omezování blokového I/O: V minulých Jaderných novinách se objevil článek o hierarchickém plánování I/O; tato práce doplňuje důležitou vlastnost, ale omezení (poměrně nového) řízení propustnosti zde nekončí. Jedním z větších nedostatků je, že opravdu funguje jen s I/O zadaným přímo z kontextu procesu. Když I/O zahájí jádro (konkrétně když kód zpětného zápisu vypisuje stránky na disk), řadič propustnosti není schopen spojit tyto stránky s procesem, který je zašpinil. Vzhledem k tomu, že na mnoha (či spíše na většině) systémů se většina blokového I/O generuje takto, snadno zjistíme, že blokový I/O řadič je v tuto chvíli velmi omezen.

    Andrea Righi zaslal sadu patchů, která má toto omezení odstranit tím, že se bude sledovat vlastnictví všech špinavých stránek v systému. V jádře již je kód, který to umí; omezovač využívání paměti tuto informaci potřebuje, aby mohl fungovat. Andreův patch tedy zobecňuje kód sledování vlastnictví tak, aby sloužil i I/O řadiči. Polovina existujících příznaků (pole flags) ve struct page_cgroup se přebírá a ukládá se tam index popisující, které řídící skupině stránka patří. Tím se blokový řadič odlišuje od toho, jak tuto strukturu používá řadič paměti – ten druhý do své struktury mem_cgroup ukládá přímý ukazatel – což ale nemá výhodu zachování velikosti struktury page_cgroup.

    Tuto výhodu je třeba nepodceňovat: struct page_cgroup je stínem struct page, takže pro téměř každou stránku v systému bude jedna taková struktura existovat. A i malá režie se rychle nasčítá, když jde o tak velké počty – režie je tedy největší nevýhodou této nové vlastnosti; každý, kdo chce omezovat propustnost I/O a přitom nepoužívá řadič paměti, zaplatí výraznou cenu v podobě zvýšené spotřeby paměti jádrem. Výsledkem ale bude, že blokové omezování I/O bude fungovat tak, jak je to zamýšleno; bez sledování stránek může poskytnout jenom přibližné výsledky.

           

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

    7.3.2011 02:15 Ondrej 'SanTiago' Zajicek
    Rozbalit Rozbalit vše Re: Jaderné noviny – 2. 2. 2011: Problémy cp se zpožděnou alokací
    Nevim, jak vypadal original (nebot odkaz dole zrejme ukazuje na jiny dil), ale tipuju, ze misto 'zapíchnuté ve fjordu' ma byt 'tesknici po fjordech'.
    7.3.2011 08:43 jnd | skóre: 1 | blog: lnx
    Rozbalit Rozbalit vše Re: Jaderné noviny – 2. 2. 2011: Problémy cp se zpožděnou alokací
    7.3.2011 06:17 x00
    Rozbalit Rozbalit vše Re: Jaderné noviny – 2. 2. 2011: Problémy cp se zpožděnou alokací
    Boze nech uz sa ten Failenberg schova pod vankus a prestane sa ozyvat.
    7.3.2011 07:59 marek_hb
    Rozbalit Rozbalit vše Re: Jaderné noviny – 2. 2. 2011: Problémy cp se zpožděnou alokací

    ale mezitím si u takových souborových systémů dávejte pozor, když budete pomocí nových verzí cp kopírovat soubory, do kterých bylo nedávno zapsáno.

    klikátka (krusader a podobně) si to nějak hlídají?, nebo si mám po každém uložení něčeho dát kafe a pak radši ještě jedno, než to budu někam kopírovat? - například ctrl + s a následně cp na flashku s mezikrokem ke kávovaru?

    7.3.2011 09:23 Filip Jirsák | skóre: 67 | blog: Fa & Bi
    Rozbalit Rozbalit vše Re: Jaderné noviny – 2. 2. 2011: Problémy cp se zpožděnou alokací
    Jestli jsem to správně pochopil, týká se to děravých souborů – ty asi jen tak přes Ctrl+S nevytvoříte.
    7.3.2011 13:36 marek_hb
    Rozbalit Rozbalit vše Re: Jaderné noviny – 2. 2. 2011: Problémy cp se zpožděnou alokací
    to má logiku

    dík moc
    7.3.2011 08:57 Petr Ježek | skóre: 10
    Rozbalit Rozbalit vše Re: Jaderné noviny – 2. 2. 2011: Problémy cp se zpožděnou alokací
    Tak to s cp a zpožděnou alokací je klasická ukázka případu, kdy selektivní řešení nerespektuje systémové chování. Naštěstí nejde o proprietární prostředí, kde by se počkalo na několik pořádných ran s dobře placenou obnovou dat a pak by se slavně vydala opravná verze. Jinak já jsem viděl standardně vyšlé rc7 - mám snad vlčí mhu?
    Archlinux for your comps, faster running guaranted!
    7.3.2011 09:30 trekker.dk | skóre: 71
    Rozbalit Rozbalit vše Re: Jaderné noviny – 2. 2. 2011: Problémy cp se zpožděnou alokací
    Jinak já jsem viděl standardně vyšlé rc7 - mám snad vlčí mhu?

    Podívej se na datum v nadpisu článku.

    Hm, a jak tak koukám, domysli si tam dvojku navíc.

    Quando omni flunkus moritati
    7.3.2011 09:19 kip | skóre: 8 | blog: kip | Nový Jičín
    Rozbalit Rozbalit vše Re: Jaderné noviny – 2. 2. 2011: Problémy cp se zpožděnou alokací

    V Linusově citátu (ne citáty týdne) bych na konci první věty v rozhraním.) přehodil uzavírací závorku a tečku.

    8.3.2011 08:48 rini17
    Rozbalit Rozbalit vše Re: Jaderné noviny – 2. 2. 2011: Problémy cp se zpožděnou alokací
    (
    7.3.2011 10:39 a
    Rozbalit Rozbalit vše Re: Jaderné noviny – 2. 2. 2011: Problémy cp se zpožděnou alokací
    a co debian squeeze a problem s cp?
    7.3.2011 11:18 Ragzid | skóre: 24 | blog: Pivní koutek | Liberec-Brno
    Rozbalit Rozbalit vše Re: Jaderné noviny – 2. 2. 2011: Problémy cp se zpožděnou alokací
    Nevysly stabilni aktualizace nahodou 17. unora, misto listopadu? :-)
    7.3.2011 14:37 trekker.dk | skóre: 71
    Rozbalit Rozbalit vše Re: Jaderné noviny – 2. 2. 2011: Problémy cp se zpožděnou alokací
    Omg jak se to tam dostalo?
    Quando omni flunkus moritati
    7.3.2011 15:48 Sten
    Rozbalit Rozbalit vše Stabilní stránky CoW
    U těch stabilních stránek by mě zajímalo, jestli se řešila i možnost Copy-on-Write a pokud ano, proč se nepoužila?

    Založit nové vláknoNahoru

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