თანამედროვე კომპიუტერები, მიუხედავად მათი უზარმაზარი წარმადობისა, ჩატვირთვისას გაცილებით მეტ დროს ხარჯავენ, ვიდრე ათწლეულების წინ. მიზეზი ოპერაციული სისტემების მასშტაბურობა და ზედმეტი სერვისებია. ექსპერიმენტის ავტორმა გადაწყვიტა, დაებრუნებინა ძველი დროის სიმარტივე და შეექმნა სისტემა, რომელიც მხოლოდ აუცილებელ კომპონენტებს დაიტოვებდა.

სისტემის მინიმალიზაცია

Linux-ის ჩატვირთვის პროცესი იწყება „init“ პროგრამით, რომელიც ყველა სხვა პროცესს მართავს. ექსპერიმენტის ფარგლებში, ავტორმა დაწერა საკუთარი, უკიდურესად მარტივი „init“-ის ანალოგი C ენაზე, რომელიც მხოლოდ შეტყობინებას ბეჭდავს და სისტემას თიშავს. ეს მიდგომა საშუალებას იძლევა, თავიდან ავიცილოთ მრავალსაფეხურიანი დატვირთვა, რომელსაც თანამედროვე დისტრიბუციები იყენებენ.

სისტემის გასატესტად QEMU და KVM ვირტუალიზაცია გამოიყენეს. ეს საშუალებას იძლევა, ჩაიტვირთოს მხოლოდ ბირთვი (kernel) და მინიმალური ფაილური სისტემა (initrd). შედეგად, კომპიუტერი ჩართვიდან წამებში მზადაა სამუშაოდ.

აპარატურული რეალიზაცია

რეალურ აპარატურაზე მსგავსი სისტემის გაშვება უფრო რთულია და მოითხოვს USB-მეხსიერების სწორად კონფიგურაციას. საჭიროა UEFI-სთან თავსებადი „unified kernel“-ის შექმნა, რომელიც აერთიანებს ჩამტვირთველს, ბირთვს და ფაილურ სისტემას. ავტორმა გამოიყენა ukify ინსტრუმენტი, რათა შეექმნა ერთიანი ფაილი, რომელიც ნებისმიერი თანამედროვე ლეპტოპისთვის გასაგებია.

ბირთვის ოპტიმიზაცია

სისტემის საბოლოო ოპტიმიზაციისთვის საჭიროა თავად Linux-ის ბირთვის გადაწყობა. სტანდარტული დისტრიბუციების ბირთვები გადატვირთულია ფუნქციებით, რომლებიც მინიმალისტური პროექტისთვის ზედმეტია. make tinyconfig ბრძანების გამოყენებით, შესაძლებელია თითქმის ყველა არასაჭირო ფუნქციის გათიშვა, რაც ბირთვს არა მხოლოდ პატარას, არამედ ელვისებურს ხდის.

ექსპერიმენტი ადასტურებს, რომ თუ უარს ვიტყვით ზედმეტ აბსტრაქციებზე, Linux-ის გამოყენება შესაძლებელია ისეთივე სიმარტივით, როგორც ეს ათწლეულების წინ ხდებოდა.