Microsoft Defender nově podporuje linuxové desktopy.
Oficiální Epic Games Launcher je v nové preview verzi poprvé dostupný i pro Linux (FAQ). Pracuje se na novém Easy Anti-Cheatu pro Linux (EAC Linux v2) a podpoře hry Fortnite na Linuxu.
Desktopové prostředí KDE Plasma bylo vydáno ve verzi 6.8. Novinky zahrnují lepší podporu vzdálené plochy, sdílení a nahrávání obrazovky a řadu drobností napříč uživatelským rozhraním (úplný seznam změn, shrnutí ve wiki).
Apple představil 7palcový displej Apple HomeView s podporou Apple Intelligence a Siri AI pro ovládání chytré domácnosti, novou řadu vybavení chytré domácnosti Apple Home Collection, další generaci HomePodu mini a novou Apple TV 4K. Apple HomeView není v Evropské unii v prodeji, jelikož umělá inteligence Siri v rámci systému iOS v EU momentálně není k dispozici. Apple spolupracuje s EU a snaží se najít cestu, jak situaci vyřešit.
KDE slaví 30 let. Přesně před 30 lety, 14. října 1996, poslal Matthias Ettrich do diskusní skupiny comp.os.linux.misc zprávu, která započala historii projektu KDE. Důležité milníky jsou zobrazeny na časové ose.
Byl vydán Mozilla Firefox 158.0. Stejně jako Chrome 155 s podporou JPEG XL (test). Přehled novinek v poznámkách k vydání a poznámkách k vydání pro vývojáře. Řešeny jsou rovněž bezpečnostní chyby. Nový Firefox 158 bude brzy k dispozici také na Flathubu a Snapcraftu.
Svobodný kancelářský balík ONLYOFFICE (Wikipedie) byl vydán ve verzi 10.0. Jak online Docs, tak i offline Desktop Editors. Přehled novinek také na YouTube.
Mozilla představuje Firefox Enterprise určený jako podnikový prohlížeč pro organizace s přísnými požadavky na bezpečnost, správu a dodržování předpisů. S profesionální podporou. Dostupný je zatím ve Francii, Německu, Rakousku a Švýcarsku.
Kybernetický útok zasáhl nejméně 150 supermarketů Intermarché a několik prodejen řetězců Leclerc a Coopérative U. Chladicí jednotky napadených obchodních domů byly nastaveny na nepřetržité odmrazování a teplota v nich mnohdy vystouala až nad 50°C. Škody napáchané na chlazeném a mraženém zboží budou patrně dosahovat miliónů eur.
… více »Stát Kalifornie zažaloval výrobce 3D tiskových filamentů Polymaker. Vrchní soud San Diego County tvrdí, že firma propagací svých výrobků mezi příznivci 3D tištěných zbraní podporovala výrobu takzvaných 'ghost guns' (DIY zbraní) a že její PLA filament pro 3D tiskárny lze za těchto okolností považovat za součást určenou k výrobě střelné zbraně. Žaloba požaduje mimo jiné finanční sankce a soudní zákaz činnosti, Polymaker se hájí tím, že filament je běžný a sám o sobě legální produkt. Celý text žaloby (PDF na Google Drive).
Zdravím zdejší guru,
v nedávné době jsem se začal zabývat a zajímat o používání socketů v C++ a tvorbou jednoduchých client/server aplikací. Postoupil jsem k problému, kdy chci řešit modelovou situaci:
Existuje server, který periodicky načítá informace z blíže nespecifikovaného zdroje a ukládá si je do mezipaměti (pro zjednodušení řekněme soubor), tento server bude ,,poslouchat" na síti a bude obsluhovat klienty (klient se buďto pouze připojí, zažádá o informace z mezipaměti a hned se odpojí, nebo zůstane na kafe a bude si se serverem vyměňovat lichotky delší dobu). Klientů může být v jedné chvíli připojeno více, ale taky může být jen jeden a nebo o kafe v tuto chvíli nemá zájem nikdo.
Zvažují vhodnou implementaci, zda-li to pojat jako více-vláknovou aplikaci, kdy jedno vlákno se stará o ukládání dat do mezipaměti, další o správu socketů s tím, že pro každého klienta by existovalo zvláštní vlákno, které by mu čaj naservírovalo.
Druhou možností, co mne napadá je využití neblokovaného režimu socketů a selectu.
Rád bych se Vás zeptal, který způsob je vhodnější, popř. pokud by Vás napadla jakákoliv jiná možnost, byl bych za ni velice rád)
Ještě maličkost, ohledně více-vláknových aplikací bych Vás chtěl poprosit o radu, jakou knihovnu při nich eventuálně použít s tím, aby případná migrace mezi operačními systémy byla co nejméně bolestná (myšlen Tux a Win). Předem děkuju za Váš čas a případné kopance)
Pokud to má mít vysoký výkon nebo to má obsluhovat mnoho najednou připojených klientů, pak je nejlepším řešením epoll, select apod.
Jen za předpokladu, že vygenerování odpovědi je velmi rychlé a nenáročné. Jinak je tato varianta dost nešťastná.
Řešení pomocí vláken - tedy jedno vlákno na jednoho připojeného klienta - je řekl bych oblíbené, protože komunikace s klientem se pak snadno programuje.
Spíš bych řekl, že použití vláken - aspoň u linuxových aplikací - moc populární není a stále výrazně převažuje používání samostatných procesů. Kromě již zmíněného k tomu asi přispěla i skutečnost, že vlastně až s jádry 2.6 (OK, u Red Hatu o chloupek dřív) přišla rozumně použitelná implementace POSIX threads.
jakou knihovnu při nich eventuálně použít s tím, aby případná migrace mezi operačními systémy byla co nejméně bolestnáBoost.
(je to kombinace vláken a epollu)
Boost je multiplatformní. Umí thready (Boost::Thread) i sockety (Boost::ASIO).
Děkuji všem za názory/připomínky, po lehkém zvážení jsem se rozhodl započít vývoj v knihovně Qt (kterou aspoň částečně již znám), výhodu vidím v tom, že víceméně na jakoukoliv funkcionalitu (např. parsování XML) existují knihovny a také samozřejmě využití signálů a slotů + víceméně bezproblémová portace na Win.
Prozatimní poupravený návrh počítá s tím, že bude existovat jedno vlákno (které bude načítat informace z externího zdroje do mezipaměti v loopu, signálem je bude zasílat hlavní třídě, popř. bude od hlavní třídy očekávat instrukce (čtené slotem a přidávané do fronty, která se provede při každém průchodu cyklem)
Ohledně připojování klientů, zatím stále váhám, jestli použít QThreadPool, kde by každý klient měl vlastní vlákno (neočekává se velký počet klientů , max 5 současně), nebo použít select (ač u něj nevím, jak v Qt).
K další otázce, projekt je zatím myšlen pouze pro ,,studijní" účely, samozřejmě při ,,reálném" nasazení by jej bylo třeba zabezpečit.
Tiskni
Sdílej: