Společnost PINE64 stojící za telefony PinePhone nebo notebooky Pinebook publikovala na svém blogu lednový souhrn novinek.
Baví vás bastlení, fyzika, IT a nebo prostě cokoliv technického? Proseděli jste celé Vánoce v záři obrazovky počítače a nebo jste o tom alespoň snili? Chcete se pochlubit technickými vánočními dárky? Pak doražte na Virtuální Bastlírnu - online pokec (nejen) techniků a bastlířů!
… více »Desktopové prostředí Enlightenment bylo vydáno ve verzi 0.27.0, provázejí ho knihovny EFL 1.28. Jde o převážně opravné vydání opět po roce.
Lazygit byl vydán ve verzi 0.45.0. Jedná se o TUI (Text User Interface) nadstavbu nad gitem.
Na čem aktuálně pracují vývojáři GNOME a KDE Plasma? Pravidelný přehled novinek v Týden v GNOME a Týden v KDE Plasma.
Byla vydána nová verze 2.48.0 distribuovaného systému správy verzí Git. Přispělo 93 vývojářů, z toho 35 nových. Přehled novinek v příspěvku na blogu GitHubu a v poznámkách k vydání.
Byl vydán Debian 12.9, tj. devátá opravná verze Debianu 12 s kódovým názvem Bookworm. Řešeny jsou především bezpečnostní problémy, ale také několik vážných chyb. Instalační média Debianu 12 lze samozřejmě nadále k instalaci používat. Po instalaci stačí systém aktualizovat.
Před dvanácti lety, ve svých šestadvaceti letech, navždy odešel Aaron Swartz, výjimečný americký hacker (programátor), spisovatel, archivář, politický organizátor a internetový aktivista. Aaron Swartz založil Demand Progress, spolupracoval na projektech Open Library, Internet Archive a Reddit. Ve svých čtrnácti se podílel na specifikaci RSS 1.0. Vytvořil webový framework web.py, pracoval na tor2web a rozšíření HTTPS Everywhere
… více »Byla vydána nová major verze 3.20.0 grafického vývojového prostředí a platformy Gambas (Wikipedie) založené na interpretru programovacího jazyka Basic s rozšířením o objektově orientované programování. Přehled novinek v poznámkách k vydání. Zdrojové kódy jsou k dispozici na GitLabu.
Na Kickstarteru byla spuštěna plánovaná kampaň na open source modulární přenosné mini počítače Pilet 5 a Pilet 7 postavené na Raspberry Pi 5. Jejich cena je 215 a 202 amerických dolarů.
Řešení dotazu:
Dost záleží na tom jaká je vlastně architektura tvé aplikace, popiš trochu podrobněji jak si představuješ spolupráci mezi procesy a jak je hodláš spouštět, zda-li např. všechny procesy využívající sdílenou pamět nebudou jen potomci jednoho rodiče.
Nástřel jednoho z možných řešení:
2) Jenže jiný proces pak může dostat původní PID a tak "bude běžet"
Ošetřit zda-li se jedná opravdu o ten původní proces není přeci problém.
3) Takový SIGKILL ale nechytím ...
Samozřejmě, neoprávněný přístup do paměti taky neošetříš, ale měl by jsi korektně ošetřit např. SIGTERM a vše ostatní co můžeš.
Nepopsal jsi architekturu tvé aplikace, takže ti nemůžeme konkrétně poradit.
Navíc si můžeš zjistit, které PID založilo sdílenou paměť, případně kolik procesů ji používá, pokud žádný, tak hned víš, že proces se ukončil nekorektním způsobem. Možných řešení je více.
Ošetřit zda-li se jedná opravdu o ten původní proces není přeci problém.
Na to jsem zvědavý. Kromě ptracnutí hlídaného procesu mě napadá žádný zaručený způsob. Vás ano?
neoprávněný přístup do paměti taky neošetříš
Ale ošetříš: sigaltstack(2), sigaction(2).
Vzhledem k tomu, že je původní proces plně pod jeho kontrolou, tak není problém, aby dal okolí vědět, že je to právě on např. periodická aktualizace poslední modifikace souboru, ve kterém je uložené PID.
S ošetřením neoprávněného přístupu do paměti to podle mě není tak jednoznačné, může nastat kdekoliv, třeba zrovna v ošetření signálu, případně si může porušit datovou strukturu a program se může začít chovat neočekávaně. Chtěl jsem tím jen říct, že stejně nikdy nemůže spoléhat na to, že proces "zemře" korektně, ale vždy musí počítat s tím, že ho jádro bez milosti sestřelí a nenechá ho po sobě ani uklidit. A je třeba, aby následně spuštěné instace tohoto procesu tímto nebyly poznamenány.
spolehlivé řešení ... nikoliv 99,99 %Zajímalo by mne, kolik procent je podle Vás spolehlivost.
ipcs
sluzi na vypisanie informacii o prostriedkoch na medziprocesorovu komunikaciu (ipc) a
ipcrm
sluzi na odstranenie ipc.[...] a nepřipadá mi správné, abych ji použil, když pak třeba patří jiné instanci?Viz IPC_PRIVATE coby klíč.
Tiskni Sdílej: