User Tag List

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

Тема: ПК8000 - Квазидиск

Древовидный режим

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

    Регистрация
    14.08.2006
    Адрес
    Владимир
    Сообщений
    4,581
    Спасибо Благодарностей отдано 
    64
    Спасибо Благодарностей получено 
    112
    Поблагодарили
    97 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от b2m Посмотреть сообщение
    Не совсем понятно, как загружать новые задачи, если переключать полностью всё адресное пространство.
    Нужен некий непереключаемый сегмент. В Орионе он есть - аппаратно не переключаются верхние 4к, в которых 3к ПЗУ+порты (ненужные в-общем то) и только 1 к испольуется для обеспечения связи страниц. На другой железке с независимыми страницами (например эхотаге), ничто не мешает диспетчером 16к проинициализировать 64к-страницы - записать в верхний 1к одинаковый для всех страниц код обеспечения связи страниц, а уже затем при помощи процедур, размещенных в этих 1К, переключать страницы по 64к имея оставшиеся 63к под процесс.

    Цитата Сообщение от b2m Посмотреть сообщение
    Это всё потому, что библиотеки прицепляются. А если будет внешняя C RTL, то будет гораздо меньше.
    Абсолютно нет необходимости изменять компилятор. Главное, это чтобы он мог пристегнуть вместо реальной библиотеки заглушку, которая загрузит и свяжет внешнюю библиотеку. Т.е. чтобы вместо библиотеки прицеплялась куча JMP-ов.
    Вот про это то я и не уверен. Не припоминаю никаких опций компилятора или процедур в библиотеках, регулирующих связывание этапа выполнения. Компилятор тупо собирает большой выполняемый файл и все. На CP/M подругому в те времена еще не было придумано нигде. Были слабые попытки реализовать оверлеи, но пользоваться оверлеями было очень неудобно, т.к. там совсем другой подход.

    А про заглушку я не понял. Обычную библиотеку, состоящую из набора jmp (или "dispatcher16k_on(); call(_func); dispatcher16k_off(); ret" ) собрать не проблема для любого компилятора. Имена функций в ней будут какие пропишешь, хотя бы и аналоги libc. Или имелось в виду что-то другое?
    Последний раз редактировалось Error404; 08.10.2008 в 17:02.
    Лучше сделать и жалеть, чем не сделать и жалеть.

    Некоторые из моих поделок тут: https://github.com/serge-404

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

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

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

Похожие темы

  1. ПК8000 - Общие вопросы
    от Mick в разделе ПК8000
    Ответов: 601
    Последнее: 03.11.2025, 00:03
  2. ПК8000 - Утилиты
    от XobbiMan в разделе ПК8000
    Ответов: 103
    Последнее: 22.06.2023, 00:09
  3. Ответов: 206
    Последнее: 30.05.2022, 17:15
  4. ПК8000 - Железные вопросы
    от ivagor в разделе ПК8000
    Ответов: 30
    Последнее: 18.05.2016, 19:17
  5. Ответов: 71
    Последнее: 25.02.2010, 22:40

Ваши права

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