Ru-Board.club
← Вернуться в раздел «Программы»

» GRUB4DOS и GNU GRUB

Автор: z0bra
Дата сообщения: 25.11.2009 08:53
vadisat» а просто после загрузки образа в память редактировать файл autoexec.bat строкой Вам необходимой с необходимым смещением, и уж потом продолжать загрузку.
Автор: LevT
Дата сообщения: 25.11.2009 09:14
kDnZP

Возможность редактирования в памяти в нынешнем виде похожа на грязный хак. Годится один разобраться, сделать свою любимую менюшку и забыть как страшный сон. Либо наоборот жить этим, почти участвуя в разработке самого grub4dos.. (ценой сужения собственного кругозора, да-да).

А надо - сделать её частью арсенала широкодоступных инструментов для "казуального" использования.
Автор: ABATAPA
Дата сообщения: 25.11.2009 09:23
LevT

Про Вашу "телегу" (это еще мягко сказано) все уже наслышаны.
Если Вам не нравится метод "грязного хака" (который таковым не является) - не пользуйтесь им.
А "страшный" сон - это Ваши, простите, термины (сюда же - '"казуальное" использование').

Метод хорош тем, что позволяет легко, безопасно и бесследно (потому что в памяти) поменять несколько байт. Часто только эти несколько байт и отличают два пункта загрузки.
Автор: AZJIO
Дата сообщения: 25.11.2009 09:29
ABATAPA от mkisofs я уже перешёл на cdimage, а в нём ключей кодировки нет. Теперь уже перешёл на UltraISO.exe, протестировал, всё поддерживает, глюков пока не замечаю, протестировал на виртуалке и на реальном компе с русскими именами файлов и более 11 символов, проверил CD-загрузку, RAM-загрузку, загрузку образов IMA - 1.4Мб, 2.8Мб, 32Мб, вложенное меню, gfxboot. Имена файлов *.lst в верхний регистр переводить не обязательно, хотя загрузчики у меня уже в верхнем регистре.

vadisat
Толком не понял, но можно в autoexec.bat вписать условие, если существует такой то файл, то стартовать его. Или в VC, DN сделать меню, которое появляется при старте и вписать туда нужные программы. Или в самом autoexec.bat вписать меню.
Автор: LevT
Дата сообщения: 25.11.2009 09:32
ABATAPA
Вы опять спорите с собственными представлениями, а не с реальным оппонентом.

Метод хорош - но надо выстраивать картину мира (или, если угодно, методологию) типа "если задача такова, то один из методов вот"

"освоив этот метод, получите ещё вот такие такие бонусы - но такой-то ценой" (в частности, будете недооценивать скриптование в загрузчике)


Добавлено:

Цитата:
Или в самом autoexec.bat вписать меню.


это точно можно. Но язык настолько угробищный... Вот уж что страшный сон.

Добавлено:

А "телегу" я только что пополнил. Пока кратко упомянул уникальное умение grub4dos.

Автор: ABATAPA
Дата сообщения: 25.11.2009 09:58
AZJIO

Цитата:
ABATAPA от mkisofs я уже перешёл на cdimage,


Ну, как вариант.


Цитата:
олком не понял, но можно в autoexec.bat вписать условие,

а можно просто менять значение переменной:
set NAME=CODE

Автор: NIKZZZZ
Дата сообщения: 25.11.2009 09:58
LevT

Цитата:
Но язык настолько угробищный...

Угробищным язык быть не может, но это понятие вполне можно применить к человеку, который не умеет им пользоваться ...
Автор: LevT
Дата сообщения: 25.11.2009 10:01
ABATAPA

Цитата:
Метод хорош тем, что позволяет легко, безопасно и бесследно (потому что в памяти) поменять несколько байт.


А если образ сжат - или даже типа закриптован?

Будете ждать следующих версий монолитного grub4dos и тестировать глючные недоделки? Я предпочитаю уже сейчас, наперёд видеть потребность в таких модулях grub2 (т.е создавать на них спрос, которым мотивируются разработчики)


Добавлено:
NIKZZZZ

Угробищность языка батников это моё мнение.
С удовольствием поспорил бы с Вами на тему языкознания - но не ценой офтопика здесь и сейчас.
Автор: ABATAPA
Дата сообщения: 25.11.2009 10:22
NIKZZZZ
Согласен.

К тому же, это все же загрузчик, а не интерпретатор языка.
Кому мало - пусть пользует другое, благо, выбор есть.
Да тот же образ с Linux+perl+(нужное вписать), и далее 'kexec -l grub.exe --initrd=newimage --commandline="..." ; kexec -e'

PS: К слову, таким образом можно грузить зашифрованные образы. Это может быть актуально - время такое...
Автор: LevT
Дата сообщения: 25.11.2009 10:27
ABATAPA

Цитата:
Да тот же образ с Linux+perl+(нужное вписать), и далее 'kexec -l grub.exe --initrd=newimage --commandline="..." ; kexec -e'


и это тоже уместно в "телеге" - но на подобающем уровне её детализации. Во избежание перекоса, да-да.
Автор: Hrist
Дата сообщения: 25.11.2009 12:45
уважаемые гуру
просвятите - обязательно ли и зачем переименовывать папку BART в MININT на загрузочной флешке? и не надо ли при этом еще что то менять в бартпе который чудесно грузился с двд?
Автор: NIKZZZZ
Дата сообщения: 25.11.2009 12:59
Hrist

Цитата:
зачем переименовывать папку BART в MININT на загрузочной флешке?

Это прописано в загрузчике, minint - загрузка с HDD, i386 - с CD.

Цитата:
что то менять в бартпе который чудесно грузился с двд?

В принципе, достаточно кинуть ntdetect.com в корень флэшки.

Автор: Hrist
Дата сообщения: 25.11.2009 13:45
NIKZZZZ

Цитата:
Это прописано в загрузчике, minint - загрузка с HDD, i386 - с CD.

а если я пропишу запуск как и в моем двд с папки bart
что будет?
Автор: NIKZZZZ
Дата сообщения: 25.11.2009 14:00
Hrist

Цитата:
сли я пропишу запуск как и в моем двд с папки bart
что будет?

Будет ругань загрузчика, \minint\file не найден.
Автор: Hrist
Дата сообщения: 25.11.2009 14:08
NIKZZZZ

Цитата:
В принципе, достаточно кинуть ntdetect.com в корень флэшки.

а где взять?
а . понял. с диска с: %)))
Автор: NIKZZZZ
Дата сообщения: 25.11.2009 14:21
Hrist

Цитата:
а где взять?

В каталоге " bart" , а лучше отсюда, модифицированная версия для флэшек.
Автор: LevT
Дата сообщения: 25.11.2009 14:38
NIKZZZZ

Цитата:
Это прописано в загрузчике,


я так понимаю, в setupldr ?
в любой его разновидности без исключений?




Цитата:
модифицированная версия для флэшек.


А что именно модифицировано для флешек в ntdetect.com?
Автор: NIKZZZZ
Дата сообщения: 25.11.2009 14:52
LevT

Цитата:
в любой его разновидности без исключений?

Именно так.

Цитата:
что именно модифицировано для флешек в ntdetect.com?

С обычным ntdetect.com возможен (не обязателен) на некоторых флэшках BSOD при загрузке.

Автор: LevT
Дата сообщения: 25.11.2009 15:05

Цитата:
Именно так.


А какие ещё особенности setupldr по сравнению с ntldr?
(можно ссылкой, если где-то концентрировано изложено.

Если же нет такой ссылки - то буду вытягивать максимум инфы, чтобы пополнить свою "телегу")



Цитата:
С обычным ntdetect.com возможен (не обязателен) на некоторых флэшках BSOD при загрузке.


В чём суть внесенного исправления? (Отвечено на то, как проявлялась кривизна оригинала - а не в чём она состояла).
Автор: NIKZZZZ
Дата сообщения: 25.11.2009 15:14
LevT

Цитата:
А какие ещё особенности setupldr по сравнению с ntldr?

Два названия одного и того-же файла, первый для загрузки с CD , второй HDD

Цитата:
В чём суть внесенного исправления?

ntdetect.com определяет оборудование, исходный не всегда корректно работает с Usb устройствами, в результате BSOD.


Автор: Hrist
Дата сообщения: 25.11.2009 15:27
NIKZZZZ
и все же странно. у меня ведь барт на двд грузился не с i386 а с папки bart
Автор: LevT
Дата сообщения: 25.11.2009 15:30
NIKZZZZ

Интересуют детали... или ссылка на страницу с максимально полной инфой.

Если неудобно отвечать прямо сейчас, я могу подождать. Но окончательно не отстану, пока не получу ответа.
Автор: AlexVel
Дата сообщения: 25.11.2009 15:32
Hrist

Цитата:
и все же странно. у меня ведь барт на двд грузился не с i386 а с папки bart

скорее всего используется пропатченный setupldr, в котором вхождения "i386" заменены на "bart"
Автор: NIKZZZZ
Дата сообщения: 25.11.2009 15:38
LevT

Цитата:
пока не получу ответа.

Проще всего набрать в Google "ntdetect.com Dietmar"


Добавлено:
AlexVel

Цитата:
все же странно. у меня ведь барт на двд грузился не с i386 а с папки bart

Сравни файлы setupldr.bin из сборки с оригинальным из дистрибутива WinXp и получишь ответ.
Автор: Hrist
Дата сообщения: 25.11.2009 15:45
AlexVel
видимо так и есть.

хотя... нет. эти файлы я копирую заново частенько из папки созданной конструктором бартпе \I386\
но работает у меня на двд из папки \BART\ без проблем. может это фича BCDW и его лоадера - помниться а в той теме то же некоторые дивились что мне SETUPLDR.BIN править для этого не приходится

а на двд у меня еще вот эти файлы в корне лежали

BOOTFONT.BIN
BOOTSECT.BIN
WIN51IP
WIN51IP.SP2
WIN51IP.SP3

они не нужны на флехе?
покамест у меня при загрузке бартпе с флехи - в самом начале вместо русского были крякозяблы. (на двд такого не было)
Автор: NIKZZZZ
Дата сообщения: 25.11.2009 15:50
Hrist

Цитата:
в самом начале вместо русского были крякозяблы

BOOTFONT.BIN отвечает за крякозяблы, его желательно оставить в корне флэшки, остальные нужны только для CD.


Добавлено:

Цитата:
может это фича BCDW и его лоадера - помниться а в той теме то же некоторые дивились что мне SETUPLDR.BIN править для этого не приходится

Возможно, но на флэшке это вряд-ли пройдет.

Автор: LevT
Дата сообщения: 25.11.2009 16:31
NIKZZZZ

Ну что ж Получается, что, имея самое абстрактное представление о PE-билдерстве, я во вчерашней "телеге" эту проблему предсказал (пункт 4)
Загружаемая из образа система должна знать физический путь к собственному телу, иначе свалится в 0x7B
Ща подредактирую телегу на высоком уровне, а PE-деталями её разбавлять рановато (пока нет уверенности в полноте и безошибочности общей картины) ...

Насчёт отличия ntldr от setupldr: вы хотите сказать, что их совершенно не останется после патча в памяти имен файлов (каких, кстати, конкретно?) и путей?

Зачем тогда вообще использовать setupldr - если есть менее глючный ntldr?

Автор: AZJIO
Дата сообщения: 25.11.2009 21:41
LevT
Цитата:
Зачем тогда вообще использовать setupldr - если есть менее глючный ntldr?
вообще-то по содержимому они сильно отличаются, в ntldr не найти .sif, в конце файла тексты ошибок в dos-кодировке, похожие куски текста встречаются. Смысл файлов одинаковый, но один другим не заменить.
Автор: LevT
Дата сообщения: 25.11.2009 22:00

Цитата:
вообще-то по содержимому они сильно отличаются,


где можно ознакомиться с техническими подробностями?


Моя текущая гипотеза такова:

ntldr полагается на "hal" (абстракцию железа), конфиг берёт из реестра(?), в который тот записывается инсталлятором - и заводит ядро "типа pnp" в терминах моей телеги.

setupldr начинает каждый раз с нуля, располагая только тем, что ему рассказал биос на матери (и костыль ntdetect?). То есть представляет собой сам "ось типа embedded" в терминах телеги. Отсюда необходимость хаков для непредусмотренных изначально способов старта.
Автор: NIKZZZZ
Дата сообщения: 25.11.2009 22:21
LevT

Цитата:
где можно ознакомиться с техническими подробностями?

Можно, например, не флудить в топике
Цитата:
Моя текущая гипотеза такова:
, а почитать например "Руссинович М. Соломон Д. Внутреннее устройство Microsoft Windows... ", после чего вопросы либо отпадут, либо будут по делу.




Добавлено:
LevT

Цитата:
где можно ознакомиться с техническими подробностями?

Можно, например, не флудить в топике
Цитата:
Моя текущая гипотеза такова:
, а почитать например "Руссинович М. Соломон Д. Внутреннее устройство Microsoft Windows... ", после чего вопросы либо отпадут, либо будут по делу.


Страницы: 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586

Предыдущая тема: Альтеранативы Media Center от M$


Форум Ru-Board.club — поднят 15-09-2016 числа. Цель - сохранить наследие старого Ru-Board, истории становления российского интернета. Сделано для людей.