Architecture
TinyPerl use a set of "magics" to make it compact. All the binarys (dll,so,exe) are compressed with UPX and the Lib (./lib directory) stay compressed inside a lib.zip file. To use the lib.zip file the module LibZip was used. The advantage of the LibZip compared to other similar modules, like PAR, is the independence and size. The files of LibZip stay appended inside the executable and the XS of Compress::Zlib, needed to uncompress the files, was compiled statically inside PerlLib (Perl58.dll), avoiding extra files
Features:
Modules:
It comes only with the basics to run, this means: Carp, Dynaloader, Exporter, IO, PerlIO, Socket, strict, utf8, vars, warnings, XSloader... (see inside lib.zip)
XS:
Enabled from version 1.1 of LibZip. When a module that uses XS files are loaded all the content of lib.zip/lib/auto/FOO is extracted to ./libzip-tmp directory.
lib.zip and ./lib
You can use the both ways, lib.zip file and ./lib directory, in the same time.
libzip-tmp
This is the directory where temporary files of LibZip are extracted. When TinyPerl goes out it cleans the directory (except files that are used in the moment). If 2 TinyPerl are running in the same time they will share the extracted files, saving load time.
You do not have permission to post replies to topics in this board. If you want to join in with discussions and create new topics please register. If you want to register your own free account with us, please click here.