Skip to content
View KatoKode's full-sized avatar

Block or report KatoKode

Block user

Prevent this user from interacting with your repositories and sending you notifications. Learn more about blocking users.

You must be logged in to block users.

Maximum 250 characters. Please don't include any personal information such as legal names or email addresses. Markdown supported. This note will be visible to only you.
Report abuse

Contact GitHub support about this user’s behavior. Learn more about reporting abuse.

Report abuse
KatoKode/README.md

Hi, I'm JD McIntosh

Systems Programmer | x86_64 Assembly & Low-Level C Specialist Low-level computer Low-level gear Low-level rocket

Location: The South
Twitter/X: @EdistoKato

I'm a low-level developer focused on hand-written x86_64 assembly and performance-critical C for Linux systems. My projects are useful for embedded, firmware, kernel, or optimization work.

Skills & Expertise

  • x86_64 Assembly Language (NASM): Deep knowledge of the System V AMD64 ABI, registers, calling conventions, stack management, and optimization techniques.
  • Low-Level C: Building shared libraries, custom data structures, recursive algorithms, and memory-safe code (Valgrind-clean).
  • Data Structures & Algorithms: Pure assembly implementations of balanced trees, dynamic structures, and utilities.
  • Systems Programming: Dependency-free designs ideal for constrained environments—no external libs (with exception of libc).
  • Proven memory safety and correctness in complex, recursive code.

Highlighted Projects

BTree
Single-Threaded B-Tree in x86_64 Assembly
Fully functional B-Tree with insertion, deletion, search, and rebalancing—all in assembly. C interface as a shared library. Benchmarks: ~350k–590k ops/sec depending on order. Valgrind-clean.

RBTree
Red-Black Tree in x86_64 Assembly
Classic RB-Tree with rotations, coloring, and full operations implemented from scratch in assembly. Clean C API.

ByteBuffer
Fixed-Size ByteBuffer in x86_64 Assembly
Bounds-checked byte buffer (84% assembly) with get/put for primitives (int16–64, float/double, varchar, bytes). Little-endian serialization, mark/reset/flip, shared library, and configurable C demo.

JSON
High-Performance JSON Parser/Builder
Lightweight, dependency-free JSON library with assembly optimizations for tokenization and parsing. Supports nested objects/arrays. 100% Valgrind-clean.

x86_64 Tutorial
Practical x86_64 Assembly Tutorial
Step-by-step guide building a real shared library (libutil.so) from assembly sources. Covers ABI, linking, and integration with C.

Other repos: Stack, Queue, List all in assembly with C wrappers.

Why Low-Level?

I enjoy working close to the hardware. These projects showcase production-grade techniques: correctness proofs, benchmarks, memory safety, and real-world usability.

Open to opportunities in embedded systems, firmware, kernel development, high-performance computing, or any role valuing assembly and systems expertise.

Feel free to star ⭐ or fork—thanks for visiting!

— JD

Pinned Loading

  1. BTree BTree Public

    Single-Threaded BTree Implementation in x86_64 Assembly Language with C interface as a Shared-Library

    Assembly 2

  2. RBTree RBTree Public

    Red-Black-Tree Implementation in x86_64 Assembly Language with C interface

    Assembly 2