|
|
ru.linux- RU.LINUX --------------------------------------------------------------------- From : Terehov Gennady 2:5020/400 29 Nov 2002 14:19:22 To : vitus@45.free.net Subject : Re: make Linux Kernel -------------------------------------------------------------------------------- On Fri, Nov 29, 2002 at 06:49:12AM +0000, Victor Wagner wrote: > Terehov Gennady <webmaster@pech.elektra.ru> wrote: > TG> On Thu, Nov 28, 2002 at 01:07:01PM +0300, Dmitry Bezgodov wrote: > >> Привет! > >> > >> Hе знаю, как сейчас, но раньше было > >> make zImage. > > TG> Интересно, а если полученный несжатый vmlinux просто тупо сжать > TG> g/bzip'ом, оно грузиться будет? > > Мakefile почитай на тему того, как оно там делается. > Кстати, насколько я помню, bzImage никакого отношения к bzip не имеет. /usr/src/linux/arch/i386/boot/Makefile : zImage: $(CONFIGURE) bootsect setup compressed/vmlinux tools/build $(OBJCOPY) compressed/vmlinux compressed/vmlinux.out tools/build bootsect setup compressed/vmlinux.out $(ROOT_DEV) > zImage bzImage: $(CONFIGURE) bbootsect bsetup compressed/bvmlinux tools/build $(OBJCOPY) compressed/bvmlinux compressed/bvmlinux.out tools/build -b bbootsect bsetup compressed/bvmlinux.out $(ROOT_DEV) > bzImage /usr/src/linux/arch/i386/boot/compressed/Makefile : # # linux/arch/i386/boot/compressed/Makefile # # create a compressed vmlinux image from the original vmlinux # [skip] # # ZIMAGE_OFFSET is the load offset of the compression loader # BZIMAGE_OFFSET is the load offset of the high loaded compression loader # ZIMAGE_OFFSET = 0x1000 BZIMAGE_OFFSET = 0x100000 Далее, если верить http://www.moses.uklinux.net/patches/lki-1.html разница между z и bz состоит в: Bootsector asm code bootsect.S is preprocessed either with or without ^^^^^^^^^^^^^^^ -D__BIG_KERNEL__, depending on whether the target is bzImage or zImage, ^^^^^^^^^^^^^^^^^ into bbootsect.s or bootsect.s respectively. и Setup code setup.S (setup.S includes video.S) is preprocessed into bsetup.s for bzImage or setup.s for zImage. In the same way as the bootsector code, the difference is marked by -D__BIG_KERNEL__ present for bzImage. The result is then converted into 'raw binary' form called bsetup. Что касается использования компрессора, то он в обоих случаях один и тот же- gzip: gzip -9 < $tmppiggy > $tmppiggy.gz То есть b означает "big" что-ли? А я где-то читал (как теперь оказалось меня там обманули) что b означает bzip :) Вот и верь после этого всяким статейкам в Интернете... Все, блин, самому проверять надо. Спасибо VW вправил мозги :) Понятное дело, vmlinux в vmlinuz просто компрессором не сожмешь :) Геннадий -- Отправлено через сервер Форумы@mail.ru - http://talk.mail.ru --- ifmail v.2.15dev5 * Origin: Talk.Mail.Ru (2:5020/400) Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.linux/1043464ae78dc.html, оценка из 5, голосов 10
|