: . Главная . : . Форум . : . Загрузка . : . Пользователи . : . ЧаВо . : . Документация . :


Операционная система 3OS -> Форумы -> Разное
<< Предыдущая тема | Следующая тема >>   

Создаю Русскую ОС, принимаю бесплатные советы

Перейти к странице Предыдущая -1-2-3-4-5-6-7-8-9 Следующая
Автор Отправлено
Dreamer
Friday 08.04.2005 17:58 Цитата
Зарегистрирован: Friday 20.02.2004 09:36
Местоположение: Mogilev, Belarus
Сообщений - 114
Не, на русскоязычном асме. Особо хорошо смотреться будет команда 'popa'
Наверх
rus-os
Saturday 09.04.2005 08:07 Цитата
Зарегистрирован: Saturday 26.03.2005 09:41
Сообщений - 36
Язык копьютера - цифры . Компьютеру все равно что делать . Зачем цифры переводить в символику на латинице , чтобы потом ее руссифицировать ?
Наверх
Сайт
Wanderer
Saturday 09.04.2005 21:20 Цитата
Зарегистрирован: Monday 17.11.2003 16:13
Сообщений - 26
Хочешь бесплатный совет? Это завсегда. Садись и пиши. Убей год-два, перевороши кучу документации, узнай тонну всего о программировании и в самом конце пойми, что все, о чем ты думал на полном серьезе - полная херня. Только так. Пока грабли по собственному лбу не стукнут, все советы бесполезны.

Aut viam inveniam aut faciam.
Наверх
rus-os
Saturday 09.04.2005 22:11 Цитата
Зарегистрирован: Saturday 26.03.2005 09:41
Сообщений - 36
Этим я и занимаюсь - ворошу литературу и побываю знания . Спасибо .
Наверх
Сайт
rus-os
Monday 11.04.2005 17:04 Цитата
Зарегистрирован: Saturday 26.03.2005 09:41
Сообщений - 36
В БИОС зашита программа старта компьютера . Эта программа запускактся после окончания ПОСТ . Суть этой программы :
1. из БИОС получить список загрузочных устройств;
2. обратиться к первому по списку загрузочному устройству;
3. последовательно считать 512 Байт из нулевого сектора загрузочного устройства и сделать копию нулевого сектора диска в памяти с нулевого адреса;
4. проверить 512-й байт на наличие в нем сигнатуры АА55;
5. если сигнатура есть, то копия программы в памяти запускается с нулевого адреса, если сигнатуры нет , то выдается сообщение о отсуствии загрузочной записи или ошибка чтения.
Таким образом запускается не программа нулевого сектора загрузочного устройства , а с копии этой программы в памяти компьютера . Верно ли мое предположение?
Наверх
Сайт
Dreamer
Monday 11.04.2005 18:51 Цитата
Зарегистрирован: Friday 20.02.2004 09:36
Местоположение: Mogilev, Belarus
Сообщений - 114
Не понимаю хода мысли. BIOS читает 512 байт с диска по адресу 0x7C00 и передает управление на этот код, если последние 2 байта загрузчика (тех 512 байт) имеют значение 0xAA55 (или 0x55AA - не помню). А в чем заключается задача?
Наверх
Dreamer
Monday 11.04.2005 18:55 Цитата
Зарегистрирован: Friday 20.02.2004 09:36
Местоположение: Mogilev, Belarus
Сообщений - 114
Да, и еще. Мой самый умный совет, который я могу дать в данном случае: не делай "русскую ОС". Откажись ото всех своих идей. Сделай ОС наподобие Unix. Зачем? Просто, на мой взгляд, ты не знаешь вещей, чтобы сразу воплощать свои идеи в коде. Постепенно научишься. Кстати, ты думаешь каким образом распространять свою ОС: freeware, shareware, open source? Просто если ты уже сейчас думаешь брать за свое творение деньги - поверь мне, твоя ОС обречена на провал.
Наверх
rus-os
Tuesday 12.04.2005 10:30 Цитата
Зарегистрирован: Saturday 26.03.2005 09:41
Сообщений - 36
Возникает вопрос . В загрузочной записи первым идет безусловный переход на
первый промежуточный адрес , который также есть в загрузочной записи . Если
запись скопирована со смещением адресов , не на 0х0000 а на 0х7С00 , то
безусловный переход будет в переходом в пустое место памяти .
Или сначала копируется загрузочный сектор в память с адреса 0х0000 , потом
управление передается ей , и она копирует себя на адрес 0х7С00 со смещением
адресов и передает управление этой копии , а копия уже загружает остальные
данные с дискеты . Может так ?

Наверх
Сайт
Dreamer
Tuesday 12.04.2005 19:40 Цитата
Зарегистрирован: Friday 20.02.2004 09:36
Местоположение: Mogilev, Belarus
Сообщений - 114
У-ф-ф... Что-то ты мудришь. BIOS загружает код по адресу 0x7C00. В начале загрузочного сектора ставишь директиву org 0x7C00 (для FASM'а. Для других - не знаю). Про промежуточные адреса я ничего не понял, но готов предположить, что все гораздо легче, чем ты себе представляешь.
Наверх
rus-os
Tuesday 12.04.2005 20:49 Цитата
Зарегистрирован: Saturday 26.03.2005 09:41
Сообщений - 36
Есть предположение .
Если при загрузке на адрес 7С00 был явно указан этот адрес в БИОС и БИОС управление передает потом тоже явно на этот адрес , то сама загружаемая программа может делать переходы внутри себя используя только младшие байты адреса и таким образом работоспособность программы сохраняется . По скольку загрузочный сектор имеет 512 байт то в памяти он помещается в интервале 7С00 - 7DFF , причем сигнатура 55AA нахотится в последнем байте . Теперь нужно разобраться в том что делает программа загрузочного сектора . Очевидно что она что то копирует и инициализирует . Что она копирует и на какие адреса ?
Наверх
Сайт
Перейти к странице Предыдущая -1-2-3-4-5-6-7-8-9 Следующая

Модераторы: Roman I Khimov

Переход:     Наверх