OSDev

для всех
Текущее время: 09 май 2024, 13:44

Часовой пояс: UTC + 3 часа




Начать новую тему Ответить на тему  [ Сообщений: 129 ]  На страницу Пред.  1 ... 6, 7, 8, 9, 10, 11, 12, 13  След.
Автор Сообщение
 Заголовок сообщения: Re: Загрузка с флешки
СообщениеДобавлено: 27 ноя 2011, 22:24 
Аватара пользователя

Зарегистрирован: 14 мар 2011, 12:31
Сообщения: 970
Откуда: Дагоба
Станислав,
Изучите, наконец, пошаговые уроки Алексея Фрунзе, и будут у вас и прерывания, и клавиатура, и всё остальное в защищённом режиме. Заодно стоит подучить и русский язык, а то ваши "апоратный", "зашишеный" и прочие ошибки уровня второго класса создают стойкое впечатление фатальной безграмотности.
Простите меня, но у меня такое чувство, что всё понимание ОС у вас сводится к выводу на монитор картинки 640*480 с нестандартного раздела флешки, и даже это за вас в итоге сделают phantom-84, Himik и pavia.

_________________
Yet Other Developer of Architecture.
The mistery of Yoda’s speech uncovered is:
Just an old Forth programmer Yoda was.

<<< OS Boot Tools. >>>


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Загрузка с флешки
СообщениеДобавлено: 28 ноя 2011, 11:10 
Заблокирован

Зарегистрирован: 28 окт 2011, 12:14
Сообщения: 555
Откуда: Новосибирск
Даже не собираюсь с вами спорить, что есть то есть.
Задачи у всех разные, у меня была задача перевести свои функции рисования шрифтов на асм, со своим загрузчиком. Что я скоро и сделаю.
Разбираться в прерываниях мне тоже нужно(не поспоришь), по готовому коду разобраться проше чем прочитать книжку.
По каждому вопросу несколько мнений, все друг другу противоречат, разобраться не просто.
В книжке написано, что int15 87h копирует в верхнюю память, как это на практике??(как трудно жить!)
Ошибок обещаю больше не делать.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Загрузка с флешки
СообщениеДобавлено: 28 ноя 2011, 13:01 

Зарегистрирован: 21 сен 2007, 17:24
Сообщения: 1088
Откуда: Балаково
Станислав писал(а):
В книжке написано, что int15 87h копирует в верхнюю память, как это на практике??

Это легче сделать без использования BIOS. На практике это тоже самое, что и копирование в защищённом режиме, используя 32-битные сегменты. Сама функция переходит в защищённый режим для выполнения работы. Ей передаётся указатель на массив из нулевого дескриптора и ещё двух дескрипторов - дескриптор сегмента источника и дескриптор сегмента приёмника.
Описание найдёшь в справочнике
http://www.cs.cmu.edu/~ralf/files.html
в разделе C.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Загрузка с флешки
СообщениеДобавлено: 28 ноя 2011, 20:24 
Заблокирован

Зарегистрирован: 28 окт 2011, 12:14
Сообщения: 555
Откуда: Новосибирск
Перед тем как спросить про функцию все просматривают её описания на нескольких сайтах.
Заметил я что постоянно возникает путаница в определениях. сегментная адресация в мегабайте памяти это просто адрес 20х битный, адресация с расширенными сегментами это адрес 32битный тот же что и в защищенном, опять путаница, тогда зачем говорить о сегментах вообще путать себя. Адрес в памяти например 20000000байт он в любом режиме ни куда не денется. есть прерывания биус которые вовсе не прерывания а его функции, которые проше было бы вызывать командой call или jmp не её адрес, все ровно у них адреса постоянные. Опять запутки, с аппаратными прерываниями их путаешь, в защищенном режиме сам запрещаешь прерывания, хотя вызвать любую функцию, по любому адресу, пусть её даже биус загрузил нет проблем. Т.е. есть в биусе хорошая функция чтения секторов(читает через порты же) почему тогда вызвать нельзя. Если процессору разрешили адресоваться в так называемую верхнюю память(бредовое название) почему биус не копирует туда сектор. А что USB, это же просто PCI всего то. тестируешь устройства на PCI, он выдаёт тебе и камеры и флешки и винты, мышки ... тут черт не запутается
Разобраться можно но это же бред сивой кобылы.


Последний раз редактировалось Станислав 29 ноя 2011, 05:12, всего редактировалось 1 раз.

Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Загрузка с флешки
СообщениеДобавлено: 28 ноя 2011, 20:52 
Аватара пользователя

Зарегистрирован: 16 май 2007, 23:46
Сообщения: 1126
Любое технологическое направление является дотационным. То есть государство или банки или ещё кто спонсирует развитие производства. Потому что видимо у Американцев точно такая же система, что у нас спускается план и надо освоить деньги. Вот они гнали к сроку сделать архитектуру. Вот и сделана ужасная архитектуру.
Это в советское время фильмы переснимали второй раз, если он не нравился худ совету. А в современную эпоху ужас даже на макет денег нет надо сделать завтра за минимум средств. Ну и как тут можно сделать качественную архитектуру? А во вторых совместимость и ещё рас совместимость.

Цитата:
Заметил я что постоянно возникает путаница в определениях. сегментная адресация в мегабайте памяти это просто адрес 24х битный, адресация с расширенными сегментами это адрес 32битный тот же что и в защищенном, опять путаница, тогда зачем говорить о сегментах вообще путать себя.
Не замечал на форумах путаницы. А вот у тебя она есть. Ещё раз прочитай что такое сегментная адресация.

Цитата:
Т.е. есть в биусе хорошая функция чтения секторов(читает через порты же) почему тогда вызвать нельзя.

По тому что BIOS не рассчитано на работу с защищенным режимом, за исключением специального ряда функций.
Вызвать можно, но никто не гарантирует, что оно будет работать всегда и везде.

Цитата:
Т.е. есть в биусе хорошая функция чтения секторов(читает через порты же) почему тогда вызвать нельзя. Если процессору разрешили адресоваться в так называемую верхнюю память(бредовое название) почему биус не копирует туда сектор.
Первые разработчики БИОСа работали с памятью в несколько килобайт. И тогда про защищённый режим и не знали, так как его не существовало. Тот же Бил Гейтс в те времена заявлял, что 640Кбайт хватит всем. А вот почему в EDD не добавили не ясно.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Загрузка с флешки
СообщениеДобавлено: 29 ноя 2011, 10:27 
Аватара пользователя

Зарегистрирован: 14 мар 2011, 12:31
Сообщения: 970
Откуда: Дагоба
Полная каша в голове.

Станислав писал(а):
сегментная адресация в мегабайте памяти это просто адрес 20х битный, адресация с расширенными сегментами это адрес 32битный тот же что и в защищенном, опять путаница, тогда зачем говорить о сегментах вообще путать себя.

Сегменты в реальном режиме и в защищённом режиме - совершенно разные вещи. Нереальным режимом лучше вообще не пользоваться и забыть про его существование - это просто казус.
Сегменты возникли исторически, со времён процессоров 8086/8088 для адресации памяти больше 64к. гигабайты тогда звучали, как фантастика, а мегабайт считался относительно доступным. Остальное наслаивалось в рамках совместимости с имеющимся железом и софтом.

Станислав писал(а):
Адрес в памяти например 20000000байт он в любом режиме ни куда не денется.

Так и есть. ФИЗИЧЕСКИЙ адрес никуда не денется, а способ доступа к этому адресу может быть разным.

Станислав писал(а):
есть прерывания биус которые вовсе не прерывания а его функции, которые проше было бы вызывать командой call или jmp не её адрес, все ровно у них адреса постоянные.

Неправда. В реальном режиме адреса в начальной области памяти - это и есть аппаратные прерывания. При возникновении прерывания процессор АППАРАТНО загружает адрес инструкции из соответствующей ячейки памяти - вектора прерываний.
В защищённом режиме всё выглядит совершенно по другому и первые 400h ячеек памяти в качестве векторов прерываний не используются.

Станислав писал(а):
Опять запутки, с аппаратными прерываниями их путаешь, в защищенном режиме сам запрещаешь прерывания, хотя вызвать любую функцию, по любому адресу, пусть её даже биус загрузил нет проблем.

Ничего не понятно из сказанного. В любом режиме можно запретить прерывания.

Станислав писал(а):
Т.е. есть в биусе хорошая функция чтения секторов(читает через порты же) почему тогда вызвать нельзя.

Вызвать нельзя потому что БИОС работает в реальном режиме, а смешивать защищённый режим с реальным нельзя. Пойми, разница между реальным и защищённым режимом гораздо больше, чем ты себе представляешь. Перевести процесор из одного режима в другой - это не просто вызвать пару-другую инструкций (хотя иногда это может так выглядеть) и код, написанный для одного режима, нельзя испольовать в другом.

Станислав писал(а):
Если процессору разрешили адресоваться в так называемую верхнюю память(бредовое название) почему биус не копирует туда сектор.

В реальном режиме процессор может адресовать только 1 114 096 байт (это чуть больше мегабайта). Для доступа к остальной памяти нужно перевести проц в защищённый режим.

Станислав писал(а):
А что USB, это же просто PCI всего то.

ОГО! Интересное мнение :)))

Станислав, возьми хороший учебник по архитектуре 80х86 (коих в сети полно) и хорошенько проштудируй. Ты абсолютно не представляешь себе работу процессора, разве что в рамках нескольких строк ассемблерного кода.

_________________
Yet Other Developer of Architecture.
The mistery of Yoda’s speech uncovered is:
Just an old Forth programmer Yoda was.

<<< OS Boot Tools. >>>


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Загрузка с флешки
СообщениеДобавлено: 29 ноя 2011, 10:50 

Зарегистрирован: 10 май 2007, 11:33
Сообщения: 1206
pavia писал(а):
А вот почему в EDD не добавили не ясно.
Добавили, только не сразу, поэтому этим практически никто не пользуется.

Yoda писал(а):
Нереальным режимом лучше вообще не пользоваться и забыть про его существование - это просто казус.
Для программ реального режима, которым необходим доступ к памяти выше первого мега (+65520 байт), нереальный режим весьма полезен.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Загрузка с флешки
СообщениеДобавлено: 29 ноя 2011, 13:20 

Зарегистрирован: 28 окт 2007, 18:33
Сообщения: 1418
phantom-84 писал(а):
Yoda писал(а):
Нереальным режимом лучше вообще не пользоваться и забыть про его существование - это просто казус.
Для программ реального режима, которым необходим доступ к памяти выше первого мега (+65520 байт), нереальный режим весьма полезен.


Только в том случае, если защищённым как таковым пользоваться вообще не предполагается. Иначе лучше сразу же пользоваться защищённым, а при необходимости обращения к БИОС -- прыгать туда-сюда из реального в защищённый и обратно.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Загрузка с флешки
СообщениеДобавлено: 29 ноя 2011, 14:22 

Зарегистрирован: 10 май 2007, 11:33
Сообщения: 1206
SII писал(а):
Только в том случае, если защищённым как таковым пользоваться вообще не предполагается.
Так я об этом и говорил: "для программ реального режима".


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Загрузка с флешки
СообщениеДобавлено: 29 ноя 2011, 14:28 

Зарегистрирован: 21 сен 2007, 17:24
Сообщения: 1088
Откуда: Балаково
Станислав писал(а):
Заметил я что постоянно возникает путаница в определениях.

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


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 129 ]  На страницу Пред.  1 ... 6, 7, 8, 9, 10, 11, 12, 13  След.

Часовой пояс: UTC + 3 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 101


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
Создано на основе phpBB® Forum Software © phpBB Group
Русская поддержка phpBB