All Projects → mystor → Micro Coreutils

mystor / Micro Coreutils

An implementation of the unix commands yes, cat, and echo in as few bytes of executable as possible

Programming Languages

assembly
5116 projects

These are minimal implementations of the unix utilities yes, cat, echo, true and false, written in x86-64 assembly for linux. The goal was to create an implementation which would consume the smallest number of bytes possible as a complete ELF executable.

The micro program is a sloppily created program which will remove the section headers from the program in order to save on the space which they would have consumed, and allows for the programs to be as small as possible, containing only the machine code, the ELF header, and a single program segment header. It's also super hacky, and will probably not work well for you.

To build, run make. All of the utilities which you should need are probably already installed on your machine.

The following are the current sizes of the programs as provided by the systems and as implemented here, in bytes.

+-------+-----+-------+ | prog | sys | micro | +-------+-----+-------+ | cat | 51K | 167 | | echo | 31K | 167 | | false | 27K | 127 | | true | 27K | 125 | | yes | 27K | 158 | +-------+-----+-------+

NOTE: These programs are not identical to the programs provided by the system, especially in their error handling/reporting capabilities. However, they do perform the primary purpose of the program correctly.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].