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 15:33 | IT novinky

    Po 26 letech od protiprávního policejního zásahu, který byl spuštěn na základě podnětu společnosti Microsoft, Obvodní soud pro Prahu 2 rozsudkem potvrdil, že Mironet prokázal významnou část svého nároku na náhradu škody vůči Ministerstvu spravedlnosti ČR. Soudem nyní přiznaná část nároku znamená rekordní odškodné, jaké kdy české soudy přiznaly za nesprávný postup státu. Spor byl rozdělen na několik škod, u pravomocně uzavřených částí

    … více »
    Ladislav Hagara | Komentářů: 15
    včera 15:22 | Nová verze

    Lehké desktopové prostředí LXQt bylo vydáno ve verzi 2.4.0. Jde o převážně opravné vydání s drobnými vylepšeními podpory Waylandu.

    |🇵🇸 | Komentářů: 0
    včera 12:44 | IT novinky

    Počítačová hra Kingdom Come: Deliverance 2 českého studia Warhorse získala cenu BAFTA v kategorii nejlepší příběh. V konkurenci pěti dalších nominovaných děl porazila i úspěšnou francouzskou hru Clair Obscur: Expedition 33, která v letošním ročníku získala cenu za nejlepší hru roku.

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

    Projekt KDE oslaví v říjnu 30 let. Matthias Ettrich poslal 14. října 1996 do diskusní skupiny comp.os.linux.misc zprávu, která započala historii projektu. Důležité milníky jsou zobrazeny na časové ose KDE.

    Ladislav Hagara | Komentářů: 2
    včera 02:55 | Komunita

    Byly vyhlášeny výsledky letošní volby vedoucí/ho projektu Debian (DPL, Wikipedie). Poprvé povede Debian žena. Novou vedoucí je Sruthi Chandran. Letos byla jedinou kandidátkou. Kandidovala již v letech 2020, 2021, 2024 a 2025. Na konferenci DebConf19 měla přednášku Is Debian (and Free Software) gender diverse enough?

    Ladislav Hagara | Komentářů: 16
    včera 00:55 | Nová verze

    Byla vydána nová verze 10.3 z Debianu vycházející linuxové distribuce DietPi pro (nejenom) jednodeskové počítače. Přehled novinek v poznámkách k vydání. Přidána byla podpora Orange Pi 4 LTS. Přibyl balíček Prometheus.

    Ladislav Hagara | Komentářů: 0
    19.4. 18:55 | Nová verze

    Implementace VPN softwaru WireGuard (Wikipedie) pro Windows, tj. WireGuard pro Windows a WireGuardNT, dospěly do verze 1.0.

    Ladislav Hagara | Komentářů: 2
    19.4. 16:11 | IT novinky

    V Pekingu dnes proběhl 2. ročník půlmaratonu humanoidních robotů. První 3 místa obsadili roboti Honor Lightning v různých týmech. Nový rekord autonomního robota je 50 minut a 26 sekund. Operátorem řízený robot to zvládl i s pádem za 48 minut a 19 sekund. Řízení roboti měli časovou penalizaci 20 %. Před rokem nejrychlejší robot zvládl půlmaraton za 2 hodiny 40 minut a 42 sekund. Aktuální lidský rekord drží Jacob Kiplimo z Ugandy s časem 57 minut a 20 sekund [𝕏].

    Ladislav Hagara | Komentářů: 6
    17.4. 17:11 | Zajímavý článek

    Stanislav Fort, vedoucí vědecký pracovník z Vlčkovy 'kyberbezpečnostní' firmy AISLE, zkoumal dopady Anthropic Mythos (nový AI model od Anthropicu zaměřený na hledání chyb, který před nedávnem vyplašil celý svět) a předvedl, že schopnosti umělé inteligence nejsou lineárně závislé na velikosti nebo ceně modelu a dokázal, že i některé otevřené modely zvládly v řadě testů odhalit ve zdrojových kódech stejné chyby jako Mythos (například FreeBSD CVE-2026-4747) a to s výrazně nižšími provozními náklady.

    MakeIranBombedAgain❗ | Komentářů: 8
    17.4. 12:44 | IT novinky

    Federální návrh zákona H.R.8250 'Parents Decide Act', 13. dubna předložený demokratem Joshem Gottheimerem a podpořený republikánkou Elise Stefanik coby spolupředkladatelkou (cosponsor), by v případě svého schválení nařizoval všem výrobcům operačních systémů při nastavování zařízení ověřovat věk uživatelů a při používání poskytovat tento věkový údaj aplikacím třetích stran. Hlavní rozdíl oproti kalifornskému zákonu AB 1043 a kolorádskému SB26-051 je ten, že federální návrh by platil rovnou pro celé USA.

    MakeIranBombedAgain❗ | Komentářů: 13
    Které desktopové prostředí na Linuxu používáte?
     (14%)
     (8%)
     (1%)
     (12%)
     (30%)
     (3%)
     (6%)
     (2%)
     (15%)
     (25%)
    Celkem 1367 hlasů
     Komentářů: 30, poslední 3.4. 20:20
    Rozcestník

    Dotaz: Python otevření | pípy

    28.6.2009 17:36 filbar | skóre: 36 | blog: Denicek_programatora | Ostrava
    Python otevření | pípy
    Přečteno: 656×
    Mám problém s otevřením | pípy v Pythonu:
    os.mkfifo('/tmp/.powerman_fifo');
    self.pipe=os.open('/tmp/.powerman_fifo', os.O_WRONLY|os.O_NONBLOCK);
    
    Když spustím tento kód, tak mi to hlásí:
    Traceback (most recent call last):
      File "/media/JOOMLADEV/eclipse-src/python/PowerMan/src/powermangui.py", line 160, in <module>
        pg=PowerManGui();
      File "/media/JOOMLADEV/eclipse-src/python/PowerMan/src/powermangui.py", line 15, in __init__
        self.pipe=os.open('/tmp/.powerman_fifo', os.O_WRONLY|os.O_NONBLOCK);
    OSError: [Errno 6] No such device or address: '/tmp/.powerman_fifo'
    
    Přitom ta pipe existuje:
    ls -al /tmp/.powerman_fifo 
    prw-r--r-- 1 bartmann bartmann 0 2009-06-28 17:33 /tmp/.powerman_fifo
    

    Nevíte kde dělám chybu?

    Za rady předem děkuji.

    Odpovědi

    28.6.2009 18:31 12345 | skóre: 41 | blog:
    Rozbalit Rozbalit vše Re: Python otevření | pípy

    man 7 fifo říká tohle:

    A process can open a FIFO in non-blocking mode. In this case, opening for read only will succeed even if no-one has opened on the write side yet; opening for write only will fail with ENXIO (no such device or address) unless the other end has already been opened.

    OSError 6 je opravdu ENXIO:

    >>> import errno
    >>> errno.ENXIO
    6
    
    29.6.2009 08:03 filbar | skóre: 36 | blog: Denicek_programatora | Ostrava
    Rozbalit Rozbalit vše Re: Python otevření | pípy
    Tak jsem o kousek pokročil:
    self.state=os.read(self.pipe, 1000);
    OSError: [Errno 11] Resource temporarily unavailable
    

    Přitom na mám rouru v rodiči otevřenou a v dokumentaci jsem vyčetl, že při čtení z neblokující roury má vrátit 0 bytů.

    Postupuju, tak že si nejprve vytvořím instanci třídy PowerMan, v jejímž konstruktoru otvírám PIPU pro čteční, následně otevírám rouru pro zápis, volám fork() a v potomkovi volám metodu PowerMan.run, kde ve while 1: z roury čtu:

    if os.path.exists('/tmp/.powerman_fifo')==False:
    			os.mkfifo('/tmp/.powerman_fifo');
    		pm=powerman.PowerMan();
    		self.pipe=os.open('/tmp/.powerman_fifo', os.O_WRONLY|os.O_NONBLOCK);
    		self.state=True;
    		pid=os.fork();
    		if pid==0:
    			pm.run();
    
    Metoda run() třídy PowerMan:
    def run(self):
    		while 1:
    			self.state=os.read(self.pipe, 1000);
    			print self.state;
                            #Zpracovat obsah PIPE
    			if self.quit==True:
    				break;
    			if self.state==True:
    				self.get_idle();
    				self.get_idle_workaround();
    				if int(self.idle)>=int(self.stime):
    					pid=os.fork();
    					if pid==0:
    						self.idle=0;
    						os.execl(self.prog);
    					else:
    						os.wait();
    			time.sleep(1);
    
    29.6.2009 10:37 12345 | skóre: 41 | blog:
    Rozbalit Rozbalit vše Re: Python otevření | pípy

    Jestli jde jen o komunikaci rodičovského procesu s potomkem, není k tomu potřeba named pipe. Taková jednoduchá jednosměrná komunikace:

    import fcntl, os, time
    
    (rd, wr) = os.pipe()
    
    if os.fork() == 0:
    	os.close(wr)
    	fcntl.fcntl(rd, fcntl.F_SETFL, os.O_NONBLOCK)
    	print 'child: waiting for input'
    	while True:
    		try:
    			data = os.read(rd, 1000)
    			if data:
    				print 'child: received:', data
    		except OSError:
    			pass
    else:
    	os.close(rd)
    	while True:
    		data = raw_input('parent:> ')
    		os.write(wr, data)
    		time.sleep(.3) # aby se nesleval vystup potomka s rodicem
    

    Ukázka:

    $ python pipe.py
    child: waiting for input
    parent:> hello
    child: received: hello
    parent:> how are you?
    child: received: how are you?
    parent:>                         
    

    OSError 11 je v pořádku, je to obyčejné EAGAIN/EWOULDBLOCK (viz www.gnu.org/s/libc/manual/html_node/Error-Codes.html#index-EAGAIN-97).

    18.1.2010 16:16 Marcel
    Rozbalit Rozbalit vše Python
    Zdravím pánové, již je sice pozdě a asi nebudu přímo k věci, ale chtěl bych zde uvést svůj web pro další návštěvníky, kde jsem rozebíral základy této problematiky.

    Na webu http://networks.ic.cz průběžně aktualizuji věci které se týkají programování a webu a v sekci Python rozebírám jednotlivé moduly. Takže se kdyžtak mrkněte

    Modul subproces

    Modul fcntl

    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.