Author Archives: jimbelton

About jimbelton

I'm a software developer, and a writer of both fiction and non-fiction, and I blog about movies, books, and philosophy. My interest in religious philosophy and the search for the truth inspires much of my writing.

Goodbye Windows 11, Hello Ubuntu 22.04

I finally gave up on Windows 11, and installed Ubuntu. I opted to go with Ubuntu because it’s based on debian and supports UEFI secure booting, and 22.04 because it has long term support (LTS). Windows time had come because … Continue reading

Posted in systems administration | Leave a comment

Compile Time Assertions in C

There have always been reasons to want to cause a compiler to produce an error when an invariant violation is detected at compile time. For example, if you have a structure whose size is a power of 2 greater than … Continue reading

Posted in c programming | Tagged , | Leave a comment

mak, libtap, and libkit updates

I’ve added some updates to the mak make project, the libtap test anything protocol library, and the public version of Cisco’s libkit library (in the jimbelton branch of the repository). Here’s a summary of what changed: mak I made a … Continue reading

Posted in c programming | Tagged , , , , | Leave a comment

What’s New in libsxe?

Since the last release of libsxe to my public repository in github, jimbelton/libsxe, there have been numerous changes: sxe-jitson Extensions The follow extensions are available in sxe-jitson: Release 2.3.0, which includes all of these, is now available in the github … Continue reading

Posted in Uncategorized | Leave a comment

Per Thread Memory Garbage Collection in C

Multithreading is tricky. Doing it efficiently is even harder. One of the biggest tools in the C programming toolbox is the __thread scope modifier (or __declspec(thread) as it’s known in Visual C). This allows you to create a static variable … Continue reading

Posted in c programming | Tagged , , , , , , , , | Leave a comment

Extending sxe-jitson With Variables and Constants

One of the most interesting things other than sxe-jitson, my open source JSON parser, that I’ve worked on recently is a proprietary language that is a superset of JSON used to represent security policies. One of the main reasons I … Continue reading

Posted in c programming | Tagged , , , , | Leave a comment

libkit: Using Packaged jemalloc Without Injection

Jemalloc is the memory allocation library used by FreeBSD. It has properties that make it desirable to use in Linux services, particularly it’s ability to reuse memory, preventing an ever growing memory footprint. Ruby uses jemalloc on Linux by injecting … Continue reading

Posted in c programming | Tagged , , , , , , | Leave a comment

sxe: Pluggable Memory Manager and Leaks Fixed

I just committed an update to sxe that points to the newest version of mak, which adds a convention that detects code that calls glibc memory allocation function (see Checking Coding Conventions in Perl), and replaces most calls to these … Continue reading

Posted in c programming | Tagged , , , | Leave a comment

Checking Coding Conventions in Perl

The mak build system, developed 20 years ago for the SXL2 project at Sophos, is an open source framework built with gmake and perl. One of the more interesting bits is the convention checker, which is written in perl. The … Continue reading

Posted in Uncategorized | 2 Comments

libsxe: High Speed Fine Grained Diagnostic Logging

The following is a post from 2011 that I made on Jim’s Jumbler The sxe-log package of the libsxe library (see https://github.com/jimbelton/sxe) has always had macro based logging with a decent feature set: Trace and dump level messages compiled out … Continue reading

Posted in c programming | Tagged , | Leave a comment