Registrace nového uživatele     Návod     Kluby     Archív  Lopuchu     Lopuch.cz  

Něco navíc v zeleném?
A proč ne...

Lopuch.cz

Jméno:
Heslo:
Podpora LCD:
 
Klub C, C++ [ŽP: neomezená] (kategorie Programování) moderuje Šéf Lopuchu.
Archiv

Články

Jak bezpečně ukončit vlákno z DllMain
FastAllocPool - urychlení častých alokací a dealokací
Akce a zpráva jako objekt
Tuply v C++
Efektivní alokátor malých objektů a tady druhý a třetí díl
Šablony: Být vládce kvalifikátorů
Vracíme z funkce objekty
Základy komunikace mezi procesy (ve Windows)
Multiple Interface a Instance Factory
Multithreading v C++ (ve Win32)
  Nastavení klubu     Nastavení práv     Homepage     Anketa     Přítomní     Oblíbené     Lopuch     Kategorie  
autor: 
text: 
vyplnit a 
Help
 Titulek, text příspěvku  
Opište pozpátku následující text bez prostředního znaku: zdlnsxm
[ 380 ] <Novější  <<<Nejnovější  Nejstarší>>>  Starší>  
bredy 31.8.2006 10:56  553
Základy komunikace mezi procesy (ve Windows)
bredy 27.8.2006 23:58  551
Ještě k těm threadůmAbyste věděli, co chci udělat, chci převést tuhle knihovnu do Linuxu. Tj se zachováním interface a jeho funkčnosti 1:1.

Momentálně budu přeinstalovávat Linux a ještě čekám na disk, abych měl trochu prostoru...
mpts mpts Je to jinak, ba přesně naopak! 24.8.2006 12:44  549
Bredy: Nechytám Tě za slovo, prostě jsem jen konstatoval -- pro Tebe stejně jako pro kohokoli jiného -- jak to s těmi "mnoha" linuxy je. :-) After all, sám mám v provozu dva linuxy bez jakéhokoli desktopu či jiného grafického rozhraní a jiní, jež znám, ještě mnohem více.
bredy 24.8.2006 12:24  548
Pro inspiraciMultiple Interface a Instance Factory
al3x 23.8.2006 14:53  547
BredyNeni treba resit, jestli je lepsi Win pristup (jednotne GUI), nebo Linux pristup (mnoho GUI). Dulezite je uvedomit si, ze kdyz pises neco pro Linux, musis se prizpusobit Linuxovemu pristupu. Pokud to neudelas, pak bude (velice pravdepodobne) na velke mnozine Linuxovych stanic tvove aplikace vypadat prinejmensim zvlastne a bude se s ni hure pracovat. Proto v aplikaci pro Linux SILNE doporucuju brat ohledy na Linuxove zvyklosti a zvolit si radeji existujici widget, pro ktery to preportujes. Nabizi se Qt, nebo GTK. Nema smysl jedno z nich jednoznacne (ne)doporucit. Vyber si bud podle zpusobu programovaciho pristupu k nim, podle predpokladane cilove skupiny tve aplikace nebo treba jen podle osobniho vkusu. Samozrejme si muzes napsat sam vlastni, ale bud budes mit problem respektovat osobni nastaveni fontu, barev, velikosti, dpi, kodovani, nebo budes zbytecne znova psat neco, co uz existuje. V obou pripadech to bude zbytecna prace.
king King Born to be king - ... 23.8.2006 13:16  546
bredytim jsem chtel jen naznacit, ze pokud je mi znamo, musi se to skutecne obchazet pres mutexy...
nic jineho jsem nevidel, to ale nemusi nic znamenat, s thready jsem neco psal jen jednou a to jsem hlavne chtel aby to behalo vsude (x86 Linux, SPARC Solaris a BUHVICO IRIX), takze jsem tyhle veci neresil...
bredy 23.8.2006 13:10  545
KingNedočetl jsi to celé
Bylo by škoda kdybych je musel simulovat mutexama...

Pro Win32 na x86 používám přímo inline assembler
lock cmpxchg [edi],edx

Pokud nemám jistotu, že to mohu udělat, zavolám InterlockedCompareExchange, což se stejně nakonec převede na tuto jedinou instrukci na x86 (nebo volání jedné instrukce v DLL).

Protože na tom mám postavenou kritickou sekci (která se při překladu inlinuje do asi peti instrukci s jednim podminenym skokem a s jednim call v pripade, ze se kritickou sekci nepodari ziskat).
Ano, přepsat všechny interlocked operace na pthread_mutex_ je řešení, ale pochybuju o efektivitě.
king King Born to be king - ... 23.8.2006 12:29  544
imho k tomu ucelu slouzi pthread_mutex_init a spol ( man pthread_mutex_init )
bredy 23.8.2006 12:24  543
mptsDobře, když mne chytáš za slovo tak se opravím. Na Linuxu jsou provozovány dva nejrozšířenější desktopy a samozřejmě spoustu dalších...

Nemusíte mi vysvětlovat co je linux. I Windows má část operačního systému a část GUI. Že jsou tyto části integrované je věc jiná, ale otázkou je, zda to vadí. Z pohledu uživatele bych spíš byl za, aby prostředí bylo jednotné. Ale to uz jsem offtopic.

Mám dotaz, studuju posix threads, ale chybí mi interlocked operace. Bylo by škoda kdybych je musel simulovat mutexama... Taková kritická sekce je pomocí intelocked operací rychlá jak ďas!
king King Born to be king - ... 23.8.2006 11:27  542
kdokolivo tom nic nevim, ale podotykam, ze Qt vubec nesleduju, ja jsem na GTK ;)
kdokoliv Kdokoliv Nevidím důvod dělat cokoliv bezdůvodně. - http://kkl2401.wz.cz 23.8.2006 11:06  541
King [539]: Neni to tak, ze prave tohle se s verzi 4 meni? Ja mam pocit, ze prave ctyrka ma prinest krom funkcnich zmen i zmeny licencni.
mpts mpts Je to jinak, ba přesně naopak! 23.8.2006 10:36  540
Linux nemá žádný desktop, narozdíl od windows je totiž linux operační systém, nikoli spatlanina operačního systému a rozhraní pro koncové uživatele a kdovíčeho ještě. A v tomto smyslu je linux pouze jeden.

Pod tímto operačním systémem lze pak provozovat rozličné uživatelské programy, včetně různých X serverů, HTTP serverů, window managerů, desktopů, textových editorů, multimediálních přehrávačů atd. atp., a to vše dohromady, ano jest to provozováno pod operačním systémem linux, lze pak souhrně též označit -- a běžně se označuje -- slovem linux, to však je již jen jeho volný význam, a v tomto volném významu pak existuje linuxů opravdu nespočet (ale to nakonec i windows, akorát že u nich vlivem té spatlanosti má uživatel menší svobodu volby uživatelského software, takže se jeví na pohled uniformněji).

Tolik odbočka k terminologii, když už nemám co říci přímo k věci. :-)
king King Born to be king - ... 23.8.2006 10:15  539
bredyQt pod windows ma ale komercni licenci - pokud se nepletu, tak pokud nebude tva knihovna pod GPL, tak budes muset zaplatit...
kdokoliv Kdokoliv Nevidím důvod dělat cokoliv bezdůvodně. - http://kkl2401.wz.cz 23.8.2006 09:58  538
Bredy [537]: Linux nema dva desktopy, Linux ma desktopu, az by ses divil. AL3X tim chtel rict to, ze nebudes mit problem s portaci na jine distribuce v tom smyslu, ze by se to treba vubec nezkompilovalo, nikoliv ze by tim rikal, ze na vsech distribucich to bude vypadat stejne, to prave naopak.
Nevim, mne se QT libi celkem i pod Windows, navic cekal bych, ze verze 4 na tom bude jeste lepe. Pravda, pod Windows jsem s QT videl jenom sim, ale ubezpecuju Te, ze u vhodne nastaveneho simu bys Ty poznal, ze to je QT aplikace, ja taky, ale 98 % jinych uzivatelu ne, akorat by jim bylo divne, jak je mozne, ze tenhle ICQ klient neobsahuje hromadu reklam.
Kazdopadne nikdo Te nenuti to pres QT implementovat i na Windows - na Windows proste dal pouzivej to, co mas.
bredy 23.8.2006 09:20  537
AL3XMno o teoretické možnosti že linux je jen jeden jedinečný bych polemizoval (už z toho pohledu, že má dva desktopy není jedinečný, ale prostě se s tím musí počítat). Bohužel často nepatřím k nadšencům čehokoliv (a týká se to i technologií pod windows), ale spíš ke všemu přistupuju kritičtěji.

Ostatní:

S Qt už jsem s ním měl tu čest. Jediná věc, která mě odrazuje je hnusná (graficky) implementace pod windows a jakákoliv rezignace na nastavení windows... i když to možná je spíš chyba programátorů v honbě za tím být originální. Každopádně QT aplikace se ve Win pozná na dálku. Opačný problém mám s WinAPI, MFC, atd, které zase pro změnu na Linuxu nerozběhám ale mnohem lépe sedí do stylu Windows. Na druhou stranu ani MFC není svaté, spíš je to opruz v něm dělat. Takže proto píšu rozhraní, které by na straně aplikace bylo stejné, implementace uvnitř bude záviset na platformě (a žádné #ifdef LINUX, ale prostě úplně unikátní zdroják). Samozřejmě plně objektové. Na té nej nejnižší úrovni bych si dokázal představit implementaci pod X11, ale ostatní api samozřejmě prostuduju.

[ 380 ] <Novější  <<<Nejnovější  Nejstarší>>>  Starší>  

(c) 2001-2011 Lopuch.cz   
Kontakt