Now the time has come for me to dig up an old corpse and give it new life. The corpse in question is twsinit from Bizarre Sources, a project where I once crammed the whole init program in Linux into 1 page of memory.
You see, any program that runs has memory allocated to it for things like code, data, stack, environment, etc. The normal size for init in Linux is about 1-1.5MB in memory. But the init process really only needs to do one job; it inherits all orphan processes and thus has to take care of its “children” terminating. Otherwise they turn into zombie processes.
To do that job you really dont need 1MB of code. So I wrote a program from scratch called twsinit that can do the job of starting the system and buring zombie processes. The last official release did the job in two pages of memory, 1 page code and 1 page stack. But another version after that did away with the stack page as well.
So right now Im digging around in my old code, relearning how it works, and then I need to move on to learning ARM assembly and calling conventions in ARM Linux. Shouldnt be too difficult.
Yesterday I realized I havent even tested the Raspberry Pi 3 that I got from China on the 29th of December, so this evening I spent setting it up.
Since I am an old slackware guy I have been looking at Slackware ARM. I grabbed my biggest MicroSD, a 64GB class 10 card I havent used for anything until now.
Setting up the card for boot was easy. Just dd the downloaded image to the card, dont need to bother about formatting or partitioning because the image contains the partition table already set up.
The installing all the packages took quite some time, but it all went smoothly. Configuring the network took several hours of trial and error though but got it working fine eventually.
In the future I want all my Raspberry/Arduino/ESP8266 devices on a local network even though I have a great ISP and probably could give all the devices a real internet address. But security-wise that wouldnt be the greatest idea ever…
But for now, I just plug in power and my little Raspberry shows up on a local IP listening intently for my ssh input.
I love Slackware. None of that sudo madness that Debian/Raspbian thinks is a security improvement…
Delivery arrived from China. Order placed on November 30, 2016.