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í
×
    včera 18:44 | Zajímavý článek

    Nová čísla časopisů od nakladatelství Raspberry Pi zdarma ke čtení: Raspberry Pi Official Magazine 155 (pdf) a Hello World 27 (pdf).

    Ladislav Hagara | Komentářů: 1
    včera 16:11 | Nová verze

    Hyprland, tj. kompozitor pro Wayland zaměřený na dláždění okny a zároveň grafické efekty, byl vydán ve verzi 0.50.0. Podrobný přehled novinek na GitHubu.

    Ladislav Hagara | Komentářů: 0
    včera 15:55 | Komunita

    Patrick Volkerding oznámil před dvaatřiceti lety vydání Slackware Linuxu 1.00. Slackware Linux byl tenkrát k dispozici na 3,5 palcových disketách. Základní systém byl na 13 disketách. Kdo chtěl grafiku, potřeboval dalších 11 disket. Slackware Linux 1.00 byl postaven na Linuxu .99pl11 Alpha, libc 4.4.1, g++ 2.4.5 a XFree86 1.3.

    Ladislav Hagara | Komentářů: 4
    16.7. 21:22 | IT novinky

    Ministerstvo pro místní rozvoj (MMR) jako první orgán státní správy v Česku spustilo takzvaný „bug bounty“ program pro odhalování bezpečnostních rizik a zranitelných míst ve svých informačních systémech. Za nalezení kritické zranitelnosti nabízí veřejnosti odměnu 1000 eur, v případě vysoké závažnosti je to 500 eur. Program se inspiruje přístupy běžnými v komerčním sektoru nebo ve veřejné sféře v zahraničí.

    Ladislav Hagara | Komentářů: 17
    16.7. 16:22 | IT novinky

    Vláda dne 16. července 2025 schválila návrh nového jednotného vizuálního stylu státní správy. Vytvořilo jej na základě veřejné soutěže studio Najbrt. Náklady na přípravu návrhu a metodiky činily tři miliony korun. Modernizovaný dvouocasý lev vychází z malého státního znaku. Vizuální styl doprovází originální písmo Czechia Sans.

    Ladislav Hagara | Komentářů: 24
    16.7. 15:33 | Upozornění

    Vyhledávač DuckDuckGo je podle webu DownDetector od 2:15 SELČ nedostupný. Opět fungovat začal na několik minut zhruba v 15:15. Další služby nesouvisející přímo s vyhledáváním, jako mapyAI asistent jsou dostupné. Pro některé dotazy během výpadku stále funguje zobrazování například textu z Wikipedie.

    bindiff | Komentářů: 8
    16.7. 13:33 | Bezpečnostní upozornění

    Více než 600 aplikací postavených na PHP frameworku Laravel je zranitelných vůči vzdálenému spuštění libovolného kódu. Útočníci mohou zneužít veřejně uniklé konfigurační klíče APP_KEY (např. z GitHubu). Z více než 260 000 APP_KEY získaných z GitHubu bylo ověřeno, že přes 600 aplikací je zranitelných. Zhruba 63 % úniků pochází z .env souborů, které často obsahují i další citlivé údaje (např. přístupové údaje k databázím nebo cloudovým službám).

    Ladislav Hagara | Komentářů: 5
    16.7. 00:11 | Nová verze

    Open source modální textový editor Helix, inspirovaný editory Vim, Neovim či Kakoune, byl vydán ve verzi 25.07. Přehled novinek se záznamy terminálových sezení v asciinema v oznámení na webu. Detailně v CHANGELOGu na GitHubu.

    Ladislav Hagara | Komentářů: 0
    15.7. 20:44 | IT novinky

    Americký výrobce čipů Nvidia získal od vlády prezidenta Donalda Trumpa souhlas s prodejem svých pokročilých počítačových čipů používaných k vývoji umělé inteligence (AI) H20 do Číny. Prodej těchto čipů speciálně upravených pro čínský trh by tak mohl být brzy obnoven, uvedla firma na svém blogu. Americká vláda zakázala prodej v dubnu, v době eskalace obchodního sporu mezi oběma zeměmi. Tehdy to zdůvodnila obavami, že by čipy mohla využívat čínská armáda.

    Ladislav Hagara | Komentářů: 11
    15.7. 17:22 | Nová verze

    3D software Blender byl vydán ve verzi 4.5 s prodlouženou podporou. Podrobnosti v poznámkách k vydání. Videopředstavení na YouTube.

    Ladislav Hagara | Komentářů: 0
    Jaký je váš oblíbený skriptovací jazyk?
     (59%)
     (27%)
     (7%)
     (3%)
     (0%)
     (1%)
     (4%)
    Celkem 410 hlasů
     Komentářů: 16, poslední 8.6. 21:05
    Rozcestník
    Štítky: není přiřazen žádný štítek


    Vložit další komentář
    8.6.2010 13:56 pc2005 | skóre: 38 | blog: GardenOfEdenConfiguration | liberec
    Rozbalit Rozbalit vše Re: BurnApp
    Holt vývoj typu bazar ;-). Ale já bych si asi udělal speciální mezivrstvu a dál bych se o to nestaral.
    Jardík avatar 8.6.2010 14:20 Jardík | skóre: 40 | blog: jarda_bloguje
    Rozbalit Rozbalit vše Re: BurnApp
    Tak všaku tu taky dělám (bude to pro Windows a Linux), ale potřebuju, aby fungovala ...
    Věřím v jednoho Boha.
    8.6.2010 15:21 pc2005 | skóre: 38 | blog: GardenOfEdenConfiguration | liberec
    Rozbalit Rozbalit vše Re: BurnApp
    Njn ale nic co by nešlo řešit pomocí semaforů, cyklů a vláken :-).
    Vojta Drbohlav avatar 8.6.2010 14:00 Vojta Drbohlav | skóre: 26 | blog: Blog | Strahov
    Rozbalit Rozbalit vše Re: BurnApp

    Nejde k enumeraci zařízení použít taky udev s vyhledáváním podle major a minor čísel? Já pro enumeraci sériových portů v PC používám tenhle kód:

    {
    	QStringList ret;
    	struct udev * udev = udev_new();
    
    	if(udev == NULL)
    	{
    		qCritical() << "udev_new() failed";
    		return ret;
    	}
    
    	for(quint8 minor = 64; minor <= 255; ++minor)
    	{
    		struct udev_device * udev_device = udev_device_new_from_devnum(udev, 'c', makedev(4, minor));
    		if(udev_device != NULL)
    		{
    			ret.append(udev_device_get_devnode(udev_device));
    			udev_device_unref(udev_device);
    		}
    		else
    			break;
    	}
    
    	udev_unref(udev);
    
    	return ret;
    }
    

    Seznam a vysvětlení major čísel je v dokumentaci kernelu.

    Jardík avatar 8.6.2010 14:19 Jardík | skóre: 40 | blog: jarda_bloguje
    Rozbalit Rozbalit vše Re: BurnApp
    Viz druhý odstavec, druhý puntík:
    Požádám udev o přeložení major:minor na soubor se zařízením (např. /dev/sr0)
    Tím jsem měl na mysli právě použitím udev_device_new_from_devnum
    Věřím v jednoho Boha.
    Grunt avatar 8.6.2010 14:50 Grunt | skóre: 23 | blog: Expresivní zabručení | Lanžhot
    Rozbalit Rozbalit vše Re: BurnApp
    Co zamykání souborů? To by nepomohlo?
    Na co 64-bitů když to jde i s jedním? | 80.78.148.5 | Hack (for) free or Die Hard!
    Jardík avatar 8.6.2010 14:58 Jardík | skóre: 40 | blog: jarda_bloguje
    Rozbalit Rozbalit vše Re: BurnApp
    To jsem nezkoušel, ale i kdyby to fungovalo, tak bych pravděpodobně musel stejně zamknout oba. Vyzkouším, díky za tip.
    Věřím v jednoho Boha.
    Grunt avatar 8.6.2010 15:04 Grunt | skóre: 23 | blog: Expresivní zabručení | Lanžhot
    Rozbalit Rozbalit vše Re: BurnApp
    Co oba? Když prostě nechceš aby ti do souboru nikdo lezl, zamkneš si ho pro svůj proces (dá se zamknout pro čtení a zápis zvlášť) a hotovo. Dokuď neodemkneš tak mají jiní smůlu. Ale nevím jestli to bude fungovat pro blokové zařízení. No ale nějak to musí mít současné vypalovací programy řešené. Proč nemrkneš do nich? Tady nejsi na Windech.
    Na co 64-bitů když to jde i s jedním? | 80.78.148.5 | Hack (for) free or Die Hard!
    Grunt avatar 8.6.2010 15:01 Grunt | skóre: 23 | blog: Expresivní zabručení | Lanžhot
    Rozbalit Rozbalit vše Re: BurnApp
    Jinak je to docela zajímavé. Jak by se to vlastně teďka mělo dělat? Dřív se člověk zeptal HALu a odtud dostal všechny vypalovačky, včetně jmen, schopností, blokových zařízení, atd. Ale jak se to má dělat teď když byl HAL označen za zastaralý a má se na to používat udev?
    Na co 64-bitů když to jde i s jedním? | 80.78.148.5 | Hack (for) free or Die Hard!
    DjAARA avatar 8.6.2010 15:09 DjAARA | skóre: 32 | Praha|Náklo|Olomouc
    Rozbalit Rozbalit vše Re: BurnApp
    Co se podívat po možnostech DeviceKit-u. Měl by sloužit jako náhrada HAL-u pro oblast zařízení.
    Jardík avatar 8.6.2010 15:10 Jardík | skóre: 40 | blog: jarda_bloguje
    Rozbalit Rozbalit vše Re: BurnApp
    DeviceKit byl přejmenován na udisks.
    Věřím v jednoho Boha.
    Grunt avatar 8.6.2010 15:14 Grunt | skóre: 23 | blog: Expresivní zabručení | Lanžhot
    Rozbalit Rozbalit vše Re: BurnApp
    It is in the process of being merged into udev (main udev, libudev, and udev-extras) and existing udev and kernel functionality. Initially a new daemon DeviceKit was planned to replace certain aspects of HAL, but in March 2009, DeviceKit was deprecated in favor of adding the same code to udev as a package: udev-extras, and some functions have now moved to udev proper.
    :-)
    Na co 64-bitů když to jde i s jedním? | 80.78.148.5 | Hack (for) free or Die Hard!
    DjAARA avatar 8.6.2010 15:20 DjAARA | skóre: 32 | Praha|Náklo|Olomouc
    Rozbalit Rozbalit vše Re: BurnApp
    Bože, to by s jedním seklo jak rychle jsou nové věci deprecated.
    Grunt avatar 8.6.2010 15:32 Grunt | skóre: 23 | blog: Expresivní zabručení | Lanžhot
    Rozbalit Rozbalit vše Re: BurnApp
    O to líp. Pokud bude místo deseti démonů stačit jeden, který už ke všemu téměř všude je a ještě to bude tak jednoduché, tak čím dřív tím líp.
    Na co 64-bitů když to jde i s jedním? | 80.78.148.5 | Hack (for) free or Die Hard!
    Jardík avatar 8.6.2010 15:09 Jardík | skóre: 40 | blog: jarda_bloguje
    Rozbalit Rozbalit vše Re: BurnApp
    Udev pro základní věcičky, popř. udisks pro seznam schopností a tak. Problém udisku - závislost na glib a gdbus, komunikace přes hnusné dbus zprávy. Pro zjištění typu média a schopností si radši pošlu pár SCSI příkazů a mám jistotu, že si udisk nevymýšlí, navíc řeší hodinovou heuristikou kraviny typu prázdného DVD+RW když se po prvním naformátování už nikdy nejeví jako "fyzicky" prázdné.
    Věřím v jednoho Boha.
    Grunt avatar 8.6.2010 15:17 Grunt | skóre: 23 | blog: Expresivní zabručení | Lanžhot
    Rozbalit Rozbalit vše Re: BurnApp
    udisks
    According to DeviceKit devel mailing list, DeviceKit is getting merged with udev-extra and the existing DeviceKit programs such as DeviceKit-disks and DeviceKit-power will be switched over to use libudev.
    Takže by bylo fajn se začít poohlížet jak se vlastně vůbec pracuje s libudev. Jinak by ale na toto měl snad mít Qt svoje serepetičky, ne?
    Na co 64-bitů když to jde i s jedním? | 80.78.148.5 | Hack (for) free or Die Hard!
    Grunt avatar 8.6.2010 15:20 Grunt | skóre: 23 | blog: Expresivní zabručení | Lanžhot
    Rozbalit Rozbalit vše Re: BurnApp
    Čoveče, ono to asi nebude zas taková hrůza jak se na první pohled může zdát. Takže na /sys rozhodně kašli, to je pro low-level, ne pro tebe.
    Na co 64-bitů když to jde i s jedním? | 80.78.148.5 | Hack (for) free or Die Hard!
    8.6.2010 15:52 kralyk z abclinuxu | skóre: 29 | blog:
    Rozbalit Rozbalit vše Re: BurnApp
    Jo, tohle jsem už Jardíkovi taky linkoval několik měsíců zpátky ;-) Takže buď udělal někde chybu, nebo udev potřebné schopnosti nemá. Každopádně stále je možné prostě počkat, než to vývojáři všechno do udevu namergují. Imho by to nemělo trvat zas tak strašně dlouho.

    Problém ale bude určitě v tom, že distribucím bude dost dlouho trvat, než nový model přijmou. Například Arch stále ještě jede na HALu. Nebo prostě bude někdo mít nainstalovanou starší verzi nějaké konzervativní ditribuce s HALem, a bude problém...
    Jardík avatar 8.6.2010 16:48 Jardík | skóre: 40 | blog: jarda_bloguje
    Rozbalit Rozbalit vše Re: BurnApp
    Jó no, ona to fakt taková hrůza není :-)
    void bla()
    {
      struct udev_enumerate* enumerate = udev_enumerate_new(_udev);
      if (!enumerate) return;
      
      udev_enumerate_add_match_subsystem(enumerate, "block");
      if (udev_enumerate_scan_devices(enumerate) == 0)
      {
        struct udev_list_entry *e;
        const char *syspath, *prop;
        struct udev_device *dev, *parent_dev;
        
        e = udev_enumerate_get_list_entry(enumerate);
        while (e)
        {
          syspath = udev_list_entry_get_name(e);
          
          dev = udev_device_new_from_syspath(_udev, syspath);
          if (dev)
          {
            prop = udev_device_get_property_value(dev, "ID_TYPE");
            if (prop && strcmp(prop, "cd") == 0)
            {
              qDebug() << "Found CD-ROM device" << udev_device_get_devnode(dev);
              //printAttrs(dev);
            }
            udev_device_unref(dev);
          }
          
          e = udev_list_entry_get_next(e);
        }
      }
      udev_enumerate_unref(enumerate);
    }
    
    Snad se to nějak dá do kupy. Ale mě by spíše potěšilo, aby se ta CD-ROMka dala zamknout pro exkluzivní přístup nezávisle na typu zařízení, přes které se přistupuje.
    Problém ale bude určitě v tom, že distribucím bude dost dlouho trvat, než nový model přijmou. Například Arch stále ještě jede na HALu. Nebo prostě bude někdo mít nainstalovanou starší verzi nějaké konzervativní ditribuce s HALem, a bude problém...
    Tak ten program nebudu vydávat zítra. Než to dám do nějakého použitelného stavu, aby se kvůli každé operaci nemusel rekompilovat zdroják (:-)), tak už to ve všech distrech bude (kromě debianu :-))
    Věřím v jednoho Boha.
    Grunt avatar 8.6.2010 18:20 Grunt | skóre: 23 | blog: Expresivní zabručení | Lanžhot
    Rozbalit Rozbalit vše Re: BurnApp
    Jó no, ona to fakt taková hrůza není
    Ber to z té pozitivní stránky. Zas se nemusíš drbat s komunikací pomocí DBUSu.
    Ale mě by spíše potěšilo, aby se ta CD-ROMka dala zamknout pro exkluzivní přístup nezávisle na typu zařízení, přes které se přistupuje.
    Tak flock(2) to nebere. Ale jak jsem řekl. Inspiruj se u konkurence. Tady nejsi ve Widlích, ale na otevřené platformě. Co jsem se tak zběžně díval do cdrecord, tak si první autor udělá v paměti buffer a ten si všelijak pozamyká s následujícím komentářem:
    /*
    		 * Try to lock us im memory (will only work for root)
    		 * but you need access to root anyway to send SCSI commands.
    		 * We need to be root to open /dev/scg? or similar devices
    		 * on other OS variants and we need to be root to be able
    		 * to send SCSI commands at least on AIX and
    		 * Solaris (USCSI only) regardless of the permissions for
    		 * opening files
    		 *
    		 * XXX The folowing test used to be
    		 * XXX #if defined(HAVE_MLOCKALL) || defined(_POSIX_MEMLOCK)
    		 * XXX but the definition for _POSIX_MEMLOCK did change during
    		 * XXX the last 8 years and the autoconf test is better for
    		 * XXX the static case. sysconf() only makes sense if we like
    		 * XXX to check dynamically.
    		 */
    
    , kde když se zámek nepovede, tak: errmsgno(EX_BAD, "WARNING: This causes a high risk for buffer underruns.\n"); a pak se na tu zamknutou paměť snaží připojit (fs = init_fifo(fs); /* Attach shared memory (still one process) */) a následně nějak propojit s nějakou scg což vypadá na knihovnu, viz komentář:
    /*
    	 * Call scg_remote() to force loading the remote SCSI transport library
    	 * code that is located in librscg instead of the dummy remote routines
    	 * that are located inside libscg.
    	 */
    A IMHO je za dostání do stavu kdy jednotka nebude komunikovat s ničím jiným je zodpovědná právě ta knihovna nebo ta komunikace skrze SCSI příkazy. Jinak celý proces vypalování vypadá opravdu dost brutálně, takže pokud sis myslel, že to bude jen otevření blokového zařízení, uzamknutí přístupu pro exkluzivní přístup a pár writů, tak ses IMHO docela zmýlil.
    Na co 64-bitů když to jde i s jedním? | 80.78.148.5 | Hack (for) free or Die Hard!
    Jardík avatar 8.6.2010 19:53 Jardík | skóre: 40 | blog: jarda_bloguje
    Rozbalit Rozbalit vše Re: BurnApp
    To vypadá na přístup na nějaké vzdálené SCSI zařízení. Pro posílání SCSI příkazů CDROMce být rozhodně root nemusím, když mám práva k přístupu l zařízení. Asi to prostě vyřeším tak, že prostě otevřu s O_EXCL jak srX tak sgX, i když srX používat nebudu, aby mi do toho nic nešahalo. BTW takové vypalování obrazu na DVD+RW vypadá takto, to mě funguje:
    PREVENT/ALLOW MEDIUM REMOVAL - zamknu eject mechanismus
    TEST UNIT READY - test jestli je tam médium a jestli je jednotka ready
    GET CONFIGURATION - získání aktuálního profilu (podle profilu se určí typ vloženého média (u příkladu DVD+RW))
    READ DISC INFORMATION - zkontroluju jestli je naformátováno
    SET STREAMING - nastavím rychlost pálení
    FORMAT UNIT - pokud není naformátováno, spustím background format
    série WRITE(10) popř. WRITE(12) - zapíšu data
    SYNCHRONIZE CACHE - flush
    (DVD+RW se nezavírá, nikdy)
    Pokud stále běží background format tak CLOSE TRACK/SESSION na ukončení formátování
    PREVENT/ALLOW MEDIUM REMOVAL - povolím eject
    
    Snad jsem nic nezapomněl :-)
    Věřím v jednoho Boha.
    Grunt avatar 10.6.2010 14:02 Grunt | skóre: 23 | blog: Expresivní zabručení | Lanžhot
    Rozbalit Rozbalit vše Re: BurnApp
    Ty jo. S tou sérií write si moc nejsem jistý. Nemají tyto jednotky nějaký vnitřní vypalovací buffer, který je nutné plnit a který také plánuje vypalování tak aby při nedostatku dat nedošlo ke zkurvení média?
    Na co 64-bitů když to jde i s jedním? | 80.78.148.5 | Hack (for) free or Die Hard!
    Jardík avatar 10.6.2010 15:14 Jardík | skóre: 40 | blog: jarda_bloguje
    Rozbalit Rozbalit vše Re: BurnApp

    Děláte WRITE a při tom se plní buffer a vypalovačka pálí. DVD+RW lze vypalovat "náhodně", není třeba sekvenční pálení, určíte si start sektor, počet sektorů, co pálíte a prostě pálíte. To samé platí o DVD-RAM a DVD-RW v Restricted overwrite módu (tj. naformátované). A pro zbytek ve write parameters mode page nastavíte BUFE bit (ochrana proti podtečení). Pokud nestíháte posílat WRITE a buffer palírny se vyprázdní, tak může dojít a) k průseru, b) provedení "linkingu".

    Každopádně prostě vy děláte WRITE, vypalovačka si plní buffer daty, co jí posíláte a pálí. Data čtu v extra vlákně (SW buffer jsem pro zatím zvolil 64 MB, ale dneska asi nemá cenu šetřit, tak bych se nebál půl giga (vtip, samozřejmě půjde nastavit)).
    Věřím v jednoho Boha.
    Grunt avatar 10.6.2010 15:50 Grunt | skóre: 23 | blog: Expresivní zabručení | Lanžhot
    Rozbalit Rozbalit vše Re: BurnApp
    Ty jo, Jardo. Fakt nevím. Mrknul jsem i do druhé vypalovací aplikace a shluk writů jsem tam nikde nezahlédl. Zatím to pro moje oči vypadá na pěknou magii.
    Na co 64-bitů když to jde i s jedním? | 80.78.148.5 | Hack (for) free or Die Hard!
    Jardík avatar 10.6.2010 17:10 Jardík | skóre: 40 | blog: jarda_bloguje
    Rozbalit Rozbalit vše Re: BurnApp
    A co by tam mohlo být, když né WRITE (rozumíme si, že se nejedná o systémové volání write(), ale o SCSI příkaz WRITE(10), který posíláte přes ioctl(SG_IO) či write()?) Možná tam mají v cyklu ještě další věci, jako zjištěcí stavu bufferu palírny ...
    Věřím v jednoho Boha.
    Grunt avatar 10.6.2010 17:13 Grunt | skóre: 23 | blog: Expresivní zabručení | Lanžhot
    Rozbalit Rozbalit vše Re: BurnApp
    rozumíme si, že se nejedná o systémové volání write(), ale o SCSI příkaz WRITE(10), který posíláte přes ioctl(SG_IO) či write()?
    Aha, tak už jo.
    posíláte
    My? No my toho neposíláme.
    Na co 64-bitů když to jde i s jedním? | 80.78.148.5 | Hack (for) free or Die Hard!
    Jardík avatar 10.6.2010 22:13 Jardík | skóre: 40 | blog: jarda_bloguje
    Rozbalit Rozbalit vše Re: BurnApp
    My? No my toho neposíláme.
    sry
    Věřím v jednoho Boha.

    Založit nové vláknoNahoru

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

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