TCCBOOT layihə mənbə kodu birbaşa Linux kernel tərtib və açılış edə açılış loader edir.
TCCBOOT yalnız 138 KB böyük (sıkıştırılmamış code) və bu tərtib və 2.4 GHz Pentium 4 az 15 saniyə bir tipik Linux kernel çalıştırabilirsiniz.
TCCBOOT TinyCC compiler, assembler və Linker əsaslanır. TinyCC GNU C compiler və ikili kommunal ilə uyğun bir çox kiçik və sadə C compiler istehsal bir təcrübə deyil.
TCCBOOT boots TCCBOOT çalıştırabilirsiniz bir 'bzImage "Linux kernel image çalıştırabilirsiniz bir Linux kernel kimi eyni şəkildə, belə ki, hər hansı bir açılış loader. Mən yalnız isolinux ilə test, lakin LILO və ya GRUB çox işləməlidir.
TCCBOOT bir İlkin Ram Disk (initrd) saxlanılan zip'lenmiş ROMFS fayl C və ya montaj mənbələri deyilir. Bu ilk TinyCC command line (TTK yürütülebilir eyni sintaksis) olan faylı "boot / tccargs" deyilir. TinyCC sehr olmalıdır çıxış bir ikili image "kernel". Bu şəkil ünvan 0x00100000 da yüklənir. TCCBOOT sonra 32 bit düz rejimində ünvan 0x00100000 bir jump edir. Bu "vmlinux" kernel image ABI ilə uyğun gəlir.
Əvvəl:
TCCBOOT yalnız Linux 2.4.26 ilə test edilmişdir. Sadəlik TCCBOOT üçün Linux kernel bəzi ikili faylları və başlıqlarını istifadə edir, çünki TCCBOOT qurmaq üçün, ilk 2.4.26 kernel tərtib etməlidir. TCCBOOT də (TinyCC versiya 0.9.21 ilə test) TinyCC kodunu lazımdır. Siz lazım yolları vermək Makefile dəyişə bilərsiniz.
Misal:
Bir "Hello World" ROMFS partition daxil edilir (initrd.img). Siz misal / kataloq onu bərpa edə bilərsiniz. Siz qemu-tccboot "script ilə qemu PC emulator ilə test edə bilərsiniz.
Kernel yığma:
Məlumat üçün patch "linux-2.4.26-tcc.patch" TCCBOOT ilə Linux kernel qurmaq üçün lazım dəyişikliklər verir (Qeyd: öz Makefiles ilə kernel qurmaq üçün yetərli deyil - mən cəhd heç vaxt). müvafiq kernel konfiqurasiya faylını linux-2.4.26-config edir. Patches aşağıdakı səbəblərdən lazımdır:
- Dəstəksiz toplaşmaq direktivləri: .rept, .endr, .subsection
- Akt mənbələr lazımdır "# müəyyən __ASSEMBLY__"
- Statik dəyişənlərin inline toplaşmaq kodu göründüyü bilməz
- Ilə yazaraq / lvalue problemlər? :
- Uzun uzun bit sahələri
- 'Uyğun' yalnız sahələri üçün bütün structs üçün dəstəklənmir atribut
- Obscur preprocessor bug
Bu problemlərin bəziləri asanlıqla müəyyən edilə bilər, amma indi çox tənbəl deyiləm. Bu TinyCC / TCCBOOT tərəfindən kernel çox bugs hələ ki, əmin deyil, lakin ən azı bir shell açılış və başlaya bilərsiniz.
Software ətraflı:
Version: 0.1
Tarixi Upload: 3 Jun 15
Lisenziya: Shareware
Qiymət: 0.00 $
Məşhurluq: 58
Şərhlər tapılmadı