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í
×
    dnes 14:44 | Nová verze

    V programovacím jazyce Go naprogramovaná webová aplikace pro spolupráci na zdrojových kódech pomocí gitu Forgejo byla vydána ve verzi 14.0 (Mastodon). Forgejo je fork Gitei.

    Ladislav Hagara | Komentářů: 2
    dnes 13:11 | Zajímavý projekt

    Just the Browser je projekt, 'který vám pomůže v internetovém prohlížeči deaktivovat funkce umělé inteligence, telemetrii, sponzorovaný obsah, integraci produktů a další nepříjemnosti' (repozitář na GitHubu). Využívá k tomu skrytá nastavení ve webových prohlížečích, určená původně pro firmy a organizace ('enterprise policies'). Pod linuxem je skriptem pro automatickou úpravu nastavení prozatím podporován pouze prohlížeč Firefox.

    NUKE GAZA! 🎆 | Komentářů: 2
    včera 16:44 | Nová verze

    Svobodný multiplatformní herní engine Bevy napsaný v Rustu byl vydán ve verzi 0.18. Díky 174 přispěvatelům.

    Ladislav Hagara | Komentářů: 2
    včera 15:11 | IT novinky

    Miliardy korun na digitalizaci služeb státu nestačily. Stát do ní v letech 2020 až 2024 vložil víc než 50 miliard korun, ale původní cíl se nepodařilo splnit. Od loňského února měly být služby státu plně digitalizované a občané měli mít právo komunikovat se státem digitálně. Do tohoto data se povedlo plně digitalizovat 18 procent agendových služeb státu. Dnes to uvedl Nejvyšší kontrolní úřad (NKÚ) v souhrnné zprávě o stavu digitalizace v Česku. Zpráva vychází z výsledků víc než 50 kontrol, které NKÚ v posledních pěti letech v tomto oboru uskutečnil.

    Ladislav Hagara | Komentářů: 15
    včera 13:55 | IT novinky

    Nadace Wikimedia, která je provozovatelem internetové encyklopedie Wikipedia, oznámila u příležitosti 25. výročí vzniku encyklopedie nové licenční dohody s firmami vyvíjejícími umělou inteligenci (AI). Mezi partnery encyklopedie tak nově patří Microsoft, Amazon a Meta Platforms, ale také start-up Perplexity a francouzská společnost Mistral AI. Wikimedia má podobnou dohodu od roku 2022 také se společností Google ze skupiny

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

    D7VK byl vydán ve verzi 1.2. Jedná se o fork DXVK implementující překlad volání Direct3D 5, 6 a 7 na Vulkan. DXVK zvládá Direct3D 8, 9, 10 a 11.

    Ladislav Hagara | Komentářů: 0
    včera 02:00 | Nová verze

    Byla vydána verze 12.0.0 knihovny libvirt (Wikipedie) zastřešující různé virtualizační technologie a vytvářející jednotné rozhraní pro správu virtuálních strojů. Současně byl ve verzi 12.0.0 vydán související modul pro Python libvirt-python. Přehled novinek v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 0
    15.1. 19:22 | Humor

    CreepyLink.com je nový zkracovač URL adres, 'díky kterému budou vaše odkazy vypadat tak podezřele, jak je to jen možné'. Například odkaz na abclinuxu.cz tento zkracovač převádí do podoby 'https://netflix.web-safe.link/logger_8oIlgs_free_money.php'. Dle prohlášení autora je CreepyLink alternativou ke zkracovači ShadyURL (repozitář na githubu), který dnes již bohužel není v provozu.

    NUKE GAZA! 🎆 | Komentářů: 3
    15.1. 12:33 | IT novinky

    Na blogu Raspberry Pi byla představena rozšiřující deska Raspberry Pi AI HAT+ 2 s akcelerátorem Hailo-10 a 8 GB RAM. Na rozdíl od předchozí Raspberry Pi AI HAT+ podporuje generativní AI. Cena desky je 130 dolarů.

    Ladislav Hagara | Komentářů: 3
    15.1. 12:11 | Komunita

    Wikipedie slaví 25. výročí svého založení. Vznikla 15. ledna 2001 jako doplňkový projekt k dnes již neexistující encyklopedii Nupedia. Doména wikipedia.org byla zaregistrována 12. ledna 2001. Zítra proběhne v Praze Večer svobodné kultury, který pořádá spolek Wikimedia ČR.

    Ladislav Hagara | Komentářů: 1
    Které desktopové prostředí na Linuxu používáte?
     (14%)
     (5%)
     (0%)
     (9%)
     (20%)
     (3%)
     (6%)
     (3%)
     (11%)
     (42%)
    Celkem 477 hlasů
     Komentářů: 12, poslední 14.1. 21:12
    Rozcestník

    Dotaz: C dohledání memory leaks

    5.5.2022 14:20 MilanC | skóre: 16
    C dohledání memory leaks
    Přečteno: 1036×
    Ahoj,

    potřeboval bych svůj výtvor nějak ověřit a být si jistý, že neobsahuje žádné memory leaks. Beží na embedded mips zařízení, proto využívám cross kompilace. V samotném mém programu je jedinný malloc a realloc, takže o to mi až tak nejde. Jde mi hlavně o využívané funkce ze sdílených knihoven - typicky libcurl a json-c.

    Pokoušel jsem se tam dostat valgrind a to se mi i povedlo, nicméně jej nemohu použít z důvodu nedostatku RAM. Zkusil jsem nyní přikompilovat do projektu memwatch, ale když nad tím přemýšlím, podle mého mi to asi ve věci využívaných sdílených knihoven příliš nepomůže?

    Můj program je hardwarově závislý, takže využívá i knihovny pro přístup k danému HW. Proto nevidím moc reálné to ladit někde jinde, kde bude více RAM, třeba v nějakém emulátoru. Samozřejmě bych si ty hw knihovny mohl namockovat, ale takové ověření by pak postrádalo trochu smysl a opravdu bych možná ověřil jen ten curl a json a nic víc.

    Nemáte nějaký nápad nebo tip na nástroj, který by mi s tím pomohl? Z běžných linuxových nástrojů mám v podstatě jen busybox a ulibc, takže dost omezení.

    Děkuji.

    Odpovědi

    5.5.2022 14:58 X
    Rozbalit Rozbalit vše Re: C dohledání memory leaks
    To je furt to same jako minule? To se snad vyresilo ne?
    5.5.2022 15:21 MilanC | skóre: 16
    Rozbalit Rozbalit vše Re: C dohledání memory leaks
    Ahoj, vyřešilo, zabraná paměť se rapidně snížila, ale to samé to není.

    Já teď potřebuji ověřit, protože je z toho v podstatě trvale běžící "démon" provádějící různé akce na pozadí, že mi to za týden nevyžere zdroje. Zatím to mám pořešené restartovací smyčkou, ale to je takové trochu prasácké a komplikuje mi i trochu život. :-)

    Já s těmito nástroji nemám moc zkušenost, naposledy jsem hojně využíval MemProof pro Delphi, tak nevím, jestli je možnost nějak ty chyby odhalit. Prostě si představuji, že to nechám chvíli běžet, pak tomu pošlu kill a získám nějaký report, že vše, co bylo alokováno bylo také uvolněno. Ale fakt nemám zkušenost a už vůbec ne s těmi sdílenými knihovnami. Třeba u json-c je pro uvolnění dost často volat json_object_put, ale ani v oficiálních příkladech jej nevolají pokaždé, takže těžko tušit, kdy přesně ho tam mít (jestli i u parse metod nebo jen když vytvářím novou json strukturu atd.). Prostě tam mám nějaké nejistoty a rád bych si je nějak potvrdil. :)
    5.5.2022 17:17 X
    Rozbalit Rozbalit vše Re: C dohledání memory leaks
    5.5.2022 21:07 z_sk | skóre: 34 | blog: analyzy
    Rozbalit Rozbalit vše Re: C dohledání memory leaks
    Joj, ach. Cečko ma dve spôsoby predávania dát, priamo (skopírujú sa na zásobník) a cez pointere. Parameter const znamená, že sa dáta čítajú, nemodifikujú. Musíš vedieť, ako ktorá funkcia pracuje a tak sa zariadiť. Čo sa novo alokuje, následné dealokovať. Aj pri pomocných funkciách.

    Ak nevieš čo robí Ta funkcia, tak si pozrí jej kód, ak je knižnica open-source a budeš mať (väčšiu) istotu.

    Prečo robíš a la embed C? Prečo to nenecháš, čo sa v tom vyznajú, keď si trošku stratený.

    Rob si monitoring systému so záznamy v historií, aby si vedel ako sa to správa. A prípadne maj poistku - pri istej vyťaženosti proces reštartuješ.
    debian.plus@protonmail.com
    6.5.2022 00:32 dsss
    Rozbalit Rozbalit vše Re: C dohledání memory leaks
    S oblibou pouzivam promenne prostredi MALLOC_CHECK_ (man 3 mallopt) a valgrind.
    6.5.2022 13:24 ehmmm
    Rozbalit Rozbalit vše Re: C dohledání memory leaks
    Nevim, co to je za stroj, takze obecne rady.

    Pokud to je neco typu Arduino, tak dlouhodobe sledovat stack a heap a prostor mezi nima. Osobne se mallocu v embedded vyhybam a kdyz uz, tak uvolnovat presne v opacnem poradi, nez se alokuje, aby nebyly v heapu diry.

    Pokud to je neco, kde uz je treba i Linux, tak koukat na velikost obsazene pameti jednotlivych procesu a nesmi proste stoupat. Proste za tyden musi byt stejna jako pred tydnem.

    Pokud mas podezreni na nejakou funkci, tak misto abys ji volal obvykle napr. jednou za hodinu, tak ji zavolej milionkrat a hned budes vedet, jestli to je v poradku.

    Vsichni si tu delaji legraci s Pascalu, ale treba Lazarus ma HeapTrc a ten ukaze, jestli jsem nahodou nezapomnel neco uvolnit.
    8.5.2022 04:03 BFU
    Rozbalit Rozbalit vše Re: C dohledání memory leaks
    Co zkusit LSan:

    https://github.com/google/sanitizers/wiki/AddressSanitizerLeakSanitizer

    Je to soucast gcc i clang, dela to compile-time instrumentaci takze je to signifikantne rychlejsi nez valgrind. Pouziti je tim stylem, ze se userspace prekompiluje s '-g3 -Og -fsanitize=address'/'leak' CFLAGS/LDFLAGS (at to ma debug symboly bez optimalizace at to muze rozumne resolvovat backtrace) a pak se to proste spusti. Jakmile program skonci, tak vyhodi nejakou statistiku leaku.
    8.5.2022 21:08 MilanC | skóre: 16
    Rozbalit Rozbalit vše Re: C dohledání memory leaks
    Tohle by se mi dost líbilo, ale asi mám smůlu... ale díky
    helper.c:1:0: error: -fsanitize=address not supported for this target [-Werror]
    8.5.2022 23:19 BFU
    Rozbalit Rozbalit vše Re: C dohledání memory leaks
    ASan by mel Linux/MIPS target umet. Mozna to staci zapnout pri kompilovani toolchainu, nebo je toolchain opravdu moc stary ?
    23.5.2022 12:14 Jindřich Makovička | skóre: 17
    Rozbalit Rozbalit vše Re: C dohledání memory leaks
    Toho valgrindu je škoda, kromě detekce leaků umí i heap profiling, který ukáže i paměť, která se třeba na konci uvolní, jen se jí alokuje zbytečně moc, např.

    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.