mstdn.social is one of the many independent Mastodon servers you can use to participate in the fediverse.
A general-purpose Mastodon server with a 500 character limit. All languages are welcome.

Administered by:

Server stats:

15K
active users

#C

84 posts62 participants5 posts today
Habr<p>Переходим на C++26: как собрать и настроить GCC 15.1 в Ubuntu</p><p>На днях вышел GCC 15.1.0 с поддержкой некоторых фич C++26. Однако нынешняя версия Ubuntu все еще использует старый GCC 13. Здесь мы и рассмотрим, как вручную установить GCC 15.1 на Ubuntu и начать использовать новейшие элементы C++26 уже сегодня. Поехали в будущее =&gt;</p><p><a href="https://habr.com/ru/articles/905528/" rel="nofollow noopener noreferrer" translate="no" target="_blank"><span class="invisible">https://</span><span class="">habr.com/ru/articles/905528/</span><span class="invisible"></span></a></p><p><a href="https://zhub.link/tags/c" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>c</span></a>++26 <a href="https://zhub.link/tags/c" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>c</span></a>++ <a href="https://zhub.link/tags/gcc" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>gcc</span></a> <a href="https://zhub.link/tags/gcc15" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>gcc15</span></a> <a href="https://zhub.link/tags/linux" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>linux</span></a> <a href="https://zhub.link/tags/ubuntu" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>ubuntu</span></a></p>
Sci-books.com<p>Iterative Methods for Linear and Nonlinear Equations (Frontiers in Applied Mathematics, Series Number 18) 1st Edition by C. T. Kelley (PDF)<br>Author: C. T. Kelley<br>File Type: PDF<br>Download at <a href="https://sci-books.com/iterative-methods-for-linear-and-nonlinear-equations-frontiers-in-applied-mathematics-series-number-18-1st-edition-0898713528/" rel="nofollow noopener noreferrer" translate="no" target="_blank"><span class="invisible">https://</span><span class="ellipsis">sci-books.com/iterative-method</span><span class="invisible">s-for-linear-and-nonlinear-equations-frontiers-in-applied-mathematics-series-number-18-1st-edition-0898713528/</span></a><br><a href="https://mastodon.social/tags/Mathematics" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>Mathematics</span></a>, <a href="https://mastodon.social/tags/C" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>C</span></a>.T.Kelley</p>
Oliver<p>Times fly: 25 years ago, during my civil service, I programmed a patient database for an epilepsy clinic. The obvious name: <a href="https://mastodon.social/tags/EPA" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>EPA</span></a> - <a href="https://mastodon.social/tags/hpux" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>hpux</span></a> <a href="https://mastodon.social/tags/mysql" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>mysql</span></a> <a href="https://mastodon.social/tags/c" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>c</span></a></p>
Gary "grim" Kramlich<p>Greetings Programs!! We're back at it tonight working on <span class="h-card" translate="no"><a href="https://fosstodon.org/@pidgin" class="u-url mention" rel="nofollow noopener noreferrer" target="_blank">@<span>pidgin</span></a></span> stuff! Come on by!!</p><p><a href="https://twitch.tv/rw_grim" rel="nofollow noopener noreferrer" translate="no" target="_blank"><span class="invisible">https://</span><span class="">twitch.tv/rw_grim</span><span class="invisible"></span></a><br><a href="https://youtube.com/@rw_grim" rel="nofollow noopener noreferrer" translate="no" target="_blank"><span class="invisible">https://</span><span class="">youtube.com/@rw_grim</span><span class="invisible"></span></a></p><p><a href="https://mastodon.social/tags/Pidgin" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>Pidgin</span></a> <a href="https://mastodon.social/tags/Chat" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>Chat</span></a> <a href="https://mastodon.social/tags/Messaging" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>Messaging</span></a> <a href="https://mastodon.social/tags/C" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>C</span></a> <a href="https://mastodon.social/tags/GTK" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>GTK</span></a> <a href="https://mastodon.social/tags/OpenSource" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>OpenSource</span></a> <a href="https://mastodon.social/tags/OpenSourceLive" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>OpenSourceLive</span></a></p>
st1nger :unverified: 🏴‍☠️ :linux: :freebsd:<p><a href="https://infosec.exchange/tags/python" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>python</span></a> in <a href="https://infosec.exchange/tags/hardware" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>hardware</span></a> 480ns GPIO. No interpreter. No <a href="https://infosec.exchange/tags/C" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>C</span></a> Just <a href="https://infosec.exchange/tags/PyXL" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>PyXL</span></a> <a href="https://www.runpyxl.com/gpio" rel="nofollow noopener noreferrer" translate="no" target="_blank"><span class="invisible">https://www.</span><span class="">runpyxl.com/gpio</span><span class="invisible"></span></a></p>
Jobs for Developers<p>Shield AI is hiring Senior Staff Engineer, Autonomy</p><p>🔧 <a href="https://mastodon.world/tags/c" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>c</span></a> <a href="https://mastodon.world/tags/seniorengineer" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>seniorengineer</span></a><br>🌎 Melbourne, Australia<br>⏰ Full-time<br>🏢 Shield AI</p><p>Job details <a href="https://jobsfordevelopers.com/jobs/senior-staff-engineer-autonomy-at-shield-ai-jan-28-2025-9949a7?utm_source=mastodon.world&amp;utm_medium=social&amp;utm_campaign=posting" rel="nofollow noopener noreferrer" translate="no" target="_blank"><span class="invisible">https://</span><span class="ellipsis">jobsfordevelopers.com/jobs/sen</span><span class="invisible">ior-staff-engineer-autonomy-at-shield-ai-jan-28-2025-9949a7?utm_source=mastodon.world&amp;utm_medium=social&amp;utm_campaign=posting</span></a><br><a href="https://mastodon.world/tags/jobalert" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>jobalert</span></a> <a href="https://mastodon.world/tags/jobsearch" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>jobsearch</span></a> <a href="https://mastodon.world/tags/hiring" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>hiring</span></a></p>
Felix Palmen :freebsd: :c64:<p>digging a bit deeper to further improve this <a href="https://mastodon.bsd.cafe/tags/async" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>async</span></a> / <a href="https://mastodon.bsd.cafe/tags/await" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>await</span></a> implementation:</p><p>Keeping all the <a href="https://mastodon.bsd.cafe/tags/stacks" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>stacks</span></a> mapped certainly makes sense to avoid excessive <a href="https://mastodon.bsd.cafe/tags/mmap" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>mmap</span></a> overhead ... but on *some* (most?) systems (I checked <a href="https://mastodon.bsd.cafe/tags/FreeBSD" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>FreeBSD</span></a> and <a href="https://mastodon.bsd.cafe/tags/Linux" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>Linux</span></a> docs for now), we can let the kernel know when the mapping just contains worthless scratch (which will be the case after a thread job finishes until another thread job claims the same stack). Then, if there's a need to free pages, the kernel can avoid pointlessly writing that garbage to <a href="https://mastodon.bsd.cafe/tags/swap" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>swap</span></a>. 😎 </p><p><a href="https://github.com/Zirias/poser/commit/9867c5f3845b3b998ca758f3b6e8047c2f813319" rel="nofollow noopener noreferrer" translate="no" target="_blank"><span class="invisible">https://</span><span class="ellipsis">github.com/Zirias/poser/commit</span><span class="invisible">/9867c5f3845b3b998ca758f3b6e8047c2f813319</span></a></p><p><a href="https://mastodon.bsd.cafe/tags/C" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>C</span></a> <a href="https://mastodon.bsd.cafe/tags/coding" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>coding</span></a></p>
Habr<p>Как я создал систему безопасности для плагинов: от идеи до реализации</p><p>В этой статье я расскажу о том, как я создал систему безопасности для своего проекта. Здесь я описываю этапы реализации, проблемы которые я решил, и как я устранил обнаруженные уязвимости.</p><p><a href="https://habr.com/ru/articles/905232/" rel="nofollow noopener noreferrer" translate="no" target="_blank"><span class="invisible">https://</span><span class="">habr.com/ru/articles/905232/</span><span class="invisible"></span></a></p><p><a href="https://zhub.link/tags/%D0%B1%D0%B5%D0%B7%D0%BE%D0%BF%D0%B0%D1%81%D0%BD%D0%BE%D1%81%D1%82%D1%8C" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>безопасность</span></a> <a href="https://zhub.link/tags/%D0%B0%D1%80%D1%85%D0%B8%D1%82%D0%B5%D0%BA%D1%82%D1%83%D1%80%D0%B0" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>архитектура</span></a> <a href="https://zhub.link/tags/%D0%BE%D0%BE%D0%BF" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>ооп</span></a> <a href="https://zhub.link/tags/%D0%BA%D0%B5%D0%B9%D1%81" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>кейс</span></a> <a href="https://zhub.link/tags/%D0%BE%D0%B1%D1%83%D1%87%D0%B5%D0%BD%D0%B8%D0%B5" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>обучение</span></a> <a href="https://zhub.link/tags/%D0%BF%D1%83%D1%82%D1%8C_%D0%B4%D0%B6%D1%83%D0%BD%D0%B0" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>путь_джуна</span></a> <a href="https://zhub.link/tags/%D0%BC%D0%BE%D1%8F_%D1%80%D0%B5%D0%B0%D0%BB%D0%B8%D0%B7%D0%B0%D1%86%D0%B8%D1%8F" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>моя_реализация</span></a> <a href="https://zhub.link/tags/C" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>C</span></a># <a href="https://zhub.link/tags/NET" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>NET</span></a></p>
France | République française<p><a href="https://www.europesays.com/fr/59800/" rel="nofollow noopener noreferrer" translate="no" target="_blank"><span class="invisible">https://www.</span><span class="">europesays.com/fr/59800/</span><span class="invisible"></span></a> TER + Vélo : un dispositif spécial été en Nouvelle-Aquitaine <a href="https://pubeurope.com/tags/actu" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>actu</span></a> <a href="https://pubeurope.com/tags/Actualit%C3%A9s" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>Actualités</span></a> <a href="https://pubeurope.com/tags/Bordeaux" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>Bordeaux</span></a> <a href="https://pubeurope.com/tags/C" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>C</span></a>'estL'été <a href="https://pubeurope.com/tags/EU" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>EU</span></a> <a href="https://pubeurope.com/tags/europe" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>europe</span></a> <a href="https://pubeurope.com/tags/FR" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>FR</span></a> <a href="https://pubeurope.com/tags/France" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>France</span></a> <a href="https://pubeurope.com/tags/News" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>News</span></a> <a href="https://pubeurope.com/tags/NouvelleAquitaine" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>NouvelleAquitaine</span></a> <a href="https://pubeurope.com/tags/R%C3%A9publiqueFran%C3%A7aise" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>RépubliqueFrançaise</span></a> <a href="https://pubeurope.com/tags/ter" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>ter</span></a> <a href="https://pubeurope.com/tags/V%C3%A9lo" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>Vélo</span></a></p>
O Česku<p>Skupina J&amp;T Finance Group SE zakončila rok 2024 s čistým ziskem 338 milionů eur, což představuje meziroční růst o 21 procent. Tahouny výsledku byly zejména J&amp;T Banka, která konsolidovaně přispěla 250 miliony eur, a slovenská 365.bank se ziskem 70 milionů eur. Celková bilanční suma holdingu přesáhla 17,9 miliardy eur, o pět procent více než loni.</p><p>Tón: mierne pozitívny<br><a href="https://rockosbasilisk.com/tags/czechia" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>czechia</span></a> <a href="https://rockosbasilisk.com/tags/gdelt" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>gdelt</span></a> <a href="https://rockosbasilisk.com/tags/%C4%8D" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>č</span></a>... <a href="https://l.rockosbasilisk.com/hOJ8X" rel="nofollow noopener noreferrer" translate="no" target="_blank"><span class="invisible">https://</span><span class="">l.rockosbasilisk.com/hOJ8X</span><span class="invisible"></span></a></p>
Habr<p>[Перевод] Unreal Engine для начинающих: Учимся работать со сторонним API и создавать динамические текстуры</p><p>Работа с API и создание динамических текстур в Unreal Engine может показаться сложной задачей, особенно для новичков. В этом материале на реальном примере мы разберем, как с помощью C++ получить изображение из публичной базы данных The Art Institute of Chicago, преобразовать его в текстуру, добавить её в материал и отобразить на 3D-объекте прямо в движке. Вместе мы шаг за шагом создадим интерактивную виртуальную галерею, познакомимся с основами работы с HTTP-запросами, JSON-данными, динамическими материалами и текстурами, а также научимся строить структуру собственного актора для подобных проектов.</p><p><a href="https://habr.com/ru/companies/otus/articles/905044/" rel="nofollow noopener noreferrer" translate="no" target="_blank"><span class="invisible">https://</span><span class="ellipsis">habr.com/ru/companies/otus/art</span><span class="invisible">icles/905044/</span></a></p><p><a href="https://zhub.link/tags/C" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>C</span></a>++ <a href="https://zhub.link/tags/Unreal_Engine" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>Unreal_Engine</span></a> <a href="https://zhub.link/tags/%D0%A1%D0%BE%D0%B7%D0%B4%D0%B0%D0%BD%D0%B8%D0%B5_%D0%B4%D0%B8%D0%BD%D0%B0%D0%BC%D0%B8%D1%87%D0%B5%D1%81%D0%BA%D0%B8%D1%85_%D1%82%D0%B5%D0%BA%D1%81%D1%82%D1%83%D1%80" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>Создание_динамических_текстур</span></a></p>
Paul Richards<p>Linux code golf question: I have been looking for the cheapest available thread specific constant. Must be ultra cheap to access, ideally unique for all running threads within a process, ideally stable for the lifetime of the thread. 🧵 <br><a href="https://mastodon.scot/tags/Linux" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>Linux</span></a> <a href="https://mastodon.scot/tags/C" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>C</span></a> <a href="https://mastodon.scot/tags/CPP" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>CPP</span></a></p>
Habr<p>История C#: эволюция версий, .NET, Unity, Blazor, MAUI</p><p>C# — один из самых популярных языков программирования, используемый для разработки приложений, веб-сервисов и игр. В этой статье мы заглянем в его историю: рассмотрим ключевые изменения от версии к версии и различные инструменты, без которых C# трудно представить.</p><p><a href="https://habr.com/ru/companies/pvs-studio/articles/905080/" rel="nofollow noopener noreferrer" translate="no" target="_blank"><span class="invisible">https://</span><span class="ellipsis">habr.com/ru/companies/pvs-stud</span><span class="invisible">io/articles/905080/</span></a></p><p><a href="https://zhub.link/tags/C" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>C</span></a># <a href="https://zhub.link/tags/microsoft" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>microsoft</span></a> <a href="https://zhub.link/tags/pvsstudio" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>pvsstudio</span></a> <a href="https://zhub.link/tags/%D0%B8%D1%81%D1%82%D0%BE%D1%80%D0%B8%D1%8F" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>история</span></a> <a href="https://zhub.link/tags/%D0%B8%D1%81%D1%82%D0%BE%D1%80%D0%B8%D1%8F_it" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>история_it</span></a> <a href="https://zhub.link/tags/%D0%B2%D0%B5%D1%80%D1%81%D0%B8%D0%B8" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>версии</span></a> <a href="https://zhub.link/tags/unity" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>unity</span></a> <a href="https://zhub.link/tags/maui" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>maui</span></a> <a href="https://zhub.link/tags/blazor" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>blazor</span></a> <a href="https://zhub.link/tags/NET" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>NET</span></a></p>
Jobs for Developers<p>Nuro is hiring Senior Embedded Software Engineer</p><p>🔧 <a href="https://mastodon.world/tags/c" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>c</span></a> <a href="https://mastodon.world/tags/seniorengineer" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>seniorengineer</span></a><br>🌎 Mountain View, California<br>⏰ Full-time<br>🏢 Nuro</p><p>Job details <a href="https://jobsfordevelopers.com/jobs/senior-embedded-software-engineer-at-nuro-ai-dec-17-2024-c51698?utm_source=mastodon.world&amp;utm_medium=social&amp;utm_campaign=posting" rel="nofollow noopener noreferrer" translate="no" target="_blank"><span class="invisible">https://</span><span class="ellipsis">jobsfordevelopers.com/jobs/sen</span><span class="invisible">ior-embedded-software-engineer-at-nuro-ai-dec-17-2024-c51698?utm_source=mastodon.world&amp;utm_medium=social&amp;utm_campaign=posting</span></a><br><a href="https://mastodon.world/tags/jobalert" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>jobalert</span></a> <a href="https://mastodon.world/tags/jobsearch" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>jobsearch</span></a> <a href="https://mastodon.world/tags/hiring" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>hiring</span></a></p>
Felix Palmen :freebsd: :c64:<p>Revisiting <a href="https://mastodon.bsd.cafe/tags/async" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>async</span></a> / <a href="https://mastodon.bsd.cafe/tags/await" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>await</span></a> in <a href="https://mastodon.bsd.cafe/tags/POSIX" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>POSIX</span></a> C, trying to "add some <a href="https://mastodon.bsd.cafe/tags/security" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>security</span></a>" 🙈 </p><p>Recap: Consider a classic <a href="https://mastodon.bsd.cafe/tags/reactor" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>reactor</span></a>-style service in C with a <a href="https://mastodon.bsd.cafe/tags/threadpool" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>threadpool</span></a> attached to run the individual request handlers. When such a handler needs to do some I/O, it'll have to wait for its completion, and doing so is kind of straight forward by just blocking the worker thread executing the job until whatever I/O was needed completes.</p><p>Now, blocking a thread is never a great thing to do and I recently tooted about an interesting alternative I found: Make use of the (unfortunately deprecated) POSIX user context switching to enable releasing the worker thread while waiting. In a nutshell, you create a context with <a href="https://mastodon.bsd.cafe/tags/makecontext" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>makecontext</span></a> that has its own private <a href="https://mastodon.bsd.cafe/tags/stack" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>stack</span></a>, and then you can use <a href="https://mastodon.bsd.cafe/tags/swapcontext" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>swapcontext</span></a> to get off the thread, and later again to get back on the thread. A minor issue is: It must be the *same* thread ... so you might have to wait until it completes something else before you can resume your job. But then, that's probably okayish, you can make sure in your job scheduling to only use worker threads with awaited tasks attached when no other thread is available.</p><p>In my first implementation, I just used <a href="https://mastodon.bsd.cafe/tags/malloc" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>malloc</span></a> to create a 64kiB private stack for each thread job. That's perfectly fine if you can guarantee your job will never consume more stack space, AND it won't have any vulnerabilities allowing some attacker to mess with the stack. But in practice, especially for a library offering this async/await implementation, it's nothing but a wild <a href="https://mastodon.bsd.cafe/tags/CVE" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>CVE</span></a> generator.</p><p>So, I now improved on that:</p><p>* Allocate a much larger stack of now 2MiB. That alone makes issues at least less likely. And on a sane modern OS, we can still assume pages will only be mapped "on demand".<br>* Only allocate the stack directly before running the thread job, and delegate allocation to some internal "stack manager" that keeps track of all allocated stacks and reuses them, only freeing them on exit. This should avoid most of the allocation overhead.<br>* If MAP_ANON / MAP_ANONYMOUS is available, use <a href="https://mastodon.bsd.cafe/tags/mmap" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>mmap</span></a> for allocating the stack. That at least gives a chance to stay away from other allocations ....<br>* But finally, if MAP_STACK is available, use this flag! From my research, <a href="https://mastodon.bsd.cafe/tags/FreeBSD" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>FreeBSD</span></a>, <a href="https://mastodon.bsd.cafe/tags/OpenBSD" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>OpenBSD</span></a> and <a href="https://mastodon.bsd.cafe/tags/NetBSD" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>NetBSD</span></a> will for example make sure there's at least one "guard page" below a stack mapped with this flag, so a stack overflow consistently takes the SIGSEGV emergency exit 😆. <a href="https://mastodon.bsd.cafe/tags/Linux" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>Linux</span></a> knows this flag as well, but doesn't seem to implement such protection at this time ... 🤔 </p><p><a href="https://mastodon.bsd.cafe/tags/C" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>C</span></a> <a href="https://mastodon.bsd.cafe/tags/coding" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>coding</span></a></p>
Habr<p>Мой путь к удаленке в Гоа</p><p>Привет, Habr! Меня зовут Ксения, сейчас я разработчица в российской IT-компании Онлайн патент. Решила поделиться своим опытом "настоящей" удалённой работы и как я к этому пришла.</p><p><a href="https://habr.com/ru/companies/onlinepatent/articles/903322/" rel="nofollow noopener noreferrer" translate="no" target="_blank"><span class="invisible">https://</span><span class="ellipsis">habr.com/ru/companies/onlinepa</span><span class="invisible">tent/articles/903322/</span></a></p><p><a href="https://zhub.link/tags/%D1%83%D0%B4%D0%B0%D0%BB%D0%B5%D0%BD%D0%BD%D0%B0%D1%8F_%D1%80%D0%B0%D0%B1%D0%BE%D1%82%D0%B0" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>удаленная_работа</span></a> <a href="https://zhub.link/tags/%D1%8D%D0%BC%D0%B8%D0%B3%D1%80%D0%B0%D1%86%D0%B8%D1%8F" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>эмиграция</span></a> <a href="https://zhub.link/tags/%D0%B7%D0%B8%D0%BC%D0%BE%D0%B2%D0%BA%D0%B0" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>зимовка</span></a> <a href="https://zhub.link/tags/c" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>c</span></a># <a href="https://zhub.link/tags/backend" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>backend</span></a> <a href="https://zhub.link/tags/%D0%BF%D0%BE%D0%B8%D1%81%D0%BA_%D1%80%D0%B0%D0%B1%D0%BE%D1%82%D1%8B" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>поиск_работы</span></a></p>
Daniel<p>Laurent Clevy first released adflib in 1999 in version 0.7.8. The portable C library, written mainly in C, is used to manage Amiga-formatted devices such as hard disks and ZIP disks or to swap them out via the .ADF format. The library is currently being developed under the responsibility of Tomasz Wolak. Changes in version 0.10.0:</p><p><a href="https://www.amiga-news.de/en/news/AN-2025-04-00124-EN.html" rel="nofollow noopener noreferrer" translate="no" target="_blank"><span class="invisible">https://www.</span><span class="ellipsis">amiga-news.de/en/news/AN-2025-</span><span class="invisible">04-00124-EN.html</span></a></p><p><a href="https://fosstodon.org/tags/Amiga" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>Amiga</span></a> <a href="https://fosstodon.org/tags/ADFlib" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>ADFlib</span></a> <a href="https://fosstodon.org/tags/C" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>C</span></a> <a href="https://fosstodon.org/tags/macOS" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>macOS</span></a> <a href="https://fosstodon.org/tags/Windows" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>Windows</span></a> <a href="https://fosstodon.org/tags/Linux" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>Linux</span></a> <a href="https://fosstodon.org/tags/adf" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>adf</span></a></p>
Jack C.<p>Finally came up with a project to learn <a href="https://indieweb.social/tags/Rust" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>Rust</span></a> with. Not moving particularly fast, but it's making me spend a lot of time considering the implementation of data structures with ownership and lifetimes in mind.</p><p>I've been away from system-level programming for a while and last time I did any it was <a href="https://indieweb.social/tags/C" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>C</span></a>++ which is its own kind of pain. </p><p>Working on building up structures backed by a <a href="https://indieweb.social/tags/sqlite" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>sqlite</span></a> <a href="https://indieweb.social/tags/database" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>database</span></a> as well, so getting <a href="https://indieweb.social/tags/SQL" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>SQL</span></a> practice also.</p><p><a href="https://indieweb.social/tags/RustLang" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>RustLang</span></a> <a href="https://indieweb.social/tags/CPlusPlus" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>CPlusPlus</span></a> <a href="https://indieweb.social/tags/CPP" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>CPP</span></a></p>
Lobsters<p>Silent Bugs Matter: A Study of Compiler-Introduced Security Bugs via <span class="h-card" translate="no"><a href="https://mendeddrum.org/@fanf" class="u-url mention" rel="nofollow noopener noreferrer" target="_blank">@<span>fanf</span></a></span> <a href="https://lobste.rs/s/rm20ex" rel="nofollow noopener noreferrer" translate="no" target="_blank"><span class="invisible">https://</span><span class="">lobste.rs/s/rm20ex</span><span class="invisible"></span></a> <a href="https://mastodon.social/tags/c" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>c</span></a> <a href="https://mastodon.social/tags/c" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>c</span></a>++ <a href="https://mastodon.social/tags/security" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>security</span></a><br><a href="https://www.usenix.org/conference/usenixsecurity23/presentation/xu-jianhao" rel="nofollow noopener noreferrer" translate="no" target="_blank"><span class="invisible">https://www.</span><span class="ellipsis">usenix.org/conference/usenixse</span><span class="invisible">curity23/presentation/xu-jianhao</span></a></p>
Jobs for Developers<p>Diligent is hiring Senior Staff Database Engineer</p><p>🔧 <a href="https://mastodon.world/tags/c" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>c</span></a> <a href="https://mastodon.world/tags/python" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>python</span></a> <a href="https://mastodon.world/tags/aws" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>aws</span></a> <a href="https://mastodon.world/tags/azure" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>azure</span></a> <a href="https://mastodon.world/tags/gcp" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>gcp</span></a> <a href="https://mastodon.world/tags/mysql" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>mysql</span></a> <a href="https://mastodon.world/tags/postgresql" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>postgresql</span></a> <a href="https://mastodon.world/tags/sql" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>sql</span></a> <a href="https://mastodon.world/tags/terraform" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>terraform</span></a> <a href="https://mastodon.world/tags/seniorengineer" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>seniorengineer</span></a><br>🌎 Bengaluru, India<br>⏰ Full-time<br>🏢 Diligent</p><p>Job details <a href="https://jobsfordevelopers.com/jobs/senior-staff-database-engineer-at-diligent-com-apr-1-2025-ba8fb5?utm_source=mastodon.world&amp;utm_medium=social&amp;utm_campaign=posting" rel="nofollow noopener noreferrer" translate="no" target="_blank"><span class="invisible">https://</span><span class="ellipsis">jobsfordevelopers.com/jobs/sen</span><span class="invisible">ior-staff-database-engineer-at-diligent-com-apr-1-2025-ba8fb5?utm_source=mastodon.world&amp;utm_medium=social&amp;utm_campaign=posting</span></a><br><a href="https://mastodon.world/tags/jobalert" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>jobalert</span></a> <a href="https://mastodon.world/tags/jobsearch" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>jobsearch</span></a> <a href="https://mastodon.world/tags/hiring" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>hiring</span></a></p>