Executable Code Golf - Making Tiny Binaries for Constrained Systems
Offered By: linux.conf.au via YouTube
Course Description
Overview
Syllabus
Intro
What is Code Golf?
But What is Executable Code Golf?
Example: Paint in 16 bytes
My Hobby: Making 256B Animations
Many Different Categories
State of the Art 1kB to 8kB (Windows v. Linux)
XLINK project (1) • Goal: Produce an open source link-time compressor non-Windows platforms
PAQ Compression Algorithm
Arithmetic Range Coding Properties
Context Modeling and Context Mixing
Sparse n-gram Context Modeling . For each bit to decode
Complete Decoder Specification • Entropy Segment data structure that describes decoder problem
Why does this work better than LZ based compression?
Anatomy of an Object / Library File
XLINK Implementation • Linux linker has many implementation concerns
Programming in MS-DOS
Cannot access enough memory for hash table
Need 32-bit registers for more accurate EC
Hash function too slow for use on 386
i386 PAQ Decompression Stub (255 bytes)
Why should I care about binary compression in 2019?
Future Directions
Taught by
linux.conf.au
Related Courses
The Open-Source Chatbot That Accidentally Built a Communitylinux.conf.au via YouTube Add Depth - Stereoscopic Imagery for Everyone
linux.conf.au via YouTube Becoming a Tyrant - Implementing Secure Boot in Embedded Devices
linux.conf.au via YouTube The seL4 Foundation - Growing Through Upheaval
linux.conf.au via YouTube Conference Close
linux.conf.au via YouTube