User Tag List

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

Тема: MATRIX

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

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

    Регистрация
    05.10.2006
    Адрес
    Харьковская обл.
    Сообщений
    166
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    0
    Поблагодарили
    0 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Sayman Посмотреть сообщение
    Своп вообще НЕ НУЖЕН, иначе будет ТОРМОЗ
    нормлаьная ос с многозадачностью не может пренебрегать наличием свопа! это очень сильный козырь, даже у венды, у ленукса, у юникса и у многих других. даже извините у доса есть надстройка, позволяющая делать свап.
    Ай, молодца.! Sayman не разобравшись,выхватил строчку из контекста сообщения и перевёл в недостаток.

    Так вот обьясняю - о чем там шла речь, Alone говорил, что если программе по запросу предоставляется физические номера страниц, то не возможно организовать виртуальную память, то есть давать программе левые номера страниц (вместо настоящих), и потом, когда программа вызывает функцию включить страницу, то система смотрит - ага , нет сободных страниц, выбирает "жертву", у которой можно страницу забрать, сохраняет странцу в своп-файл, и отдаёт эту страницу проге,сделавшей запрос, а дальше мы имеем ТОРМОЗ,а именно, та другая прога , у которой была забрана страница, грит,типа, а ну подайте мене мою страницу , ща печатать картинки буду (или следующий кусок архива распаковывать), и начинается, система сохраняет страницу 2-й проги в своп-файл,загружает оттуда страницу для первой проги,первая прога начинает обрабатывать данные, а потом переключаются процессы и переключалка должна включить страницу второй проги,и опять всё по новой - сохранили загрузили - переключили
    Вот про энто безобразие я и говорил, что его НЕТ, и НЕ БУДЕТ!!!
    Специально повторяю, читайте внимательно!

    Цитата Сообщение от Zet9 Посмотреть сообщение
    Своп вообще НЕ НУЖЕН, иначе будет ТОРМОЗ , так как программа при переключении страниц не будет знать прошло 1000 тактов или 10 000 000 тактов, а она должна это знать!!!(из-за этого всё нереально тормозит сам знаешь где... )

    Каждая программа может создать себе свой собственный файл подкачки любого размера (до 4-х Гигабайт) и сама будет туда скидывать те страницы, которые ей ДЕЙСТВИТЕЛЬНО не нужны(а не те которые системе мешают а программе нужны в 1-ю очередь).Система не знает и не может определить нужность/ненужность страниц для программы (а всякие там счетчики обращений к страницах и алгоритмы планирования, которые должны определять якобы ненужные программе страницы для выкидывания в своп - свою задачу не решают и только тормозят систему и программы, а также расходуют лишнюю память )
    Прога будет создавать свой файл, если система по запросу на выделение страниц скажет, мол, нет свободных страниц.
    Ну а сама система будет использовать своп для того чтобы сохранять туда спящие процессы (кусками или полностью ) и тем самым она будет освобождать память для вновь запущенных прог

    ---------- Post added at 11:25 ---------- Previous post was at 10:55 ----------

    Цитата Сообщение от Дмитрий Посмотреть сообщение
    Да, такой подход не позволяет в онлайн выводить инфу в окно, но кто мешает объявить процедуры прорисовки в системных вызовах? если тебе удобно рисовать окно и содержимое динамически посредством API - рисуй, мне больше нравится статический вывод, если что-то надо будет - обращусь по API и поменяю заголовок.
    Ну я бы назвал это так:
    Вы говорите про меню - прямоугольник или квадрат со строчками текста, заголовком и возможно с маленькой картинкой(пиктограммой), а я говорю про окно (тот же прямоугольник) - в которое постоянно выводиться информация - даже если это просто листалка, посточно листаем текст и он в окне должен снизу вверх перемещаться - и как это в Вашем варианте осуществить? для вывода окна с тестком смещенным на одну строку вверх формировать новый описатель окна? - я пробовал в делать нечто подобное в минивиндовс98 - впечатление, что текст на бэйсике выводиться (в смысле очень медленно)
    Цитата Сообщение от Дмитрий Посмотреть сообщение
    Просто статический описатель окна будет компактнее, чем код, вызывающий те же апи-функции для генерации аналогичного окна. А с учетом малого количества непрерывной памяти расточительно ее использовать не хорошо.
    Ну, этот код спокойно располагается в страницах, а непрерывная память на него не раходуется

    Цитата Сообщение от Дмитрий Посмотреть сообщение
    Кстати идея - принять манеру pc-шных моделей с сегментами кода и данных и размещать код программы в непрерывной памяти, а тексты, графику и прочее - в страницы
    Ужасная идея! она не годится!!!
    НИ В КОЕМ СЛУЧАЕ нельзя связывать кодера по рукам и ногам и указывать ему, что и где хранить - при такой схеме даже вьюевер 3-колорных картинок нельзя сделать!!!


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

    а единый кодовый блок графсистемы займет немеряно памяти (он будет занимать не менен 8 кб (со 2 шрифтами) и 5.5 Кб с одним шрифтом) и теперь в Вашем варианте сюда надо добавить ещё кучу описателей каждого окна - Вы об этом подумали?
    даже если описатель займет 200 байт - 10 окон это уже 2 Кб - и где их хранить? в странице с граф.подсистемой ещё место для процедур ядра нужно, или предлагаете сделать полноценный менеджмент памяти, который будет использоваться граф.подсистемой для манипулирования областями памяти с кучей описателей? или сильно усложнит код, увеличит занимаемую им память - и в результате стоит ли овчинка выделки?
    Цитата Сообщение от Дмитрий Посмотреть сообщение
    И что сложного в обработке описателей всех окон? выяснить каким окнам принадлежит указанная координата и какое из этих окон находится на вершине.
    Ничего сложного нет, кроме больших затрат памяти и процессорного времени

    ---------- Post added at 11:45 ---------- Previous post was at 11:25 ----------

    Цитата Сообщение от Дмитрий Посмотреть сообщение
    Я понял, что для того чтобы включить страницу - нужно в почтовый ящик положить номер нужной страницы и "подождать"? подождать чего? пока менеджер задач не отберет у программы время работы? а если программа будет часто щелкать страничками? Скоростной режим не нужен, а просто необходим! Нужен системный вызов (API-функция называй как хочешь) для переключения страниц,
    Ну я же сказал - будет такая возможность - специальный вызов, для переключения страниц напрямую: типа прога делает call adr2 и страница сразу переключается без всяких "входов в режим ядра, поиск нужной функции , перевода номера логической в физический", только пока не определился с параметрами - вот склоняюсь к тому, что предлагает Alone - при заказе страниц система даёт проге два байта , прога не вникает в их смысл - а это байты,засылаемые в порты,тогда страница переключается максимально быстро

    пример для Профи,проге надо две страницы и ей даётся 4 байта(#01,#10,#01,#11), она берет первые 2 байта и вызывает:
    ld hl,#0110
    call adr2
    итого включается страница 8, а прога по барабану, она знаёт что теперь включена ПЕРВАЯ страница этой проги
    а потом она берет вторые 2 байта и делает так
    ld hl,#0111
    call adr2
    включается страница 9
    и теперь прога знает что включена ВТОРАЯ страница этой проги

    но это только для прога, которым нужна скоростное переключение страниц
    а для остальных прог эти же 2 байта прога кладёт в ячейку памяти и после переключения процессов при приходе прерывания будет включена нужная страница.

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

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

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

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

Похожие темы

  1. The Matrix
    от transman в разделе Игры
    Ответов: 5
    Последнее: 15.05.2005, 15:08

Ваши права

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