<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0"><channel><title>smeso</title><link>https://smeso.it/</link><description></description><lastBuildDate>Mon, 04 Mar 2024 19:00:00 +0100</lastBuildDate><item><title>Memory ordering and atomic operations synchronization</title><link>https://smeso.it/2024/03/04/memory-ordering-and-atomic-operations-synchronization.html</link><description>&lt;p&gt;Every time I need to play with atomic variables and I try to be clever and optimize them
as much as possible I need to re-learn what the various memory ordering options do.
It doesn't help that memory ordering is easily one of the most complex topics
I ever worked with.
For this reason I decided to finally write down what I (think) I know about
memory ordering, making it easier for the future me …&lt;/p&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">smeso</dc:creator><pubDate>Mon, 04 Mar 2024 19:00:00 +0100</pubDate><guid isPermaLink="false">tag:smeso.it,2024-03-04:/2024/03/04/memory-ordering-and-atomic-operations-synchronization.html</guid><category>Technical</category><category>c</category><category>cpp</category><category>rust</category><category>atomic</category><category>concurrency</category><category>memory</category><category>memory-ordering</category><category>memory-model</category><category>memory-barrier</category><category>low-latency</category><category>optimization</category></item><item><title>ClickHouse: don't roll your own crypto</title><link>https://smeso.it/2024/03/03/clickhouse-dont-roll-your-own-crypto.html</link><description>&lt;p&gt;ClickHouse is a column-oriented database management system that is designed
for high-performance analytics. It is known for its speed and efficiency in
processing large volumes of data, making it a popular choice for companies
looking to analyze massive datasets in real-time.&lt;/p&gt;
&lt;p&gt;(the above text was written by some AI, because I couldn't be bothered
to think of anything, but I promise I'll write the rest of the post
myself, maybe)&lt;/p&gt;
&lt;p&gt;Working as a CH contributor …&lt;/p&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">smeso</dc:creator><pubDate>Sun, 03 Mar 2024 15:22:00 +0100</pubDate><guid isPermaLink="false">tag:smeso.it,2024-03-03:/2024/03/03/clickhouse-dont-roll-your-own-crypto.html</guid><category>Technical</category><category>clickhouse</category><category>security</category><category>cryptography</category><category>rng</category><category>vulnerability</category><category>cpp</category></item><item><title>MIPS stacktrace: an unexpected journey</title><link>https://smeso.it/2024/03/02/mips-stacktrace-an-unexpected-journey.html</link><description>&lt;p&gt;Automatically receiving a stacktrace when your C program crashes
isn't rocket science. But this time it was more difficult than
I expected.
This is a short recollection of the things I found out few years ago.
This post assumes that the reader has some basic knowledge about
functions' calling conventions, CPU registers, and assembly.&lt;/p&gt;
&lt;h1&gt;Some context&lt;/h1&gt;
&lt;p&gt;A C program running on Linux was randomly crashing on one specific embedded
device deployed on the other side …&lt;/p&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">smeso</dc:creator><pubDate>Sat, 02 Mar 2024 14:30:00 +0100</pubDate><guid isPermaLink="false">tag:smeso.it,2024-03-02:/2024/03/02/mips-stacktrace-an-unexpected-journey.html</guid><category>Technical</category><category>mips</category><category>embedded</category><category>glibc</category><category>gcc</category><category>stacktrace</category><category>C</category><category>assembly</category><category>backtrace</category><category>libgcc</category></item><item><title>Hello world!</title><link>https://smeso.it/2017/10/06/hello-world.html</link><description>&lt;p&gt;This is my first post!&lt;/p&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">smeso</dc:creator><pubDate>Fri, 06 Oct 2017 10:42:00 +0200</pubDate><guid isPermaLink="false">tag:smeso.it,2017-10-06:/2017/10/06/hello-world.html</guid><category>News</category><category>self-referential</category></item></channel></rss>