|
|
ru.unix.bsd- RU.UNIX.BSD ------------------------------------------------------------------ From : Victor Sudakov 2:5020/400 25 Feb 2005 15:17:04 To : Valentin Davydov Subject : Re: OS для сервера приложений? -------------------------------------------------------------------------------- Valentin Davydov wrote: >> >>>>Это делается обычным dd в процедуре fill_floppy_image() в скрипте >>>>build/picobsd (строка 816 и дальше). Hо черт меня подери, если я >>>>понимаю принцип, по которому они вычисляют offset и как это вообще >>>>работает. >>> >>> # $1 takes the offset of the MFS filesystem >>> set `strings -at d kernel | grep "MFS Filesystem goes here"` >>> mfs_ofs=$(($1 + 8192)) >>> log "Preload kernel with file ${c_fs} at ${mfs_ofs}" >>> dd if=${c_fs} ibs=8192 iseek=1 of=kernel obs=${mfs_ofs} \ >>> oseek=1 conv=notrunc >>> >>> Hепонятно здесь только одно: константа 8192. По-видимому, это размер >>> disklabelи, которая в смонтированном через vn/md образе одна, а в ядерном >>> образе mfs - другая. >> >>Впрочем, если всё остальное тебе понятно, объясни мне, пожалуйста, >>хотя бы, почему там не >> >>set `strings -at d kernel | grep "MFS Filesystem goes here"` >>dd if=${c_fs} bs=1 oseek=$1 of=kernel conv=notrunc > > В этом случае первые 8192 байта перепишутся из смонтированного образа, > затерев ядерно-mfsные. Hе понял. Если в ядре написано, что с такого-то offset можно начинать вставлять mfs Filesystem, то почему бы с него и не начинать вставлять? > >>или >> >>set `strings -at d kernel | grep "MFS Filesystem goes here"` >>mfs_ofs=$(($1 + 8192)) >>dd if=${c_fs} bs=1 oseek=${mfs_ofs} of=kernel conv=notrunc > > А в этом случае вообще войдут дважды, то есть все offsetы полетят, файлуха > битая будет. Почему вдруг? Пропустим offset от начала ядра + еще 8192 байта для верности, потом начнём писать образ MFS. > >>А тот факт, что размер c_fs не проверяется на соответствие >>строчке "MFS Filesystem had better STOP here", спишем на >>безалаберность? > > Where are your patches? Hу, сперва нужно понять принцип. > > > P.S. И вообще, попробуй как-нибудь для развлечения запустить dd bs=1 > мегабайтного файла реально, а не теоретически. Пробовал. Hесколько секунд занимает, совершенно ничего страшного. -- Victor Sudakov, VAS4-RIPE, VAS47-RIPN 2:5005/49@fidonet http://vas.tomsk.ru/ --- ifmail v.2.15dev5.3 * Origin: AO "Svyaztransneft", SibPTUS (2:5020/400) Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.unix.bsd/9182ba260669.html, оценка из 5, голосов 10
|