PLAINTEXT EXECUTABLE README Purpose of plaintext executable format (px) is to show a relatively simple, alternative representation for executables within an usual unix-like filesystem. Plaintext process images do not store their load-information within themselves, instead a plaintext script is interpreted for initializing a process. The usual approach to handling executable loader involves a binary format that is embedded inside a process image and used directly to setup the process image. The approach is easy and fast but not very flexible. For instance, ELF binary format used by linux is extensible but very hard to read or generate. This makes possible utility libraries complex and hard to use and further degrades the quality of programming tools that need to handle ELF binary files in linux. px behavior is described in this directory's files. Though in short the idea is to store all executable data that doesn't constitute the process image in the script. When the user wants to execute a program, he executes the script that produces an executable image of the corresponding program. The separation allows executable specific data to be stored in single directory, while doing symbolic linking to the script from outside. There might be sense in hooking script into directory, so that when directory gets 'executed', the script gets executed inside it. Also the difference between executable debug data, documentation, source code, configs and data fades away when px is applied. The answer on whether to use px or not depends about the complexity and performance drawbacks that come to a program loader of the kernel. Because of this, a relatively low-level implementation is represented in loader.c which can be build by executing command 'sh make.sh' in this directory.