User Tag List

Показано с 1 по 10 из 811

Тема: Документация на ПК 11/16

Комбинированный просмотр

Предыдущее сообщение Предыдущее сообщение   Следующее сообщение Следующее сообщение
  1. #1

    Регистрация
    07.10.2007
    Адрес
    п.Пудость Гатчинского р-на Лен.обл.
    Сообщений
    3,250
    Спасибо Благодарностей отдано 
    360
    Спасибо Благодарностей получено 
    639
    Поблагодарили
    415 сообщений
    Mentioned
    46 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Titus Посмотреть сообщение
    Последним на пути к загрузки системы камнем преткновения (не считая не решенного, но залоченного бага с 177776) являлся аппаратный контроллер VIRQ (хитрая, скажу вам штуковина, с аппаратными очередями и всякими такими штуками).
    Увы, на новогодних каникулах пришлось поработать, зато сейчас в отпуске. Начал дизассемблировать ПЗУ. В общем-то понял как работает VIRQ в Союз-Неон. Оригинально конечно, но с точки зрения времени выполнения конечно тормознуто.

  2. #1
    С любовью к вам, Yandex.Direct
    Размещение рекламы на форуме способствует его дальнейшему развитию

  3. #2

    Регистрация
    08.10.2005
    Адрес
    Москва
    Сообщений
    14,394
    Спасибо Благодарностей отдано 
    1,702
    Спасибо Благодарностей получено 
    2,219
    Поблагодарили
    873 сообщений
    Mentioned
    69 Post(s)
    Tagged
    1 Thread(s)

    По умолчанию

    Цитата Сообщение от Alex_K Посмотреть сообщение
    Увы, на новогодних каникулах пришлось поработать, зато сейчас в отпуске. Начал дизассемблировать ПЗУ. В общем-то понял как работает VIRQ в Союз-Неон. Оригинально конечно, но с точки зрения времени выполнения конечно тормознуто.
    Вы лучше гляньте, почему портится 017776 )

    ---------- Post added at 18:03 ---------- Previous post was at 18:02 ----------

    Почему тормознуто? VIRQ как раз работает на аппаратном уровне, безо всяких тормозов.

  4. #3

    Регистрация
    07.10.2007
    Адрес
    п.Пудость Гатчинского р-на Лен.обл.
    Сообщений
    3,250
    Спасибо Благодарностей отдано 
    360
    Спасибо Благодарностей получено 
    639
    Поблагодарили
    415 сообщений
    Mentioned
    46 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Titus Посмотреть сообщение
    Вы лучше гляньте, почему портится 017776 )
    Я не эмулятор пишу, а только дизассемблирую. Потом в коде надо разбираться. Для того, чтобы разобраться, надо при разборе учитывать значения регистров диспетчера памяти, чтобы знать, что и куда пишется в физическую память. Это всё-таки какое-то время надо.

    ---------- Post added at 17:14 ---------- Previous post was at 17:13 ----------

    Цитата Сообщение от Titus Посмотреть сообщение
    Почему тормознуто? VIRQ как раз работает на аппаратном уровне, безо всяких тормозов.
    Вы лучше объясните, как у вас сделана эта эмуляция. Неужто не поняли, где тормоза на аппаратном уровне?

  5. #4

    Регистрация
    08.10.2005
    Адрес
    Москва
    Сообщений
    14,394
    Спасибо Благодарностей отдано 
    1,702
    Спасибо Благодарностей получено 
    2,219
    Поблагодарили
    873 сообщений
    Mentioned
    69 Post(s)
    Tagged
    1 Thread(s)

    По умолчанию

    Цитата Сообщение от Alex_K Посмотреть сообщение
    Вы лучше объясните, как у вас сделана эта эмуляция. Неужто не поняли, где тормоза на аппаратном уровне?
    Нет, тормозов нет)
    Когда какой-либо процесс дает запрос на VIRQ, вызывается подпрограмма ВПО, которая добавляет этот запрос в специальную табличку (это делается программно).
    Далее, как только в USER-процессе будут разрешены прерывания, аппаратный контроллер VIRQ сразу даст прерывания и подсунет вектор, который он вычислит из этой таблички. Затем он уберет вектор из таблички и сдвинет очередь. Если в табличке остались запросы на прерывания по другим векторам, то при следующем разрешении прерываний, этот контроллер выдаст прерывание по следующему вектору из таблички, который был в очереди. И т.д.

  6. #5

    Регистрация
    07.10.2007
    Адрес
    п.Пудость Гатчинского р-на Лен.обл.
    Сообщений
    3,250
    Спасибо Благодарностей отдано 
    360
    Спасибо Благодарностей получено 
    639
    Поблагодарили
    415 сообщений
    Mentioned
    46 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Titus Посмотреть сообщение
    Нет, тормозов нет)
    Когда какой-либо процесс дает запрос на VIRQ, вызывается подпрограмма ВПО, которая добавляет этот запрос в специальную табличку (это делается программно).
    Далее, как только в USER-процессе будут разрешены прерывания, аппаратный контроллер VIRQ сразу даст прерывания и подсунет вектор, который он вычислит из этой таблички. Затем он уберет вектор из таблички и сдвинет очередь. Если в табличке остались запросы на прерывания по другим векторам, то при следующем разрешении прерываний, этот контроллер выдаст прерывание по следующему вектору из таблички, который был в очереди. И т.д.
    Так вектор из этой таблички берет какой-то аппаратный контроллер? Да ещё анализирует её и двигает?

Информация о теме

Пользователи, просматривающие эту тему

Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)

Похожие темы

  1. Документация по Z280
    от spensor в разделе Несортированное железо
    Ответов: 39
    Последнее: 08.04.2014, 00:52
  2. Тех. документация на старые ЭВМ и книги
    от AL.EX в разделе Барахолка (архив)
    Ответов: 2
    Последнее: 15.08.2010, 17:33
  3. Ленинград-2: документация
    от dicebox в разделе Ленинград
    Ответов: 13
    Последнее: 14.04.2009, 23:33
  4. Документация к Dendy
    от UberAlice в разделе Nintendo
    Ответов: 9
    Последнее: 19.03.2008, 14:02
  5. Программная документация.
    от fk0 в разделе Программирование
    Ответов: 7
    Последнее: 19.01.2006, 16:53

Ваши права

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